Jack Crossfire's blog View Details
Posted by Jack Crossfire | Feb 13, 2009 @ 11:39 PM | 4,342 Views
Don't be surprised if the camera stays earth bound until the sonar obsession wears off. We're going to use DT700's, 30A ESC's & large corotating props for the camera. To make the Chinese shipping economical, this has to be combined with the orders for ghetto rotor & pocket drone. Maybe we'll just move to China & be done with the hassle.

Have a budget for an extremely small servo or biometal actuator for yaw. Looks like the micro RC parts & bio materials R becoming more common & cheaper. Bio metal would drastically cut the weight of the yaw control. Most of the cost is patent royalties.

No-one has ever documented a coil servo in motion. From the low resolution pictures, they appear to have a permanent magnet outside the coil & a permanent magnet on the armature. When the coil is off, the outside magnet pulls the armature. When the coil is on, the coil pulls the armature away from the outside magnet. The armature has a source of friction to stabilize it.

We'll probably end up with a DIY linear motor. Oh & 1 other thing. If U think the pocket UAV hasn't already been done, think again. The inventor of the Picco Z already made one. It's a fully autonomous, gyro stabilized Picco Z being sold to European governments to fight the red menace. The red menace across the pond, that is.

Pocket Drone
Posted by Jack Crossfire | Feb 13, 2009 @ 12:04 AM | 3,887 Views
The camera's first autonomous takeoff, pirouette, & landing was looking good until the descent. Managed to jump in & rip out the power cable before the fire destroyed all 2000 of our last paychecks. The crash movie was lost when the camera powered off, but with the magic of mplayer we got it back. Take a look & listen to the sound of motor death followed by fire. The 18A ESC's were overloaded by the weight of the camera.

Crash & burn (1 min 19 sec)

So much for any spare parts for ghetto rotor. The ESC's overloaded because the payload was unbalanced & we had no tactile feedback with the autopilot. Installed the battery in the forward slot instead of the aft slot where it's supposed to go for payloads.

Nevertheless, the 12x3.8's probably can't generate any more power than the 10x4.5's because that's when the ESC's burn up. Need lighter electronics.
Posted by Jack Crossfire | Feb 12, 2009 @ 02:47 AM | 3,717 Views
$parkfun took 2 days to process the more sonar transducer order. Meanwhile, tied a 1000:1 amplifier to the EZ-1 transducer & recorded the pulses. Take a look. Unfortunately, this oscilloscope removes DC offset & only samples 96khz so the waveform is pretty worthless. It's just enough to show sonar would probably work with just a simple amplifier instead of a horrific analog circuit.

So if U want the most bulletproof communication, U need adaptive frequency hopping. 2.4Ghz Xbees don't do adaptive frequency hopping. U would need to use API mode to change frequencies fast enough. The algorithm would work like this:

Constantly hop between all frequencies to map out what frequencies R good.

The ground station maps out the best frequencies by counting errors & weighs packets towards those frequencies.

The copter starts by listening to 1 frequency & the ground station starts by hopping the current pattern.

Every packet from the ground station contains the current hopping pattern, the start time of the hopping pattern, & the current time.

The ground station changes hopping patterns at certain intervals. It broadcasts the new hopping pattern & new start time a certain time ahead of schedule so the copter can update.

To change patterns, the ground station needs to receive at least 1 packet in response to the current pattern.

In case the copter doesn't get it in time, half of the time slots are the same as the previous pattern & these slots cover all the frequencies. It takes 2 new patterns to replace the pattern completely.
Posted by Jack Crossfire | Feb 11, 2009 @ 02:40 AM | 3,668 Views
The Maxbotix is back. This time, we've cannibalized the GPS UART for sonar testing & gotten better results. It accurately measures height in the dumpy apartment, up to the ceiling, with the motors off, & using 3.3V. We'll see how it does in a flight someday.
Posted by Jack Crossfire | Feb 10, 2009 @ 02:45 AM | 3,391 Views
The answer is yes. The trirotor can fly itself with gyros & GPS only. Position sensing on the uBlox is good enough to compensate for the slow drift & an IMU based on ADXRS150's is a thoroughbred. This can cut $90 from an autopilot.

It is slightly sloppier than the 7 degree of freedom IMU. The quaternion becomes more unstable as the angles drift farther apart. There is a limit to how much maneuvering you can do & the flight time. But this system is immune to electromagnetic problems. Might skip the magnetometer forever.

Corotating 12x3.8's generated enough power to lift the camera. The battery was pegged at the cutoff voltage for the entire 5 minute flight & the motors were smoking, but it did it. Without the camera, the 12x3.8's got the same flight time as a quad rotor. If counter rotating 12x3.8's were part of the next economic stimulus package, we'd be golden.
Posted by Jack Crossfire | Feb 09, 2009 @ 02:00 PM | 3,557 Views
The answer is no. The tri rotor doesn't have enough power to lift the camera. Don't expect any DT750's to appear. It's always easier to lighten the payload than increase the power.

Want to combine the fabrication of a new, el cheapo system with the lightening of the payload on the tri rotor. Mainly a system that uses only gyros & sonar & takes short flights.

Would now say the 50Hz radio is more stable than 25Hz but nothing critical. It doesn't oscillate as much in orientation.
Posted by Jack Crossfire | Feb 08, 2009 @ 08:33 PM | 3,023 Views
They have automatic throttle calibration which can't be disabled. If they go over the default maximum, they normalize all other values to the new maximum. You'll find your multi rotor vehicle starting out balanced & always pulling to one side after some stiff maneuvers.

Now a message from your sponsor.

In the 80's, almost all parents worked. There were no "stay at home moms." "Housewife" was a bad word. The term "latch key kid" wasn't invented yet.

TV stations were quick to capitalize with a block of daily animated shows from 7am to 8am & again from 2:30pm to 5pm on 2 channels. The most popular shows were on between 3pm & 5pm. You were lucky to wake up early enough & have enough time before school to reach the morning shows & you were lucky to get home in time for the 2:30 show.

There's no archive of TV schedules on the internet. Goog's future hit will be the TV schedule archive. It went something like this during the peak of the 80's:

7-8 am: KBHK: Gumby/Galaxy Rangers
2:30pm: KBHK: voltron
3:00pm: KTVU: thundercats KBHK: inspector gadget/heathcliff
3:30pm: KTVU: smurfs/Scooby Doo? KBHK: starblazers/robotech/captain harlock/Dennis the menace
4:00pm: KTVU: GI joe
4:30pm: KTVU: transformers

If 1 channel was a crummy episode or Sutro tower was down, you'd watch the other channel, so the times R a bit foggy. KBHK would always be static in lousy weather.

We learned more from afternoon cartoons than we did from Calif* public schools. We would never raise a kid in Calif*. Calif* public school kids can never reach the human potential no matter how hard they work. Indians move here to make tons of money & put their kids in public schools. The Indians only get hired because of their Indian education. In exchange, they enslave their kids to a future of begging & wondering why their XBees don't work.
Posted by Jack Crossfire | Feb 08, 2009 @ 03:33 AM | 2,875 Views
So when the XBees got flashed, they stopped crashing in full duplex. The XBees either tend to have reset glitches or they were only tested using flashed configuration back in Utah.

That stimulated us to once again raise the feedback rate as high as the XBees can go. At 115200 baud, they can do 50Hz without losing too many packets. This is the rate if U send & receive really small packets & the rate that matters for holding orientation. Want higher feedback rates? Reduce the amount of telemetry.

The maximum full duplex bitrate depends on how fast the UARTS are. If U had the UARTS all the way up to 250000 baud & filled every packet to the 100 byte limit, you could probably get 40000 bits/sec at 50Hz.

Also discovered the PIC locks up if the UART input buffer is allowed to overflow too many times. That's a bug in the hardware. You need to keep the UART input buffer empty.

After 5 months of degraded settings, ground based autopilot is finally at its full potential. The radio link has exactly the same latency as if the computer was right on the airframe.

Unfortunately, there is no meaningful difference in flight characteristics between 25Hz & 50Hz. It might be a hair more stable. It just makes the radio more reliable. Also, the standalone GPS voltage regulator made no difference in positioning.
Posted by Jack Crossfire | Feb 07, 2009 @ 01:10 PM | 2,686 Views

We read every copter accident story. That's why VicaCopter has no RTL capability & firmware changes take months. In China he had to pay $880. If the same thing happened in US, he'd be sued & spend the rest of his life in indentured servitude. In Khazakstan, he'd be hanged.

If U managed to get VicaCopter to go sideways, at high speed, out of control, at low altitude, with the motors still running, into a human, we think VicaCopter's prop would either break or the airframe would bounce off the human. It would definitely leave a mark. At low speed, the main problem is the propellers. At high speed, the main problem is the airframe.

We've been pretty good at avoiding people, but with these Americans U never know. They walk into propellers, follow objects blindly, & chant "more stimulus! more stimulus! moe stimu..." all the time.
Posted by Jack Crossfire | Feb 06, 2009 @ 05:30 PM | 3,022 Views
The answer is no. There is no parallel version of U making millions of dollars in another universe. By definition, a more successful version of U isn't U & U can never experience what that other mental image is experiencing. There is only 1 U in all the universes & that person has the low level of success U got.

U never experience death in your frame of reference, but everyone around U sees U die. U die in the current universe but instantly resume sensation in another universe where the exact same mental image is still living. In your frame of reference, U find miracle cures for all your diseases. U avoid accidents by split seconds. Maybe each one of us becomes the oldest living human in our own universe.

Maybe the people around us figure out how to stop death & we all end up with a terminal generation in a terminal universe. Maybe political leaders realize humans don't experience death & destroy the world. After many universes, political leaders either get tired of destroying the world or realise they can't get anything done.

Maybe you'll decide to stop doing anything because you know you'll become the oldest human anyways & live off of talkshows. Maybe in your future universes everyone will be older by an equal amount & U won't become the oldest human. There will always be just 1 who you die before in that universe & he'll get all the talkshows. He'll be named Oboobu & you'll be named Hillary.
Posted by Jack Crossfire | Feb 06, 2009 @ 02:52 AM | 3,252 Views
Lucky 4 U it's raining, or we'd be flying & you'd be reading AdSense instead of another blog.

When you're done fussing with sonar & uBlox, the first $40 10Hz GPS modules R dropping from Taiwan. Who knows how accurate they are. We've been pounding the GPS beat for 2 years. It's only accurate to 1m & this has always kept U from Star Wars bliss. The last Taiwan module U got, the EB85, was a huge disappointment.


For unidirectional sonar positioning to work, U need unobstructed paths to all 3 ground stations. Not very useful if U intend to photograph something between the vehicle & the ground.

The solution is to have 1 ground station sensing in polar coordinates. You need 3 receivers on 1 big ground station & some diabolical analog circuitry to compare the phase of the incoming waves. That gives U radius & angle.
Posted by Jack Crossfire | Feb 05, 2009 @ 02:31 AM | 2,875 Views
So after 2 days of banging on it, gave up on software reset for XBee. Using a BJT to control power causes the voltage to drop & be unsable. MOSFETs R just unreliable. Running another wire out to the reset pin would be a mess & there's no guarantee that would unfreeze it. All these extra components R another failure point. There's no guarantee each XBee wouldn't forever take turns resetting while the other one was running. Finally, the sonar obsession is taking over.

Don't have the money to build it, but one day VicaCopter is going to do a flight using 1 way sonar. It'll use the 1 sonar from last year as a transmitter & 1 bare transducer for a test. Then we'll upgrade to 3 bare transducers if it works. Very risky to hack the modules for 1 way sonar. To use the bare transducers, U need to build comb filters.
Posted by Jack Crossfire | Feb 04, 2009 @ 01:09 PM | 3,067 Views
The tri rotor is probably our last full size airframe. There R enough spare parts to build a 2nd manually controlled trirotor for free, but we don't get a thrill from manual flying anymore. It would cost $100 for an accelerometer & magnetometer to make it autonomous.

Now a crazy idea. No-one sells it commercially & it would be a marketing disaster, but U need to invent unidirectional sonar. Sonar sensors don't work because:

It needs 6" of clearance to calibrate.
It needs a hard surface to reflect off of.
It needs to be free of wind noise.
It reflects off of everything but the intended surface.
It has limited range.

The solution is unidirectional sonar. Mount a transmitter on the airframe & 3 receivers on the ground. Measure the delay to each receiver. The trick is synchronizing the clocks.

You'd have to place the transmitter right next to a receiver & command it to send a ping manually. This would set the start point of the clocks. The transmitter would then automatically ping. The receiver would know the time it received the commanded ping was the exact time the commanded ping was sent & every later ping originated at a known interval after the commanded ping.

Unfortunately, unidirectional sonar is like sound recording in 1850.

People don't know what to do with unidirectional sonar.
They don't think unidirectional sonar should be possible because no-one does it.
They're scared off by the idea of synchronizing clocks.
The economic stimulus plan only funds roads!
Posted by Jack Crossfire | Feb 03, 2009 @ 12:51 PM | 2,799 Views
The need for yet another rework to power the camera finally pushed us into yet another rework cycle. U've got a dedicated GPS voltage regulator, removable XBee connector, automatic crash reset for all XBees & upgrade to 50Hz feedback coming to U.

Mind U, there R still more items on the agenda after this. As long as U keep shoveling your taxes into our credit card, we'll keep building crazy ideas.

So the golf course was supposed to reduce its water usage 1/3 last year so farmers could keep making money during the latest drought. The golf course stopped watering 1/3 of the grass, but started watering during 4 extra months. No change in total usage but good enough for government work.

Kind of wierd seeing sprinklers running year round, in freezing weather, just to get around the water rationing. Maybe they'll make snow. There's only 2 hours between the sprinklers finishing & all the Windows virus scanners filling the 2.4Ghz band.
Posted by Jack Crossfire | Feb 02, 2009 @ 07:15 PM | 3,092 Views
The camera finally got its next mounting fixture. Using the pure linear regulators of the ESC's, the camera sucks 0.2V off the battery voltage & your flight time vanishes. The T-Rex did much better because it had a 5V buck converter, but U really need a 3.3V buck converter.

So U think because they had real tiny engines, spent most of their time gliding, & the test pilot Bill Dana looked near retirement age, lifting bodies were benign, do U? Well think again. They were real unstable in the roll axis & if U didn't have functioning landing gear, the curved underside would send U rolling over like pipe.

The idea with the lifting bodies was to use the entire mass as a useful payload area, but they still ended up requiring lots of thin, vertical pieces of ballast & forget about roll control.
Posted by Jack Crossfire | Feb 01, 2009 @ 10:45 PM | 2,923 Views
So tried 20Hz to see what would happen & the Blox did 3.3Hz again. Tried 4Hz & the Blox did 4Hz under any satellite count. So obviously the Blox has a real crummy rate controller. If it's overloaded, it throttles the update rate way down. If U had the source code U could do a better job, but U don't so 4Hz is what U get.

The XBee locked up yet again after a landing, so we had to power cycle the 3.3V supply & the GPS. Most people R hard flashing their XBees so they restart instantly. Something to think about.

GPS did a cold start when power cycled outside. Suspect the backup battery is improperly connected on this blox & it's glitching.

For today's video, U get a manual hover in front of the camera. Then the same autonomous takeoff, pirouette, & landing is repeated several times. The uBlox was overclocked to 5Hz & didn't work very well.

Autonomous Tri Rotor 2 (3 min 55 sec)

Posted by Jack Crossfire | Jan 31, 2009 @ 09:48 PM | 4,150 Views
Decided 5Hz is better for altitude, so U should make every attempt to get 5 Hz. Tried the CFG-NAVX5 trick & it didn't work. U need a firmware upgrade to get MAX SV's to work. U can't do that in Linux either. U need to reboot Windows a few times & try to get u-Center working for a few hours.

4 U Blox fans, to flash the Blox, once U have u-Center working & found your way to the "Firmware update u-Blox5" window, U need to specify the .BIN image for "Firmware Image" & for the "Flash Definition File", specify C:\Program Files\u-blox\u-center\flash.txt. They didn't mention that nugget of information in the GUI.

If U screw this up, your blox won't boot anymore until its RAM is reset. You'll have to either short circuit the coin cell or wait a day for it to die on its own, not that the coin cell serves any purpose other than ballast.

Unfortunately, a functioning 11 satellite limit with firmware 5 didn't work either & our altitude precision really sucked. Now getting 2.5 - 3Hz. That's almost EM406 suckness. Either the UART isn't working, satellite signal quality affects the update rate, firmware still isn't working, or leaving the module on 24 hours screws it up in some other way.

At least U finally get a video of the tri rotor flying.

Autonomous tri rotor (1 min 8 sec)

Posted by Jack Crossfire | Jan 30, 2009 @ 01:53 AM | 4,010 Views
The uBlox-5 slows down with high satellite counts. In the 12-15 satellite range, 3Hz is what U get. In 9-12 U get 4-5hz. Below 9 satellites U always get 5Hz.

If U must have 5Hz, U can limit the number of satellites with the CFG-NAVX5 command. Then to see what it's discarding, use the NAV-SVINFO command.

We have no plans to reduce the satellite count.

One other thing, trirotors & quad rotors have dissymmetry of lift. The compass can be made pretty accurate, but dissymmetry of lift is always going to be spiralling U around.
Posted by Jack Crossfire | Jan 29, 2009 @ 02:32 AM | 3,585 Views
Have a video of some model airplane wiring jamming a compass. This actually happened to the autopilot in flight before we moved the wires farther away.

Model airplane wiring vs. compass (0 min 36 sec)

The reason for this was to see if the magnetic deviation was identical regardless of heading. This shows U roughly how full throttle pulls the magnetometer the same amount no matter where it's pointing, good news 4 U. U can wrap the wires as tightly as possible & move them as far as possible from the compass, but U eventually need to add fudge factors to the calibration.

That sort of worked. Got spiral free & tight control initially. 3 batteries later, heading was off & spirals were beginning. Magnetometers suck. Whether fudge factors did anything is debatable. There must be a point where it's just accurate enough, but movie magic looks impossible with this airframe.

You'll be happy to know the 24 hour GPS is paying off. Got 15 satellites for a few seconds & 13 most of the time.

Haven't crashed the tri rotor yet. Almost time to warm up the flags.
Posted by Jack Crossfire | Jan 28, 2009 @ 12:23 PM | 3,526 Views
The answer is yes. The T frame has a strong magnetic dipole because of the long wire run. U get a nifty shift in compass readings when the motors start. The symptom of a compass error is spirals & velocity commands causing movement in the wrong direction. When the compass is dead on, with the 24 hour GPS calibration, U get extremely dead accurate flying.

Your best option is to strap it down & spin up the motors to full power. Add the difference in readings to the calibration factors U measured when it was idle.

Also those 9V batteries only last a few trips to the test range. Going to need more LiPos. U taxpayers better get another emergency cash infusion ready 4 Bank of Commumerica.