ESP32 auf Arduino IDE + Adafruit Neopixels

Hallo Leute,

hab ein ESP32 über die IDE von Arduino laufen. Daran sind Neopixel angeschlossen, 20Stck.

Habe einen Code dafür der auf Arduino Uno mit Hc05 super läuft.
Diesen Code wenn ich jedoch aufs ESP lade, funktioniert er zwar, es flackern aber ab und an Leds auf, die nicht Leuchten sollten. Generell blitzen Leds bei den Funktionen auf und Leuchten teils permanent.

Das ist auch bei den Beispielcodes so direkt aus der Neopixel Lib.

Weiß jemand was das für ein Phänomen ist ? Was Abhilfe leistet? Warum das so ist beim ESP32?

Im Internet ließt man oft über einen "timing error" und etwas von RMT Hardware, jedoch ist das alles schwer zu verstehen für mich.

Danke schonmal an die die mir helfen können :smiley:

grüß

Es sieht danach aus, als würden Deine Neopixel nicht mit dem 3,3V Signal zurecht kommen. Dieses ist außerhalb der Spezifikation. Da kommt es dann darauf an, an welchem Ende der Toleranz sie liegen.

Gruß Tommy

Du könntest das mit einem Levelshifter in der Datenleitung lösen.

Kann man sich aussuchen..

mosfet,Transistor, Level Shifter soweit die 5V in der nähe sind.. kann man bei Neopixel das Signal invertieren? dann reicht auch nur ein einfacher Transistor.

ich bevorzuge 74hc14 für sowas.. im Endeffekt muss nur schnell genug geschaltet werden.

Habe etwas gespielt damit, und folgende Erkenntnis gewonnen:

Sobald ich irgendein Gerät mit dem ESP32 per BLE verbinde, fangen die Leds zu spinnen an. Wenn ich Funktionen im Loop laufen lasse ohne BLE zu verbinden, klappts wies soll.

Weiß jemand über das Problem bescheid oder muss ich mich mit einem Hc05 vergnügen, anstelle des ESP.

Andere schrieben ja schon solch Probleme entstanden auch bei Wifi

Dann wird das ein Problem mit dem Timer/Interrupt sein.

Das könntest du evtl. durch wechseln des Pins lösen, habe da aber bisher noch keine Erfahrung.

Habe gerade mal alle Pins durchprobiert, leider Fehler noch vorhanden ;(

Franz_grundi:
Habe gerade mal alle Pins durchprobiert, leider Fehler noch vorhanden ;(

das ist ärgerlich, evtl. kommt noch einer vorbei, der damit Erfahrung hat.

Oder alternativ den ESP für BT oder Wifi und für die Neopixels einen Pro mini, gesteuert per I2C vom ESP.

Ich hatte das Phänomen mal gehabt, da waren die Leitungen einfach zu lang...trifft das hier zu?

das wäre eine Möglichkeit, stimmt. ESP nur für BT und rest über i2c am Controller

Die Leitungen waren gute 50cm Lang.
Ich weiß nicht wo da die Grenzen sind.

Franz_grundi:
das wäre eine Möglichkeit, stimmt. ESP nur für BT und rest über i2c am Controller

Die Leitungen waren gute 50cm Lang.
Ich weiß nicht wo da die Grenzen sind.

50cm sollten kein Problem sein.
Und ja, derartige Lösungen mit 2 Controllern aufzubauen, ist da sicher eine gute Alternative.
Bei 20 Pixel könnte auch ein ATtiny85 funktionieren wenn dieser mit I2C gesteuert wird.

HotSystems hat Recht, ist ein Interrupt-Problem. Hat aber nichts mit dem Pin zu tun.

Nutze einfach die aktuelle FastLED-Lib. Die macht die Ausgabe über die RMT-Hardware (Remote Control des ESP32). Die benutze ich auch.

Bin alternativ noch über diese Lib gestolpert, habe sie aber nicht getestet.