Follow mercenarymind on Twitter
Bikemap from Russell
Written by admin   
Wednesday, 06 July 2011 00:00

Authors: admin


And here's my other Homesense project. Made which much assistance from Tom and Andy.

It's very simple. If there are more than five bikes at one of these bike stations the relevant LED comes on. It's a glanceable guide to which way to walk when we head out. It's going on the wall by the door. No need to reach for a device, launch an app and navigate to our favourites.

Simple, but I think, good.

Read more:

Last Updated on Tuesday, 05 July 2011 23:23
Communicating to GPS Receiver using USB Host Shield
Written by circuts at home   
Tuesday, 05 July 2011 00:00

Authors: circuts at home

Navibee GM720 connected to Arduino

Navibee GM720 connected to Arduino

Here is another quick demonstration of USB Host Shield 2.0 Library. This article describes how to communicate to Navibee GM720 GPS receiver based on SiRF Star III chipset and PL2303 USB to serial converter. This GPS device is available on eBay for around $25 new, used units can sometimes be found for $10 or even less. The receiver has waterproof case, magnet mount and comes with 6 foot cable. Another nice feature of this device is its 40mA current consumption. Here are some pictures of the unit – PCB, internal antenna, as well as front and back of the original packaging.

“Classic” GPS receiver sends and receives NMEA 0183 messages via serial port at 4800 bps. Modern GPS units often support faster speeds and vendor-specific messages. However, they mimic classic GPS unit behavior – at power-on they start sending basic navigation messages at 4800 bps. The following sketch outputs messages, received from Navibee GM720 GPS unit via its built-in PL2303 USB to serial converter connected to USB Host Shield. Full text of the sketch is available on gitHub, below is just a fragment where speed is set to 4800.

Last Updated on Wednesday, 06 July 2011 23:32
Plantduino Greenhouse Cares Of Your Plats While You’re Away
Written by Arduino Blog   
Monday, 04 July 2011 07:25

Nice step-by-step guide to lets you set up a project that taked care of your field while you’re away:

This summer I wanted to combine my two loves of plant science and engineering. Thus I am constructing my very own greenhouse in my backyard. I am an undergrad, and as any former student knows, this means I move around constantly, and I am not always around to take care of my vegetable garden. I love my plants but since I am moving back to school in July, and my family is unreliable, I need a way to make sure that they are taken care of. Enter Arduino!

I have constructed an automated watering and temperature system. This includes sensors that will turn the systems on only when needed. This is essential when the ever-changing New England weather demands some intelligence in watering and heating patterns.

I want to document this project on Revolt Lab so that anyone who is also in love with vascular (or nonvascular) plants can join me and we can nerd out together! This is my first project using an Arduino so I am using wonderful articles from MAKE and Instructables as very helpful templates. Already the Instructables, MAKE, and Ladyada blogs have been ridiculously helpful so, worry not biology nerds, you too can show the engineers just how awesome we are!

via [instructables] source [RevoltLab]

Last Updated on Thursday, 14 July 2011 00:15
Arduino – Replace and Re-Flash a Blown Microcontroller Chip
Written by Administrator   
Thursday, 30 June 2011 00:00

Riley Porter shows you how easy it is to replace a blown Atmel chip (the microcontroller heart of the Arduino) and to flash the Arduino software onto the new chip. For a few bucks and about 15 minutes of work, you can have your Arduino board back in business.

Arduino – Replace and Re-Flash a Blown Microcontroller Chip –  [via]


Last Updated on Thursday, 30 June 2011 01:53
Building PL2303 USB to Serial converter from old data cable
Written by oleg   
Wednesday, 29 June 2011 00:00

Authors: oleg

PL2303 and Xbee on a breadboard

PL2303 and Xbee on a breadboard

Despite being quite old, asynchronous serial interface is still popular these days. Xbees, Bluetooth and WiFi embedded adapters, standalone GPS modules are often equipped with asynchronous serial data port. At the same time, standard size Arduino comes with just one asynchronous port – and the same port is used to load compiled sketches and print debug messages. Using these functions while sharing serial port with peripherals is never trivial and often impossible. Recently announced revision 2.0 of USB Host Shield library allows communication with several USB devices simultaneously making it possible to talk to multiple peripherals via USB to serial converters. The converters are available from many places and cost around 15 dollars. However, any old cell phone data cable is essentially a USB to serial converter and can be used as such with not much difficulty. In this article, I will show how to modify data cable originally intended for Sony Ericsson T226 phone into general purpose USB-to-serial.

PL2303-based data cable for Sony Ericsson T226

PL2303-based data cable for Sony Ericsson T226

Picture on the left shows the cable. It has standard USB connector on one end, proprietary Sony data connector on the other, plus a little box in the middle. This cable is about 10 years old. If you go to eBay and search for ‘t226 data cable’, you will see that modern cables often don’t have an enclosure in the middle; typically, a converter is housed inside Sony connector. Those newer cables can also be modified, albeit not that easily.

Next picture shows what is inside the little box – a small PCB with Prolific PL2303 IC on it. USB wires are on the left side and serial wires are on the right. With help of multimeter and PL2303 datasheets I determined that black wire id ground, white wire is transmitter and blue wire is receiver. There is a number of empty pads – they are connected to flow control pins, such as CTS, DTR, etc., which are functional and can be used, if necessary. I soldered thicker teflon-coated wires to the pads, terminated them with sturdy male ends and placed the PCB back into the case. The result can be seen on the title picture.

PL2303 inside the converter

PL2303 inside the converter

To talk to Xbee I wrote simple terminal program similar to one described in Interfacing Arduino to a Cellular Phone article. To use this code you will need an Arduino board, USB Host Shield, as well as USB Host Shield 2.0 library. PL2303 is very similar to ACM, however, Xbee is quite different from the cell phone. First, it doesn’t echo back characters sent to it, and second, it won’t generate Windows-proper newline characters. The following sketch demonstrates the ways to overcome it. Only main loop is presented here, the entire sketch is available in examples directory of USB Host Shield library.

Adding linefeed each time carriage return is transmitted is done in two places – lines 13,14 and 40,41. Max.packet size of bulk endpoints in PL2303 is 64 bytes and buffer size in line 32 is set to this value. Compile and load this program, open terminal window to Arduino, type ‘+++’ to switch Xbee to command mode and then try commands from the screenshot placed after the listing. It is also a good idea to check that your Xbee is loaded with AT firmware and communication speed is set to 115200 – a corresponding X-CTU window is placed next to the terminal screenshot for your reference.

void loop()
if( Usb.getUsbTaskState() == USB_STATE_RUNNING )
uint8_t rcode;
/* reading the keyboard */
if(Serial.available()) {
uint8_t data=;
if ( data == '\r' ) {
Serial.print("\r\n"); //insert linefeed
else {
Serial.print( data ); //echo back to the screen
/* sending to the phone */
rcode = Pl.SndData(1, &data);
if (rcode)
ErrorMessage<uint8_t>(PSTR("SndData"), rcode);
/* reading the converter */
/* buffer size must be greater or equal to max.packet size */
/* it it set to 64 (largest possible max.packet size) here, can be tuned down
for particular endpoint */

uint8_t buf[64];
uint16_t rcvd = 64;
rcode = Pl.RcvData(&rcvd, buf);
if (rcode && rcode != hrNAK)
ErrorMessage<uint8_t>(PSTR("Ret"), rcode);
if( rcvd ) { //more than zero bytes received
for(uint16_t i=0; i < rcvd; i++ ) {
if( buf[i] =='\r' ) {
Serial.print("\r\n"); //insert linefeed
else {
Serial.print(buf[i]); //printing on the screen
}//if( Usb.getUsbTaskState() == USB_STATE_RUNNING..
Xbee PL2303 Arduino Terminal

Xbee PL2303 Arduino Terminal

X-CTU Speed Setting

X-CTU Speed Setting

Read more:

Last Updated on Tuesday, 28 June 2011 23:19
<< Start < Prev 1 2 3 4 5 6 7 8 9 10 Next > End >>

Page 4 of 31