Some of you may have noticed that for quite a while SparkFun has been listing a "UAV Development Platform - ET312 + IMU" that's always been out of stock. I backordered one out of curiosity last year, and pretty much forgot about it. Then, last week, SparkFun called and said that they'd "finally got it working" and it was now available for backorder customers. Did I want one? Sure!

It showed up today and it's going to take me some time to figure it out properly, but here are some first observations:

  • It's a "development platform", not a fully-featured working autopilot. Although there is firmware available for it, it's designed to be a standard hardware package around which you can develop your own autopilot code.
  • The firmware comes pre-loaded, and works pretty much as advertised. I tested it on the ground, so it was hard to tell how well it actually stabilizes a plane, but the elevator seemed to respond properly to tilting. The rudder didn't, but that was probably because it was trying to turn the "plane" to a destination and I wasn't playing along ;-)
  • That firmware is written in assembly, so good luck to you! It seems to do pretty much the basics of what you'd want an autopilot to do (and I mean basics--there's no provision for waypoints, and it's just a "fly home" autopilot at the moment), but if you want to tweak it you'll have to do learn PIC assembly (not super hard, but still: what's wrong with C?!)
  • It includes a 4-degree-of-freedom IMU: two gyros and one two-axis accelerometer.
  • As the two-axis configuration suggests, it's designed to control just two channels: elevator and rudder. A third channel is used to turn it on and off.
  • It's got a good SiRF III GPS module on board, although you'll need to add your own antenna through the included SMA connector.
  • At $299, it's not cheap. But when you consider that a simple set of accelerometers and gyros will set you back $109, the addition of GPS and a PIC processor, all nicely integrated on a board, is probably worth it. But it still seems about $100 overpriced to me.
  • You need some additional hardware to work with it: the main thing is an ICD2 interface to program the onboard PIC chip and for debugging. That will set you back another $120.
  • The documentation looks excellent, with a lot of theory on control and aerodynamics as well as a lot of help on PIC assembly language and development suggestions for the platform.
  • Bottom line: this looks like a good, albeit expensive, way to learn about IMU-based autopilots. It's not really an autopilot itself yet, but could be made into a relatively low-featured one pretty easily. I think it's accurately described as a "development platform", so if you're in the market for that and can afford a $300 lesson, I can recommend it as a unique and well-made way to get started.

Views: 1101

Comment by Scouser on February 27, 2008 at 6:28am
Are you going to fly your board?

I have one on order and expect to receive it in about 3 weeks. I intend to try it in a Multiplex Magister (60 inch high wing electric trainer). I am working my way through Sparkfun's UAV Test Firmware code checking how it works and learning how to use the IDE.

3D Robotics
Comment by Chris Anderson on February 27, 2008 at 8:22am
I was not planning on flying my board anytime soon. I've got too many other autopilot project that need that airtime!

Please let us know how you find the board and any modifications you've made to the code.
Comment by Scouser on February 27, 2008 at 3:38pm
Comment by Dave on November 11, 2008 at 1:12pm
Hi you all guys,
I would like to ask you about ET 312 board...I think, as Chris suggested, this is a very good thing to start with, I mean...starting to understand basics about UAV autonuomus fly. The disadvantage is that you can wait for long to have a new one because spark allows backorders from their site.. it possible to implement a third axis control?? Documentation stated that only rudder and elevator are implemented on this board...what about if an airplane is equipped with aileron too??? I know one can control them by RC radio but it could be useful to implement a complete autopilot for personal porpuoses...
What do you think about?
Thank you

Comment by Wim De Wilde on November 11, 2008 at 2:28pm
Hi Dave,
I think the board can be used for planes with ailerons as well. At least my easystar shows similar yaw response on aileron as on rudder, for small deviations. Of course the ailerons should be properly designed (less throw down than up) to avoid non-minimal phase response. Feedback from yaw gyro to aileron would work as well as to rudder. I considered this board for my uav, but didn't go for it because of the PIC and difficulties to log flight data. Instead I used ARM7 + C-code. Much more convenient.
Comment by Dave on November 12, 2008 at 6:00pm
Hi Wim,
PICs make me happy to develop and study this particular board!!!! :) I don't have to start developing software for Atmel..
By the way, I don't understand the reason you are satisfied with ARM7 + C code....The PIC above can be either be programmed in C code...and C code is the same.... (I confidentially say you that I don't know ARM7 architecture)....I'm going to take a look on the web.

Comment by Scouser on November 15, 2008 at 7:47am
Hi Dave,

The limitation in using the ET 312 board for aileron control is the orientation of the sensors. They are set up to measure pitch and yaw and control the rudder and elevator. I tried swapping the rudder output to the aileron channel on my 4 channel trainer. It wasn't very good. There isn't a lot of dihedral and so the rudder response was very slow. It was better with the rudder output driving both the rudder and ailerons (with a 'Y' lead) but still impossible to set a gain that worked. I started to program the board in C but didn't get very far due to lack of experience and time.

I then mounted the board vertically, so that the gyro orientation was correct for roll and pitch, i.e. the yaw gyro was now a roll gyro! That controlled the ailerons much better and, finally, I have changed the yaw gyro's mini-board so that it is orientated to measure roll rate with the board mounted flat again. When (if) the weather improves I'll be test flying.


Comment by Dave on November 17, 2008 at 7:09pm
Hi Scouser,
what you said makes sense, thanks!
But just to be clear, I would like not shift to Atmel micros just because they are most used in DIY UAVs and some robotics applications. So do you know any other board equipped with PICs??? I wonder if some autopilot could be implemented by Pics....
Anyway, thank you for your reply.
See you

Comment by Scouser on November 18, 2008 at 7:48am
Hi Dave,

I am new to microprocessors and I find writing programs for the PIC to be very frustrating. Most of my previous assembler experience has been the 8086 family. I'm sure that this board will eventually do what I want. I've flown lots of full-size planes that only have pitch and roll channels in the autopilot. Some that have a rudder channel only use it as a "yaw damper". I don't know anything about other model autopilot systems so I can't comment about them.


Comment by Dave on November 18, 2008 at 5:42pm
"I find writing programs for the PIC to be very frustrating..."

No they aren't. It depends on what you want to do... Furthermore, if you program in C you shouldn't have many problems.
Anyway thank for your reply, I found your suggestions and your experience very helpful...
See you



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

Join DIY Drones

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service