Older blog entries for hudson (starting at number 2)

phooky: To get ExpressPCB running under Wine, I first installed it on an actual Windows boxen at work, then transfered the DLL's that it used (determined by backchaining) until it ran.

Unfortunately the installer won't run, nor will it work without a significant portion of the Windows runtime environment. And, as I mentioned earlier, it fails to correctly render the trace widths. There is also some garbage in some of the widgets, too.

I'm running the stock RedHat wine-20010822-1 rpm. I did try with the latest from WineHQ's CVS tree, but it crashed randomly.

The parts arrived from DigiKey this afternoon and I've spent much of the evening soldering things together.

The good news is that the Atmel AVR Mega163 works on the first try. The bad news is that I screwed up the MAX231 pinouts and the RS-232 line driver is hosed.

Images of the boards:

The Rev 1.1 board will correct this, as well as many other little problems:.

Size issues:
- Thinner headers.  These require grinding to fit
- Larger holes for accelerometer.
- Spacing between AVR and MAX231 is tight if socket is used
for MAX231.
- Spacing with DB9F is very tight.  Requires grinding the DB9F.
- Very small clearances between some of the traces and
through holes.
  These should be larger to make room for sloppy soldering.
- Thinner (0.25) traces are ok for digital lines.  0.30 is
just huge.
- "Cut throughs" between pins only on top-side.  None on
solder side.
- Reduce the number of "expansion holes" and spread out the
components.

Style: - Bi-color LED for power / programming - Status LED for accelerometer/gyros - Opto-isolate digital inputs - Voltage regulator - Remove jumper for Pitch/Roll accelerometer - Make two-axis version usable with one gyro + one accelerometer - Expose all extra lines from gyros and accelerometers - Solder points for IO lines. - Voltage regulator - Divide-by-n chips for tachs - Label servo connectors

Oops: - MAX231 pinout is totally hosed. - Z / Roll accelerometer pins are backwards and must to be used for Pitch/Roll instead. No room for safety pilot PAL that way. - Va, Vr and Vcc links are difficult to reach (but should go away) - If Pitch/Roll accelerometer is used as designed it blocks the voltage regulator spot.

Maybe: - Explore MSP1005-ND from MSI (three axis accelerometer) - Explore Tokin/Murata ceramic gyros - Use two-uart AVR and connect GPS to IMU - Screw-down wire headers for analog/digital inputs

The realtime boards just arrived from ExpressPCB. It's a neat service -- I used their software (under Wine) to design the microcontroller board, sent it to them via their website and three days later had very professionally made circuit boards ready to solder.

When fully populated, the PCB will have:

  • Two MG100 dual axis rate gyros
  • Two ADXL202 dual axis accelerometers
  • Four analog inputs
  • Two pulse counting digital inputs
  • Five digital inputs
  • Eight servo outputs
  • Five servo inputs
  • RS232

The software still needs work. I hope to have the rate integration code working so that the IMU can be used as an AHRS (Attitude / Heading reference system) within a month. That can feed into an artifical horizon for the ground station as well as drive the PID loops to keep the helicopter under control.

X
Share this page