-
Notifications
You must be signed in to change notification settings - Fork 0
Getting Started
Dan Roberts edited this page Jan 16, 2026
·
1 revision
This guide assumes you already have BedJetWebSchedule running on your LAN and it can control your BedJet over BLE.
- ESP32 supported by the Arduino Matter stack (Arduino-ESP32 core with
#include <Matter.h>support) - A device running BedJetWebSchedule (often another ESP32) reachable by HTTP
- Arduino IDE or PlatformIO
- Espressif Arduino-ESP32 core that includes Matter
- Serial monitor access (115200)
- Open
BedJetMatterBridge.ino. - Select your board + port.
- Build and flash.
- Open Serial Monitor at 115200.
On boot the firmware prints:
- reset reason
- saved SSID/base URL
- Matter pairing code if not commissioned
If any of the following are true, the bridge enters setup mode:
- No Wi-Fi SSID saved
- No BedJetWebSchedule base URL saved
- You hold BOOT while powering on
- Connect to the SoftAP:
- SSID:
BedJetBridge-XXXX
- SSID:
- Browse to:
http://192.168.4.1/ - Fill in:
- Wi-Fi SSID
- Wi-Fi Password
-
BedJetWebSchedule Base URL (example:
http://192.168.1.253) -
Default Mode (
HEATorCOOL) used when the BedJet is off and you set temp/fan
- Click Save & Restart
The bridge stores values in NVS Preferences under the namespace bjbridge and reboots.
On normal boot the firmware connects STA mode and waits up to ~30 seconds.
- Success prints IP + RSSI.
- Failure falls back to the setup portal AP.
When not commissioned, the bridge prints pairing info every ~10 seconds:
- Manual pairing code
- QR onboarding URL
You can also view it on the local status page:
http://<bridge-ip>/
Use any Matter controller that supports commissioning a thermostat/fan. Typical examples:
- Apple Home (via a Matter hub)
- Google Home
- Amazon Alexa (Matter)
- Browse to
http://<bridge-ip>/and confirm:- Base URL is correct
- Commissioned state (true/false)
- Verify BedJetWebSchedule responds:
- From another device:
http://<bedjetwebschedule-ip>/api/state
- From another device:
- After pairing, try:
- Thermostat mode: OFF -> HEAT
- Set heat setpoint
- Set fan speed to ~50%
- Force setup portal: hold BOOT at power-on
- Factory decommission: hold BOOT for ~5 seconds while running (decommissions Matter + reboots)
BedJet Matter Bridge • ESP32 Matter Thermostat/Fan bridge for BedJetWebSchedule by Dan Roberts