Greetings!
Some time ago we’ve released a new version of our Linux autopilot - Navio+. Main new feature is that Navio+ supports HAT standard and is compatible with Raspberry Pi models A+,B+ and also with… Odroid-C1. It is a new board from Hardkernel powered by quadcore 1.5GHz CPU with 1GB of RAM. Odroid-C1 sets a new standard for performance - it is fast, 10 times faster than Raspberry Pi and faster than most of the single-board computers on the market. It also features EMMC storage for high performance memory operations. Another benefit of Odroid C1 is that you can build APM on it in just 45 seconds.
Here are the benchmark results for Raspberry Pi B+ and Odroid-C1 made by intorobotics.com:
The full comparison article is here.
Besides DMIPS, very important improved metrics are system call overhead and context switching that will positively affect real-time capabilities.
We’ve added support for Navio+ and Odroid-C1 combo in APM. The porting was mostly straightforward thanks to the APM’s HAL and as we already had the drivers for Navio+. As Odroid-C1 is a new board, not all required system features were implemented and we had to do some tuning. Luckily, Hardkernel team is very responsive and great in communication and helped us solve the problems as we found them.
Most of the features are implemented for C1 such as toolchain configuration, build target, IMU, baro, GPIO driver, RGB LED etc.
But we won’t be kept without work, a couple of things are still left to do:
RT_PREEMPT kernel. The real-time patch doesn’t apply as smoothly as on Raspberry Pi’s Linux, so we’ll have to deal with that by manually applying the failed hunks.
RCInput. This is a tricky part on Linux, but on Raspberry Pi it was solved by using DMA. We can go that way too, but Amlogic S805 has quite a few other peripherals we can use - unlike BCM2835 it’s got a lot of spare timers that can generate 1us interrupts. Datasheet was only released a couple of days ago and we’re currently exploring the possibilities.
APM’s port for Odroid-C1 is available here:
https://github.com/emlid/ardupilot/commits/navio-odroid-c1
For now our main goal is to take Odroid-C1 into the air and we believe that many exciting projects will follow that will take advantage of incredible processing power.
Emlid team
Comments
Are there any plans to add redundancy?
Add an ATMega on it so if the Linux kernel crashes the quad wouldn't crash with it?
@Roberto Navoni
That is a good question. PWM on Navio+ is generated by a separate chip, if Raspberry reboots it will be disabled and ESCs will turn off motors. Linux is a mature OS and if the system is set up properly the chance of failure is almost nonexistent.
@Mike Knott
At the moment we only ship Navio+ with straight header. There are some reasons behind this decision, right angle header is too tall to fit properly under the board (CSI connector is in the way) and would significantly increase size when soldered on top.
@Dan Murray
Thanks again for ordering Navio+! Boards are already assembled, tested and are on their way to our warehouse. I expect they would be shipped on time or at most a couple days late.
@Johnatan
Each one has it's own advantages.I believe that Erle-brain team is doing great work. If we compare pure DMIPS between BBB and Odroid C1, the latter is around 5 times faster.
Excited to receive mine. Do you still anticipate shipping Feb 5?
Is there a way to order the NAVIO+ with right angle pins?