[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Paparazzi-devel] UBX vs NMEA Protocol Inquiry

From: bernard
Subject: Re: [Paparazzi-devel] UBX vs NMEA Protocol Inquiry
Date: Tue, 13 Mar 2012 09:49:57 +1100
User-agent: SquirrelMail/1.4.22


Since you know so much about the NMEA protocol maybe you might like to
contribute some of that knowledge into code.

The Paparazzi source is available from


> I don't think there's any real technical challenge, just a lack of
> programming effort.  Despite the potential advantage of a binary
> protocol, MNEA is about as simple as it gets and you can crank the speed
> up pretty much as high as you'd ever want.
> 5Hz NMEA navigation takes 38400 baud according to my manual, so 115200
> should be more than enough for 10Hz.  You could probably do less than
> that if you configure your messages to only what you need.  There
> shouldn't be any problems matching up messages to the correct fix since
> most of them have a timestamp. If the message doesn't contain a timestamp
> it should be safe to assume it goes with the last timestamp recieved.
>  They're also always in the same order, so it's not like you're getting
> random mixed up messages.
> As far as processing power goes... ArduPilot seems to have no problem
> reading and processing 8 PWM channels, a NMEA GPS, an I2C IMU, and
> outputting telemetry and 8 PWM channels.  And it does this with only
> 8-bit, 16 mhz processors.  The PPZ hardware should have a couple orders
> of magnitude more processing power.
> I think perhaps Paparazzi just doesn't want to appeal to the masses, and
> deal with all the headaches that go along with that.  ArduPilot is a
> consumer type autopilot, while Paparazzi is a high-end UAV development
> platform.  It really shows in the design choices... ArduPilot is designed
> for the most popular operating system (Windows, 87% market share), while
> Paparazzi runs on the most powerful and least popular operating system
> (linux, 1% market share).  Paparazzi uses a fast but esoteric GPS
> protocol (uBlox, <1% market share), while ArduPilot again uses the most
> popular and compatible GPS protocol (NMEA, 100% market share).  ArduPilot
> uses the most popular, but 8-bit and some say obsolete, microcontrollers
> (Atmega/arduino), while Paparazzi uses the fastest and most powerful
> 32-bit processors (STM32/LPC).
> For some reason I decided early on to use a STM32 processor design, so if
> I can figure out Paparazzi before ArduPilot switches over to a STM32 based
> design I'll stick with Paparazzi.  Ardupilot is rumored to be switching
> over to STM32 in the next year or two, so I still have plenty of time.  
> I do have to get a NMEA GPS working since I don't have the luxury of using
> an oddball, esoteric GPS protocol.
>> ----- Original Message -----
>> From: Chris Wozny
>> Sent: 03/01/12 09:42 AM
>> To: paparazzi-devel
>> Subject: [Paparazzi-devel] UBX vs NMEA Protocol Inquiry
>> All,
>> I was wondering if someone had a technical explanation as to why the
>> UBX protocol is faster than NMEA parsing. I know in the past people
>> have said NMEA sucks and binary protocol's are faster, but I just want
>> to make sure I understand the technical reason. I know parsing ASCII
>> strings requires more CPU cycles, but don't you still have to parse
>> the UBX output as well?
>> Best,
>> Chris
>> _______________________________________________
>> Paparazzi-devel mailing list
>> address@hidden
> _______________________________________________
> Paparazzi-devel mailing list
> address@hidden

reply via email to

[Prev in Thread] Current Thread [Next in Thread]