It’s a runaway succ…. failure

Another failure!  Though all signs pointed to it working…

So I got a freebie OddBot sent to me a couple of weeks ago, it basically is a derivative of my Mecanum Rover and Olaf was kind enough to sent it with almost everything attached less the Chumby.  Since I’ve been on a TI Launchpad buying spree, I thought I’ll tack one on in place of the Chumby to drive it.

So far this post reads like a gigantic spam with all those links…no enlargement links coming up, I promise…just one short video of it not working and running away on me.

Continue reading “It’s a runaway succ…. failure”

Madox-Kart – Background and Introduction

I’ve always had an idea in my mind to hold a public competition in say Darling Harbour (Sydney, Australia) where participants build something to race. Anything, a boat, a car, a plane, really anything because a competition is always fun to watch. Not necessarily for ‘wow that’s cool’ but failures can be pretty hilarious too.

The idea is probably even plagiarised, I remember as a kid there was a woodworker/carpenters competition at said Darling Harbour where various companies were given a pile of wood and had to build a boat and race it in a limited time. There were awesome entries and there was the sheets of wood nailed together and fell apart as soon as it hit the water. Hilarity when the ‘losers’ swam and capsized almost everyone else.

Back to the Kart.

The idea is to build and race remote control karts (cars) around a course of obstacles and other fun things. There’ll be a set of rules and restrictions to make it challenging and fun.

That was the basic idea, with a potential spinoff that if we can aim for a low enough cost we can potentially produce a ‘kit’ that can be used for education to promote interest in electonics and Engineering.

The fork

I bounced this idea by the local hackerspace (Robots & Dinosaurs) here in Sydney and ended up with a mega thread of 144 replies so far. There are varying opinions on various items, for example how a ‘low cost’ solution might be ‘too hard’ and also confusion on who the target audience is.

So hence I propose a fork into two Karting Categories

Madox Kart – Educational

I am still very eager to create a platform that can be used for schools and keen parents to teach their kids about electronics/programming/general principles. The audience I had in mind for this is 12-16 year olds, say in high school where design/build/racing of the Kart can be built into the school curriculum. Does anyone remember or know about the ‘Mouse Trap Racers’ and ‘Rubber band Car’ competitions? Isn’t it about time we advance a little bit into electronics and build something a bit more complex? I think the Kart would be a great replacement.

To have it in a competition form provides positive motivation for the child to succeed. Who doesn’t want to win against their mates? Isn’t this alot more fun than reading out of a text book? Its interactive, its hands on and I think it should be good.

So this idea is currently at the ‘Design Challenge’ phase where I seek everyone’s opinions and ideas on how we can make this an open-source kit for children. The main driver for this would be affordability, with $25 for electronic components as my rough budget. Bonus items would include expandability (can the kit be reprogrammed or used again?) and ease of build (e.g. I’ll avoid any use of power tools).

Again a reminder, affordability is key. There will be some of us who will say ‘but it is only $1 more’ or ‘$10 is nothing’, please remember not everyone may be as fortunate as you and that amount of money may be significant to them. I want to provide the best ‘educational value’, performance is not the main theme.

Madox Kart – Hacker

Of course there are those of us who just wants to have a bit of fun and not let our creativity be constrained by tight budgets, thus creation of this new category for HACKERS. There will still be a set of rules and constraints to avoid overkill and competition domination just by money, so just throwing the idea out that its probably to put a dollar constraint on this one as well – say $100?

The possibilities for this one is that we can have build workshops at our local hackerspace to help each another and learn as well as having a bit of fun with competitions with prizes. If this gets off the floor, we can compete with neighbouring hackerspaces as well just to add a bit of friendly rivalry into the mix.

I very much like the idea of a ‘kart race’ over other forms of competitions like the robot wars type. It is less ‘violent’ for starters and may help to promote the public image of hackerspaces in a better light.

In closing, here is a rubber ducky…

Yup I originally wanted a remote control rubber duck race in Darling Harbour, somehow a ‘Madox-Kart’ seemed more practical…

Because failures are educational…Prototyping

Failures are educational and they should be shared with the world.  Too often you see awesome projects on the Internet and wonder ‘How did he do that?’ but rarely do you see the failures behind these projects.

I’m planning an ‘educational’ project currently code-named ‘Madox-Kart’ that I’ll get around to writing about, the summary is that it is a educational and fun project for kids to make programmable RC cars on the cheap (<$25) to teach electronics and 3D printing.  To test out the concept, I decided to make a prototype.

Prototype was ‘quick and dirty’ and looks something like :-

Madox Kart Prototype

Continue reading “Because failures are educational…Prototyping”

Autodesk Catch & Meshmixer Quick Test

With the proliferation of home 3D printers, a lot of people ask ‘how do you create the 3D models to print?’.

The answers are typically “I download it from Thingiverse…” or “I model it up using CAD myself” (My answer), the first isn’t that fun and the latter might be too hard for the non-technical crowd.  However all is not lost, quite recently a few services have popped up that offer Photogammetry where you can upload a number of photos and back comes a 3D model.

There are a number of options but based off a chat while visiting Beehive Digital Manufacturing over the weekend I decided to give Autodesk’s Catch (was Photofly) another go so I can share the results on how easy it is to create a printable model.

Soldier Boy + Mini Soldier Boy + Micro Soldier Boy

Continue reading “Autodesk Catch & Meshmixer Quick Test”

Full Disclosure – I am now a pp3dp (3D Printer) reseller in Sydney :)

I’ve always said good things about the Up! 3D printer from pp3dp in the past year I’ve owned the printer and now I’ve become a local reseller in Australia.  Just want to get this out in the open in case anyone thinks I’m talking up the printer just to sell it…

However if you ARE interested in buying one, feel free to buzz me by email to : madox dot net at gmail dot com , and I’ll see if I can get you a good deal 🙂

Python Webcam Streamer

I have only just realised what a misnomer the term ‘webcam’ is but can’t seem to think of something better.  Anyway quick post to upload a Python ‘Webcam’ HTTP Streamer.

I found mjpg-streamer but it wasn’t quite right –

  • I had to compile (cross-compile!) it each time I wanted to use it (hard to share…)
  • I couldn’t embed it easily with existing programs (to share same http port) etc.
  • It seemed to use a lot of CPU when it had to compress the images using libjpeg

So I decided to ‘Google’ around and look for a V4L2 binding for Python and couldn’t seem to find anything… only did I realize Pygame has this inbuilt already but no one seems to mention it!  So to keep things short, here it is :-

http://code.google.com/p/madox/source/browse/trunk/webcam_stream/webcam_stream.py

  • http://<ipaddress>:8080/GetStream – This gets you the multipart/jpeg stream
  • http://<ipaddress>:8080/GetImage – This gets you a single image
  • http://<ipaddress>:8080/JSImage – This uses the single image interface and gets the images as fast as it can via JavaScript

Framerates, ports (default 8080 in above examples), resolutions are in the source file for you to customize – go for it.

Converting to/from RGB565 in Ubuntu using ffmpeg

I used ffmpeg to convert an image for my Android splash screen previously but couldn’t quite remember the right command.  The standard answer you’ll find on the internet is to use the rgb2565 tool included in the Android tools source.  Luckily there’s an easier way 🙂

Converting from RGB565 (to PNG)

ffmpeg -vcodec rawvideo -f rawvideo -pix_fmt rgb565 -s 320x240 -i image.raw -f image2 -vcodec png image.png

Converting to RGB565 (from PNG)

ffmpeg -vcodec png -i image.png -vcodec rawvideo -f rawvideo -pix_fmt rgb565 image.raw

Now I have custom Chumby boot screens! [Yeah wasn’t doing it for Android this time…]

Experiment with PhoneGap – Awesome

The backstory is that I created the Mecanum Wheel Rover with a web interface with intention that it can be cross platform.  Every phone/mobile can view the web right?  Then there are those wonderful APIs for accessing device hardware such as accelerometers and compass so they can be useful inputs too.  Therein lies the problem, other than iOS 4.3+, there’s almost no support for the DeviceMotion APIs, it is not even in Android 2.3!

I made a ‘vague commitment’ (hehe) to provide an App that would use the accelerometer to drive the Rover.  Little did I know how annoying it was that almost all code examples/tutorials online are made irrelevant by the ever changing Android API set.  Almost giving up,  I ran into ‘PhoneGap‘.

PhoneGap is a mobile framework that allows use of HTML+CSS+Javascript to be built into a ‘native app’, for iOS, Android, Blackberry, Palm, Windows Mobile/Phone, Symbian… yes it targets them all!  Sure there’ll be some missing features here and there but WOW!

To keep it short, the wow factor continues with :-

  • There’s documentation!  DECENT DOCUMENTATION!
  • There are code examples!  WORKING CODE EXAMPLES!
  • Comprehensive get started tutorial for Android/iOS.
  • It took me less than 30 minutes from download to simple code running on the phone that remote controlled the Rover!  Seriously, I think the iOS/Android SDKs take longer to install.  (Oh cheating… I had the SDK installed already).

It looks like it is building up a decent user base, go check it out.

Oh and here’s the quick & nasty app in action :