RFzero specifications

Voltage5 VVoltage on JP1. On the USB connector the max voltage is 5 V. Absolute max voltage is 9 V for shorter periods
Current70 mA, 1)
110 mA, 2)
500 mA, 3)
1) No LCD or GPS antenna connected. Program with empty setup and loop
2) Beacon program with LCD and GPS antenna connected
3) Maximum total current
Supply connector2 pin terminal block Ø1 mm wire
GPS connectorSMA female3,3 V DC to GPS pre-amp. Optional GPS USB connection on bottom side
Frequency range2289 Hz to 200 MHzAbove 200 MHz is outside the SiLabs specification. However, many Si5351A will work beyond 280 MHz.
RF power13 dBm400 kHz to 200 MHz
RF clock27 MHz, 10 PPMShort term stability less than 105 mHz and less than 13 mHz with foam cover
RF connectorSMA female
USB connectorUSB B female
Micro controllerATSAMD21G1832 bit ARM Cortex M0+
MCU clock48 MHz, 10 PPM
Flash memory256 kB
EEPROM1 kBChangeable. 8 pin DIP in socket
DC current per I/O pin7 mA
MCU connector10 pin Cortex2 x 5 pin 50 mil connector
Analog inputs812 bits
Analog output110 bits
Digital I/Os28Hereof up to eight can be analog
DriverULN2803A8 bit Darlington array 50 V and 500 mA. In socket for easy replacement
PWM pins16Pins D0-D11 and A2-A5 on TCC0/1/2 and TC3
I2C, SPI and UART ports3, 4, 4SERCOM ports
LCD connectorSIL 12 pin 2,54 malePin 1-6 to LCD pin 1-6 (VSS-E), and pin 7-12 to LCD pin 11-16 (DB4-Cathode)
Not factory mounted
LCD voltage jumper¹SIL 3 pin 2,54 male3,3 V or VI that is about 0,5 V below the supply connector or USB voltage whichever is highest. Not factory mounted
HeadersSIL 2,54 mm maleNot factory mounted
Ground loopØ1,5 mm cobber wireNot factory mounted
LEDs3 mmThe four 3 mm LEDs are not factory mounted. One on-board Test LED
Size99,5 mm x 79 mmHalf Eurocard PCB. Fits into a standard metal sheet box (Weissblechgehäuse) 102 mm x 82 mm x 30 mm for optimum RF shielding
Weight30 g

¹: The LCD can be supplied either by 3,3 V or VI using the JP13 jumper. But the control and data lines are always 3,3 V logic. Different contrast and backlight values apply. The backlight can be increased by adding a blob of solder to the SJ1 solder joint shorting the R16 backlight resistor.

The reason for not factory mounting the LEDs and headers is to allow for individual configuration e.g. mounting the LEDs through a front plate and only install the relevant jumpers/headers.


You can choose to mount the 3 mm LEDs directly on the RFzero board straight up or bent so they fit through holes in a front plate. You may even mount a 2 pin header per LED, and run wires to the front plate further away.

All the LEDs have to be connected/mounted correctly. On the RFzero the positive side of the LEDs (the anode is the long terminal) have to be mounted to the left on the board when the USB connector faces you. There is also a small plus sign “+” printed on the board. If you mount the LEDs the wrong way they will not light up. So please remember this phrase: Long Leg Left.

You may verify if your intended way to solder the LED in place is correct by putting the LED terminals through the holes, but without soldering them, and connect power to the RFzero. Then gently, using a finger, apply force to the LED terminals to make sure that there are physical contacts between the terminals and the holes in the PCB. If the LED is lit then you have connected the LED in the right way.

Examples of mounting the LEDs where the PPS LED is connected through a pair of wires to a two pin header instead of directly on the board.

If you are in doubt, after soldering the LEDs to the board, you can easily verify if you did it in the right way. If you look closely at the LEDs you will be able to see if the big part of the internal of the LED, the cathode, is to the right. You can see this clearly in the green LED in the picture above.

LCD connections

The RFzero can use both 3,3 V and 5 V liquid crystal displays (LCD), but, if using a 5 V LCD the logic communication has to work on 3,3 V level. Most modern 5 V LCDs are able to do this but if you have an old 5 V LCD it may not work. If you are to buy a new LCD please ask the seller specifically for a 3,3 V LCD.

RFzero, and Arduino in general, supports LCDs that are compatible with the Hitachi HD44780 specification. You can use other standards but in this case you may have to find a third party display library or write it yourself.

The RFzero supports other displays than the HD44780 in parallel mode. Please see the displays page for more information.

LCD voltage jumper

Before you connect any LCD to the LCD header please ensure you have set the correct drive voltage for the LCD on the LCD voltage select header – JP13. Alternatively, if you know that you will always be using one of the voltages you could short the relevant jumper position with a small piece of wire that is soldered in place.

The LCD voltage header JP13.

The LCD voltage set to use VI

Please note that if you run the LCD on the VI level the contrast and backlight will change if the VI is changed.

The LCD voltage set to use 3,3 V (3V3).

LCD header and connections

The RFzero LCD header JP12 is prepared for LCDs that comply with the Hitachi HD44780 specification. Using two cables with six wires in each you can easily connect the LCD to the RFzero board. One cable should go to the left side of JP12 (GND, V LCD, CON, RS, R/W and ENA) and the other cable to the right side of JP12 (DB4, DB5, DB6, DB7, Anode and Cathode).

The LCD header JP12.

On the backside of the LCD connect the two cables to “each end” of the 16 pads/pin header leaving the four in the middle unused.

Two six wire cables connected to a LCD pins 1-6 and 11-16.

The RFzero LCD header is designed to run the LCD in four bits mode, i.e. LCD data on DB7 to DB4. If you need to run your LCD in eight bits mode you will have to take the remainder four bits from some of the other pins available on the RFzero and connect them to the DB3 to DB0 pins on the LCD.

LCD contrast and backlight

The contrast of the LCD can be controlled on the R15 trimmer. Please note that if you run the LCD on the VI level the contrast will change if VI is changed.

If you think that the backlight is not strong enough for the place where you will use your RFzero you can add a blob of solder to the SJ1 solder jumper. Doing so shorts R16 so the backlight resistor goes from 20 Ω to 10 Ω allowing more current to the LCD.

The R15 LCD contrast trimmer and SJ1 solder jumper.

Please note that if you run the LCD on the VI level the backlight will change if the input voltage is changed.

GPS back-up

You have the possibility to connect a back-up battery or supercapacitor to the RFzero (does not apply to PCB v1.0). If you don’t want to back-up the GPS almanac it is a good idea to short JP7-1 (+/VB+) and JP7-2 (VB) using the supplied header and jumper.

Having the GPS backed-up may result in slightly faster satellite acquisition, thus valid GPS data. However, if the GPS almanac is more than two weeks old the back-up has no practical relevance.

The JP7 header and back-up connections.

The RFzero has built-in components for charging an external supercapacitor. According to the datasheet the typically back-up current, I_BCKP, is 15 μA. Thus, a 1 F supercapacitor with an ESR of 100 mΩ should provide about 15 hours of back-up time.

The below table shows how to connect the jumpers vs. back-up type.

Back-up typeJP7-1
No back-upShort with JP7-2Short with JP7-1Not connectedNot connected
Supercap. (3,0 V to 3,3 V)Short with JP7-2Short with JP7-1Positive terminalNegative terminal
Battery (3,0 V to 3,3 V)Not connectedNot connectedPositive terminalNegative terminal

The GPS data out (GDO) and GPS PPS out (GPO) connections on JP7 are not used for GPS back-up purposes.

Example of a battery holder for two AA batteries, Ø14 mm x 50 mm.

Debugging, test points and GPS USB

The RFzero board contains a number of test points that can be used for troubleshooting or optional access. Keep in mind that you can also use the Test LED as an aid in the software debugging.

TP1VI (about 0,5 V below the supply voltage)~4,5 V if supplied from 5 V or USBAnalog
TP2Voltage on the digital circuit3,3 VAnalog
TP3Voltage on the Si5351A3,3 VAnalog
TP4USB DPUSB serial dataDigital
TP5USB DMUSB serial dataDigital
TP6GPS data out (TX, GDO)Serial dataDigital
TP7GPS control data in (RX, GCI)Serial dataDigital
TP8GPS PPS (GPO)One pulse per second and 100 ms wide (default)Digital
TP9GPS pre-amplifier voltage3,3 VAnalog
TP10I2C/Wire internal SCLSerial data to/from the EEPROM and Si5351ADigital
TP11I2C/Wire internal SDASerial data to/from the EEPROM and Si5351ADigital
TP12Ground on bottom side of the PCBGroundAnalog
TP13Optional GPS USB DP on the bottom side of the PCBUSB serial data to/from the GPSDigital
TP14Optional GPS USB DM on the bottom side of the PCBUSB serial data to/from the GPSDigital

The TP12, TP13 and TP14  test points on the bottom side can be used to access the u-blox NEO-7M directly via an USB port, e.g. for synchronizing a PC to the GPS network. By default this optional GPS access is disabled. To enable it simply short the SJ2 solder jumper on the bottom side.

The bottom side of the PCB showing the optional GPS solder points where G = Ground, M = DM, P = DP and the SJ2 solder jumper (square pads).

Pin outs, schematic and component locations

RFzero MCU, names and board pinout

RFzero schematic, PCB v1.2

RFzero schematic, PCB v1.1

RFzero schematic, PCB v.1.0

An on-board low/high pass filter can be designed with your favorite filter design program. If you don’t have a filter design program the free Elsie by Tonne Software Jim, W4ENE, is a highly recommended.

RFzero component locations, PCB v1.2

RFzero component locations, PCB v1.1

RFzero component locations, PCB v1.0


If you want to expand the RFzero board with your own circuit you can easily add a shield that covers the analog and digital MCU pins found on JP2: GND and VI, JP3: USB, JP4: A0-A5, JP5/JP6: D0-D7, JP10: D16-D19, JP11: D8-D15, and JP12: LCD.

The size of the shield should be slightly larger than 19 modules x 24 modules (~50 mm x ~63 mm) to make a perfect fit.

You can make your own shield from a standard Vero-board.

If you have a shield mounted on your RFzero and want to access the GPS module you can do this via JP7. You may even connect several shields by daisy chaining the GPS Data Out (GDO), GPS PPS Out (GPO) and ground (GND) from the RFzero to the shield.