-
Video grabbing works fine, it can be seen in LED visualisation. Randomly changing settings like refresh time and delay after hyperhdr starts makes things work. Any changing of settings after that point results in the LED strip stopping working and it appears communication it stopped to the ESP board. I've also tried this on a very simliar board with a CP2102 uart with very similar symptoms. I.e. rarely works. Changed all cables Flashing WLED and controlling from wifi works fine. Hyperhdr is running as root on the NUC Please see below logs from a non working start and when it started working, for reasons unknown to me: 01 ~]# cat hyperhdr_working.txt Any advice woud be really appreciated. Thank you. |
Beta Was this translation helpful? Give feedback.
Replies: 24 comments 13 replies
-
Oh yeah... I am a noob at this but what I have noticed when it does work is the FPS for the grabber and the FPS for the LED controller(adalight) are in sync. Once in sync it can run for a long period of time, unless some settings are changed. What have I missed? Thank you. |
Beta Was this translation helpful? Give feedback.
-
Hi
Maybe the ESP is faulty or there is an electrical problem. Common ground?
CP2102 is not capable of 2Mb speed, it's not supported by HyperSerialESP32 and shouldn't work at all. I won't support other than officially released firmware version here. You shouldn't change the default values for 'delay after connect' and 'refresh time': set them back to zero. You have made a lot of changes for the USB grabber and the LED driver and as an effect your log is not clear to me. |
Beta Was this translation helpful? Give feedback.
-
The wiring scheme is correct, tested by many users, but the devil is in the details how it was implemented by you.
I'm 99% sure it's an electrical/connection problem. E.g. some boards revert to the default bootloader when GPIO0 is pull-up when the power is on, that's why 'EN' (reset) could help and the ESP starts using HyperSerialESP32 firmware after that. But it shouldn't happen even if the GPIO0 is connected for a typical LED driver solution (SPI leds may use it in HyperSerialESP32) unless the connection was done incorrectly. |
Beta Was this translation helpful? Give feedback.
-
Thank you again for replying. Alright it is quite possible it's my sh*tty soldering effort. I'll take another look tomorrow and if there's nothing obvious i'll solder up another esp32 and level shifter. So close to getting this project up and running with your awesome software. Thanks again. |
Beta Was this translation helpful? Give feedback.
-
OK, let me know if it helps. It's better to leave GPIO0 unconnected, but I don't see it on your board. Probably the manufacturer connected GPIO0 to the BOOT button, make sure there is no short-circuit around this button and that button functions properly. If it's damaged and constantly ON, then your ESP will always enter the bootloader mode (GPIO2 also play some role but GPIO0 is crucial). |
Beta Was this translation helpful? Give feedback.
-
So uh... After minicom in to the espboard, it was all working BUT I was using esphome.py to flash the .bin image but was flashing it to 0x10000 instead of 0x1000 Sorry.... I also downloaded ESPHome-Flasher-Ubuntu.exec and will use that in future because of fat fingers. Seems to be working fine over reboots and as expected now. What a way to waste a few hours |
Beta Was this translation helpful? Give feedback.
-
No problem. It's good that you managed to find the cause and fix it as the symptoms when turning on the ESP were really weird and not easy to diagnose. |
Beta Was this translation helpful? Give feedback.
-
Hi again, Sorry to reopen this question... I'm still having the issue, I've tried 4 esp32wroom boards and serveral voltage level shifters. I don't think it's the level shifters or the wiring :) The boards are these: shorturl.at/IPSW5 bin images used: HyperSerialESP32_SK6812_COLD_WHITE_FIRSTLED_ENABLED.bin version 6.1 and latest version 7 To replicate I, after I have flashed the esp with console to the board with minicom with /dev/ttyACM0 and baud 2000000 8 par 1 bits This happens even with just the usb cable plugged in and nothing else. I'm using an old intel nuc to run hyperhdr but have tried these boards in multiple pcs and the symptoms are the same. If I flash wled or something else on these boards there's no problem. At this point I'm leaving the nuc on 24/7 after pressing the reset button to start it talking to hyperhdr/the nuc which is OK but I'd like to implement power management as it has a CIR interface and I can turn it on and off with the tv etc in home assistant to save power... Is it because they're cheap chinese boards? I'm pretty sure the boards are ok as they run fine once reset. If anyone has had similar experiences Please let me know. Any recommendation on other boards or should I be shorting pins(I am a novice) . Apart from that issue hyperhdr is a awesome piece of software, it's so easy and works fantastic for ambilight. 👍 Thank you. |
Beta Was this translation helpful? Give feedback.
-
Hi |
Beta Was this translation helpful? Give feedback.
-
And WLED doesnt' run at 2Mb speed unless you are using HyperSerialWLED, since there is some garbage on the output the board is alive but something happen to the communication (board or your system driver?) |
Beta Was this translation helpful? Give feedback.
-
You may need also re-apply or reset the bootloader for your ESP32 board https://kno.wled.ge/basics/install-binary/ which could be damaged when you flashed the firmware for at least one board at 0x1000 instead of 0x10000. Not sure if esp-homeflasher automatically do it. |
Beta Was this translation helpful? Give feedback.
-
I'm using this type of ESP32 / CH9102X device (not necessarily this seller) EDIT: https://doc.riot-os.org/group__boards__esp32__mh-et-live-minikit.html |
Beta Was this translation helpful? Give feedback.
-
thanks for replying.. Yes I've tried version 6.1 and version 7. Same issue. I;m running ubuntu 22.04.1 for hyperhdr and for testing I used linux mate(mint) as well. I do have windows 10 somewhere, maybe I should try that. I erased the board but esphomeflasher erases and installs a boot loader i think. I used esphomeflasher on linux mint to flash the boards. When I unplug and replug the boards, sometimes I see them boot in minicom but sometimes not...It seems so weird...I've googled a lot but it doesn't really make sense why it's happening...Unless its the hardware but I can't be the only one experiencing these symptoms. Thanks for replying to this issue being not directly related to hyperhdr :) I'm going to order some of the boards you said you use and just use those. cheers, |
Beta Was this translation helpful? Give feedback.
-
When you plug in your esp board, initially it works on different/default serial port speed...probably 115200. Next HyperSerialESP32 changes that speed to 2Mb so if you have minicom fixed at 2Mb you may miss the boot sequence. |
Beta Was this translation helpful? Give feedback.
-
For further testing I just flashed: HyperSPI_esp32_SK6812ColdWhite.ino.esp32.bin Set minicom to: "115200 8N1 | NOR | Minicom 2.8 | VT102 | Offline | ttyACM0 " Plug in shows this: Press reset button shows this: rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) Welcome! Unplug then Replug, shows this: Then press reset button and works. 👎 |
Beta Was this translation helpful? Give feedback.
-
I think you should not see the messages from HyperSerialESP32 v7 is you set 115200 speed... |
Beta Was this translation helpful? Give feedback.
-
I flashed: HyperSPI_esp32_SK6812ColdWhite.ino.esp32.bin for the above output. Are you saying when you unplug and replug your board in minicom it outputs garbage? I think if you "Hang Up" the line (Ctrl+A+H) it resets the terminal and should display correctly. Thank you. |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
OK thank you very much for testing. I'm pretty sure it's the board. I'm going to order the one you specified in the above post. Thank you very much for you help. It's very much appreciated. Have a fantastic day. |
Beta Was this translation helpful? Give feedback.
-
Hi awawa, Update! Having a further google. Apparently the ch9102x serial uart chip has minimal support in the linux kernel (I'm using 5.15.0-52-generic #58-Ubunt) https://github.com/WCHSoftGroup/ch343ser_linux suggests compiling the ch343 module and installing that which I did and now I can power cycle the NUC and hyperhdr connects fine with every power on. Hooray! There is still the problem though, if I reboot the NUC running hyperhdr, hyperhdr never talks to the esp32 board again. The same if i restart hyperhdr. It also seems to lock up the board from any access i.e. screen,minicom etc until both the NUC and esp and powered off and on. This is not normal behaviour right? At this point I can poweroff the nuc with a harmony hub and power it back on so it all works like I want. So in summary I think the error is with the ch9102x linux driver and not being completely compatible with HyperSerialESP32_SK6812...I wonder did you develop/test on boards with this chip? or only the 343 and cp2104? If you want some boards with the ch9102x chips on I'd be happy to send you a few :) |
Beta Was this translation helpful? Give feedback.
-
Interesting.
Only one program (HyperHDR or minicom) can have an access to the serial port at the same time. But if you close HYperHDR and run it again it should work. You can find more in HyperHDR logs.
All tests in this thread I've done using ch9102x and Raspberry Pi OS experience no problems. It's my default development board. |
Beta Was this translation helpful? Give feedback.
-
Well that explains that then. I'll just wait for the new boards to arrive. Thanks again 😸 |
Beta Was this translation helpful? Give feedback.
-
Hi Awawa-dev, It's been a while... HNY :) I thought I'd report back, I got some of the boards you recommended last year. I finally got around today to solder one up and it works perfectly with hyperhdr v18 and hyperserialesp32 v7. I can restart hyperhdr from cli and reboot all day long without issue. All the issues above are caused by these boards: I strongly recommend to avoid these boards. I don't know if it's this seller but I tried 4 of these boards and wired up 3 pcbs. Boards to buy for hyperhdr are: https://www.aliexpress.com/item/32836372640.html or whatever awawa recommends at the current time. In summary, annoyed developer, wasted time, wasted money because of shitty esp32 boards. Worst, learnt nothing apart from a hacky solution. Bit dirty. Hope this helps someone in the future if they come across these issues. Thanks again for your software, I hope you keep up the great work :-) |
Beta Was this translation helpful? Give feedback.
-
I don't know much about the topic, so I apologize, but from my understanding some ESP 32 modules work and some don't? I have a ESP 32 with the WROOM chip that I got off of AliExpress. Does the problem lie with the manufacturing quality or the specific type of ESP 32 module? Should I get the one you linked to be safe? |
Beta Was this translation helpful? Give feedback.
No problem. It's good that you managed to find the cause and fix it as the symptoms when turning on the ESP were really weird and not easy to diagnose.