Projects

"Touch" by Thomas Edwards

Video of "touching" 2,300 miles away between LA and DC:

Video credit: Douglas Welch

1131953091_58cf82588e_o.jpg

"Touch" is a project to allow two people to touch each other's fingers over any distance across the Internet.

I started with a Comfile CUBLOC CB220 microprocessor.

flickr:237667260

and mounted it on a CUBLOC proto board, note I added a 5V regulator (7805). The CUBLOC has its own 5V regulator, but the Xport and the servo require more current so a bigger 5V regulator is needed for them.

flickr:238155335

I added a Pololu micro serial servo controller. I originally thought I might need to control five fingers, but if I knew I'd only control one finger I would have used the built-in PWM in the CUBLOC. The Pololu connects to the other serial port of the CUBLOC.

flickr:253695410

Next came the Lantronix Xport which I mounted on a Comfile Xport dongle to plug into the DB-9 connector on the Proto board. When the Xport isn't connected to the DB-9 connector, I attach a serial cable to my laptop to the DB-9 connector to program the CUBLOC.

flickr:237667267

Note that the Xport dongle needs a +5V power supply, so I ran one over from the 5V regulator.

flickr:238155464

Here is the whole thing put together.

flickr:253695523

Next came the force sensing resistors which I superglued to small disks of Fimo which themselves were superglued on the aluminum "fingers". I had first tried to make real-looking fingers out of Fimo, but the force sensing resistors were happier to be laid out flat.

flickr:847864165

Then I obtained black plastic project cases, and mounted Futaba S3003 servos (mainly because they are cheap, ~$10).

flickr:847856389

The Xport was set up to carry all serial data traffic over a specific UDP port to a specific server IP address. That way each side of "Touch" would DHCP its own IP address, and send data to an external Internet server, which would make the whole thing fairly "plug and play" without having to work to defeat router firewalls, etc.

Then it was an issue of writing the code for the CUBLOC and the server (CUBLOC code here). And the result…

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License