doc: add flashing MM (for v5)
This commit is contained in:
parent
03b9eb3118
commit
702a1cc921
135
README.md
135
README.md
|
@ -95,8 +95,8 @@ Test resettable 1.8A input fuse:
|
||||||
- remove the resistor from the 5V screw terminal
|
- remove the resistor from the 5V screw terminal
|
||||||
- after a second, the green light should turns back on
|
- after a second, the green light should turns back on
|
||||||
|
|
||||||
WLED installation
|
flashing WLED
|
||||||
-----------------
|
-------------
|
||||||
|
|
||||||
You can easily install the latest WLED release, but this will not support DMX.
|
You can easily install the latest WLED release, but this will not support DMX.
|
||||||
|
|
||||||
|
@ -118,7 +118,8 @@ You can easily install the latest WLED release, but this will not support DMX.
|
||||||
|
|
||||||
WARNING: Do not select WLED version 0.14.*.
|
WARNING: Do not select WLED version 0.14.*.
|
||||||
It has a [unknown](https://wled.discourse.group/t/cannot-get-wled-flashed-on-esp32-mini-1/10047) [issue](https://github.com/Aircoookie/WLED/issues/3548) with the ESP32-MINI modules used by WLED chain (probably related to the toolchain), which causes a firmware crash and reboot in a loop.
|
It has a [unknown](https://wled.discourse.group/t/cannot-get-wled-flashed-on-esp32-mini-1/10047) [issue](https://github.com/Aircoookie/WLED/issues/3548) with the ESP32-MINI modules used by WLED chain (probably related to the toolchain), which causes a firmware crash and reboot in a loop.
|
||||||
Older v0.13.3 and Sound Reactive v0.13.4 work fine.
|
WLED v0.15.* or older v0.13.3 and Sound Reactive v0.13.4 start fine.
|
||||||
|
The UART interface is still broken, and prevents using [Improv](https://esphome.io/components/improv_serial.html) for WiFi configuration.
|
||||||
|
|
||||||
If you prefer to use [WLED binary releases](https://github.com/Aircoookie/WLED/releases) and [esptool](https://github.com/espressif/esptool) on the command line instead of the [web interface](https://install.wled.me/), here the commands (set the version to the one wished):
|
If you prefer to use [WLED binary releases](https://github.com/Aircoookie/WLED/releases) and [esptool](https://github.com/espressif/esptool) on the command line instead of the [web interface](https://install.wled.me/), here the commands (set the version to the one wished):
|
||||||
|
|
||||||
|
@ -151,6 +152,134 @@ To restart the board and check the debug output:
|
||||||
picocom -b 115200 --lower-rts --lower-dtr /dev/ttyUSB0
|
picocom -b 115200 --lower-rts --lower-dtr /dev/ttyUSB0
|
||||||
~~~
|
~~~
|
||||||
|
|
||||||
|
flashing MM
|
||||||
|
-----------
|
||||||
|
|
||||||
|
[MoonModules](https://mm.kno.wled.ge/) (MM) is a fork of WLED.
|
||||||
|
It is often used to experiment with features that could then be released in WLED.
|
||||||
|
It also includes numerous usermods, including the DMX IN support our board takes advantage of.
|
||||||
|
|
||||||
|
|
||||||
|
Get the release:
|
||||||
|
|
||||||
|
~~~
|
||||||
|
export MM_RELEASE="0.14.1-beta.30"
|
||||||
|
wget https://github.com/MoonModules/WLED/archive/refs/tags/v$MM_RELEASE.tar.gz
|
||||||
|
tar xf v$MM_RELEASE.tar.gz
|
||||||
|
cd WLED-$MM_RELEASE
|
||||||
|
~~~
|
||||||
|
|
||||||
|
Or get the latest source:
|
||||||
|
|
||||||
|
~~~
|
||||||
|
git clone https://github.com/MoonModules/WLED MM_WLED
|
||||||
|
cd MM_WLED
|
||||||
|
git checkout mdev
|
||||||
|
~~~
|
||||||
|
|
||||||
|
Lets define our devices (e.g. the build environments):
|
||||||
|
|
||||||
|
~~~
|
||||||
|
cat > platformio_override.ini << EOF
|
||||||
|
[platformio]
|
||||||
|
default_envs = wled_chain_v5
|
||||||
|
|
||||||
|
[wled_chain]
|
||||||
|
build_flags = -D BTNPIN=0
|
||||||
|
; enable
|
||||||
|
; -D WLED_ENABLE_DMX ; the DMX output is for fixed values (or RGB), and does not really map the DMX mode of the input. conflicts with WLED_ENABLE_DMX_INPUT
|
||||||
|
-D WLED_ENABLE_DMX_INPUT
|
||||||
|
-D USERMOD_AUDIOREACTIVE
|
||||||
|
-D UM_AUDIOREACTIVE_USE_NEW_FFT ; use latest (upstream) FFTLib, instead of older library modified by blazoncek. Slightly faster, more accurate, needs 2KB RAM extra
|
||||||
|
; disable
|
||||||
|
-D WLED_DISABLE_ALEXA
|
||||||
|
-D WLED_DISABLE_HUESYNC
|
||||||
|
; debug
|
||||||
|
${common.debug_flags}
|
||||||
|
; I did not find how to enable remote debugging
|
||||||
|
; -D WLED_DEBUG_HOST='"192.168.42.33"' ;; to send debug messages over network to host 192.168.x.y - FQDN is also possible
|
||||||
|
; -D WLED_DEBUG_PORT=7868 ;; port for network debugging. default = 7868
|
||||||
|
|
||||||
|
lib_deps = https://github.com/someweisguy/esp_dmx.git#v3.0.3-beta
|
||||||
|
|
||||||
|
; platform = ${esp32.platformV4} ;; else ESP_ERR_NOT_FINISHED is not declared, used by esp_dmx v3.1.0
|
||||||
|
; v3.1.0 has different API and causes crash during driver install
|
||||||
|
|
||||||
|
[env:wled_chain_v2]
|
||||||
|
platform = ${esp32s2.platform}
|
||||||
|
platform_packages = ${esp32s2.platform_packages}
|
||||||
|
board = lolin_s2_mini
|
||||||
|
board_build.partitions = tools/WLED_ESP32_4MB_1MB_FS.csv
|
||||||
|
build_unflags = ${common.build_unflags}
|
||||||
|
build_flags = ${common.build_flags} ${esp32s2.build_flags} ${wled_chain.build_flags}
|
||||||
|
;-D WLED_RELEASE_NAME=wled_chain-v2
|
||||||
|
-DARDUINO_USB_CDC_ON_BOOT=1 # try disabling and enabling unflag above in case of board-specific issues, will disable Serial
|
||||||
|
-DARDUINO_USB_MSC_ON_BOOT=0
|
||||||
|
-DARDUINO_USB_DFU_ON_BOOT=0
|
||||||
|
-DLOLIN_WIFI_FIX ; seems to work much better with this
|
||||||
|
-D CONFIG_ASYNC_TCP_USE_WDT=0
|
||||||
|
-D LEDPIN=1
|
||||||
|
-D STATUSLED=11
|
||||||
|
lib_deps = ${esp32s2.lib_deps} ${common_mm.lib_deps_S}
|
||||||
|
${wled_chain.lib_deps}
|
||||||
|
|
||||||
|
[env:wled_chain_v4]
|
||||||
|
platform = ${esp32.platformV4}
|
||||||
|
platform_packages = ${esp32.platformV4_packages}
|
||||||
|
board = esp32dev
|
||||||
|
board_build.partitions = tools/WLED_ESP32_4MB_1MB_FS.csv
|
||||||
|
build_unflags = ${common.build_unflags}
|
||||||
|
build_flags = ${common.build_flags} ${esp32.build_flags} ${wled_chain.build_flags}
|
||||||
|
;-D WLED_RELEASE_NAME=wled_chain_v4
|
||||||
|
-D LEDPIN=25
|
||||||
|
-D STATUSLED=2
|
||||||
|
lib_deps = ${esp32.lib_deps} ${common_mm.lib_deps_S}
|
||||||
|
${wled_chain.lib_deps}
|
||||||
|
monitor_filters = esp32_exception_decoder
|
||||||
|
|
||||||
|
[env:wled_chain_v5]
|
||||||
|
platform = ${esp32.platformV4}
|
||||||
|
platform_packages = ${esp32.platformV4_packages}
|
||||||
|
board = esp32dev
|
||||||
|
board_build.partitions = tools/WLED_ESP32_4MB_1MB_FS.csv
|
||||||
|
build_unflags = ${common.build_unflags}
|
||||||
|
build_flags = ${common.build_flags} ${esp32.build_flags} ${wled_chain.build_flags}
|
||||||
|
;-D WLED_RELEASE_NAME=wled_chain_v5
|
||||||
|
-D LEDPIN=25
|
||||||
|
-D STATUSLED=2
|
||||||
|
lib_deps = ${esp32.lib_deps} ${common_mm.lib_deps_S}
|
||||||
|
${wled_chain.lib_deps}
|
||||||
|
monitor_filters = esp32_exception_decoder
|
||||||
|
|
||||||
|
EOF
|
||||||
|
~~~
|
||||||
|
|
||||||
|
To compile the firmware:
|
||||||
|
|
||||||
|
~~~
|
||||||
|
platformio run
|
||||||
|
~~~
|
||||||
|
|
||||||
|
To flash the firmware over UART:
|
||||||
|
|
||||||
|
~~~
|
||||||
|
esptool.py --port /dev/ttyUSB0 erase_flash
|
||||||
|
esptool.py --port /dev/ttyUSB0 write_flash 0 .pio/build/wled_chain_v5/bootloader.bin
|
||||||
|
esptool.py --port /dev/ttyUSB0 write_flash 0x8000 .pio/build/wled_chain_v5/partitions.bin
|
||||||
|
esptool.py --port /dev/ttyUSB0 write_flash 0x10000 .pio/build/wled_chain_v5/firmware.bin
|
||||||
|
~~~
|
||||||
|
|
||||||
|
Somehow the bootloader does not work.
|
||||||
|
Instead, just flash the one from WLED as shown above.
|
||||||
|
|
||||||
|
Once flashed, the WLED status LED on the top left of the corner should blink.
|
||||||
|
|
||||||
|
To get serial log with RTS connected to RST and DTR to DL:
|
||||||
|
|
||||||
|
~~~
|
||||||
|
picocom -b 115200 --lower-rts --lower-dtr --imap lfcrlf /dev/ttyUSB0
|
||||||
|
~~~
|
||||||
|
|
||||||
installation
|
installation
|
||||||
============
|
============
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue