I’m new af to the Raspberry Pi world, as also to Home Assistant. So please already forgive me stupid questions
I have recently bought a RPi 4B 4GB and the RaspBee II Shield. While I was trying to install deCONZ and/or zha, I stumbled over various things like that you need to configure the device name manually for deCONZ and found some great tutorials, thread here, etc.
But one thing always bothered me and I just can’t get it solved: I cannot see the Rasbee module being listed anywhere. Also not under System => Hardware. It’s just not there. This guide is not using the Rasbee shield, but the Conbee USB Stick, but I thought it might be similar to what I have here. But under “Hardware” I can only see “serial: /dev/ttyAMA0” (which he mentions is there, before he installed the stick) but nothing like “/dev/ttyACM0” or something similar.
What am I doing wrong? Do I have to ssh to the PI and install something first? Do I have to do anything listed here: https://phoscon.de/en/raspbee/install?
I mean, I’m used to using Linux since ages, but tbh, I never ever dealt with any hardware / devices on Linux, so that’s where my knowledge ends. And all tutorials read like that I actually don’t have to do anything else except just sticking the shield onto the Pi and that’s it
Thanks guys and again, sorry for the probably stupid question and if it had been asked already, but I just couldn’t find the answer…
[EDIT] The solution:
First, thanks to @dbrunt for the help, much appreciated!
Second: I still couldn’t get deCONZ to work, but that’s only because I still have no clue how to configure it and set the device Adding it to ‘/config/configuration.yaml’ had no effect. But I don’t care, I have zha now
So the actual issue is (and I hope I understood that correctly) that for the RPi 3 and 4 the primary UART (which is the one to be present on the GPIO board, so where the shield is connected to) is connected to the miniUART, which
a) is disabled by default and
b) has less capabilities as the PL011 UART.
So I guess you could (purely theoretically) just enable the miniUART and try to have zha connect to it.
But as mentioned: It’s said to have less features, so we want the primary to be on the PL011.
And the trick to do this is actually by disabling bluetooth, because it is by default assigned to the primary UART and by disabling it, the RPi will also assign the PL011 to the primary! And this procedure is called a device tree overlay, so we reconfigure which UART is primary/secondary.
These overlays are done on the host system, not in HassIO (which runs inside a docker container)!
To do this, you need to:
- Shut down your RPi
- Get the SD Card out and hook it to your PC.
- You will see a config.txt in the root folder of it. Open it with a text editor
- Somewhere around the top, maybe below the “kernel” setting, add:
RPi4: “dtoverlay=disable-bt” (Yes, “pi3-disable-bt” also works on RPi 4, but it is just an alias for “disable-bt” since quite some time, you can use on RPi 4 (https://github.com/raspberrypi/linux/commit/8332ad714232397caa3280dfdce0a28f853a2e0e#diff-f6cd822b204f664348c3ce5c7147aad4R1566))
- Save the file and insert the card back into your RPi
- After HA is back, go to “Configuration” => “Integrations” => Click the “+” in the bottom right corner => Search for “zha” and select the /dev/ttyAMA0 serial device. After a little bit of loading it should auto detect that you have a RaspBee II and suggest which lib it uses to talk to it!
That’s it: I could already successfully add two Xiaomi door/window sensors, so I declare this working That’s all I did to get the RaspBee working: No further installation needed, no need to do this: https://phoscon.de/en/raspbee/install. Simply stick the RaspBee II shield to your RPi and do the steps above!
If you want to read and understand more about UART and how RPi handles them, check the links dbrunt posted below:
P.S.: Yes, the trick with disabling BT is not new and I admit, I also found this in old threads which were about a fresh RPi 3 release and I had no clue on how to do this. So the solution was out there, but with my fresh RPi and HA knowledge, I could just not see that this is the solution to my problem