User Tools

Site Tools


projects:evalbotusbdrive

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
projects:evalbotusbdrive [2012/09/01 10:48] – [Evalbot Chronos USB Control] mkuciaprojects:evalbotusbdrive [2012/09/01 10:51] (current) – [Binaries] mkucia
Line 1: Line 1:
 +====== Evalbot Chronos USB Control ======
  
 +Evalbot ([[http://www.ti.com/tool/ekb-ucos3-evm|EKB-UCOS3-EVM]] from Texas Instruments) is a simple, jet fun robotic development platform for ARM® Cortex™-M3 Stellaris ([[http://www.ti.com/product/lm3s9b92|LM3S9B92]]) microcontroller. Another great tool from TI is a MSP430 [[http://processors.wiki.ti.com/index.php/EZ430-Chronos|Chronos]] a programmable sport watch with radio-enabled MSP430 microcontroller ([[http://www.ti.com/product/cc430f6137|CC430F6137]]).
 +Evalbot has a headers for TI's standard radio modules. You can plug the [[http://www.ti.com/tool/cc1101emk868-915|CC1101EMK]] module and use sample code from [[http://ti.com/stellarisware|StellarisWARE]] (''StellarisWare\boards\ek-evalbot\chronos_drive\'') to drive your Evalbot remotely.
 +
 +Operation in such configuration can be seen on the following video (Property of [[http://www.youtube.com/user/ElektorIM|Elektor International Media]]):
 +
 +{{http://www.youtube.com/v/zixo3dkpsTA?.swf?400×333}}
 +
 +Evalbot also has a [[http://en.wikipedia.org/wiki/USB_On-The-Go|USB OTG]] functionality. I was curious if is it possible to use a CC1101 USB dongle shipped with Chronos to drive Evalbot. What I found was that the dongle is just a simple [[http://en.wikipedia.org/wiki/USB_communications_device_class|CDC Class]] device. I was able to write a very simple CDC Host driver and receive packets from Chronos. 
 +Chronos is using stock unmodified firmware. Simply start accelerometer mode just like in the TI Control Center demo.
 +
 +===== Wave playback =====
 +
 +There is even more! Evalbot has an build in micro SD card slot and audio coded with small speaker. The V2 binaries allow to play wave files. 
 +
 +  * Wav file format: MONO 16 bit 11025 [Hz]
 +  * SD card file system: Fat
 +  * File naming: 3 digit hex:  ''000.wav, 001.wav 002.wav, ..., 00A.wav, 010.wav ...''
 +
 +Files are being played in a loop. You can play next file using __SW2__ button on Evalbot, or Chronos' __# button__ in acc mode. The __* button__ selects next file without playing. 
 +===== Binaries =====
 +You can flash following binaries using LM Flash Programmer. 
 +
 +  * {{:projects:evalbotusbdrive.zip|BIN file}}
 +  * {{:projects:evb_sound.zip|V2 BIN file}}
 +
 +Source code is currently not available.
 +===== Operation =====
 +The effect of the program can be seen on the following video:
 +
 +{{http://www.youtube.com/v/XfTkw6fsvPU&?.swf?400×333}}
 +
 +After powering the device on USB dongle is enumerated automatically. The radio link is inactive until user press __SW 1__ button. Pressing this button toggles [[http://www.ti.com/tool/simpliciti|SimpliciTI]] link.
 +
 +The Chronos uses stock software in accelerometer mode. Tilting watch forward makes robot drive forward. Tilting sideways causes robot to turn. To stop the robot simply move your hand upwards.
 +
 +  * Yellow LED on the Ethernet socket signals successful enumeration of USB device.
 +  * Orange LED on the Ethernet socket signals SipliciTI packets reception.
 +===== Future development perspective =====
 +This project can be extended. I doubt I will return into it as my design assumptions were fulfilled. Some of the possibilities are:
 +
 +  - Creating Chronos-specific USB CDC Host driver and publishing source code for it.
 +  - Making drive control more fluid (variable speed of wheels during turning)
 +
 +
 +
 +//**Note: **All trademarks are the property of their respective owners.//
projects/evalbotusbdrive.txt · Last modified: 2012/09/01 10:51 by mkucia