Showing posts with label ublox. Show all posts
Showing posts with label ublox. Show all posts

Saturday, May 11, 2013

Accurate positioning with UBlox Neo-6P and STM32

The Ublox Neo-6P provides raw clock phases and ephemeris suitable for use in post-processing based accurate positioning, or even RTK solutions using RTKLib.

STM32 with Eclipse was fairly messy to set up and depending on which version of GCC and CoreSupport libraries you use their are a few bugs to iron out. Used Code-Sourcery Lite toolchain, but compiled version did not behave as original firmware did. There are Eclipse based STM32 development commercial support from Atollic, and there were hacks to get the debugger Atollic packages working for ST-Link using the free options, but in the recent incarnation they have locked it down to TrueStudio only. I had to resort to OpenOCD for my debugging needs, it works like a charm with standard Eclipse settings, but I managed to nuke my STLink driver in the process and had to work hard to get it back.

Importing to GrafNav is fairly straight forward via the UBX converter, but it gives no indication on how it converts events, and you need sufficiently long logs to pick up any ephemeris. UBlox Receiver protocol is a must read for configuring the NEO-6P properly and monitoring the logs to ensure GPS lock. I am looking into the STM32 demonstration samples to add some more functionality to the project, including external interrupts from a camera for event marking and a GPS lock acquired status LED.

Friday, February 5, 2010

Testing uBlox GPS accuracy with Gumstix

The Gumstix Verdex comes with a GPS Expansion board which carries a uBlox GPS module spitting out data in NMEA format. It also has power supply for an active GPS antenna and I got a simple one to test things out with.

I had the antenna up on the ledge and logging for a few minutes. The whole thing points to the fact that unassisted GPS cannot really be trusted. Here are the logs graphed.

The GPS will need to be supplemented with assistance from CORS stations, IMU and possibly ultrasonic or laser range finders on board the flying UAV platform. We can try out a newer ublox with online almanac update features, but I doubt that performance will be much better.

Together with GPS the other power consuming part of a UAV system is the control radio. Thanks to the emerging Zigbee radios we can do with very low power receivers and great range from the XTend modules (advertised at 40miles). With these we can obtain near real-time high level control interfaces and synthetically coded channels.