Skip to main content
The ESP-IDF component is a drop-in IoT client: Wi-Fi provisioning, secure WebSocket transport, the command runtime, dashboard widgets, NTP, NVS helpers, and optional OTA + GPIO — all behind one umbrella header.

1. Add the dependency

hyperwisor_esp_idf

Component source and changelog on GitHub.
In your project’s main/idf_component.yml:
Then reconfigure — the dependency manager pulls espressif/esp_websocket_client and espressif/cjson automatically:

2. Quick start

That is the whole thing. hyperwisor_start() joins Wi-Fi, authenticates on the secure channel and begins accepting commands. With no stored credentials it raises its own access point instead and serves a setup page.
Register your command handlers before hyperwisor_start(). A command that arrives on the first connection is otherwise answered with “Unknown command”.

3. How the device reaches an account

A device cannot simply connect. The secure channel only accepts devices whose public key is registered to an account, so the first boot goes through provisioning. The access point is named NIKOLAINDUSTRY_Setup plus the last six characters of the device id, with password 0123456789.
Do not hard-code Wi-Fi credentials to skip provisioning. A device given credentials in code never registers its public key, so the secure channel refuses it as unknown device — and because it now has credentials it will not raise its access point again, so there is no way back in. Either provision through the app, or call hyperwisor_hsc_register() yourself with an account token.

4. The umbrella header

#include "hyperwisor.h" pulls in everything — core, Wi-Fi, realtime, commands, NVS, widget, NTP, HTTP, and board port. Optional features (OTA, GPIO, Display) are included automatically when their Kconfig option is enabled.

Next: Configuration

Kconfig feature toggles and connection settings.