Navio2 working on raspberry pi compute module 3

I’ve seen it mentioned a few times around the internet and I have a need for it, so I did a quick prototype this evening just getting all the Navio2 examples up and running with my pi compute. It works well and requires no special bit-fiddling of GPIOs/etc!

I did investigate what was on the HAT EEPROM just to make sure and found this - nothing special, just defaults and vendor info you can find in /proc:

# Start of atom #0 of type 0x0001 and length 45
# Vendor info
product_uuid 0f8b16e6-51d2-4125-ae44-ae21f0e0c9db
product_id 0x0003
product_ver 0x0001
vendor "Emlid Limited "   # length=14
product "Navio 2"   # length=7
# End of atom. CRC16=0x4b62

# Start of atom #1 of type 0x0002 and length 32
# GPIO map info
gpio_drive 0
gpio_slew 0
gpio_hysteresis 0
back_power 2
#        ----  --------  ----
# End of atom. CRC16=0x6d6d

You can verify between your two systems that you actually have the same settings using raspi-gpio, but just flashing the card with the 20170922 emlid image and using the defaults worked great for me.

Obviously, the hard part is getting all of the wire crossings correct. I just used the included extension header to help me wire up 1 through 40 according to this pinout of the Raspberry Pi 3:

(original link:

Using multicolored leads made it a lot easier to error-check since you can just go down each side and compare colors at the top and bottom for a quick parity check.

Backpowering works as well with no extra work; just unplug your USB charger and plug in a power source to the Navio2 and it’s up and running.


Overall view with USB power

Little closer in of the Navio2

The rat’s nest, but notice around 20-25 free GPIOs!

Running off of battery alone


This topic was automatically closed after 100 days. New replies are no longer allowed.