Troubleshooting

On this page you may find help to troubleshoot you use of your RFzero. Typically the problems are:

  • Arduino IDE, SAMD library or RFzero library installation
    • Wrong or missing installation
  • How to use the Arduino IDE
    • Selecting the RFzero as board
    • Compiling
  • The connection between the operating system and the RFzero
    • The RFzero doesn’t identify itself as an Arduino Zero
    • The RFzero USB connection is not identified by the operating system
  • Hardware related

If you get an error message from the Arduino IDE please try to find the same error message in the headlines below.


exec: “/bin/arm-none-eabi-g++”: file does not exist

If you see

exec: “/bin/arm-none-eabi-g++”: file does not exist
Error compiling for board RFzero.Error compiling for board RFzero.

error message you have not installed the Arduino SAMD library. Please see the installation procedure step 2.


RFzero.h no such file or directory

If you experience that the Arduino IDE says:

“RFzero.h no such file or directory”

you have most likely not selected the RFzero as the board.

To set the target board to RFzero go to Menu | Tools | Board “…” and scroll down the list until you see the RFzero board and select it.


Error compiling for board RFzero

This error can show because of two reasons

  1. You have not installed the Arduino SAMD Boards (32-bits ARM Cortax M0+) version 1.6.20 S/W but a newer version. If so please downgrade to v. 1.6.20, see step 2) above.
  2. The installation process went wrong. Please see how to rectify the situation in the description below.

Sometimes the Arduino installation/updating process goes wrong leading to a situation where more than one version of a software library, e.g. the RFzero library, is installed. When this happens the Arduino IDE cannot compile programs using the specific library. Unfortunately the Arduino IDE is not able to rectify this situation itself, but needs your manual intervention.

If this happens please go to the directory where Arduino installed the RFzero libraries and delete the irrelevant RFzero directory:

Windows path: C:\Users\<User>\appdata\Local\Arduino15\packages\RFzero

Linux path: $HOME/.arduino15/packages/RFzero

Mac OS path: /Users/<User>/Library/Arduino15/packages/RFzero

where <User> is your account user name.

You can navigate to the directory using a file browser. Alternatively, you may navigate to the packages directory from the Arduino IDE by selecting Menu | Preferences, that opens the Preferences pane. Then click on the line below “More preferences can be edited directly in the file” that will open a file browser in the Arduino15 directory, then navigate to the packages | RFzero directory, and delete the irrelevant RFzero directory.

If you deleted everything, i.e. the Arduino IDE, RFzero S/W, …, then reinstall the latest RFzero library. Afterwards please remember to select the RFzero board from the Arduino IDE select Menu | Tools | Board.

If the installation/updating went wrong with another library then you should, of course, delete this library from the packages directory.

In extreme cases you will have to uninstall the Arduino IDE completely. Then check that the package path as shown above has been deleted too. If not delete it manually. Then reinstall everything again repeating steps 1), 2) and 3) from the S/W installation.


Couldn’t find a Board on the selected port

You have probably selected the wrong COM port for your RFzero board.

Please verify that have selected the right COM port from the Menu | Tools | Port … The RFzero identify itself as an “Arduino/Genuino Zero (Native USB Port)”.


An error occurred while uploading the sketch

The most likely reason when you see the error message “An error occurred while uploading the sketch” is that you have not selected the right COM port for the RFzero.

You select the right COM port from the Menu | Tools | Port … The RFzero identify itself as an “Arduino/Genuino Zero (Native USB Port)”.


No RFzero (Arduino Zero) visible

If you haven’t installed the Arduino IDE or the RFzero Manager including the driver your RFzero may identify itself as a generic “USB Serial Device (COM#)” in the Windows Device Manager instead of “Arduino Zero (COM#)”. If you just want to communicate with your already programmed RFzero this will still work.

The Windows Device Manager when no driver has been installed either by the Arduino IDE or RFzero Manager.

The Windows Device Manager when a driver has been installed.


USB shows Arduino Zero bootloader

USB and the Windows operating system are not the best match in the world. If you experience that the RFzero identifies as Arduino Zero bootloader, and not as the normal Arduino Zero, the RFzero has for some reason been brought into a special state. The actual COM port number is not relevant.

To escape from this situation please double click when the uploading is about to take place. You may also try to upload a different program, e.g. the RFzero Blink or BoardTest programs.

During the actual uploading Windows changes the COM-port and when successfully uploaded it goes back to the original COM-port. However, sometimes Windows cannot find the “upload COM-post” and then the upload goes wrong. If so you can try to monitor the bottom part, i.e. the black area, of the Arduino IDE but first make sure you have marked the checkbox found Menu | File | Preferences | Show verbose output during upload. When the Arduino IDE starts the upload process you should see something like the below taking place.

It might be that you cannot do this in the RFzero Manager. If so please use the Arduino IDE to upload the program instead.


Uploading a program

USB and the Windows operating system are not the best match in the world. Therefore, if you experience problems with uploading a program to the RFzero please check if you can see the RFzero in the Windows Device Manager. The RFzero identifies itself as an Arduino Zero.

The second check you should do is to check your USB cable. Some of the cheaper USB cables are made for charging only and not for communication purposes.

You may also try to upload a different program, e.g. the RFzero Blink or BoardTest programs.

During the actual uploading Windows changes the COM-port and when successfully uploaded it goes back to the original COM-port. However, sometimes Windows cannot find the “upload COM-post” and then the upload goes wrong. If so you can try to monitor the bottom part, i.e. the black area, of the Arduino IDE but first make sure you have marked the checkbox found Menu | File | Preferences | Show verbose output during upload. When the Arduino IDE starts the upload process you should see something like the below taking place.

This will go on until it times out. The trick is now to double click the reset button on the RFzero, before the time out occurs, and you should see something like the below.

COM23 is the actual upload port, in this case but not necessarily the same in your case, and the process should be rolling now. You may have to try the trick a couple of times to get it right. In severe cases unplugging the RFzero and restarting your computer may be needed.


When using I2C the RFzero freezes

If you experience that the RFzero freezes and the USB gets lost after you have enabled the use of I2C/Wire, then chances are you have not connected the necessary I2C pull-up resistors from the SDA and SCL pins to the 3V3 supply. This is not unique to the RFzero, but is a general thing in Arduino.

If the program hangs please connect two resistor, 2 kΩ to 10 kΩ, from 3V3 to each of the D8 (SDA) and D9 (SCL) pins. Then press the reset button. If this fails try to upload the program again, while being prepared to double click the reset button, until the uploading is successful.


Hardware test points

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

NameDescriptionValueType
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.