esp-rainmaker-skill

Generates ESP RainMaker cloud IoT agent firmware for ESP32 SoCs using verified APIs.

28|3|Updated Jun 24, 2026
One-click install
npx skills add https://github.com/JasonYANG170/esp-dev-skill --skill esp-rainmaker-skill-jasonyang170
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: esp-rainmaker-skill
Source: https://github.com/JasonYANG170/esp-dev-skill/tree/main/repos/esp-rainmaker
Command: npx skills add https://github.com/JasonYANG170/esp-dev-skill --skill esp-rainmaker-skill-jasonyang170

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Writing ESP RainMaker firmware requires strict initialization ordering, correct claiming configuration per chip, and exact API signatures; mistakes cause cloud desync, failed claiming, or dropped MQTT messages. This Skill grounds every generated line in the real esp-rainmaker repository headers, Kconfig, and official examples so no API is invented. ## Core Features & Use Cases - Scenario Recipes: 14 step-by-step recipes covering node creation, claiming/provisioning, custom and standard devices, OTA, scheduling, scenes, local control, MQTT budgeting, Ethernet, controller nodes, Zigbee gateway, and Thread Border Router. - Verified References: Real function signatures from esp_rmaker headers, a full CONFIG_ESP_RMAKER_* Kconfig table, 20+ pitfalls with wrong/correct code pairs, and an index of all official examples. - Use Case: Ask for a RainMaker light with brightness and hue plus OTA and scheduling, and receive a complete app_main.c with correct init order, write callback with parameter write-back, and matching sdkconfig.defaults. ## Quick Start Ask the agent to create an ESP RainMaker switch firmware project for ESP32-S3 with OTA and scheduling enabled.

Frequently Asked Questions about esp-rainmaker-skill

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create an ESP RainMaker device in firmware?

Call esp_rmaker_node_init first, then create a device with esp_rmaker_device_create or a standard helper like esp_rmaker_switch_device_create, add parameters and a write callback, and attach it with esp_rmaker_node_add_device. All service enable calls must precede esp_rmaker_start.

Which claiming type should I use for ESP32 or ESP32-C2?

Self Claim is not supported on ESP32 or ESP32-C2, so use Assisted Claim (requires Bluetooth) or No Claim with pre-provisioned credentials. ESP32-S2 lacks Bluetooth, so Assisted Claim is unavailable there too.

Why are my RainMaker parameter updates not reaching the cloud?

The write callback must call esp_rmaker_param_update or esp_rmaker_param_update_and_report after handling hardware, and the device must be attached via esp_rmaker_node_add_device. Frequent reporting can also exhaust the MQTT budget, so batch updates with esp_rmaker_report_updated_params.

Can ESP RainMaker local control and on-network challenge-response run together?

No. CONFIG_ESP_RMAKER_LOCAL_CTRL_FEATURE_ENABLE and CONFIG_ESP_RMAKER_ON_NETWORK_CHAL_RESP_ENABLE both use the protocomm_httpd singleton and are mutually exclusive; enable only one of them in sdkconfig.

Does ESP RainMaker work over Ethernet or Thread?

Yes. Ethernet works as the main transport with No Claim plus on-network challenge-response for user mapping, and RainMaker-over-Thread requires CONFIG_ESP_RMAKER_NETWORK_OVER_THREAD with OPENTHREAD_ENABLED, typically via a Thread Border Router setup.