USB Sensor: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
This page is a stub to talk about the development of a low cost USB based sensor.
==This page is a stub to talk about the development of a low cost USB based sensor board==


[[Image:Sensor_Laptop_Wide.JPG | Low Cost USB Sensor |600px]]
[[Image:Sensor_Laptop_Wide.JPG | Low Cost USB Sensor |600px]]



====Cost====
~$2 of parts

====Input/Output====
3ADC/GPIO pins <br>
1 GPIO only pin

====Features====
No special USB Connector - Board <b>IS</b> the USB connector <br>
No USB Hardware - Firmware based USB stack (based on low cost ATTiny45 Microcontroller)<br>
Reprogrammable / Extensible

====Current Status====

Current firmware only uses one of the four I/O pins as sensor input (1 pin used for LED which indicates state, 1 pin used for button to start operation)<br>
Sensor board shows up as a usb keyboard and dumps data as if typing from keyboard <br>
Single layer board to make possible homemade boards using chemical etch, or mechanical milling (see pics below)<br>
Board based on the [http://http://www.obdev.at/products/avrusb/easylogger.html AVR USB - EasyLogger] reference design
<br>
Eagle board file is available [[File: Sensor.brd | here]] and schematic is available [[File:Sensor.sch | here]]
Firmware is available [http://www.obdev.at/ftp/pub/Products/avrusb/EasyLogger.2008-02-28.tar.gz here]]

====TO DO====

Update firmware to use 4 pins (3 ADC / 1 Digital In)<br>
Develop/adopt scheme to implement USB CDC device and access through pyUSB (libUSB wrapper) and update firmware <br>
Make CDC device available to Measure/Etoys/Scratch<br>
Update board to drop hardwired button and led (could always be added by user) and reduce size of board<br>

Revision as of 15:50, 10 March 2008

This page is a stub to talk about the development of a low cost USB based sensor board

Low Cost USB Sensor


Cost

~$2 of parts

Input/Output

3ADC/GPIO pins
1 GPIO only pin

Features

No special USB Connector - Board IS the USB connector
No USB Hardware - Firmware based USB stack (based on low cost ATTiny45 Microcontroller)
Reprogrammable / Extensible

Current Status

Current firmware only uses one of the four I/O pins as sensor input (1 pin used for LED which indicates state, 1 pin used for button to start operation)
Sensor board shows up as a usb keyboard and dumps data as if typing from keyboard
Single layer board to make possible homemade boards using chemical etch, or mechanical milling (see pics below)
Board based on the AVR USB - EasyLogger reference design
Eagle board file is available here and schematic is available here Firmware is available here]

TO DO

Update firmware to use 4 pins (3 ADC / 1 Digital In)
Develop/adopt scheme to implement USB CDC device and access through pyUSB (libUSB wrapper) and update firmware
Make CDC device available to Measure/Etoys/Scratch
Update board to drop hardwired button and led (could always be added by user) and reduce size of board