Follow mercenarymind on Twitter
Position location with GSM cellular
Written by Administrator   
Sunday, 22 May 2011 00:00 writes:

Cellular mobile devices and Google Maps can be used to provide fast and accurate localization without GPS. Using a database of cell coordinates, the location of an object can be precisely determined.

Position location with GSM cellular –[Link]

Last Updated on Sunday, 22 May 2011 22:47
Switching to OptiBoot
Written by jee labs PhC   
Thursday, 19 May 2011 00:00

Authors: jee labs PhC

Now that some of the JeeNode/JeeLink boards from JeeLabs come pre-loaded with the OptiBoot boot loader, it’s time to start thinking about switching everything over. Having to constantly switch the Arduino IDE between “Arduino Uno” (OptiBoot) and “Arduino Duemilanove w/ 328″ (original 2009 boot) is quickly going to become very tiresome …

See this weblog post for a quick summary of what all this uploading and boot loader stuff is about, and why you should care. In a nutshell: you need a boot loader on the ATmega to be save sketches onto it via FTDI and USB.

There’s a nasty detail, though: to upload sketches you need a boot loader, but how does that boot loader end up on the ATmega in the first place? The good news is that this is usually done in the factory, well, ehm… at JeeLabs, in my case. The good thing is, it’s all taken care of, and the boot loader doesn’t normally get damaged or need to be replaced. It just works.

Except when the boot loader itself needs to be changed, as in the case of OptiBoot. Note that it’s quite worthwhile to switch to OptiBoot: the uploads are twice as fast, and you get 1.5 Kb of extra memory for your own sketches.

So how do you go about updating the boot loader on a JeeNode when you don’t have a special hardware tool called an “ISP Programmer”?

Fortunately, there is a simple trick to do this using a second JeeNode (or Arduino). I’ve written about this in a previous post. There’s an isp_repair.pde sketch in the Ports library which does everything (it emulates an ISP programmer, basically).

I’ve just updated the isp_repair.pde sketch to use OptiBoot.

Here’s the setup to upgrade a target JeeNode to OptiBoot using another JeeNode:

Six wires need to be connected as follows:

And then it’s a matter of attaching the target to the programming JeeNode, and then powering up the whole assembly.

If you happen to have the serial port connected to the programming JeeNode, you’ll see this info:

Switching to OptiBoot

I made a permanent setup using a JeeNode USB, because I’ve got a pile of JeeNodes to reprogram here at JeeLabs:

Dsc 2518

The connector was constructed from a 2×4 header, with the pins bent in such a way that the whole thing stays in place when pressed into the 2×4 holes of the SPI/ISP header. And then the whole thing was sealed off with a few pieces of heat-shrink tubing:

Dsc 2519

To program a board (in this case another JeeNode USB), just power it all up and wait 3 seconds:

Dsc 2520

That’s it – you could call this an “opti-rebooter” :)

Read more:

Last Updated on Thursday, 19 May 2011 00:52
XBee Accelerometer Demo – Wireless Tilt Mouse Application
Written by Administrator   
Saturday, 14 May 2011 00:00

The present document shows step by step how to easily build an interesting pointing device: the wireless tilt mouse, that allows to control the mouse’s cursor on the PC screen through the tilt of the board itself. The analog data from a 3-D accelerometer and from two push-buttons are acquired, converted and radio transmitted by an XBee module using the standard ZigBee protocol.

XBee Accelerometer Demo – Wireless Tilt Mouse Application –[Link]

Last Updated on Saturday, 14 May 2011 00:21
Determining wheel position without counting
Written by Administrator   
Thursday, 12 May 2011 00:00

I've been trying to figure out a way to determine a wheel (or servo) position using an infrared sensor. Instead of getting readings from a standard black and white wheel encoder and counting how many black to white transitions have passed the sensor, I want to get the position in a single reading. 

I know there are nifty little thingies that you can build in a servo using magnetism to read the servo position very accurately. But those are rather expensive (i think) and where's the fun in buying if you can build it.


First i tried using an encoder wheel with a grey-scale printout instead of black and white segments.

That didn't work so well. The greyish areas worked out sort of OK, but still not good enough. The very black and very white areas were way too noisy to distinguish between differtent angles / positions of the wheel.

After that I thought it might be possible to use linear polarized foil (like they use in 3D glasses) to get very accurate readings. If you hold to sheets of polarized foil at a 90 degree angle the light is blocked. At a 0 degree or 180 degree angle, you can see through it.

So I found myself some cheap polaroid sunglasses, cut out a more or less round piece, and set up an IR LED and phototransistor on a breadboard with the two pieces in between.

To my utter surprise, the polarized foil doesn't block IR light! I shot a lame video to demonstrate.

I guess I need to use visible light: Next up is the old trusted photoresistor.. Using the setup shown below, I get very promising results. If I dim the lights in the room, I get steady readings ranging from 85 to about 260. The low readings tend to climb up after a second or so. Strange.

The stability of the readings should improve if all this is build in a dark box or servo casing or something like that. Also: the light brightens and dims every 90 degree change. So turning a wheel the full 360 degrees gives you the same readings 4 times.

The input connected to the LDR is clamped down with a 20K resistor and the light source is a yellow LED (just trying out the available colors)

All the other stuff on the board is used to hold the pieces of polarizing foil in place.


  • build it in a dark box or servo case
  • make it smaller (as always)
  • figure out a nice way to read which quarter of the full rotation has been read

Read more:

Last Updated on Thursday, 12 May 2011 00:59
Interfacing RF modules
Written by Administrator   
Thursday, 12 May 2011 00:00

Chris shared his latest info on interfacing common RF modules to PIC microcontrolles. In project description he covered all details that help to get started and understand whats going on during data transfer.


Instead of taking care of special encoding techniques Chris used an USART module to take care of encoding and decoding simple data packets. In his test routine he used two buttons on transmitter and two LEDs on receiver. Everything works fine this way. So if you are seeking for simple and cheap RF solution consider using these simple 434MHz RF modules in your project.

Read more

Last Updated on Wednesday, 11 May 2011 23:18
<< Start < Prev 1 2 3 4 5 6 7 8 9 10 Next > End >>

Page 8 of 31