-
-
Notifications
You must be signed in to change notification settings - Fork 117
HyperSerial
Advanced configuration and diagnostic for ESP & Raspberry Pi Pico board with uploaded HyperSerialEsp8266, HyperSerialESP32 or HyperSerialPico (requires HyperHDR v20 or newer) firmware.
Note
Currently Raspberry Pi Pico boards are recommended. There are even LEDs-specialized models of Pico boards from Adafruit or Pimoroni equipped with a 3.3V to 5V level shifter, so you don't have to add anything or solder to them. They cost around 10-15$ depending on the model.
What is unique compared to the Esp8266/ESP32/ESP32-S2 boards, Pico thanks to the PIO I/O coprocessor is able to produce a very high quality and precise signal. Which is especially required for the Neopixel sk6812/ws8212b LED strips. The signal from the ESP boards is usually well tolerated by most variants of the Neopixel LED strip, but the emulation of their protocol brings with it various side effects, such as high memory consumption (limitation of the maximum length of the LED strips), slightly drifting I2S data clock (still within LEDs tolerance), IRQ thunderstorm when RMT is used, etc. My tests of the Pico board together with practical measurements of signal timings allow us to conclude that this board is free of these drawbacks and still it is very cheap: ~$2 for the mini version (which is fully functional and works well) and $3-4 for the larger version with full GPIO connector.
Find out more here:
- https://github.com/awawa-dev/HyperSerialESP32
- https://github.com/awawa-dev/HyperSerialEsp8266
- https://github.com/awawa-dev/HyperSerialPico
Esp8266/ESP32/rp2040 handshake option:
that allows:
-
reset the ESP32/Esp8266 board at the beginning
-
after the reset is performed, we read the initial HyperSerialEsp8266/HyperSerialESP32 boot message and check it
-
if the board is not capable of the 2Mb speed (or any other speed set in HyperHDR) the user will see a warning
-
after the LED device is stopper, we read the statistics (just wait few seconds). Still we maintain one way communication at the same time, because of problems with the performance of duplex for certain system/drivers.
Also please check out other new feature added in the previous commit, that shows how many frames were dropped due to slow LED device or too high refresh rate set in the smoothing: