Friday, May 1, 2015

Primo - part 1 (of many to come)

LEVEL: BOSS
DISCLAIMER: I have absolutely nothing to do with people from Primo. I have never met any of them and I have no financial reason to write about their product. But I can't help it because it is awesome!

This is a thing that actually jumpstarted my interest in microprocessors. A while ago (more than a year), there was a Kickstarter campaign for something called Primo (you can find all about it here). Being a proud physicist father (that loves programming), and having a lovely and supportive physicist wife (that also loves programming), I (we) embarked on a journey to make this thing. At the time, it was still unavailable, and even if you preordered, delivery time was estimated a year from then.
They provided a reasonably well documented DIY guide (you can still find it here) so it seemed like a reasonable little project. And it probably could have been...if I could make myself to stick to their instructions.

Should you do it yourself?

Yes and NOOOOOO!!!! If you really love tinkering with things, making and remaking, and really want to make this thing with your own hands, then yeah, sure, go ahead...I like not being the only crazy person in town. 
But if you like it, but are not sure if you will be able to do it..., or you don't have the space/time/energy to go trough it (and you will need plenty of each), I would highly recommend that you buy it from Primo.ioConsidering everything, the price is actually very reasonable (how much does sanity even cost nowadays?)

What is different?

As mentioned earlier, I made a few changes to the design. I will try to provide instructions as clear as possible. You should still first read the official instructions. It will make it clear for you how they did it, and you can also decide if you'd prefer to follow their path or mine.

INTERFACE BOARD:

  • X-bee radio shield substituted for bluetooth module (HC-05)
  • Arduino Mega substituted with Arduino Uno
  • added LED driver IC
  • swapped "GO" button construction with a ready make large push switch
  • changed resistor values (that's of no influence on the building process)
  • added a piezo buzzer - because I think I can enhance/improve the experience for the kid with having also an audio feedback

CUBETTO:

  • Xbee radio shield substituted for bluetooth module (HC-05)
  • solarbotics gear motors GM3 substituted for Tamiya twin motor gearbox (bad choice)
  • solarbotic wheels substituted for laser cut wheels from the same plywood plank as the rest of cubetto
  • made two separate battery circuits, one for Arduino Uno, and one for motors

Reasons for those changes are either financial, availability of items, or I just thought I can do it better.

  • X-bee radio modules (~120R$) cost 3-4 times as bluetooth modules (~35R$) - needs a pair. Also, X-bee radio modules fit very nicely on X-bee shield which cost much more than a blank PCB board with holes.
  • At the time I couldn't find Solarbotics motors or wheels so I opted for Tamiya twin-motor gearbox. Now that the Cubetto is done, I can see that the wobbliness of its gearbox is too large. I am planning to swap them out with Solarbotics (or similar) motors with gearbox. But that operation is pretty trivial since there is enough space and motors are almost identical.
  • making two separate power circuits for Cubetto electronics and motors is something I found is heavily advised in various forums on arduino and microcontrollers in general. The reason is that when the motors activate, they draw a lot of power and that can (especially when the batteries are not fresh) simply drop the supply voltage for Arduino below safe levels.
  • changing the start button for a ready made push button seemed like a good idea. The design looked like something that wouldn't last long under my son's hands. I havent tried, so I really can't say that their design wasn't good...I just didn't want to take the risk with it. Oh, and I chose a color green for "GO" button...seems logical :)
  • Last, but not least - Uno(~90R$) instead of MEGA(~200R$) board . The way they wired stuff was probably the first thing that I saw and thought "Their solution is a bit of brute force. Surely it can be done better (wiser)." I will get to the details later, but I completely changed wiring in the interface board, but it was well worth it (financially and intellectually)

So much for introduction, if you're up to it, lets do the damn thing...

No comments:

Post a Comment