ArduIMU groundstation written in 'processing'

I have created a basic 'ground station' for the ArduIMU in the 'Processing' IDE

The Processing development environment is very similar to the Arduino evironment
Processing compiles into Java, it allows you to run the same code on Windows, Mac OSX and Linux.

Being a Mac user and suffering from not being able to find and run the correct version of the NI LabView runtime engine I decided to have a go at creating a ground station myself.

This version ArduIMU_v004.zipwas the result of only a couple of hours of work so is a bit rough.
NOTE: This is slightly updated from Original code uploaded - fixed 2 bugs.

It borrows some of its design from the exiting LabView example and from Jose Julio's Python(?) example

The Ground Station:
Logs All incoming Serial data to a text File
Shows raw data in real time
Displays key data in text
Displays Accel and Gyro data as bar graphs
Displays Roll Pitch and Yaw as rotating lines
Displays an 'aircraft' showing 3D orientation

Press Y to ignore Yaw
Press L to start or stop Logging
Press Q to Quit

Here it is operating (with no GPS - inside the house)

I intend to keep developing the code for my own purposes.
I'd be happy to hear any suggestions or requests for features
Please let me know what you think?

Views: 1997

Comment by Vikram on November 16, 2009 at 8:26am
ur couple of hours on GCS deliver a great work . Is there any possibility to make it more attractive for roll pitch and yaw angles in PDE. Is there any good source to learn this language.
Comment by Eric on November 16, 2009 at 10:26am
Aw man, I'm halfway done with a full desk... I had a feeling someone would have the same idea.
Anyway, nice work! Too bad about your mac though ;)

@viky: The main website has a 'learning' section at It's pretty fun to play around with all the demos too.
Comment by Aaron Buckner on November 16, 2009 at 4:05pm
TY TY TY!!!! I'll be taking a peek at this tonight... I have really been struggling with a good implementation for my IMU Can't wait to take a look at this tonight :D
Comment by Rana on November 16, 2009 at 9:06pm
Nice Work !
Comment by Vikram on November 16, 2009 at 9:41pm
What is the format of IMU log
Comment by agmatthews on November 16, 2009 at 11:30pm

The IMU Log is exactly the same as the serial data stream
I am considering a second log format that is more Geo friendly - for Google earth etc

Comment by Vikram on November 17, 2009 at 2:26am
do u have any samle log file to display roll pitch stuff. Please atttach here if u have. When i run the software it displayed no data so i think it must be because of no data in log file.
Comment by agmatthews on November 17, 2009 at 3:06am
Hello All,

A couple of things that may help:

1) If you do not have your ArduIMU plugged into your first COM port you will need to change a line in the ArduIMU_v004.pde file
Look for COMport = new Serial(this, Serial.list()[0], 38400);
Change the [0] to match the serial port your ArduIMU FTDI cable is on.
To find the right port number have a look at the processing console when you start the app its should list all the serial ports with their corresponding port numbers.

2) There was a bug in the GPS decode section. I have uploaded a new version of the code.

3) The App now detects the data stream and reports NO DATA if it is not receiving any serial data.

Comment by Vikram on November 17, 2009 at 4:02am
wow we can export it as a exe file also File>Export Application

Comment by Jose Julio on November 17, 2009 at 6:26am
Very interesting Andrew, I have to try it... My aproach with python seems to be a little more complicated to distribute because you need to install some external libraries and it´s no so easy. I´d like your aproach

Good work.


You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2020   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service