Tagged: nexmon

Nexmon SDR: Using the WiFi Chip on a Raspberry Pi 3B+ as a TX Capable SDR

Back in March of this year we posted about Nexmon SDR which is code that you can use to turn a Broadcom BCM4339 802.11ac WiFi chip into a TX capable SDR that is capable of transmitting any arbitrary signal from IQ data within the 2.4 GHz and 5 GHz WiFi bands. In commercial devices the BCM4339 was most commonly found in the Nexus 5 smartphone.

Recently Nexmon have tweeted that their code now supports the BCM43455c0 which is the WiFi chip used in the recently released Raspberry Pi 3B+. They write that the previous Raspberry Pi 3B (non-plus) cannot be used with Nexmon as it only has 802.11n, but since the 3B+ has 802.11ac Nexmon is compatible. 

Combined with RPiTX which is a Raspberry Pi tool for transmitting arbitrary RF signals using a GPIO pin between 5 kHz to 1500 MHz, the Raspberry Pi 3B+ may end up becoming a versatile low cost TX SDR just on it's own.

Nexmon SDR: Turning a Broadcom 802.11ac WiFi Chip into a TX Capable Software Defined Radio

Over on GitHub we've recently seen the release of some interesting code called "Nexmon Software Defined Radio" which demonstrates a discovery that allows a Broadcom 802.11ac WiFi chip to be used as a transmit capable software defined radio. This means that it can be used to transmit (within the 2.4 GHz and 5 GHz WiFi bands) any arbitrary signal from IQ data. The specific WiFi chip used in their experiments is the US$10 BCM4339 which has been found in smartphones such as the Nexus 5. It's not clear if other Broadcom 802.11ac WiFi chips could also work.

To begin with Nexmon SDR you'll need a development environment set up on a Nexus 5 smartphone. Then it's a matter of downloading the dependencies, installing the Android NDK, and compiling Nexmon. IQ data can then be transmitted in code using from special system commands.

The Nexmon team have indicated on Twitter that they plan to present a paper with more information on Nexmon SDR at the MobiSys 2018 conference which will be held in June.