Skip to main content

Part 3: Build, Flash, and Test

·2 mins·
 Author
Ivan Theng
Project Manager at Espressif
Table of Contents
Build the project with ESP-IDF, flash it to an ESP32-C3 DevKit, provision it through the ESP RainMaker Home app, and verify every control, from app sliders to physical button presses.
WSRMS - This article is part of a series.
Part 3: This Article

With the driver implemented, you are ready to build the project, flash it to the ESP32-C3 DevKit, and verify end-to-end cloud connectivity through the RainMaker phone app.

Build and Flash
#

From your project directory, run:

cd rainbow_led                # directory where you extracted the zip
idf.py set-target esp32c3
idf.py build
idf.py -p <PORT> flash monitor
Replace with your actual serial port. On Linux it will typically be /dev/ttyUSB0 or /dev/ttyACM0, on Windows COMx and on macOS /dev/cu.usbserial-xxxx.

On the first build the Component Manager automatically downloads espressif/led_strip and espressif/button. Subsequent builds use the cached components.


Provision with the Phone App
#

  1. Download the ESP RainMaker Home app for Android or iOS.
  2. Open the app and log in.
  3. Tap +Add Device.
  4. Scan the QR code shown in the serial monitor, or enter the proof-of-possession (PoP) manually.
  5. Follow the Wi-Fi provisioning steps.

Once provisioned, the Rainbow LED device appears in the app with three controls:

ControlTypeRange
PowerToggleOn / Off
BrightnessSlider0 – 100
Cycle SpeedSlider1 – 10

Test Hardware Interactions
#

Verify that every path, from app to device and back to the app, works correctly:

ActionExpected result
Tap Power in appLED turns on/off
Drag Brightness sliderLED dims or brightens
Drag Cycle Speed sliderRainbow cycles faster or slower
Press BOOT button onceLED toggles; app Power toggle updates
Hold BOOT button 1 sSpeed and Brightness randomise; sliders update in app

Conclusion
#

Congratulations! You have completed the ESP RainMaker Studio workshop!

You designed a custom device data model visually, had a full ESP-IDF project generated for you, implemented only the hardware-specific driver code, and validated end-to-end cloud connectivity from phone app to physical LED.

The same workflow applies to any product you build with ESP RainMaker: define the model in Studio, fill in the driver, ship.


Reference
#

Planning a private ESP RainMaker deployment? Contact us.

Go back to the workshop overview

WSRMS - This article is part of a series.
Part 3: This Article

Related

Part 1: Build Your Data Model in Studio

·4 mins
Open ESP RainMaker Studio, create a Rainbow LED project, add a custom device with Power, Brightness, and Cycle Speed parameters, and download the generated ESP-IDF project.

Part 2: Implement the Driver Functions

·8 mins
Understand the generated app_devices.c scaffold and fill in the three driver sections: LED strip initialisation, BOOT button handling, and the FreeRTOS rainbow cycling task.