Skip to content

roycamp/bedjet-protocol

Repository files navigation

BedJet Protocol Documentation & Tools

Reverse-engineered protocol documentation and control tools for BedJet climate control devices, created for research, interoperability, and the development of third-party integrations such as home automation systems.

Protocol Documentation

BedJet V2

Protocol Documentation
Bluetooth LE BEDJET_V2_BLUETOOTH_PROTOCOL.md
433 MHz RF Remote BEDJET_V2_REMOTE_433MHZ_PROTOCOL.md

The V2 protocols were reverse-engineered by capturing Bluetooth packets from the iOS app and RF signals from the physical remote.

BedJet V3

Protocol Documentation
Bluetooth LE BEDJET_V3_BLUETOOTH_PROTOCOL.md

The V3 protocol was derived from existing open-source implementations:

  • HA-BedJet - Home Assistant integration (Python)
  • ESPHome - ESPHome component (C++)

I do not have a V3 unit to test with, so the V3 documentation consolidates these two implementations without verification.

Tools

bedjet-cli (Go)

bedjet-cli/ - README

A command-line tool for controlling BedJet (V2) devices via Bluetooth LE. Supports Linux and macOS.

Note: Currently only supports BedJet V2. V3 support is not implemented yet as I don't have a V3 unit to test with.

BedJet V2 Bluetooth Python Tools

BedJet-V2-Bluetooth-python/ - README

Python scripts for controlling BedJet V2 via Bluetooth using the bleak library.

BedJet V2 433 MHz RF Tools

BedJet-V2-Remote-433mhz/ - README

Control BedJet using a YardStick One USB transceiver (requires capturing codes from your existing remote with an RTL-SDR).

Reverse Engineering Setup (iOS Bluetooth)

To capture Bluetooth packets from the BedJet iOS app for protocol analysis:

1. Install Bluetooth Profile on iPhone

Download and install the Bluetooth logging profile from Apple:

https://developer.apple.com/bug-reporting/profiles-and-logs/

2. Download Additional Tools for Xcode

Download "Additional Tools for Xcode" which includes PacketLogger:

https://developer.apple.com/download/all/

3. Capture Packets

  1. Connect iPhone via USB
  2. Open PacketLogger
  3. File -> New iOS Trace
  4. Use the BedJet app on your phone - packets will appear in PacketLogger
  5. Filter for ATT/GATT operations to see BLE commands and responses

Disclaimer

This project is an independent, community-driven reverse engineering effort.

It is not affiliated with, endorsed by, or associated with BedJet LLC. All trademarks and product names are the property of their respective owners.

This repository contains original code and documentation derived from independent observation and analysis of protocol behavior for the purpose of interoperability and research.

License

This project is licensed under the MIT License. See the LICENSE file for details.

About

BedJet V2 & V3 Bluetooth Protocol

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published