Thursday, November 8, 2012

AM335x SDK modified from StarterWare

After I bought a BeagleBone rev A6 boart and BeagleboneExpansion V2 CAP with a 800x480 display with capacitive touchscreen, I started to work with StarterWare available from TI.

On this SDK I try to create API's that will be very simple to use, like C#.

I try to arrange the drivers and API's and I added and translated some open source libraries.
The first result is a mix from AM335X_StarterWare_02_00_00_06 and AM335X_StarterWare_02_00_00_07.

On every version I will include a project that will show you how to use the SDK.

This SDK include the next files:

  • API's
  1. Delay API.
  2. Gfx API.
  3. GPIO API.
  4. Interrupt API.
  5. LWIP API.
  7. MMU API.
  8. PMIC API.
  9. RTC API.
  10. Capacitive touchscreen API(can read all five points).
  11. Resistive touchscreen API.
  12. TWI API.
  13. Uart API.
  14. USB API.
  15. USB mouse host API.
  16. USB MSC API.
  •  Applications
  1. Simple HTTP application(is a demo, respond only to "GET" command).
  •  Devices
  1. 24C TWI device driver.
  2. ADXL345 device driver.
  • Library
  1. Bitmap decode library.
  2. PNG decode library.
  3. Jpeg decode library.
  4. MPEG1/2 decode library.
  5. Button library.
  6. Check Box library.
  7. Virtual Keyboard library.
  8. List Box library.
  9. Picture Box library.
  10. Progress Bar library.
  11. Scroll Bar library.
  12. Text Box library.
  • System
  1. Cache.
  2. Dmtimer.
  3. Core Iit.
  4. CP15.
  5. Pin mux adc.
  6. Pin mux LCD.
  7. Pin mux MII.
  8. Pin mux MMCSD.
  9. Pin mux SPI.
  10. Pin mux TWI.
  11. Pin mux Uart.
  12. Sys timer(you can create infinite timers with precision approximate to reference timer7).
  13. Sys delay.
  14. Watchdog.
This version has one issue:

When is loaded from bootloader the USB host can't be enabled (will freeze when the USB controller is setup), to set up the USB host is necessary to hardware reset or power up the board without uSD card inserted, after a watchdog reset has the same issue.
I already posted the issue on TI.

Download source code and bin files from here.

Download SD card format utility from here.

Load the app and MLO file with SD boot card utility from archive, after this copy the APP.BIN file to uSD card.


am335x said...

Thank you for sharing.Do you already have the solution for the issue?

Gheorghiu Iulian said...

In not a issue if software, is a hardware bug of BeagleBone rev A6 board.
I created a new SDK, and has the same issue on BeagleBone, but on DevKit8600 this issue is not present.

SATYAprakash_Ind said...

Hi Gheorghiu Iulian

I have started working on BeagleBone-A6 with DVI-D Cape and my intention is to make DVI-D cape functional and for that i am using rasterdisplay.c apps and raster.c lcd driver and corresponding dependent modules from AM335X_StarterWare_02_00_00_07,
can u give me some suggestion how to proceed on this ?

The code i am using is made for lcd cape.

Gheorghiu Iulian said...


You can go to

On this site you can clone a SDK that can help you to develop new applications for BeagleBone with a GUI integrated, you can clone from github.
I do not use until now the DVI-D output but I will try to take a look to this problem.
But my recommendation is: If you not use a operating system I recommend to use a LCD with touchscreen because the TI starter ware has no support for a usb hub, for this reason to the USB you can connect one mouse or a keyboard but not both at the same time.
I this SDK you have support for 320x240, 480x272, 800x480 LCD display and for resistive and capacitive touch screen.
The beagle bone has some issues with USB library :D if your program will not run is possible to be from one of his issues :)