dresden-elektronik / deconz-rest-plugin

deCONZ REST-API plugin to control ZigBee devices
BSD 3-Clause "New" or "Revised" License
1.89k stars 496 forks source link

Raspberry Pi 5 + Raspbee = no devices found #7413

Closed 00lex closed 9 months ago

00lex commented 9 months ago

Does the issue really belong here?

Is there already an existing issue for this?

Describe the bug

Hi! i was running deconz on my rpi4 with raspbee2 previously without issues. Now i swapped the sd card and the module to the rpi5.

is deconz not ready for rpi5 or do I have a GPIO issue?

Steps to reproduce the behavior

Unlike previous Raspberry Pi models, where you could enable a serial console on GPIO14 and 15, enabling a serial console from raspi-config will enable a serial console on the new UART connector on /dev/ttyAMA0 on Raspberry Pi 5.

Expected behavior

getting help. I don't know what else to do

Screenshots

No response

Environment

deCONZ Logs

No response

Additional context

No response

00lex commented 9 months ago

got it!!!!!

add: dtparam=uart0_console to config.txt

close and please update the install instructions!

Mimiix commented 9 months ago

Great you figured it out :)

Thanks for sharing!

I'll close when Dresden updates the install guide.

Mimiix commented 9 months ago

To make a note: RPI5 is not listed as supported models on Phoscon docs as of now:

https://phoscon.de/en/raspbee2/install#raspbian

https://phoscon.de/en/raspbee/install#raspbian

It is being worked on :)

manup commented 9 months ago

Hi we received our first RPi5 today to make some tests and update the docs. The (optional?) heat sink is a bit problematic as it sits right where RaspBee is located.

ebaauw commented 9 months ago

You probably want to use a GPIO riser. I've been using these for the RaspBee II on my Raspberry Pi 4B with heatsink case. Make sure to get one with medium to long pins; the RaspBee doesn't make good contact with the shorter variants.

The Pi 5 has a separate header for the serial port and no longer exposes it on GPIO 14 and 15, where the RaspBee expects it.
The documentation of the RP1 south bridge chip states that it supports up to 5 UARTs, that can be configured using alternate GPIO functions. I think adding the following line to /boot/config.txt should expose UART0 on GPIOs 14 and 15:

gpio=14,15=a4

See section 3.1 of the documentation and https://www.raspberrypi.com/documentation/computers/config_txt.html#gpio-control

00lex commented 9 months ago

Hi we received our first RPi5 today to make some tests and update the docs. The (optional?) heat sink is a bit problematic as it sits right where RaspBee is located.

Maybe but the rpi5 runs in my environmental 2 degree Celsius cooler. I'll leave the heat sink in its box for now.

Tomorrow I will test how the raspbee2 module behaves with the usb3 of the rpi5.

BTW. Found the Solution here: https://forums.raspberrypi.com/viewtopic.php?t=359132 maybe someone is interested in the discussion here

00lex commented 9 months ago

You probably want to use a GPIO riser. I've been using these for the RaspBee II on my Raspberry Pi 4B with heatsink case. Make sure to get one with medium to long pins; the RaspBee doesn't make good contact with the shorter variants.

or something like that :): tempImagexPSLf1

the reliability with usb3 without distance to the zigbee module is much much better. with the rpi4 I was able to disconnect the zigbee network with a lot of load on usb3. with the rpi5 without extension there are only rare dropouts. however. if you don't want to have stress, you continue to use extensions

btt: this wasnt a bug. the solution is: https://github.com/dresden-elektronik/deconz-rest-plugin/issues/7413#issuecomment-1840734778

case closed

ebaauw commented 9 months ago

Still cannot get my Pi 5 to recognise my old RaspBee (original model). @00lex what is your entire /boot/config.txt? And I assume you did the no serial console, but enable serial port from raspi-config?

I now have:

dtparam=uart0_console
dtparam=uart0=on

I edited the first line as per above suggestion, and I think raspi-config added the second line. The GPIOs are configured for the serial port:

$ pinctrl get 14-17
14: a4    pn | hi // PIN8/GPIO14 = TXD0
15: a4    pu | hi // PIN10/GPIO15 = RXD0
16: no    pd | -- // PIN36/GPIO16 = none
17: no    pd | -- // PIN11/GPIO17 = none

But the RaspBee isn't recognised by GCFFlasher_internal, nor by deCONZ.

00lex commented 9 months ago

just that:

enable_uart=1
dtparam=uart0_console

without: dtparam=uart0=on because:

enabling a serial console from raspi-config will enable a serial console on the new UART connector on /dev/ttyAMA0 on Raspberry Pi 5

Nothing else!

ebaauw commented 8 months ago

OK, Apparently I managed to brick one my old RaspBee devices. The other one is working with these settings, though.

nsk commented 8 months ago

Hi I tested your solution, no change for me I'm going to wire my rasbee2 in serial usb to see if I can flash a firmware directly to see if that solves anything, but no documentation on how to do it, will fumble around: pin 1 pin 6 and pin 8 for communication with the raspbee and Coolterm see if I can communicate with the raspbee .... serialusb

krebsvo commented 7 months ago

Where can I find the /boot directory (the file config.txt)? I installed the last relay from the Git Hub page on the RI 5.