Kleiner Neopixelring

compactflash proudly presents the possibly tiniest 24-Led-Neopixel-Ring with RFID-Reader on the world.

In meinen Boxen habe ich keinen Platz für einen käuflichen Neopixelring (die stammen noch aus Tonuino-Zeiten). Deshalb habe ich immer nur 1 LED mit eigener Led.cpp verwendet. Freundlicherweise hat @biologist dann später im Code die Möglichkeit für 1 Led eingefügt, danke hierfür nochmals.

Es ließ mir aber keine Ruhe, ich finde die Lichtshow ja auch gut. Deshalb habe ich eine kleinere Variante entworfen:
24er-Neopixelring in Miniformat, optional RFID-Reader Mini und die Möglichkeit für einen Infrarotempfanger TSOP38238.
Meine Frontplatte bietet nur 60mm Platz, der Ring ist 58mm. Die Zuleitung erfolgt über die freien Pins des RFID-Readers und es ist auch ein TSOP38238 für IR vorgesehen. Ich benötige das nicht. Ich habe das gestern mal auf die Schnelle bestückt und ausprobiert. Auf den Fotos ist zum Größenvergleich der gekaufte 24er-Ring. Als ich die Idee zu dem Ring hatte, habe ich bei Ali nur die LED SK6812 mini gefunden und die sind auch auf dem Ring verbaut. Als ich dann später bei JLCPCB nach Bauteilen gesucht habe, gab es die nicht, jedoch die WS2812B Mini 3535. 5 bestückte Ringe würden etwa 25,00 € kosten. Die 100nF Kondensatoren sind noch nicht bestückt. Es flackert ohne die Kondensatoren aber nicht mehr als auf dem gekauften Ring. Ich habe zum Test beide Ringe parallel angeschlossen und wenn es flackert dann ist es auf beiden Ringen absolut identisch. Im Vergleich zum Ring mit WS2812 erscheinen mir die SK6812 viel heller . Ein Blick ins Datenblatt bestätigt das. Ich betreibe den Ring momentan mit der max. Helligkeit 15.
Ich stelle mir vor in die Frontplatte 24 Löcher zu bohren und und das Licht mittels kleiner Stückchen Lichtleiter nach vorne zu bringen. Dazu habe ich die Footprints der Leds um eine zentrale Bohrung als Hilfe zum Ankörnen erweitert. Ob das klappt … ich werde es ausprobieren.
Der RFID-Reader ist etwas teurer, kann dafür aber I2C und das klappt mit einem Demo-Code auch. Leider funktioniert das mit dem aktuellen Code noch nicht. Es ist in den settings vorgesehen , aber noch nicht final fertig. Wenn ich mich recht erinnere hat @biologist das schonmal geschrieben.

Einen kleinen Nachtteil, der mir vorher nicht eingefallen ist, will ich nicht verschweigen…wenn man eine Karte auflegt deckt das den Ring fast komplett ab.



6 „Gefällt mir“

Sehr schön. Hast du irgendwelche Störungen bzw. eine schlechtere Reichweite durch die Signale vom Neopixel?

Für das Problem mit den Karten könnte ich mir als schöne Lösung andere tags mit z.B. Figuren vorstellen.

Hmm, also ich weiß von nix. Ich habe den Reader hier auch, aber das Board (ESP32-A1S), an dem ich ihn testen wollte, läuft nicht. Insofern habe ich i2c für RFID tatsächlich noch nie getestet.
@Christian Du hattest mir den Reader ja geschickt. Der läuft doch bei dir, oder!?

Ich stelle keinen Unterschied fest zur Reichweite des RC-522 .

Ich meine mit Auflegen eigentlich kurz dranhalten . Dann sieht man die Reaktion auf die Karte nicht mehr richtig. Interessiert aber bestimmt keinen Enduser , sprich Kleinkind. Da bei meiner Verwendung der Reader in der Frontplatte senkrecht verbaut ist kann man keine Figürchen aufstellen. Ich werde auch garnichts anderes als die Karten benutzen . Das ist für mich am einfachsten und günstigsten.

ich habe was im Hinterkopf , nicht dass es auf der ToDo-Liste steht , sondern das da noch nichts gemacht ist.

Dann musst du mir nochmal kurz sagen, was genau jetzt nicht geht. Irgendwie verstehe ich es nicht :slight_smile:. Aber dein Projekt finde ich cool :+1:.

@biologist
ich benutze settings-lolin-d32-pro.h und habe da den MFRC522_RST_PIN nachgetragen und als Pins für I2C die nun freien SPI-Pins
SPISD_CS wird I2C SCL
SPISD_MISO wird I2C SDA
genommen .
Laut der mageren Beschreibung von RobotDyn sollte es auch ohne RST gehen , oder ?

„For example using I2C interface will allow you to connect plenty of RFID devices on just 2 wires. The module has a small…“

Kompilieren geht aber der Leser funktioniert nicht . Habe dann nicht weitergemacht .

VG

Hallo @Christian
Auf der Rückseite des Readers sind die Jumper D1-D6 welche für die I2C-Adressvergabe sind. Bei mir ist nichts gebrückt. Hast du da was gejumpert z.Bsp. 0x28 , default Adr. ? Traue mich nicht , will das Ding nicht kaputt machen.
VG

Ich glaube nicht. Zumindestens habe ich dort nichts verändert. Ich bin gerade nicht in Reichweite der Komponenten. (Hoffentlich zu Ostern wieder). Ich hatte den Reader aber auch nicht im ESPuino Code getestet, sondern nur mit einem Demo Sketch.

Findet ein I2C Scanner Sketch denn den Reader?

Auf dem Foto oben sieht es so aus, als wenn die PINs I2C und EA für den Modus SPI konfiguriert sind.

Ich hab’ bisher tatsächlich immer nur mit RST probiert.
Allerdings ist in der SPI-Lib (meines Wissens nach) der Hardware-Reset einfach durch einen Software-Reset ersetzt - müsste also möglich sein. Evtl. gibt das die LIB auch einfach nicht her…
Soft-Reset vs. Hard-Reset im „original“

Sieht so aus, als wenn das in der i2c Lib fehlt.

Klar im SPI-Mode ,war nur zur Probe auf I2C auch ohne irgendwelche Lötbrücken, wo es mit einer Demo lief mit RST, ohne geht es nicht.

Ich habe wie gesagt noch gar nix getestet damit, kann also leider wenig beitragen. Bin jetzt einfach davon ausgegangen, dass das alles ordentlich funktioniert, da ich nix Gegenteiliges gehört hatte :slight_smile: