IR + RF Hub Firmware for Kincony AG Hub with Haptique RS90
- 📥 Firmware:
bin/Haptique_Kincony_AG_Firmware_V1.1.2.bin - 🧩 Source (Arduino):
KinkonyAGFW_Arduino/Haptique_AGFW.ino - 📚 Docs: Setup Guide · API Reference
- 🧪 Tools: see
/tools(Python test scripts)
/
├─ bin/
│ └─ Haptique_Kincony_AG_Firmware_V1.Main.bin
│ └─ Haptique_Kincony_AG_Firmware_V1.1.2.Main.bin
├─ KinkonyAGFW_Arduino/
│ └─ Haptique_AGFW.ino
├─ docs/
│ ├─ SetupGuide.md
│ └─ API_Reference.md
├─ tools/
│ ├─ flash_firmware.sh # Flash ESP32 firmware via esptool.py
│ ├─ wifi_config.py # POST /api/wifi/save
│ ├─ status_check.py # GET /api/status
│ ├─ ir_send.py # POST /api/ir/send
│ ├─ ir_capture.py # GET /api/ir/last
│ └─ rf_send.py # POST /api/rf/send
├─ LICENSE
└─ README.md
Flash via Chrome / Edge directly from the web:
Start here:
👉 https://support.haptique.io/en/firmware/install
Steps
- Connect Kincony Hub via USB-to-Mini-USB
- Open the link above
- Select
.binfirmware file - Click Flash
⚠️ Some USB cables are power-only — use a data-capable cable.
# Replace /dev/ttyUSB0 with your serial port
# macOS: /dev/cu.usbserial* or /dev/cu.usbmodem*
esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 921600 write_flash 0x1000 bin/Haptique_Kincony_AG_Firmware_V1.bin- Download: https://www.kincony.com/esp-module-flash-download-tools.html
- Open the tool and select the firmware file:
bin/Haptique_Kincony_AG_Firmware_V1.bin - Choose your COM port → Start.
For cross-platform and automation, prefer esptool.py.
After flashing, the hub reboots and starts an AP:
SSID: HAP_IRHUB
Password: 12345678
Provision Wi-Fi via the API (2.4 GHz only). Default hostname: haptique-extender (mDNS).
- Folder:
/KinkonyAGFW_Arduino - Main file:
Haptique_AGFW.ino
- Install ESP32 Board Support.
- Open
KinkonyAGFW_Arduino/Haptique_AGFW.ino. - Board: ESP32 Dev Module (or your ESP32 variant); set correct Port.
- Click Upload.
🔎 Arduino rule: the sketch folder must match the
.inofilename. If prompted, allow Arduino to place it inHaptique_AGFW/.
Simple scripts live in /tools to exercise the device APIs.
python3 -m pip install --upgrade pip
pip install requestsReplace
--hostwith either your device IP (e.g.,192.168.1.100) or the hostnamehaptique-extender.local(when mDNS works).
python tools/wifi_config.py --host http://haptique-extender.local \
--ssid "Your2GSSID" --pass "YourPassword"
# POST /api/wifi/savepython tools/status_check.py --host http://haptique-extender.local
# GET /api/statuspython tools/ir_send.py --host http://<device-ip> \
--raw 9000,4500,560,560,560,560 --freq-khz 38 --duty 33 --repeat 1
# POST /api/ir/sendpython tools/ir_capture.py --host http://<device-ip>
# GET /api/ir/lastpython tools/rf_send.py --host http://<device-ip> \
--code 123456 --bits 24 --protocol 1 --repeat 8
# POST /api/rf/sendThese scripts only require
requestsand map 1:1 to the firmware endpoints implemented in the sketch.
See the full CHANGELOG.md for release history.
- AP + STA Wi-Fi provisioning with mDNS
- HTTP APIs for IR send, capture, and status
- RF 433 MHz send support
- OTA update system (manifest or direct URL)
- WebSocket live events for IR & RF receive
- Built for Kincony AG Hub & Haptique RS90 integration
We’ve moved detailed instructions to /docs:
Pull requests and improvements are welcome. Fork this repo, make changes, and open a PR.
This project is licensed under the MIT License — see the LICENSE file.
© 2025 Cantata Communication Solutions · Haptique RS90 × Kincony AG Hub