[riot-notifications] [RIOT-OS/RIOT] particle-*: Configure antenna switch (#12344)

chrysn notifications at github.com
Mon Sep 30 20:26:17 CEST 2019


### Contribution description

The particle-{argon,boron,xenon} boards all have a uFL connector and a PCB antenna for 2.4GHz radio, connected by a SKY13351-378LF switch configured by a VCTL[12] pin pair.

This sets the default configuration to use the PCB antenna, as driving an unconnected antenna will deteriorate radio perforance. I don't think that the nRF52 will damage itself driving an unconnected antenna, but doing that it's generally very bad practice. With bad conscience I did a brief test with pins configured the other way, and got a 20dB signal increase compared to that test.

### Testing procedure

I only tested this on a Xenon board, as that's the only of those I have; there, I got about 20dB increases in ping RSSIs compared to switching on the other antenna. (Testing the original state is rather pointless as there's floating pin on capacitors then, and the switch's behavior when not exactly one pin is on is undefined). My test output (top: correct; bottom: wrong antenna enabled):

```
> ping6 fe80::cc30:8ef6:582b:14c6%9
ping6 fe80::cc30:8ef6:582b:14c6%9
12 bytes from fe80::cc30:8ef6:582b:14c6: icmp_seq=0 ttl=64 rssi=-49 dBm time=3.765 ms
12 bytes from fe80::cc30:8ef6:582b:14c6: icmp_seq=1 ttl=64 rssi=-52 dBm time=3.765 ms
12 bytes from fe80::cc30:8ef6:582b:14c6: icmp_seq=2 ttl=64 rssi=-52 dBm time=3.765 ms
```
```
> ping6 fe80::cc30:8ef6:582b:14c6%9
ping6 fe80::cc30:8ef6:582b:14c6%9
12 bytes from fe80::cc30:8ef6:582b:14c6: icmp_seq=0 ttl=64 rssi=-69 dBm time=3.766 ms
12 bytes from fe80::cc30:8ef6:582b:14c6: icmp_seq=1 ttl=64 rssi=-70 dBm time=3.765 ms
12 bytes from fe80::cc30:8ef6:582b:14c6: icmp_seq=2 ttl=64 rssi=-69 dBm time=3.765 ms
```

That was produced from a nrf52840-dongle talking to a particle-xenon with the different antenna configurations, both running the gcoap example with additional modules enabled to give me USB Ethernet and serial.

I did not do the tests on the master branch but on [my branch for DFU uploads on the Xenon](https://github.com/RIOT-OS/RIOT/issues/12320); I built it as I'm PR'ing it here for all three boards, but would ask the maintainers of the boards who have programming equipment to test as well.
You can view, comment on, or merge this pull request online at:

  https://github.com/RIOT-OS/RIOT/pull/12344

-- Commit Summary --

  * particle-*: Configure antenna switch

-- File Changes --

    M boards/common/particle-mesh/board.c (10)
    M boards/common/particle-mesh/include/board.h (23)

-- Patch Links --

https://github.com/RIOT-OS/RIOT/pull/12344.patch
https://github.com/RIOT-OS/RIOT/pull/12344.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/RIOT-OS/RIOT/pull/12344
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/notifications/attachments/20190930/8ac016b3/attachment.htm>


More information about the notifications mailing list