-
Notifications
You must be signed in to change notification settings - Fork 157
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Some work to get it stable #92
base: master
Are you sure you want to change the base?
Conversation
I believe this is a similar issue to what @Sine-Audio is experiencing in #66. I've compiled and ran your source on a Wemos D1 mini Pro with your recommended settings and it almost runs as expected. Webui and PWM outputs are working but as soon as I send something on the universe PORTA listens on the ESP crashes or restarts. The only way to get it to run partially as it is now was to select the Wemos D1 R2 & mini board instead of the Wemos D1mini Pro board. I also had to select 4M (3M SPIFFS) instead of 16M (15M SPIFFS) in order for it to run. |
Not sure what your issue could be, can you get a stack trace via serial and decode it? https://github.com/me-no-dev/EspExceptionDecoder |
@scamiv Thank you for responding! Im not getting any exceptions, only when I set flash mode wrong (but thats normal). Right now it just says ld~ on the serial monitor and shortly after that a backwards questionmark. It does start a hotspot but only the default one without encryption or anything. Cant connect to webgui. I did erase the modules with esptool erase_flash. It must be something stupid that I am missing but I cant figure it out. Like I said, it does work with the original firmware compiled from Arduino, so maybe I am missing a setting in code? |
Did you try setting the pwmports[] array in line 104 empty? |
@scamiv Thanks for your reply.
With the serial monitor set to 115200 it outputs this twice when the ESP restarts:
I was expecting more information but anyway the current version of Exception Decoder appears to be broken or missing some tool chain elements. Random notes of potential interest:
|
I just emptied the pwm ports. I'm getting this with the exception decoder:
|
@tohox Strange issue, i actually never used the dmx output, i will try to replicate your problem on the weekend if i get some time. The gibberish/Flickering is cause you are using one of the rx ports for PORTA, try using another available pin to get rid of that. @Sine-Audio That's useful, so its failing when setting up the webservier/spiffs.? Did you upload it?(click on "ESP8266 Sketch Data Upload") Requires: https://github.com/esp8266/arduino-esp8266fs-plugin |
@scamiv Yes I did! It uploads both gz files with that plugin.. Its super weird, I tried it with different baud rates and same issue.. |
@Sine-Audio I had problems getting this branch running initially and it was because I still had old versions of the espArtnetRDM and espDMX_RDM libraries in the Arduino directory. Copying the versions which came with @scamiv version solved that. |
@tohox Just tried that, no change in behaviour, still the same. |
Hi @scamiv Any time to try the DMX output and replicate the issuesI've been seeing with the Wemos boards? Thanks! |
Hi, this fork doesn't work for me. |
Hi, I spent some time fixing the major annoyances.
In the WS2812 code i added a routine to halt the NMI while outputting the led data, this fixes the random flicker issue. ( from https://www.esp8266.com/viewtopic.php?f=9&t=3979&start=20 )
Webserver:
I added the TCP cleanup code from esp8266/Arduino#1923 this fixes the biggest Memleak and helps against crashes.
I modified the webserver to use ServeStatic this safes some heap and allows to send the files gzipped.
This makes the interface more snappy while lowering the load on the heap some more.
Added cache header.
The main loop now checks for low heap, if heap gets critical we do a reset.
Didn't have a hard freeze since.
Changed a lot of strings over to PROGMEM.
Theres now a pwmports[] array, it defines pins that will be accessible for PWM at universe 10.
Still need to do some cleanup before a merge.
Compile options:
CPU Frequency needs to be 160mhz, SDK 2.4.1 recommeded.
Set lwIP to "V2 Lower Memory"
Dont forget to upload SPIFFS (click on "ESP8266 Sketch Data Upload")