Posts

Showing posts from March, 2012

Meet the Raspberry Pi fanciers at Quick2Wire

Image
We've finally started updating the website over at Quick2Wire, and you'll find brief biographies of the team on the About Us page. We've also picked up some new newsletter subscribers thanks to today's interview on the DesignSpark website. Excellent coverage: we're working hard on our add-on kits for the Raspberry Pi, and DesignSpark is the community website for RS Components, one of the two companies who are selling the Pi.

Value USB to TTL cables from Tronisoft

Image
Followers will know that I have a boxful of hand-built Arduino clones, some of which will soon be finding good homes with my colleagues at quick2wire . The only snag is that the clones don't have on-board FTDI chips, so you need a USB to TTL converter - a cable or a breakout board. The cables typically cost around £15, so I was delighted to find a version at around £9 including VAT from Tronisoft Limited . I ordered three which arrived today; the one I've tried works fine. The only thing to watch out for is that the 6-way cable (which resembles the ones I'm used to) is out of stock, so I had to order cables with a 7-way connector. The seventh socket is connected to a shield, and it looks as if it can be left unconnected. Do your own evaluation before you buy, but it seems like a bargain to me.

Arduino and EasyDriver turning a Stepper Motor

Image
One of the great things about Arduino is that whatever you're trying to do, there is a good chance that someone has done it before and posed the code. Mark Gilbey and I are currently working on my poor man's pick and place 'bot. We'll be moving the head around using some SparkFun steppers, and I liked the look of the EasyDriver Stepper Controller. The EasyDriver website has an  examples page which includes a wiring diagram and sample Arduino sketches. I tried it out and everything just worked. The motor is turning in micro-steps of 1/800th of a revolution, at a speed of 5000 micro-steps per second.

Pachube workshop Video - Arduinos at work

Image
I shot a short video at last week's Pachube workshop. We learned how to use Arduino Ethernet boards and shields to provide real-time data to Pachube's free on-line service. Thoroughly recommended.

Pachube, Arduino and the Internet of Things

If you're interested ion the Internet of Things you probably know about Pachube . They offer a free real-time data infrastructure that makes it easy for users to share data from just about any internet-enabled device. Through the Pachube website you can monitor the temperature in Iceland, the humidity in London or the radiation in Japan. You can even set up triggers so that you get an SMS alert whenever a value exceeds a specified threshold. Pachube are currently organising a series of  Data Making Workshops to help people get started with their service. I've just got back from one; it was great fun and really informative. About a dozen of us worked our way through Pachube's API, and then set up data  feeds from our ethernet-enabled Arduinos. (If you're curious about the light level in my study at home, you're welcome to take a look .) It was a great practical introduction, and gave us lots of ideas for future projects. Pachube will be organising more introd

Practical Robotics - Python, Arduino, OpenCV and Squirrels

Image
Who says that  this stuff has no practical use? Here's how to deal with those pesky squirrels.

Arduino Ethernet board and IoT

Image
I recently posted about tomorrow's to a data making workshop at Patchube London. I've been checking out the hardware and making sure that I can program it with my laptop and an FTDI cable. The Arduino ethernet example sketches include a Web Server which displays the values of the Arduino's analog ports. I rigged up a breadboard with a potentiometer and connected it to the Arduino Ethernet board. Then I downloaded the sketch, and hey presto: here's a a web page displaying the pot setting. With 6 years of history and 600,000 users, Arduino and its documentation have been tested and re-tested. Arduino examples just work. Relative newcomers like the Beaglebone are catching up, but the Arduino has set a high standard to aim for.

oomlout to the rescue!

Image
On Friday I'm off to a   data making workshop at Patchube organised by the London Internet of Things meetup. Late yesterday I spotted that I will need an Arduino Ethernet board, or an Arduino with an Ethernet shield. I have Arduinos like some people have mice, but no Ethernet Shield, and I'm away from home for the next couple of days. How could I get one in time? I ordered a board from .:oomlout:. and it arrived this morning. Thanks, guys, for your usual lightning-fast service. I love the new Arduino packaging.

A lesson from the mbed

Image
Yesterday in a short post about I2C  I published a fragment of code for the mbed. I wondered at the time why I was posting here rather than on the very helpful mbed site. Here's why. Take a look at the code, and think about the library it's using. The mbed I2C library is about as simple as you could wish for, but it does everything you need. You can even specify the I2C data rate at run time. On other platforms that small change is a big deal; Arduino requires you to recompile the Wire library, and the BeagleBone requires you to recompile  the kernel. The mbed library for SPI is just as good as its I2C library: simple, intuitive and complete . That's what we need on the BeagleBone and Raspberry Pi . We've been waiting for userland SPI support on the BeagleBone for a while, and we seem to be getting a mixed message from the kernel developers: It's really hard to do SPI right, and it will take a while It's done already; all you have to do

PCF8574, I2C and the mbed

Image
A user on the mbed site asked for some help getting an I2C application to work with the mbed. He's using a PCF8574 port expander which is driven from one of the mbed's I2C busses, which is on pins p9 and p10. He wants to turn a LED on when a button is pushed. The button is connected to P4 on the port expander; the LED is attached to pin 5. Here's the breadboarded circuit under manual test :) And here's the code: #include "mbed.h" #include "PCF8574.h" PCF8574 io(p9,p10,0x40); int main() {     while(1) {         io.write(0x30);         if ((io.read() & 0x20) == 0) {     io.write(0x20);         }     } }

BeagleBone driving LED Bar via I2C

Image
I've just posted a video of the BeagleBone driving a bar LED via I2C. The Bone is programmed in Python, and I'll shortly be checking the (open source) code in at Quick2Wire's github repository. Expect to see a Raspberry Pi performing the same trick as soon as we can get our hands on one! I hit a couple of snags while getting this going. Fortunately the inexpensive OpenWorkbench Logic Sniffer makes it really easy to debug I2C and SPI applications. I2C debugging with OLS: SCL is blue, SDA is green

Pick and Place on a budget - Part 2

Image
More progress on our human-controlled Pick and Place machine. I now have the threaded rod and stepper motors, and Mark Gilbey is coming here next week to discuss the mechanical design. We plan to build a manually-controlled Pick and Place machine with 4 degrees of freedom, (X, Y, Z and rotation) which will vacuum up an SMT part, move it to the right position on the board, align it and then place it on the board. We'll use a joystick and pot to control it, while we watch what is going on through a USB microscope. The USB microscope works with OpenCV , so we can leave the door open to an automated PnP robot. I  wonder what we should use as the processor board?

A second helping of Raspberry Pi

Image
If you want one of the next batch you can pre-order Raspberry PI at Farnell. Orders are still limited to one per person at the moment; if you order more than one, the order will be amended.