Bring up of the MRF49XA Arduino Shield

A project log for Wireless Environmental Monitor [Help Welcome]

Wireless sensor network for the monitoring of Natural Gas, Carbon Monoxide, Temperature, Humidity, Vibration, and even Seismic Activity

majolsurfmajolsurf 03/23/2014 at 22:050 Comments

In parallel with the SafeSense sensor node, I also spun a MRF49XA transceiver shield to aid in development. It is also intended to mate with an Arduino Yun for basestation development.

Detailed Video at the end of the post.


Assembly was simple enough, no issues found upon bringup. The one issue is that the board can only mate with 3V3 devices, like the ChipKit Uno32.

The first task was to test SPI communications between the Arduino variant and the MRF49XA. I developed an offshoot of the command line interpreter Fruitshell named Ubashell that allows for individual SPI transactions. This allows the register space for the target to be accessed and configured without having to go through multiple software development and compile cycles. It also enables the use of scripts once a configuration is decided upon. These scripts then are ported to the final application.


I was able to observe SPI transactions through not only Ubashell, but also the Amani F2 configured as an embedded logic analyzer.


F2 Stack

After reviewing the data sheet and experimentation in Ubashell, I was able to enable the transmitter and observe a CW tone at the expected frequency on SDR#.

SPI Transactions

Further experimentation allowed be to vary the TX power, frequency, modulation rate, etc.

Unfortunately I noticed a large comb when observe the waveform from a wider span. As this is not a proper FSK response, troubleshooting will be needed.