Zigbee CC2531

Iš Žinynas.
Jump to navigation Jump to search

Flashinimas

Pasirodo jog galima apsieiti be CC Debugger ir download cable...

Sujungiam pagal Raspberry PI pinus. Dongle taip pat turi būti prijungtas prie USB.

Flashing-cc2531-6.jpg

Raspberry Pi	CC2531
GND      	GDN
Pin 38          DD
Pin 36          DC
Pin 35	        RST

Pažiūrime ar sudiegta WiringPI sąsaja:

gpio -v

Jeigu ne tuomet įdiegiam gpio. Taip pat reikia tūrėti įdiegtą git. Parsiunčiame flashinimo įrankių repozitoriją:

git clone https://github.com/jmichault/flash_cc2531.git
cd flash_cc2531

Pažiūrime ar teisingai aptiktas usb:

./cc_chipid

Turi grąžinti reiškmę:

ID = b524.

Parsiunčiam naujausią firmware ir išpakuojame

wget https://github.com/Koenkk/Z-Stack-firmware/raw/master/coordinator/Z-Stack_Home_1.2/bin/default/CC2531_DEFAULT_20201127.zip
unzip CC2531_DEFAULT_20201127.zip

Ištriname flash

./cc_erase 

Įprogramuojame naują flash

./cc_write CC2531ZNP-Prod.hex 

Atjungiame laidus ir išjungiame RaspberryPI.

Zigbee2MQTT

Pažiūrime ar donglas gerai prijungtas:

ls -l /dev/serial/by-id
lrwxrwxrwx 1 root root 13 Mar  5 09:17 usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0018E28AF7-if00 -> ../../ttyACM0

Sudiegiam nodejs:

curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
apt-get install -y nodejs git make g++ gcc
node --version  # Turi rodyti v12.X arba v10.X
npm --version  # Turi rodyti 6.X

Klonuojam Zigbee2mqtt repozitoriją

git clone https://github.com/Koenkk/zigbee2mqtt.git /opt/zigbee2mqtt
chown -R pi:pi /opt/zigbee2mqtt

Įdiegiam priklausomybes

su - pi
cd /opt/zigbee2mqtt
npm ci --production

Konfigūracija /opt/zigbee2mqtt/data/configuration.yaml, atsidarę failą turime nurodyti kokį mqtt serverį ir topic'ą naudosime, taip pat slaptažodį jeigu pastarasis bus naudojamas.

# MQTT settings
mqtt:
  # MQTT base topic for Zigbee2MQTT MQTT messages
  base_topic: zigbee2mqtt
  # MQTT server URL
  server: 'mqtt://localhost'
  # MQTT server authentication, uncomment if required:
  # user: my_user
  # password: my_password

Taip pat rekomenduojama sugeneruoti naują network raktą, pirmojo startavimo metu:

advanced:
   network_key: GENERATE

Dabar galima paleisti (pi vartotojo teisėmis) zigbee2mqtt daemoną:

cd /opt/zigbee2mqtt
npm start

Norint naudoti kaip sistemos servisą, systemd service failas aprašytas čia.

Upgrade

Norint atnaujinti jau įdiegtą zigbee2mqtt sistemoje, išjungiame jos servisus:

systemctl stop zigbee2mqtt
cd /opt/zigbee2mqtt

Padarome atsargines duomenų kopijas

cp -R data data-backup

Atnaujiname

git checkout HEAD -- npm-shrinkwrap.json
git pull
npm ci

Konfigūracijos atstatymas

cp -R data-backup/* data
rm -rf data-backup

Paleidžiame daemoną

systemctl start zigbee2mqtt