- Download the Xiaomi app https://play.google.com/store/apps/details?id=com.xiaomi.smarthome
- Create an account
- Add the M1S Gateway in the app (hold button on M1S for 10 seconds to enter discovery mode)
- Folow the instuctions here: https://github.com/PiotrMachowski/Xiaomi-cloud-tokens-extractor
- Copy the output
You should get an output something like the following
Devices found for server "cn":
---------
NAME: Aqara Hub M1S
ID: 12345678
IP: <gateway_ip>
TOKEN: <gateway_token>
MODEL: lumi.gateway.acn01
---------
Install the python-miio library https://github.com/rytilahti/python-miio
- Install library
pip3 install python-miio
- Run the following to verify install
miiocli device --ip <gateway_ip> --token <gateway_token> info
Should ouput something like
Model: lumi.gateway.acn01
Hardware version: Linux
Firmware version: 3.1.3_0011
- Run the following command to enable telent (more details here: https://gist.github.com/zvldz/1bd6b21539f84339c218f9427e022709)
miiocli device --ip <gateway_id> --token <gateway_token> raw_command set_ip_info '{"ssid":"\"\"","pswd":"123123 ; passwd -d admin ; echo enable > /sys/class/tty/tty/enable; telnetd"}'
- Login to Gateway with
telnet <gateway_ip>
- Run the following commands from https://github.com/niceboygithub/AqaraGateway
mkdir /data/bin
cd /data/bin
wget -O /data/bin/curl "http://master.dl.sourceforge.net/project/mgl03/bin/curl?viasf=1"
chmod +x /data/bin/curl
/data/bin/curl -s -k -L -o /data/bin/mosquitto https://raw.githubusercontent.com/niceboygithub/AqaraM1SM2fw/main/binutils/mosquitto
chmod a+x /data/bin/mosquitto
mkdir /data/scripts
cd /data/scripts
/data/bin/curl -s -k -L -o /data/scripts/post_init.sh https://raw.githubusercontent.com/niceboygithub/AqaraM1SM2fw/main/binutils/post_init.sh
chmod +x /data/scripts/post_init.sh
- Reboot M1S with
reboot
- Follow install instructions from https://hacs.xyz/docs/installation/prerequisites
- Navigate to HACS > Integrations
- Three dots top right > Custom repositories
- Custom repository URL = https://github.com/niceboygithub/AqaraGateway
- Category = Integration
- Add
This may take a while, and there is a posibility you will run into GitHub rate limits
- Configuration > Integrations
- Add Integration button
- Seach for
Aqara Gateway
- Add
- Host: <gateway_ip>
- Password:
- Access Token: <gateway_token>
- Model: Aqara Gateway M1S
- If everything went well you should see home assistant add some new devices
does not work for me - always says "aborted"
telnet is enabled and works
tested without and with a password set
tested with token and without