This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Can I use CCS on Windows to develop a BeagleBoard Black running linux inlcuding its PRUs?

Other Parts Discussed in Thread: PRU-SWPKG

Hey there,

I'd like to use the BeagleBone Black (BBB) including its PRUs running on a Linux as a platform for my development.

What I'm confused about: can I do that from Windows using CCS?

As far as I understand, I can certainly program the BBB from Windows using CCS, but than I would not have Linux on my BBB as an underlying operating system anymore, but I'd have to use it as a bare microcontroller. Is that right?

I've read articles and seen videos on how to do cross development with the BBB, however, non of them had nice intergration for the PRUs of the BBB. However, neat integration for programming the PRUs is crucial to me.

As far as I understand using the Linux SDK would enable me to do that. However, my host platform has been windows up to now and I'd like to keep that, if possible. I could use a virtual machine, however, I'd prefer not to.

Thanks a lot!

Philipp

  • Moving this to the CCS forum.

  • Philipp,

    Philipp Lucas said:
    What I'm confused about: can I do that from Windows using CCS?

    Yes, you can. However, it is a bit more involving due to the need to have cross compilers for Windows.

    The threads below somewhat explain this:

    http://e2e.ti.com/support/development_tools/code_composer_studio/f/81/p/67220/243736.aspx#243736

    http://e2e.ti.com/support/development_tools/code_composer_studio/f/81/t/153378.aspx

    Philipp Lucas said:
    but I'd have to use it as a bare microcontroller. Is that right?

    As I mention in the wiki page referenced at the second thread above, it is possible to build your Linux application from a Windows host. However, if the application has many dependencies on the Linux SDK itself, you may need to host it in a Linux host and share its directory with the Windows host - all due to the fact that the Linux SDK is not tailored to be installed in Windows environments. This is something somewhat mentioned in the thread below, with several links to other useful pages for Linux development. 

    http://e2e.ti.com/support/development_tools/code_composer_studio/f/81/t/256488.aspx

    CCSv6.x has PRU integration into its environment by means of the PRU compiler (installed via CCS App center) and the Device support (check this page) to fully enable it. I provide in the thread below the method to install the Device support and a description of the method to integrate PRU code in a baremetal application:

    http://e2e.ti.com/support/development_tools/code_composer_studio/f/81/p/358767/1259454.aspx#1259454

    The experts in the device forum would know more details about the availability of source/example code.

    Hope this helps,

    Rafael

  • Since the OP's question is the same as mine and I don't see the answer in here or in any of the linked discussions, I would like to bump this thread back to life and perhaps dig a little deeper...

    desouza said:
    Yes, you can. However, it is a bit more involving due to the need to have cross compilers for Windows.

    Whether developing code on a Windows PC or Linux PC, don't you need a cross-compiler if your target is ARM (ie BeagleBone)?

    desouza said:
    it is possible to build your Linux application from a Windows host. However, if the application has many dependencies on the Linux SDK itself, you may need to host it in a Linux host and share its directory with the Windows host - all due to the fact that the Linux SDK is not tailored to be installed in Windows environments.

    This doesn't make any sense to me.  Maybe it would help to know what the SDK actually consists of.  What is it if not libraries and an API for interfacing with Linux on the target platform?  If this is, in fact, what the SDK is, what difference does it make what the development platform is?

    This may be a moot discussion since, apparently, the SDK can only be installed on Linux PCs (wat?).  With that in mind, since I wouldn't mind migrating my TI development efforts to Linux, perhaps you can shed a little more light into the deep, dark, depths of TI development tools, etc?

    Is there a Linux distro best suited for CCSv6 and BeagleBone Black development?  I tried installing it on RoboLinux and failed dismally.  I have both 64-bit and 32-bit platforms available, but would prefer using the 64-bit machine.

    I thought I read somewhere that the LINUXEZSDK-BONE included support for PRU programming but, upon further reading, it appears that PRU-SWPKG must be installed separately.  Is this the case?

  • I looked into running building Linux in Windows (even with Cygwin) for the effort here on an older TI processor:
    processors.wiki.ti.com/.../Linux_by_Degrees

    >>SDK is, what difference does it make what the development platform is?
    Simple issues like path with "/" vs. "\" could cause problems for building. And even for viewing the kernal souce, Windows has a problem with paths (though you can load the vmlinux symbol file fine and set breakpoints).

    Since then TI has released CCSv5 in native Linux which makes these path issues go away. Bottom line I use a Linux box primarily for new development. VMware Linux is nice for "read only" debug of of files.

    But I still use Windows CCS for "stop mode" debug (as processors.wiki.ti.com/.../Linux_Debug_in_CCSv5) when I don't have my Linux box. But pretty much gave up building Linux stuff in Windows CCS.
  • Joe G. said:
    Simple issues like path with "/" vs. "\" could cause problems for building.

    I thought Windows had gotten over that.  I can use "/" and "\" interchangeably in the terminal.

    Joe G. said:
    Since then TI has released CCSv5 in native Linux

    No CCSv6 ?

  • Terminal maybe. But I definitely had problems with build scripts.

    And yes, Linux on CCSv6 also: processors.wiki.ti.com/.../Download_CCS
  • I have successfully built and deployed a simple "Hello World" to the BBB from CCSv6 on my Win 8.1 computer. It even debugs (I think). I installed the Linaro toolchain and created a makefile project. One problem, however, is that I can't just "Run" the code, there is no run button until you go into debug mode. I thought maybe this Linux SDK along with the PRU package would make life easier... I guess only if I'm in Linuxland.

    I just want to develop applications for the BeagleBone Black and have access to all the peripherals. Is that asking too much? Can I get a straight answer from someone as to what I need for development tools and packages?