Smart Garden Radio Module
Overview
This is a SoM that is used as a radio module by the GARDENA smart gateway (manual, FOSS parts).
Hardware
Silicon Labs SiM3U167-B-GM SoC
Silicon Labs Si4467 transceiver (via SPI)
Controls an RGB LED via high drive pins. It’s expected to mirror the state of 3 low-drive pins coming from the Linux SoC.
UART is connected to the Linux SoC. Usually it’s used for PPP, but it can also be used for debugging when PPP is not active.
Supported Features
The sgrm
board supports the hardware features listed below.
- on-chip / on-board
- Feature integrated in the SoC / present on the board.
- 2 / 2
-
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files. -
vnd,foo
-
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.
sgrm/sim3u167
target
Type |
Location |
Description |
Compatible |
---|---|---|---|
CPU |
on-chip |
ARM Cortex-M3 CPU1 |
|
Clock control |
on-chip |
Silabs Si32 PLL clock controller node1 |
|
on-chip |
Silabs Si32 AHB clock controller node1 |
||
on-chip |
Silabs Si32 APB clock controller node1 |
||
Cryptographic accelerator |
on-chip |
Si32 AES node1 |
|
DMA |
on-chip |
Si32 DMA controller1 |
|
Flash controller |
on-chip |
Silabs Si32 flash controller1 |
|
GPIO & Headers |
on-chip |
Si32 GPIO4 |
|
Interrupt controller |
on-chip |
ARMv7-M NVIC (Nested Vectored Interrupt Controller)1 |
|
MTD |
on-chip |
Flash node1 |
|
on-board |
Fixed partitions of a flash (or other non-volatile storage) memory1 |
||
Pin control |
on-chip |
Silabs Si32 Pin Controller1 |
|
Serial controller |
on-chip |
Si32 USART2 |
|
SRAM |
on-chip |
Generic on-chip SRAM description1 |
|
Timer |
on-chip |
ARMv7-M System Tick1 |
Connections and IOs
Pin |
Name |
Note |
---|---|---|
PB0.0 |
TX (O) |
Serial connection to the Linux SoM |
PB0.1 |
RX (I) |
|
PB0.2 |
RTS (O) |
|
PB0.3 |
CTS (I) |
|
PB0.4 |
LED red (I) |
Controlled by the Linux SoM |
PB0.5 |
LED green (I) |
|
PB0.6 |
LED blue (I) |
|
PB0.13 |
TX (O) |
UART1 for debugging (no connection to Linux SoM) |
PB0.14 |
RX (I) |
|
PB4.0 |
LED red (O) |
Mirrors PB0.4 |
PB4.1 |
LED green (O) |
Mirrors PB0.5 |
PB4.2 |
LED blue (O) |
Mirrors PB0.6 |
Programming and Debugging
Flashing
The easiest way is to do this via SSH from the Linux SoM that’s connected to the SiM3U SoM.
On your building machine:
scp -O build/zephyr/zephyr.hex root@IP:/tmp/
On the gateway:
openocd -f board/gardena_radio.cfg -c 'program /tmp/zephyr.hex verify exit'
reset-rm
Debugging
The easiest way is to do this via SSH from the Linux gateway as well:
openocd -f board/gardena_radio.cfg -c init