# Color sensor

**URL:** <https://forum.calliope.cc/t/color-sensor/2137>\
**Category:** Hardware Fragen und Probleme\
**Created:** [28. November 2021 um 22:37 UTC](https://forum.calliope.cc/t/color-sensor/2137 "2021-11-28T22:37:17Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![droth](https://avatars.discourse-cdn.com/v4/letter/d/3da27b/32.png) [@droth](https://forum.calliope.cc/u/droth)\
**Post date:** [28. November 2021 um 22:37 UTC](https://forum.calliope.cc/t/color-sensor/2137/1 "2021-11-28T22:37:17Z")

</div>

Hallo,  
ich habe auf der Webseite von calliope.cc unter Externe Sensoren das Programm für den grove color sensor als Hex Datei runtergeladen und insofern ergänzt, dass ich mir über die Arduino IDE die RGB Werte seriell anzeigen lasse:

Die Werte ich erhalte:  
rot: 1796; gruen: 1239; blau: 1006  
rot: 1796; gruen: 1240; blau: 1007  
rot: 1800; gruen: 1243; blau: 1009  
rot: 1802; gruen: 1245; blau: 1011  
rot: 1821; gruen: 1259; blau: 1023  
rot: 1823; gruen: 1261; blau: 1024  
rot: 1823; gruen: 1261; blau: 1024  
rot: 1827; gruen: 1264; blau: 1027  
rot: 1826; gruen: 1264; blau: 1027  
rot: 413; gruen: 242; blau: 178  
rot: 413; gruen: 242; blau: 178  
rot: 413; gruen: 242; blau: 178

Da die Werte ja nur von 0 - 255 gehen können, frage ich mich, wo der Fehler liegt.  
Habt ihr eine Idee? Was mache ich falsch?  
Ich benutze den aktuellen Calliope mini und den I2C Color Sensor v2  
Viele Grüße  
Detlev

---

<div class="post-metadata">

**Author:** ![joern.alraun](https://yyz1.discourse-cdn.com/flex027/user_avatar/forum.calliope.cc/joern.alraun/32/7_2.png) [@joern.alraun](https://forum.calliope.cc/u/joern.alraun)\
**Post date:** [1. Dezember 2021 um 20:09 UTC](https://forum.calliope.cc/t/color-sensor/2137/2 "2021-12-01T20:09:50Z")

</div>

Hallo Detlev,

wenn ich mich richtig erinnere, sind das die gemessenen Frequenzwerte des Sensors. Du musst daraus noch die RGB-Farbwerte errechnen. Halte den Sensor nah an ein rotes, grünes und blaues Objekt und notiere dir jeweils die dazugehörigen Farbwerte, danach gehst du jeweils weiter weg und notierst dann die Werte. So weißt du von wo z.B. R (rot) in dem Messumfeld überhaupt gemessen wird. Dann nimmst du den niedrigen und höchsten Wert zu R, G und B und mapst diese jeweils auf 0-255. Dann solltest du deine Farben haben.  
Es gibt sicherlich auch Pakete, die eine Grundberechnung integriert haben.

Beste Grüße  
Jörn

---

<div class="post-metadata">

**Author:** ![droth](https://avatars.discourse-cdn.com/v4/letter/d/3da27b/32.png) [@droth](https://forum.calliope.cc/u/droth)\
**Post date:** [1. Dezember 2021 um 21:18 UTC](https://forum.calliope.cc/t/color-sensor/2137/3 "2021-12-01T21:18:18Z")

</div>

Hallo Jörn,

vielen Dank für Deine Hilfe. Ich hatte auch schon in die Richtung gedacht. So werde ich es machen.  
Beste Grüße  
Detlev

---

<div class="post-metadata">

**Author:** ![klmi](https://yyz1.discourse-cdn.com/flex027/user_avatar/forum.calliope.cc/klmi/32/763_2.png) [@klmi](https://forum.calliope.cc/u/klmi)\
**Post date:** [2. Dezember 2021 um 14:29 UTC](https://forum.calliope.cc/t/color-sensor/2137/4 "2021-12-02T14:29:34Z")

</div>

Hallo Detlev,  
Du kannst auch diese Erweiterung verwenden die die Farbwerte berechnet und auch die Möglichkeit bietet Farbwerte zu „lernen“ und auch ähnliche Farben einzubeziehen.

> **[GitHub - MKleinSB/pxt-columbuseye: tcs34725 Farbsensor und Erweiterungsblöcke](https://github.com/MKleinSB/pxt-columbuseye)**
>
> tcs34725 Farbsensor und Erweiterungsblöcke. Contribute to MKleinSB/pxt-columbuseye development by creating an account on GitHub.

---

<div class="post-metadata">

**Author:** ![droth](https://avatars.discourse-cdn.com/v4/letter/d/3da27b/32.png) [@droth](https://forum.calliope.cc/u/droth)\
**Post date:** [2. Dezember 2021 um 17:00 UTC](https://forum.calliope.cc/t/color-sensor/2137/5 "2021-12-02T17:00:18Z")

</div>

Hallo Michael,  
super, danke für die Links - und das Du Dir die Arbeit gemacht hast, eine Erweiterung zu programmieren. Spannendes Material. Ich freue ich schon darauf es auszuprobieren.  
Mit besten Grüßen  
Detlev
