I've been spending my wee few hours a week designing, tinkering and finally building my little robotics platform. I've had ideas brewing for a while but haven't had enough time outside of work to start hacking.
It all started when I first saw Rick Waldron's Johnny Five framework for Node.js.
Sensors are asynchronous, so, ya, a node.js robot framework makes sense.
A few months later I started sketching designs, reading up on firmata and buying my arduino & Pi.
Before the what & why, here's the basic BOM: 1 Arduino Uno R3 running firmata1 original Raspberry Pi with Raspbian, Node.js & 4gb of storage1 Magicians chassis1 SN754410NE Quad Half H-Bridge to drive the motors1 dual-output mobile battery backA custom mount for the Pi & some custom USB cabling for power
Why Raspberry Pi
The main controller is a Rpi. It turns 2 small motors by delegating instru…
What I couldn't find is a complete compiled list with links to purchase. So I made one! I put together a simple Amazon Affiliate store called Maker Workbench Equipment List. I merged what I thought made sense and added a bunch of items I think any good Mak…
I need to switch between different versions of GCC ARM Embedded somewhat often. I couldn't find a good solution online so I threw together a simple shell script to simplify the process I call switch-gcc-arm. Here's a screenshot:
The script is pretty simple, even for a bash n00b like me. It uses symlinks so that standard make files work:
For each version of gcc you want to support, you'll need to add it is as an elif statement and add it is as a new option. The script creates a "virtual" $BIN directory that points to whichever version of gcc you need. Make sure you add the path to the folder where you placed the script, as well as the $BIN path you set as the virtual bin directory. I add the paths to my .bash_profile and rely on the system keeping the last-used version of gcc.
Hope this helps someone. Any suggestions for improvements?