Improv logo

Improv Wi-Fi is an open standard for connecting devices to Wi-Fi using Bluetooth LE or Serial

Improv is a free and open standard with ready-made SDKs that offer a great user experience to configure Wi-Fi on devices:

  1. Power on device
  2. Client application uses Improv to send the Wi-Fi credentials to the device
  3. The device connects to Wi-Fi network and returns a URL
  4. User visits URL to continue setting up the device

Improv protocol can be used over Bluetooth Low Energy or via the serial port. Both protocols can also be used from a browser.

Improv via BLE

Your browser is not supported. To try it out, visit this page with Google Chrome or Microsoft Edge.

Improv via Serial

Your browser is not supported. To try it out, visit this page with Google Chrome or Microsoft Edge.

Need a device that runs Improv? Install this example on an ESP32.

See it in action

Adopted by the following projects

The problem we're solving

Configuring a device to connect to your Wi-Fi network is a pain.

A lot of devices require to be connected to the network to be controlled or receive data. The majority of these devices use Wi-Fi to establish a connection with a local application or the cloud.

The most common approach is Soft Enabled Access Point. The device starts its own Wi-Fi access point, the user connects to it with their phone/computer and then interacts directly with the device via an app or a website served from the device.

It’s easy for something to go wrong. The user submits incorrect Wi-Fi credentials or the phone loses access to the access point. In such cases it is difficult to recover. Phones also have a bad time dealing with access points that don’t provide internet access.

Scope & Constraints

The goal of the Improv standard is to get the device connected to the Wi-Fi via Bluetooth Low Energy (BLE) or Serial (USB/UART). It is not the goal to offer a way for devices to share data or control. The standard should work without requiring the device to contain a screen.

More Reading