TI E2E Community
Code Composer Studio
Code Composer Forum
Beaglebone kernel debugging with CCS v5.1
I'm using a Beagle bone REV4 with all software installed on an VMWare.Ubuntu 11.04. I can compile my kernel and use it with a tftp/nfs boot. I can use the CCSV5 to debug in RUN MODE (user space application).
BUT I fail trying to begin with Kernel debuging with CCS. I've tried the sitara support package documentation or such tutorial below but no way.
THe main problem i think ? is that I never can have a connection such as XDS100V2 USB Emulator ? I think i need this connection ... but not sure.
The BBone should embed necessary hardware but noway, I never have any other "connections" than "Data snapshot viewer". and indeed the directory "ccs_base/common/targetdb/connections" does nt contain anything else than "DataSnapshotViewer.xml".
Please help ?
pegTHe main problem i think ? is that I never can have a connection such as XDS100V2 USB Emulator ? I think i need this connection ... but not sure.
I believe the Beaglebone comes with on-board XDS100v2 emulation. You will need to use this since kernel debugging vs CCS requires a JTAG emulation (like XDS100).
When trying to debug using CCSv5 and XDS100, check out the below topic:
Even though it is for debugging Uboot, the part about debugging a target running a high level OS is relevant.
Don't forget to verify answers to your forum questions by using the "Verify Answer" button.
Did you read the CCS Forum Guidelines & FAQ? If not, PLEASE read it. If you haven't read it in awhile, please read it again to see if any updates were made.
Having CCS problems? Check out the CCS Troubleshooting Guide
Looking for CCS Training? Check out the CCS Training Site
Click here to track an issue. Enter your bug id in the "Find Record ID" box
Answer to my first question was simply that CCSV5 was not correctly installed.I re-installed with "root" rights then re-selected all emulators during ccsv5 installer configuration, and now i can correctly use the XDS100V2 drivers.That's said, i still can't access to my USB-Jtag Beaglbone serial interface.Here are my last tries:Please notice that- my Beaglebone (RevA3 or RevA4) boots correctly and i can see the two created USB ports on my Host (ubuntu 11.04 in a MacOSx virtual box): ttyUSB1 is used for a terminal session on the beagle bone and ttyUSB0 is not used. - The command "xds100serial" tells me:Scanning for XDS100 emulators...VID/PID Type Serial # Description0403/a6d0 XDS100v1/v2 ? BeagleBon No serial number found ?Here is the result of "test connection" of target configuration from CCS[Start]Execute the command:%ccs_base%/common/uscif/dbgjtag -f %boarddatafile% -rv -o -F inform,logfile=yes -S pathlength -S integrity[Result]-----[Print the board config pathname(s)]------------------------------------/home/user/.TI/1548333067/0/0/BrdDat/testBoard.dat-----[Print the reset-command software log-file]-----------------------------This utility has selected a 100- or 510-class product.This utility will load the adapter 'libjioserdesusb.so'.An error occurred while soft opening the controller.-----[An error has occurred and this utility has aborted]--------------------This error is generated by TI's USCIF driver or utilities.The value is '-151' (0xffffff69).The title is 'SC_ERR_FTDI_OPEN'.The explanation is:One of the FTDI driver functions used duringthe connect returned bad status or an error.The cause may one or more of: invalid emulator serial number,blank emulator EEPROM, missing FTDI drivers, faulty USB cable.Use the xds100serial command-line utility in the 'common/uscif'folder to verify the emulator can be located.[End]
Check out this FAQ, as it may apply to your scenario:
Also note a potential reset issue with beaglebone. see:
Check out this FAQ, as it may apply to your scenario:
Regarding this topic I'm unfortunately in the bad case ...
Case "CCSv5.1.1 for Linux" and owning only Rev A3 and Rev A4 boards really unlucky !
I see two solutions:
1) Unsinstall and re-install all my CCS environement backward to CCSv5.1. Would not like has i've got all my workspace and remote configs operationnal ...
==> If i get back to 5.1.0 version can i keep all my CCS installation configuration Full Workspace, Projects, Remote systeme Explorer ?
2) Update the existing VID/PID (0403/a6d0) of Rev3 & Rev4 boards to standard VID/PID of serial USB FTDI chip (0403/6001).
==> Can any one confirm that would solve my problem ?
I have two REV A3 boards and I updated the VID/PID in one of them to 0403/6001 - option 2) in your case.
It works flawlessly in my mixed OS/CCS scenario - as you can imagine, we at TI have multiple versions installed.
Hope this helps,
So ... It's a pitty but i definitely can't see my beagleboards on Windows Vista Famillia Premium SP2.
Strangely when i connect them Windows sees a strange VID/PID couple: USB\VID_0424&PID_2412&REV_0;;2
So FTProg can never reach the device.
If you can see on previous post my Linux correctly see VID and PID.
I guess you are connecting your Beagle Bone through a Hub... Check here.
The VID/PID should be either the 0x403/A6D0 (TI XDS100) or the FTDI's 0403/6010...
There is a weird 0451/6141 that is related to the AM3359's USB client.
I must do something wrong but i fail installing driver for my bbone on Windows, The objective is just to use "FTProg.exe' to change my VID/PID back to standard FTDI ones. I'm not using an USB hub. Bbone RevA4 Directly connected to my Windows PC.
==> [Failed] The install of "http://beagleboard.org/static/beaglebone/latest/Drivers/Windows/BONE_DRV.exe" definitly fails because "french" not supported on the installer (My windows vista premium is french ... hips ;O(.
==> [Failed] Then i tried to get usual FTDI driver and make necessary modifications (from http://www.ftdichip.com/Drivers/CDM/CDM%202.08.24%20WHQL%20Certified.zip) to recognize the 0x403/A6D0 VID/PID. See also this FAQ: https://groups.google.com/forum/#!msg/beagleboard/FlFYX3XPbO4/XdiTtv5J2fcJ
Then the driver is not accepete for this device by Windows
==> So i have a look to the recognized device when i connect my beagle bone and there is these very strange VID/PID: See joined picture.
Last, notice that under Ubuntu linux the BBone is well recognized with the current VID/PID (0x403/A6D0) ?
Did you try to search for a device driver for this unknown device? I am really puzzled by the strange VID/PID shown. According to this page, the VID 0424 belongs to Standard Microsystems Corp (commonly known as SMSC) and the PID matches this HUB device from SMSC. Another search hits this page that mentions support is available in certain .inf files.
I recall having trouble with USB hubs in the past that may help you:
- Some desktops/laptops have built-in HUBs to expand their number of USB ports, which is not obvious as they are completely integrated into the PC. I recall having some trouble with them in the past...Therefore, installing their drivers brings visibility to their nodes
- Also, I also recall that some of these HUBs are only active when there is a device plugged into it (therefore it explains why you may not have seen this strange device before). You can test this by plugging a USB stick to the same port and see if the same strange device shows up (USB sticks have a more standard support).
Other than that I am really running out of ideas - unless trying a completely different PC is an alternative to you...
Oh, one last thing: is your Vista machine a Vmware? I have experienced some inconsistencies in hardware support when running these from VMs...
A colleague has a Windows Vista machine here and I tested my RevA4 on it, which worked fine (check the attached screens).
My problem is not solved but i got a workaround.
In fact, none of my available Windows Desktops (Vista or 7 32 bits) would work with the BeagleBone except one : An old XP one !!!
Then i could modify the VID/PID get back to my Linux and ... ouf ... connect to the JTAG/USB emulator ! cool !
I've to go further trying the "STOP MODE" debugging on my Kernel.
Thanks for all your suggestions.
Thanks for reporting back the solution... It is indeed really strange you couldn't access the board from a Win7/Vista PC.
Quick question: what is the brand/model of the PCs you used? This information could help other developers that experience similar issues...
Failed to discover Beaglebone RevA3 or A4:
Mine: is PAckard-BELL,imedia X9234 / Windows vista famillial premium SP2 / CPU Intel core2 Quad Q6600 / 32 bits Other: DELL dimension 500 / Windows 7 edition famillial premium SP1 / CPU Intel core2 Quad Q8300 / 32 bits Other: DELL vostro 420/ Windows 7 edition famillial premium SP1 / CPU Intel core2 Quad Q8300 / 32 bits
Ouups, i forgot to mention the computer on which it has worked correctly: Laptop SAmsung X22 / XP pro 2002 SP3 / Intel Core 2 duo T7500 Anyway, I'm still struggling to make run my debug "stop mode" for Jtag/USB Kernel debugging.Now i can create a "Target configuration" file that can correctly connect and "test connection" seems OK (see below).But when i launch my "Debug configuration" (see joined screenshots) my CCS 5.1.1.00033 immediately return with the following error :Hips .... if anyone has got an idea ?
Here are the screen-shots of my debug configuration:
1016.dbg-config-screenshots.zipHere is my configuration file:
(Notice that i've replaced all the beginning "<" chars by a "^" as i could never preview the XML code with e2e forum HMI ?)
^?xml version="1.0" encoding="UTF-8" standalone="no"?>^configurations XML_version="1.2" id="configurations_0">^configuration XML_version="1.2" id="Texas Instruments XDS100v2 USB Emulator_0"> ^instance XML_version="1.2" desc="Texas Instruments XDS100v2 USB Emulator_0" href="connections/TIXDS100v2_Connection.xml" id="Texas Instruments XDS100v2 USB Emulator_0" xml="TIXDS100v2_Connection.xml" xmlpath="connections"/> ^connection XML_version="1.2" id="Texas Instruments XDS100v2 USB Emulator_0"> ^instance XML_version="1.2" href="drivers/tixds100v2icepick_d.xml" id="drivers" xml="tixds100v2icepick_d.xml" xmlpath="drivers"/> ^instance XML_version="1.2" href="drivers/tixds100v2cs_dap.xml" id="drivers" xml="tixds100v2cs_dap.xml" xmlpath="drivers"/> ^instance XML_version="1.2" href="drivers/tixds100v2cortexM.xml" id="drivers" xml="tixds100v2cortexM.xml" xmlpath="drivers"/> ^instance XML_version="1.2" href="drivers/tixds100v2cs_child.xml" id="drivers" xml="tixds100v2cs_child.xml" xmlpath="drivers"/> ^instance XML_version="1.2" href="drivers/tixds100v2cortexA.xml" id="drivers" xml="tixds100v2cortexA.xml" xmlpath="drivers"/> ^instance XML_version="1.2" href="drivers/tixds100v2csstm.xml" id="drivers" xml="tixds100v2csstm.xml" xmlpath="drivers"/> ^instance XML_version="1.2" href="drivers/tixds100v2etbcs.xml" id="drivers" xml="tixds100v2etbcs.xml" xmlpath="drivers"/> ^instance XML_version="1.2" href="drivers/tixds100v2pru.xml" id="drivers" xml="tixds100v2pru.xml" xmlpath="drivers"/> ^property Type="choicelist" Value="0" id="Emulator Selection"> ^choice Name="Select by serial number" value="0"> ^property Type="stringfield" Value="ttyUSB0" id="-- Enter the serial number"/> ^/choice> ^/property> ^platform XML_version="1.2" id="platform_0"> ^instance XML_version="1.2" desc="AM335x_0" href="devices/AM335x.xml" id="AM335x_0" xml="AM335x.xml" xmlpath="devices"/> ^device HW_revision="1" XML_version="1.2" description="AM335x" id="AM335x_0" partnum="AM335x" simulation="no"> ^router HW_revision="1.0" XML_version="1.2" description="ICEPick_D Router" id="IcePick_D_0" isa="ICEPICK_D"> ^subpath id="subpath_11"> ^router HW_revision="1.0" XML_version="1.2" description="CS_DAP Router" id="CS_DAP_M3" isa="CS_DAP"> ^subpath desc="M3_wakeupSS_0" id="M3_wakeupSS"> ^cpu HW_revision="1.0" XML_version="1.2" desc="M3_wakeupSS_1" description="Cortex_M3 CPU" deviceSim="false" id="M3_wakeupSS" isa="Cortex_M3"/> ^/subpath> ^/router> ^/subpath> ^subpath id="subpath_12"> ^property Type="numericfield" Value="0xc" desc="Port Number_0" id="Port Number"/> ^/subpath> ^/router> ^/device> ^/platform> ^/connection> ^/configuration>^/configurations>
Here is the result of the "test connection":[Start]Execute the command:%ccs_base%/common/uscif/dbgjtag -f %boarddatafile% -rv -o -F inform,logfile=yes -S pathlength -S integrity[Result]-----[Print the board config pathname(s)]------------------------------------/home/user/.TI/1548333067/0/0/BrdDat/testBoard.dat-----[Print the reset-command software log-file]-----------------------------This utility has selected a 100- or 510-class product.This utility will load the adapter 'libjioserdesusb.so'.The library build date was 'Feb 13 2012'.The library build time was '22:40:23'.The library package version is '5.0.623.0'.The library component version is '18.104.22.168'.The controller does not use a programmable FPGA.The controller has a version number of '4' (0x00000004).The controller has an insertion length of '0' (0x00000000).This utility will attempt to reset the controller.This utility has successfully reset the controller.-----[Print the reset-command hardware log-file]-----------------------------The scan-path will be reset by toggling the JTAG TRST signal.The controller is the FTDI FT2232 with USB interface.The link from controller to target is direct (without cable).The software is configured for FTDI FT2232 features.The controller cannot monitor the value on the EMU pin.The controller cannot monitor the value on the EMU pin.The controller cannot control the timing on output pins.The controller cannot control the timing on input pins.The scan-path link-delay has been set to exactly '0' (0x0000).-----[The log-file for the JTAG TCLK output generated from the PLL]----------There is no hardware for programming the JTAG TCLK frequency.-----[Measure the source and frequency of the final JTAG TCLKR input]--------There is no hardware for measuring the JTAG TCLK frequency.-----[Perform the standard path-length test on the JTAG IR and DR]-----------This path-length test uses blocks of 512 32-bit words.The test for the JTAG IR instruction path-length succeeded.The JTAG IR instruction path-length is 6 bits.The test for the JTAG DR bypass path-length succeeded.The JTAG DR bypass path-length is 1 bits.-----[Perform the Integrity scan-test on the JTAG IR]------------------------This test will use blocks of 512 32-bit words.This test will be applied just once.Do a test using 0xFFFFFFFF.Scan tests: 1, skipped: 0, failed: 0Do a test using 0x00000000.Scan tests: 2, skipped: 0, failed: 0Do a test using 0xFE03E0E2.Scan tests: 3, skipped: 0, failed: 0Do a test using 0x01FC1F1D.Scan tests: 4, skipped: 0, failed: 0Do a test using 0x5533CCAA.Scan tests: 5, skipped: 0, failed: 0Do a test using 0xAACC3355.Scan tests: 6, skipped: 0, failed: 0All of the values were scanned correctly.The JTAG IR Integrity scan-test has succeeded.-----[Perform the Integrity scan-test on the JTAG DR]------------------------
Back to my problem ...
Even if the board can now be seen on XP PC with 0403/6010 VID/PID it is still not visible from any of my Vista or 7 !!!
I'm desesperate with that can't even us the board on any of my regular PC. Is ther any requirement about vista or XP to recognize the FT232H device ????
Please help !
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.