Installation
Pages 42
Development
Releases
Build Instructions
Home Accessory Architect
Home Accessory
Installation
Setup Mode
HAA Home Manager App
Configuration
About
General
Accessory
| Actions
Service Types
Air Quality
Battery
Data History
Fan
Free Monitor
Garage Door
HAA iAirZoning
Heater Cooler
Humidifier
Light Sensor
Lightbulb
Lock Mechanism
Sensors
Power Measure
Security System
Stateless Button & Doorbell
Switch & Outlet
Temperature & Humidity
TV Service
Water Valve
Window Covering
Other
Devices Database
Infra-red
Clone this wiki locally
Go to Third-Party Installation Tools
Installing HAA
Requisite: ESPTool must be installed in your system. Installation on macOS
-
Download fullhaaboot.bin
-
Connect your device to your FTDI adapter in flash-mode, connecting GPIO-0 to GND or holding down device button while connecting if it uses GPIO-0.
-
Use ESPTool to flash it in your device:
Flash the new firmware with SPI DOUT mode (most compatible):
python3 -m esptool erase_flash python3 -m esptool -b 115200 write_flash -fs 1MB -fm dout -ff 40m 0x0 fullhaaboot.bin
-
You must configure WiFi network, and you can configure your MEPLHAA Script. At this step, Some devices need additional power to work, and must be connected to mains instead USB adapter. To configure WiFi settings, device generates its own WiFi in AP mode. You must connect to it in order to setup your WiFi network. Simply take your iOS device, go to Setting -> WiFi, and search a SSID with HAA- followed of last MAC address, connect to it, and wait a few seconds until connects.
-
One your device is connected to HAA Wifi, open a web browser (Safari) and type:
http://192.168.4.1:4567
A setup web page appears showing you all configuration options. Configure them as your needs and click Save. Remember to configure SPI Flash mode.
- To finish initial setup, click Save button and wait about 10 minutes until process finish (While installation is working, device doesn't show anything, and buttons don't work). After that, if you configured a MEPLHAA Script, you will be able to add your accessory to your HomeKit ecosystem using Home App; if there is not script, device will boot in setup mode.
Note: If installation fails, you must start all process again from step 2.
Accessing Setup mode, you will be able to change configuration or even update firmware OTA.
For security reasons, HAA OTA Installer can only install oficial signed firmwares to prevent unwanted installations of malicious or hacked files.
Using a custom server for OTA updates
By default, HAA OTA uses GitHub servers to update firmware. If you want, you can run your own HTTP web server to store and apply HAA updates Over-The-Air and avoid external connections.
To do it, you must access to web UI Setup and set following info:
- Custom server for updates: Hostname or IP address of your server, followed of path. Ex: mynas/haa_updates Last lash must not be pressent.
- Port: Port used by server. Default: 443.
- Secure connection: If checked, server must use HTTPS with SSL or TLS protocol. Default: yes.
Don't worry about using a non-SSL web server, because all necessary files are signed and verified by hardcoded public key of firmware.
In your server, you must load following files from: https://github.com/RavenSystem/haa/releases
- haaboot.bin
- haaboot.bin.sec
- haamain.bin
- haamain.bin.sec
- haaversion
- otamain.bin
- otamain.bin.sec
- otaversion
Installing a specific version
Tuning custom server options, it is possible to install a specified version of HAA.
- Custom server for updates:
github.com/RavenSystem/haa/releases/download/<version>
- Port:
443
- Secure connection:
Checked
Where <version>
is number in format a.b.c
Older versions could be incompatible with actual, then you should save a copy of MEPLHAA script before installing.
Installing BETA versions
Go to HAA Beta releases site and follow instructions about how to configure custom server to use BETA versions channel.
Third-Party Installation Tools
Following software can be use to install HAA firmware. They are developed and supported by their respective authors. If you have any suggestion or issue, feel free to contact them in their GitHub repositories.
- NodeMCU PyFlasher
- Official Flash Tools for MS Windows
- Tuya-Convert OTA Version
- vglucas' HomeKitFlasher Tool (MS Windows)
- Sonoff DIY mode
-
Shelly Devices OTA Version
-
IMPORTANT: Until developer fixes current issue, use this way to install HAA:
- Connect to Shelly Wifi hotspot, configure your Wifi network, and search its IP address.
- Install Tasmota using mg2tasmota link
- Connect to Tasmota Wifi hotspot, and configure your Wifi network.
- Install HAA from Tasmota.
-
IMPORTANT: Until developer fixes current issue, use this way to install HAA:
- Tasmota to HAA: Open device IP address in a web browser, go to
Firmware Upgrade
->Upgrade by file upload
, and use tasmota2haa.bin.gz file (Keep it compressed).
When you do a fresh install of HAA using OTA, remember to do a complete power cycle to reboot all additional hardware of device.
IMPORTANT: Revert to original firmware using OTA is NOT possible from HAA due to its sign security system and the lack of reflash boot sector feature. A wired connection is needed.
Flash Parameters
If you are using a Third-Party Installation Tool, it is important that you use these parameters in order to flash device right:
Parameter | Value |
---|---|
Baudrate | 115200 |
Flash Size | 1MB (8Mbit) |
Flash Mode | DOUT (See SPI Flash Modes Database) |
SPI Speed | 40MHz |
Crystal Freq. | 26M |
File | fullhaaboot.bin at 0x0
|
HomeKit setup
Once you configure your MEPLHAA script in Home Accessory Architect firmware using its Setup Mode, you will can pair your device with HomeKit.
In your iOS device, open Home App and follow normal steps to add a new accessory.
QR-Code:
Normal Code:
0218-2017
Pairing setup takes about 30 seconds.
Note: If pairing fails, you can un-power your device, re-power it, and start HomeKit setup again (WiFi settings keep configured).
Capture Logs
If you want to see UART output to get logs, you can use screen
command under macOS
and GNU/Linux after connecting your device to computer (non 230VAC):
If you only want to watch the output of the debug logs then use the following command:
screen /dev/<your_device> 115200
To capture the debug logs into a text file for further analysis then
use the following command. The logs will be recorded into a file named
screenlog.0
.
screen -L /dev/<your_device> 115200
To exit screen mode type: Ctl-a
, Ctl-k
, and answer 'y'.
HAA OTA Logs
When device is installing or updating, you can capture logs from HAA OTA directly from your network with this command under macOS and GNU/Linux:
nc -kulnw0 45678