[1st September 2013] With the help of Glasgow Open Source Hardware Group (GOSHG) members I’ve replaced all the LEDs on MAKLab‘s old/defunct 80×7 LED Display Board (RC8200 from “Real Color Displays Inc”). Removing the old processor (a Z80) and superfluous ICs (8-to-1 Multiplexer, buffers, NANDs, ANDs, J-K Flip-Flops and such-like) I’ve got full control of the LEDs with just 7 pins (4 to control the rows, 2 to clock in data into the columns and one to strobe the data to the LEDs). Up until now I’ve been using an Arduino Mega ADK and Ethernet Shield to handle the processing (today I added some code to make use of the microSD slot such that messages could be read from the SD and displayed if an Ethernet connection is not made). I’m now considering options for condensing the hardware controlling the display. I like the Ethernet shield with the microSD slot but having it on top of an Arduino Mega takes up a lot of space. Considering something like the Arduino Uno Ethernet, though I’d like more code space (will try optimising/condensing to fit on an UNO since I certainly don’t need the pin count or other features of the Mega).
Having recently discovered Vine and rediscovered Twitter I’ve been Vine-ing and Tweeting about the board.
Other than the Vine-ing and occasional Tweets I’ve not been documenting my work on this project, instead just forging ahead over the past few weeks, so I thought I’d add a blog post and add to it from time to time. This post is a work in progress, published with the intention that I actually do something with it (way too many draft blog posts that won’t see the light of day).
At work someone mentioned using a robot to distribute the Friday afternoon sweeties and I accepted the challenge. Already having a tank remotely controlled with a PS3 Controller I decided it would need a camera to see where it’s going. Having recently upgraded my phone I was able to use the old one with IP Webcam to share the camera feed over wifi.
When I stumbled upon a brief article on Let’s Make Robots about a LEGO robot with a wifi camera which is controlled by a custom Android App. I followed the instructions on the website linked in the article and had the proof of concept up and running with the free version of the app. Upon buying the Pro version of the app I was able to drive the tank around via bluetooth and simultaneously see the camera footage from the old phone over WiFi.
My configuration takes a Heng Long 1:32 scale Bulldog Tank base (chassis, motors, gearbox and treads) driven by a Dagu 4-channel motor controller (over the top in this instance but a common item now found in three of my robots) and controlled by an Arduino MEGA ADK (also over the top but I was using this for the USB Host aspect when the tank was operated by PS3 controller via bluetooth dongle). The bluetooth dongle has been replaced with a Bluetooth module for a simple serial link.
The Bluetooth module I have is only identified by the following address written on the back http://shop34694757.taobao.com/ and the label BT_Board v1.1. Thankfully I didn’t need to do much to make it work, just wired up the power (VCC, GND) and plugged the Tx and Rx of the bluetooth module into the Rx and Tx of the Arduino (crossed over so Tx talks to Rx and vice versa).
Servo added and the Arduino code updated I can now tilt the camera using some buttons on the BTBotControl interface.
A video has been uploaded to YouTube.
Where should I go from here?
- Overhaul Arduino sketch to allow for joystick control of camera angle (like a pan and tilt mode where horizontal joystick moves will rotate the robot but vertical moves only raise or lower the camera).
- Perhaps mount an Airsoft BB gun (I have the original one from the tank turret).
- Write my own custom Android app? Try piping control of the robot through the on-board Android phone, doing away with the mix of Bluetooth and WiFi. While I’m at it make more use of the Android, it has GPS, an accelerometer etc.
- Reversing view using phone’s second camera? Phone orientation means the rear-view camera is hidden in the holder.
Edinburgh’s Summerhall was home to a Mini Maker Faire on the 7th of April 2013 and I travelled through with MAKLab to help out and to see what was on show.
We set up the Repair Cafe in the overspill of Summerhall’s cafe, taking over a picnic bench and surrounding area. Although there was ample signage around Summerhall the footfall was quite light, especially for the 2,500 visitors that came through the door. That said some folks came prepared with items to repair.
We took a look at a waffle iron and though we found the fault we couldn’t safely repair it.
This collection of stained glass pieces was dropped off and we all worked together to reassemble the mobile as it had once been. This was hampered by the fact we didn’t have the self adhesive copper which had been used to assemble the original but we made do with the original copper strips where available and added some sheet tin to reinforce the structure.
MAKLab were setup in the courtyard area with a laser cutting producing little dinosaur kits. They had also brought along two large dinosaurs, Derek the Raptor and Terry the Pteranodon. These were cut out of 18mm plywood on MAKLab’s big CNC router (I helped with Derek and produced a time lapse which you can see here). The two dinosaurs were painted by the visitors and by the end of the day they were looking well camouflaged.
As Repair Cafe was quiet we each took some time to tour the Mini Maker Faire. My first destination was the Robot Room where I saw some awesome projects. The DR-1 by Eve Robotics Team was an interesting little Arduino Tank, At another table an off-the-shelf USB robot arm had been upgraded with position feedback by attaching a USB webcam and pointing it at a matrix of black spots on a white screen. I got the chance to see an OpenROV which featured on Kickstarter last year among the other Underwater ROVs built and displayed by Martin Evans.
Up the stairs from the main entrance there was a lot to see, I especially liked the PolarGraph, a series of drawing machines (photo below). There was 3d printers churning out musical instruments, a pair of model houses with a variety of energy saving materials an lots of wonderfully crafted items. Through into the next room there was electronic kits, vintage LEDs and large quantities of Arduinos on sale. The PolyFloss Factory were showing off their candyfloss machine adapted to produce a wool like material from recycled plastic, members of the public could make a ruler using the materials (packing it into a form which was heated up and subsequently cooled by the PolyFloss folk). Last but not least there was a Tesla coil in a lift cage.
Unfortunately I only took a whistle-stop tour of the exhibits upstairs and I didn’t even get a proper look outside to see what else was out there. There are a few more photos in my Flickr photoset which I haven’t included on this page.
I didn’t want to let the lovely vinyl poster go to waste so I re-purposed it as a covering for my briefcase while we were packing up.
My first Digispark project was a hastily thrown-together name badge for the Edinburgh Mini Maker Faire.
The badge consisted of a Digispark, an I2C shield, I2C LCD and a SRF02 Ultrasonic Rangefinder.
The SRF02 was selected for it’s small form factor and the ability to communicate with it over I2C. Instead of taking up two pins for trig and echo like my other Ultrasonic Rangefinders this allows both the LCD and the rangefinder to share the two I2C pins of the Digispark’s I/Os, leaving me with 4 ‘spare’ pins.
Power for the Digispark was supplied by a 9V PP3 battery, though I considered alternatives such as 4x AA batteries, a stack of button cell batteries and a LiPo. The decision was made on a balance of weight and ease of use. The Digispark has a 5V regulator on board, taking any voltage over 6 or 7V and regulating it to the 5V which the three major components require. It isn’t necessary to use the regulator if your power source is going to remain at 5V, hence I considered 4x rechargable AA batteries (1.2V x 4 = 4.8V) unregulated. A mintyboost or similar voltage booster/converter would also have been a viable power supply and would have cut down on weight (I suspect), however I didn’t have the components to hand.
Mounting the Digispark, LCD and rangefinder on a simple plexi frame gave the badge a more finished look.
With the Digispark prominently displayed (albeit backwards) on the front of the badge I will be able to disconnect it for reprogramming or for showing it off… “oh look at me I’ve got a tiny Arduino”.
Software is rather primitive at present. The rangefinder is polled and different messages are displayed according to proximity. At maximum range the LCD is turned off, primarily as a power saving measure. Up close the message will scroll some text. As the LCD is powered by an HD44780 I was able to make use of up to 8 custom characters. I toyed with the notion of producing animations with the custom characters but quickly ran into stack heap collisions so I opted for a few simple graphics. Further custom characters could have been employed by updating the custom characters on-the-fly though they could not all be displayed at once.
Further features I would like to (would have liked to – depending on when you read this) include would be a few buttons to choose between different modes/displays. Perhaps some RGB LEDs to liven the display up a bit.
As I thought I might want to re-purpose the LCD I didn’t solder to the pins. Since there wasn’t much space for adding a jumper cable I coiled some single core wire around the pins and covered in heat shrink. Time will tell if this method is robust enough, I may find myself applying a spot of solder if the connection is ‘flaky’.
Overview | Laser-Cut Enclosure Design | Adafruit Learning System.
Well worth checking out, there’s some not-so-obvious tips I’m eager to try out myself.
Trinket box I designed and crafted for my Mum for Mother’s Day.
Edit: Uploaded the cad file for this box as requested by Elliott. Download as dxf or PDF.
I’m moving to a blog based website in the hope I can quickly jot down some notes on my latest design/build/thoughts. This makes more sense to me as I’ve been working on 3d printing, laser cutting and arduino projects but don’t wish to detract from the time spent on these projects by documenting them extensively on my website (which involves editing php files in notepad and then uploading them to the respective page. The process was further hampered by images. Hopefully with a blog I’ll be able to sign in after an evening at MAKLab or the Electron Club and drop some notes or observations here for anyone that may be interested. I don’t anticipate that this blog will detract from my involvement in letsmakerobot.com, where I write up pages on my robots.