Close

Recap: early work #1

A project log for BradWii on the Hubsan Q4

In which the author runs open source firmware on a palm sized quadcopter

ajlittajlitt 03/14/2015 at 15:180 Comments

I bought a Q4 on a whim while browsing the local hobby shop. $30 is impressive given the individual components: CPUs in both the TX and RX, gyro, accelerometer, LiPo battery, motors, and 2-way 2.4GHz radios in the TX and RX. Add to that the part where it flies and it was an easy decision. I also remembered [Alvaro's] deep dive into the TX protocol on this model a couple of months back.

Of course I had to take it apart when I got home. The Q4 is nothing more than a flying PCB with a battery and motors to keep a workable power/weight ratio. The only unnecessary component is the plastic canopy over the battery. This also covers the ICs on the top of the PCB, but leaves the bottom side exposed, including a number of test pads. Fortunately Hubsan was kind enough to label some of these "+", "-", "C", "D". Some Googling revealed that the "HBS002" CPU is really a Nuvoton MINI54 ARM Cortex-M0 CPU. I beeped out the pads, following the "C" and "D" pads to the SWCLK and SWDIO pins on the micro. "+" goes to the 3.3V output rail of what looks like a linear regulator.

I had to go further. I considered soldering to the pads, but thought that even a small header dangling off this copter would affect flight performance. Given the ease of getting to the pads, I decided to make a pogo pin jig using my go-to physical toolchain of a 3D printer and OpenSCAD.

I started on this by getting the positions of the pad centers. The pads aren't evenly spaced, so I needed to measure positions for each relative to a central point. I scanned the bottom of the Q4 on a flatbed scanner and used Gimp and calipers to turn the scan into distances relative to one of the corners.

Discussions