HobbyKing.com New Products Flash Sale
Jack Crossfire's blog
Posted by Jack Crossfire | May 18, 2013 @ 10:29 PM | 4,828 Views

A rare photo of how someone attached a gimbal to a motor. It was indeed drilling & tapping aluminum.

Shot some video with the 3 axis gimbal. The turnigy 2205 1350k had enough torque to do roll, if it got hot enough & the derivative was longer. Taking enough care to keep the yaw motor vertical made the yaw coupling bearable.

There's a lot of wobble from all 3 motor shafts, aluminum flexing, high impact. It needs a lot of cushioning to eliminate the jarring motion, but it can't be eliminated from running. The yaw motor has to be less effective, to keep from shaking all the stuff hanging off it.

After thinking about the problem, the way to decouple yaw from roll/pitch is to have a 2nd IMU on the yaw beam. The yaw beam is always perpendicular to roll. It doesn't need a compass. The relative roll/pitch of the 2 IMU's determines how much yaw is contributing to roll/pitch. It would take fusing the 2 IMU's to determine just the derivatives & rate feedback of the motors.

There's little point in having a 3 axis gimbal without going all the way, but there's little point in having a 3rd axis, either. It's too heavy to actually run with. Video is always going to need software stabilization because of the play in the structure. It's never going to be stable enough for long exposures.

Airborne video seems good enough with only 2 axes. It's probably better to wait for the 3 axis solution to make it to the open source version.
Posted by Jack Crossfire | May 18, 2013 @ 03:55 AM | 5,542 Views
As soon as all 3 motors were fired up, it immediately became clear that the roll motor needed to be a lot more powerful or the roll assembly needed to be a lot more compact. There's too much inertia in that direction.

It also became clear why a 3 axis gimbal hasn't appeared from Alexmos or open source. The yaw motor fights the roll & pitch motors if it isn't level. The pitch motor handles crosstalk better, since it has less inertia. The roll motor can't handle any crosstalk before it oscillates.

In very little tilting, the yaw motor becomes a roll or pitch motor. The roll motor also becomes a yaw motor when tilted. It could probably be bearable if the motors were powerful enough, but never perfect.

A more complex feedback model is required, which predicts the effect of each motor on the IMU, after translation through the downstream motors. That would require knowing the orientation of each motor.

The DJI Zenmuse does it perfectly. It seems to have potentiometers on all the motors. No-one has ever torn down a DJI. It's only a matter of time before the extra math makes its way into open source. It'll probably use an IMU for each motor, so people can still make their own frames.
Posted by Jack Crossfire | May 16, 2013 @ 04:44 AM | 4,369 Views
Went ahead with fabricating all 3 motors. The thing is, the 2 axis brushless gimbal footage is so stable in roll & pitch, shaky panning starts becoming noticeable.

This DT700 with famously broken wires last flew on a very windy day in 2010 & crashed. Sadly, the bearing fell out & was absorbed into the apartment, never to be seen again.

...Continue Reading
Posted by Jack Crossfire | May 15, 2013 @ 11:39 PM | 3,857 Views

Found a rubber pipe was good enough for attaching the motor, for now.

Brushless gimbal motor test (1 min 40 sec)

That led to the 1st reasonably successful test of 1 axis.

The gimbal controller is not intuitive, since a single PID loop is not enough to track a solid camera angle. Reading through the forums & the open source controller, it requires an outer loop to determine a turn rate goal from the angle error. The turn rate goal is very low. Then, there's an inner loop tracking the turn rate goal by commanding very fast motor phase changes.

The turn rate from the gyro is not enough. The inner loop also needs the derivative of the gyro reading to dampen the turn rate. Version 048 of the open source gimbal didn't do this right, but still managed to work.

Most of the stabilization is done by the inner loop counteracting the relative gyro movements, with only very slight angle errors accumulating for the outer loop to correct.

The trick with calibration is to start with all the gains at 0. Calibration must be done with the camera attached, since it adds a lot of inertia. This causes the calibration without the camera to be completely unstable.

Start by increasing inner loop P until it oscillates, then increase inner loop D. It should lock on for very long periods with only the inner loop.

The optimum values had P & D equal & fairly high, with a derivative length of 3.4ms. If the...Continue Reading
Posted by Jack Crossfire | May 14, 2013 @ 08:46 PM | 6,344 Views
Avoided looking at the bank statement because getting paid to work on robots was too good to be true & I suspected I wasn't really getting paid the full amount. When it became time for the 1st major $1000 car maintenance, it was time for the bad news.

Sure enough, I was only being paid about 1/2 of the amount stated. Basically got 1/3 in Nov & Feb & only 1/2 after Feb. The money was less than break even for the last year & now there was $1000 in car maintenance. Time to start thinking more about web applications than robots.

In the new economy, something is better than nothing. If the guy doesn't have the money, he doesn't have the money. You don't complain about only getting 1/2, not knowing what you're really going to get, or reality not agreeing with word documents. But you do have to budget your time based on the need to pay rent.

13 years after the 1st dot com crash, it's all social network web application jobs out there. My generation avoided all that SOAP, Ruby, JSON, Python stuff, because those jobs completely vanished in 2001. They still make us queezy.

If you create a website to learn the latest buzzwords, who's ever going to use it? How would you ever gain experience with large numbers of actual user accounts on a large data center? It's not like writing a desktop program, where your own needs are enough to fully exercise the platform.

2nd on the popular skill requirements is iOS & MacOS development. This...Continue Reading
Posted by Jack Crossfire | May 14, 2013 @ 03:08 AM | 5,269 Views

The 1st board which didn't have any defects. It worked on the 1st power up. It makes sense, because after that, you realized you didn't have as much money as you thought you did.
Posted by Jack Crossfire | May 13, 2013 @ 02:05 AM | 5,186 Views
Posted by Jack Crossfire | May 11, 2013 @ 04:43 PM | 4,801 Views
Jaron Lanier Asks Who Owns the Future?

Interesting commentary on how the information economy has caused a new feudalism & deterioration in human wellbeing. Key to the new feudalism is the "big computer," a computer which has a massive collection of private data: bank statements, browsing history, private photos, private relationships. In the past, it was benign, but now the information is being turned into profit, the largest source of profit in all history. The big computer uses your private information & ever more advanced algorithms to direct advertizing, collect bank loans, trade stocks.

The problem is the big computer is not a democratic technology & never will be. Only a very small number can exist, since you would never share your private information with John Smith the taxi driver. That information is only for the most powerful, prestigious, trusted people in the world: Google, Facebook, JP Morgan, Bank of America, your government.

You can't effectively trade real estate because you don't know where the rich people live, but ah, Google does. You can't become a wedding photographer because you don't know who's banging who, but ah, Zuckerberg does.

A case in point was Facebook buying Instagram for $1 billion. 1 very trusted guy aggregated the private memories of a lot of people on a big computer & sold it for $1 billion, so the $1 billion of value that originally belonged to a lot of people was...Continue Reading
Posted by Jack Crossfire | May 11, 2013 @ 12:57 AM | 3,051 Views
Optical flow insanity (8 min 0 sec)

Flying waypoints over the floor pattern, using pure optical flow odometry & sonar: any altitude seems very stable, over the pattern. Stability over carpet, with some manual intervention: 0.5 meters is all you get, over carpet. At least the MB1240 does an excellent job managing altitude over any material.

Went back to position->velocity->tilt feedback. That was done in 2007, then changed to position->tilt in 2008, when GPS got good enough. For indoor navigation, position->velocity->tilt feedback seems to be better. Originally saw position->tilt in Mikrokopter when it was open source, thinking it was going to be the standard design. That might explain the lifetime of toilet bowl effect.

Vision guidance doesn't have doppler shift. Also, the IMU drifts too much to clamp tilt at a reasonable value. You have to clamp velocity so a long movement doesn't go out of control.

Increased the frame rate back to 50. There is always a hunt for the highest frame rate before the minimum speed becomes too high, yet not too slow to have too much error. Those improvements made it pretty damn stable.

The room will most certainly now be leased by someone, now that the floor pattern is taped down.

Posted by Jack Crossfire | May 09, 2013 @ 11:12 PM | 2,936 Views
Boeing offers voluntary buyouts to employees in its space division

Drone maker AeroVironment sputters as defense spending dries up

Raytheon announces plans to eliminate 200 jobs

So avoid LA if you want to be employed. With the civilian layoffs & 6th consecutive year of downsizing, the area around LAX must be a ghost town, by now. Getting paid to design drones is now so competitive, you end up with a lot of experience that must be thrown away because you don't have the right degree & now they can ignore anyone who doesn't have an MS in CS just to fill the garbage bag unrolling position.

It never was supposed to be more than a hobby, but you always get caught up in just the news you want to see. In our lifetime, there probably won't be a practical use of drones outside of life or death military scenarios, because

#1 the energy storage technology doesn't exist. All 600 battery breakthroughs since the LiPo haven't amounted to anything. Even A123 Lithium Phosphate cells went away.

#2 The energy involved & reliability of the components to make something fly autonomously are too dangerous for an unattended appliance or require too much skill to manage.

There is always the environmental science, a very small market. There will be a boom in autonomous toys, but only generating very low Chinese wage level profit.

This hobby originally came from a desire to work on space vehicles. latimes.com had a word about that, too. Boeing...Continue Reading
Posted by Jack Crossfire | May 08, 2013 @ 11:54 PM | 4,495 Views

There were some cheap optical flow floor covers at the dollar store. Unfortunately, there's not enough room in the apartment to paint them. It takes 3 to create a reasonable flying space.

No better than unrolled garbage bags, but the most compact material. Can't imagine who would ever use them as table covers.

...Continue Reading
Posted by Jack Crossfire | May 08, 2013 @ 01:43 AM | 4,804 Views

These died, yet again. They're 27 years old. The right speaker finally became disconnected. They were originally $80 + 7.25% tax. Now, they're $55 + 10% tax. They are the best sounding phones of them all. Very clear at all frequencies.

They are the perfect tightness. The head band only gets painful without a mane. They were shredded from wearing glasses. Eventually they'll need new ear pads, maybe some RC foam.

...Continue Reading
Posted by Jack Crossfire | May 07, 2013 @ 11:26 PM | 5,389 Views
Half pixel or full pixel motion searches in optical flow is a highly contested issue. Half pixel takes a lot more software & clockcycles. Optimizing it to run on a pinhead takes a lot of coding.

The same thing can be done by doubling the camera resolution, doubling the focal length, halving the frame rate, or averaging all the motion vectors. It's really a logarithmic search at double the resolution. It's only effective when all other options have been used & you need the last bit of accuracy.

Optical flow has a problem where movement isn't detected below a threshold, but there's always wobbling movement above the threshold. There might be long term accumulations of movement that only half pixel can detect.

The next problem is at high altitude & small derivative size, you get oscillations. The gyro timing & optical measurements aren't accurate enough to get rid of angular movement. You need a derivative that gets longer with increasing altitude.

Optical flow is believed to have 2 weeks of life left in it. It would only be useful for job interviews, after that. It might have some use, augmenting GPS. It would only work in daylight, at low altitude. GPS in an urban environment has never improved. It's always going to need something.

It might have some use augmenting a front facing camera for absolute positioning, indoors. Absolute position with downward optical flow & front facing object matching might end up the way indoor navigation is done.

It's still the only method which can be completely independent of any navigational aid. No satellites, no ground based camera, just a textured floor.
Posted by Jack Crossfire | May 07, 2013 @ 03:52 AM | 7,836 Views
Opening the recruiter spam for the 1st time since the college application revealed the same old wank words, every buzzword ever known required to apply, but it would have been the same, even after another degree. Each of those positions is getting many applications & they're very undesirable jobs.

The job market & your lack of money can make you feel like you've lost your way, gotten distracted by robots & electronics that can't possibly be useful without a formal engineering degree. Then you saw a blog post by a coworker you consider to have the kind of focus on software that someone with formal degree in CS & not engineering needs to have.

"maybe itís because I havenít written enough code in the last few years"

So what would you see if you saw yourself from a 3rd person for the last 3 years? You would see a skinny guy spending 12 hours, 7 days a week, sitting at a computer. Most of the productive time is programming. Sometimes Eclipse is running with an Android project. Sometimes a text editor is running with a C/C++ project.

There is a lot of time laying out boards & fabricating, but every project is designed to rely on software to get the most out of the least amount of hardware. It's not the 100% focus on software of 1999, but it's not a total shift to hardware, nor is it obviously far less than those who are gainfully employed in software.

You're not investing in any relationships. Your destiny was not to get married. The coworker also got a few cases of wine. You're not an expert in wine like everyone else, because you can't afford it, not because of beliefs.
Posted by Jack Crossfire | May 06, 2013 @ 05:16 AM | 3,255 Views
As expected, I was rejected from the EE program. That was a competitive program. Since it was the only 1 in the state for 2nd BS degrees & so many people are unemployed, it was probably more competitive than for high school students in 1993.

I thought long & hard about selecting CS as an alternative, but jobs for CS majors don't normally require the formal degree like EE jobs, just learning the language of the week. It would not justify the amount of debt & time required. There was the idea of getting into any easy program, then transferring to EE, but I suspected that wouldn't be possible for 2nd BS degrees.

Then there was applying elsewhere, out of state, or private schools. It wasn't considered a high enough priority to justify the extra money. There's applying elsewhere next year, but a new degree gets rapidly less valuable after 40.

So there will be no move to the southland, no living 30 miles from Jesus Heroine again, no going back into debt, no $1400 rent, no nightly runs to the beach, no goofing off in school for 2 years, no larger apartment, no gold coast, no weekly drive to Venice beach. I considered moving there no matter what, but the rent & cost of moving ended up simply unaffordable. Job hunting revealed there aren't any jobs there like Silicon Valley. What there is much more often requires the formal degree.

No matter how much you logically know the only possible outcome, you still somehow get into a mindset that you're going to be...Continue Reading
Posted by Jack Crossfire | May 05, 2013 @ 02:20 AM | 3,806 Views
Finally put sshdroid on the tablet. That includes some busybox tools.

ssh root@ -p 2222

Unfortunately, sshdroid doesn't have all the tools. You still need to copy some files from busybox non-root.


It has some very useful tools:

vi, xz, ifconfig, iwconfig, free, wget

vi is much easier for config file editing than the graphical text editors.

Modern Android products get software updates for 1 year & that's it. The last version of Android they port is what you get, bugs & all. Unlike the days of generic operating systems on standard computers, it takes too much work to port Android to a gadget for it to forever be supported.

We've gotten to a point where consumers own very little of the gadget they pay for. You can't access all the data on it. You can't install anything on it that's not approved. There aren't the open source projects for phones that there are for servers. There isn't the overwhelming interest in having full ownership of software that there was, 20 years ago.

There is no way to root the Transformer Prime anymore. They hardened most devices over the years until rooting no longer worked. The mane need was to get at the application data, but users also wanted to disable adsense, which The Goog wouldn't tolerate.

All the email apps store your email in private directories. The only way to get that data is now

adb backup -f mybackup.ab -all

That copies the entire flash to a PC, where it can be extracted. http://nelenkov.blogspot.com/2012/06...d-backups.html

The relevant command was:

dd if=mybackup.ab bs=1 skip=24|openssl zlib -d > mybackup.tar

Sadly, the email is not in a decipherable format. Reading it will always require having the working gadget & backup file around. There might be a way to restore the backup file to an emulator, but the official emulator never worked.

It's interesting to see how an application you wrote actually stores its data, since this is all normally hidden. Preferences are stored in an XML file.
Posted by Jack Crossfire | May 04, 2013 @ 04:59 AM | 3,091 Views
So another idea to make something more crash resistant ended up another bodge job, but it was slightly less fragile. Noted the power output with brushed motors varies greatly between aircraft. This one had a lot less power.

The 1cm accuracy of the MB1240 made no obvious degradation to the altitude. It was much better at 1m altitude than the MB1042.

So now there are differences between exact copies of aircraft & there are some with internal guidance, some with ground guidance, necessitating many different config files.

They're now stored in /sdcard/DCIM/copter/ on the tablet & copter/ on the PC. There are so many parameters, having an Android user interface for configuration isn't practical. It's easier to edit a text file, but the Android file manager can't open .conf files in a text editor & you don't want to call them .txt files. You need a text editor with its own file picker to open it.

Finally, having a PC ground station allows video screen capture for debugging, but no tactile interface for manual mode. Having the Android ground station makes it much easier to give demos, but configuring wifi after every reboot is very time consuming. There's no way to force it to use 1 access point.

Porting changes between the 2 ground stations is a buster. It's about time to start using a preprocessor to share code.
Posted by Jack Crossfire | May 03, 2013 @ 10:42 PM | 3,228 Views
With 9V batteries heading to $10 & beyond, it was time to convert the scale to a Lipo. Its alkaline Won Hung Lo battery lasted 3 years, mostly in standby, but you don't have any money anymore for a new battery.

It uses 10uA in standby mode & 15mA when on. The battery warning comes on at 5V & it runs at over 8.4V, perfect for a lipo.

There is a steel lever mechanism transferring most of the weight of the enclosure to 4 feet & some of the weight to a steel flexing bar.

That is a real nice LED panel. There is a larger LED panel on a clock, suitable for scavenging, in the apartment. There was once a desire to make a large, GPS speedometer out of one.

...Continue Reading
Posted by Jack Crossfire | May 03, 2013 @ 12:39 AM | 3,445 Views
So the ultimate voltage regulator died, the moment the motors were started. What probably happened is back EMF spiking the battery over 6V. The MIC5353 only goes to 6V. The MIC5205 goes to 16V & didn't have a problem. So put high Vin on the list of requirements & forget about hooking a camera directly to a battery.

MIC5237 0.5A 16V 300mV TO-263

MIC5239 0.5A 30V 350mV MSOP-8 3x5, SOIC-8 4.93x6, SOT223 7x6.5

LT1763 0.5A 20V 300mV SOIC-8