It is now official the EvalBotADK code is available like promised on GitHub and it is open source using GPL v2.
It is the public release of USB Host Driver for Android Open Accessory on EvalBot (it should work also with any other Stellaris ARM chipset supporting USB OTG with minor changes).
About Hardware Hack:
The EvalBot USB Host Power Supply has been hacked because by default it does not work with Usb Host which require more than 100/150mA (due to limitation of hardware) and so I have modified USB Power supply to use external power in order to connect any USB Host compliant with USB specification which allow current until 500mA.
This Hack also work with any hardware because it's done on a Usb Extension and a BreadBoard with External PowerSupply.
Hardware hack schematic details:
![]() |
| Hardware Hack USB Extension External Power |
About Software:
For Android software I have used DemoKit which is just a rebuild of sample in official Android NDK package see http://developer.android.com/guide/topics/usb/adk.html and download package here https://dl-ssl.google.com/android/adk/adk_release_0512.zip.
Later we could develop our own Android Application but for this release i just used existing DemoKit.
For EvalBot I have developed the Usb Host driver for Open Accessory and an example which communicate with DemoKit.
In order to build the code you should download and install following Texas Instrument packages (requires registration which is free):
- The code requires TI Code Composer v4 (I use Version: 4.2.4.00033) see http://www.ti.com/tool/ccstudio or directly
http://processors.wiki.ti.com/index.php/Download_CCS#Download_latest_production_CCSv4_DVD_image and choose "Download latest production CCSv4 DVD image" for the Licence see "Getting a License:" just after, it is totally free and there is no limitation in time or removed options.
See http://processors.wiki.ti.com/index.php/Licensing_-_CCSv4#Free_Licenses_bundle
- Usb Library: http://www.ti.com/tool/sw-usbl => I use SW-USBL-8049.exe which is installed in my example in F:/TI_EvalBot/SW-USBL-8049 3)
- EvalBot Firmare: http://www.ti.com/tool/sw-ek-evalbot => I use SW-EK-EVALBOT-7611.exe which is installed in my example in F:/TI_EvalBot/SW-EK-EVALBOT-7611
To simplify the development you can mount a virtual drive to F:\ using subst F:\ yourdrive\ or you will need to change paths defined hereafter.
Following Linked resource are required in Code Composer Project(file .project):
F:/TI_EvalBot/SW-USBL-8049/usblib
F:/TI_EvalBot/SW-EK-EVALBOT-7611/driverlib
F:/TI_EvalBot/SW-EK-EVALBOT-7611/inc
F:/TI_EvalBot/SW-EK-EVALBOT-7611/boards/ek-evalbot/drivers
F:/TI_EvalBot/SW-EK-EVALBOT-7611/utils
Following Include Options are required in Code Composer Project(file .cdtbuild):
F:\TI_EvalBot\SW-EK-EVALBOT-7611
F:\TI_EvalBot\SW-EK-EVALBOT-7611\boards\ek-evalbot
F:\TI_EvalBot\SW-USBL-8049
What feature included for this new demo:
- With EvalBot if you press Button Switch1, 2 or Bumper Left/Right it send the button/bumper state to DemoKit.
- With DemoKit you can send command (Relay1 or 2) to switch On/Off EvalBot Leds(Led1 & 2).
- With DemoKit Servo1=Speed for MotorLeft and Relay1=MotorLeft ON/OFF.
- With DemoKit Servo2=Speed for MotorRight and Relay2=MotorRight ON/OFF.
All the code is under GPLv2 and available on GitHub: See WebPage https://github.com/TitanMKD/EvalBotADK

Any progress in getting the OLED to display anything from the phone?
ReplyDeleteAll is ready in the code you can do what you want even with the OLED display.
ReplyDeleteThat will just need a modification of Android ADK Java Apps to fill a field to send it to the EvalBot which will display it on OLED for example ...
That's awesome! I'm working on getting this compiled right now.
ReplyDeleteThe licence will move from GPL to LGPL next time, If you have any problems or fin any bug tell me it and I will fix it at same time.
ReplyDeleteOkay, I finally got it compiled and uploaded to the Evalbot. So I'm guessing it doesn't work until the USB power supply is fixed? Can you explain how you did that? I don't understand where the 9 Ohm, and 1K Ohm resistor connect to. I don't suppose you could provide a schematic? Thanks.
ReplyDeleteI have just updated it with a cool schematic of the Hardware Hack on USB Extension cable.
ReplyDeleteI hope that will help you.
Nota: I have not added 9/10 Ohm resistor to protect against shortcut for simplicity and because some Power Supply already have such feature.
That's very clear now, thank you for taking the time to add that. I'll let you know how this all work for me when I finish putting the hardware all together.
ReplyDeleteOk, I made the cable and everything works fine now! Thanks a lot for your help. I connected the power for the phone right
ReplyDeleteto the batteries on the Stellaris, and it seems to work fine. Is there any reason why that isn't a good idea? Will it drain out the batteries much faster?
I'm happy for you all work fine.
ReplyDeleteYes it will drain lot of power in fact the maximum can be 500mA at 5V.
You can also connect it to an external Low Cost Battery, but becareful to have the same GND on Eval Bot and your external power.
Best Regards
Benjamin
just linked this article on my facebook account. it’s a very interesting article for all.
ReplyDeleteEmbedded Software Development
Hi, it's possible to get already compiled android app for th evalbot? I would like just to try your code and I don't want to install Android sdk. Thanks
ReplyDeleteHi Martin,
ReplyDeleteIt is now in official GitHub Repository
https://github.com/TitanMKD/EvalBotADK/tree/master/adk_release_0512_build
Best Regards
Benjamin