Skip to content

1.1 Flashing

Patrick Jahns edited this page May 11, 2016 · 13 revisions

There are several possibilities to flash your controller, but most commonly you want to either flash pre-compiled binaries or compile the binaries yourself and flash them afterward.

The pre-compiled binaries provided via github are generated by an automatic build process (TRAVIS-CI) whenever a new version is released. This ensures, that the binaries have not been modified in any sense or include code that might be harmful.

Precompiled rom and filesystems

In order to flash your controller, you will need:

Steps for ESPTOOL

  • copy esptool to the directory of the extracted firmware files
  • replace COMPORT with the port of your Serial programmer in the following code and execute it
esptool -p COMPORT -b 115200 write_flash -ff 40m -fm qio -fs 32m 0x00000 rboot.bin 0x02000 rom0.bin 0x100000 spiff_rom.bin

After successfully flashing it is recommended to reset the controller (via reset button or by cycling the power)

Compiling yourself

This option is only recommended if you have experience in setting up your own development environments, are comfortable using git/commandline tools/make

In order to compile the binaries, you need:

If you want to include the webapplication, you also need:


  1. Setup your development environments
    This step assumes that you already have a working SMING development environment.

In your SMING directory execute the following commands:

git remote add rgbwwdev
git pull rgbwwdev
git checkout rgbwwdev/rgbwwdev
  • Add the RGBWW Library into the SMING framework path: Sming/Libraries/RGBWWLED
cd Sming/Libraries
git clone
  • Recompile your SMING framework (make clean && make all)
  1. Prepare the Firmware
  • Clone the firmware repository to your local filesystem
  • Add the project to eclipse
  1. Prepare the Webinterface (optional - skip this step if you don`t want to use the webinterface)
  • From release
    • Download the release files
    • Copy the webfiles (index.html.gz, init.html.gz, app.min.css.gz, app.min.js.gz) to the folder webapp in your firmware directory
  • From sourcecode (requires nodejs and bower)
    • Clone esp_rgbww_webinterface
    • Open a command/terminal in the esp_rgbww_webinterface directory and run npm run release to create the distribution files for the webinterface
    • Copy the resulting files from dist to the firmware project into the folder webapp in your firmware directory (esp_rgbww_firmware/webapp). If the folder webapp does not exist, create it
  1. Make and Flash
    If you have followed the instructions until here, you can now compile your own version of the firmware via running make flash

After successfully flashing it is recommended to reset the controller (via reset button or by cycling the power)

You can’t perform that action at this time.