Feat flashmode for ESP8266 #13

Open
opened 2026-04-05 17:51:36 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @unlogisch04 on 1/11/2026

On Official Slime HW it is not possible to flash them just over USB when they are in a boot loop.
They are based from ESP8266.
Left ESP32* out of loop as they either have a HW solution to put them into Flash Mode or use USB JTag on the chip.
Target is, that there is a fail safe at begin of the program so it goes into flash mode if it reboots more than 3 times after a crash. For ESP32 it is directly after a crash. For HW with softpower solution (gorbits as example) the code in init has maybe to be changed, so a reboot with a button press is still possible.

Current Status is:

  • A safe mode shell
  • Boot Prompt with Infos from Flash
  • Small Serial command set:
    • FRST - Factory Reset, cleans the config file and WiFi credentials (useful by crashes to wrong configs)
    • SET FLASHMODE - Sets the tracker into flashmode does work on ESP8266 and ESP32-C3 )
    • REBOOT - Reboots the tracker
  • Still not able to recover from updates that have been interrupted by power off at the wrong time

Tasks:

  • Needs to be checked if this constructor runs rly before all other constructors.
  • Testing with official Slimes
  • Testing that no breaks for ESP32 variants.
  • Lint
*Originally created by @unlogisch04 on 1/11/2026* On Official Slime HW it is not possible to flash them just over USB when they are in a boot loop. They are based from ESP8266. ~~Left ESP32* out of loop as they either have a HW solution to put them into Flash Mode or use USB JTag on the chip.~~ Target is, that there is a fail safe at begin of the program so it goes into flash mode if it reboots more than 3 times after a crash. For ESP32 it is directly after a crash. For HW with softpower solution (gorbits as example) the code in init has maybe to be changed, so a reboot with a button press is still possible. Current Status is: - A safe mode shell - Boot Prompt with Infos from Flash - Small Serial command set: - FRST - Factory Reset, cleans the config file and WiFi credentials (useful by crashes to wrong configs) - SET FLASHMODE - Sets the tracker into flashmode does work on ESP8266 and ESP32-C3 ) - REBOOT - Reboots the tracker - Still not able to recover from updates that have been interrupted by power off at the wrong time Tasks: - [x] Needs to be checked if this constructor runs rly before all other constructors. - [x] Testing with official Slimes - [x] Testing that no breaks for ESP32 variants. - [x] Lint
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/SlimeVR-Tracker-ESP#13