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.

CC 6.1 maximum of 16KB of code size for MSP432

Other Parts Discussed in Thread: ENERGIA, CC3200

I am using the MSP-EXP432P401R-MSP432P401R LaunchPad with BOOSTXL-K350QVG-S1-Kentec QVGA Display BoosterPack. The demo code works fine. I extended the code to add my own application and I get an error message. By the way, I have checked the new code and it is close to 24 KBytes. Is there some configuration by which I can increase to a 'no code size limit' as the error message says. By the way, the Wiki points to http:/xxx:)

Please help

Typical message

Output file “example.out” exceeds code size limit

What it means

You have exceeded the maximum code size allowed by your Code Composer Studio license.

Why is it happening

Your current Code Composer Studio license allows for a maximum of 16KB of code size when using the TI MSP430 C compiler.

Remedy

You may upgrade your Code Composer Studio license to one with no code size limit or you can switch to using GCC as your compiler. GCC is available from the App Center.
Please note that depending on your source code, switching to GCC may involve significant code changes, please see Wiki for some tips.

Risks, Severity

This error prevents the linking of an executable program.

  • Dev Bhattacharyya said:
    Please help

     There no free help here as no free solution.

     If you wish use this tools no limit you have to buy it, also IAR offer a similar solution and if you break limit no other solution than buy. IAR cost some times more than CCS.

     If you don't wish upgrade TI has also offered to his customer the opportunity to integrate hobby like Energia and GCC open source tools, the last is comparable to TI tools so you can use it.

     Effort to do that are at your expense and none here can give free ccs licence nor suggest illegal crack of these tools.

     Choose at your best solution but think about TI designer MUST BE payd to develop code and they cannot be fired just due market doesn't return enough money, this is sign very low cost tools are not so good as commercial seen before and loss start rise. TI has to preserve industrial market too otherwise entire company risk worst.

     So use your time for free and switch to GCC is also good or just buy CCS licence.

  • According to the MSP432 FAQ, the code size limit for TI's linker on MSP432 is supposed to be 32KB:

    MSP432 FAQ said:
    Q: What is the code size limit for MSP432 in CCS? A: When using the TI compiler, the CCS code size limit is 32kB for MSP432. The limit is independent of the debugger used in the system (stand-alone or on-board debugger such as the MSP432 LaunchPad). There is no code size limit when using the ARM GCC Compiler inside CCS. You can download/update TI as well as ARM GCC compilers from the CCS App Center.

    If you are receiving an error message and your program is only 24KB, then I suggest you post on the TI C/C++ Compiler forum and ask why this is happening. Attach a copy of the output .map file for your program when you post there so the compiler team can see what the linker is trying to do.

  • @Roberto

    Agreed that there has to money for the corporation, but for my project (I am a self managed individual), paying 800 bucks for a compiler that serves just one need does not seem fair to my wallet. There should be an affordable version (single user, single node) but not priced at 500 bucks. I am sure everyone will agree on that - especially MSP432 which itself is built on open source hardware.

    Back to the problem, is there a lean GRLIB for MSPWare that one can use? That may solve the problem for the time being. I hate to scavenge the code looking for snippets to stave.

    Best
  • Dev Bhattacharyya said:
    Back to the problem, is there a lean GRLIB for MSPWare that one can use? That may solve the problem for the time being. I hate to scavenge the code looking for snippets to stave.

     Hi DEv, in first you have to post on CCS area this problem, really you wrote 16K pointed by  but this is for MSP430 MSP432 has 32K limit as from FAQ.

     On cost of complier you are right and 785US$ are not too much for an IDE supporting all family of TI processors, consider IAR itself if not changed is near 2K$ and cover just one processor so you must buy another for MSP432.

     What is wrong is to distribute semi_open source as BSD licence like MSPWare and GRLIB just locked to TI compiler and not ready for GCC too.

     This way reason is your but checking again your initial message 24KBytes code are less than limit so again reason is your for free tools.

     About ARM free hardware again you are at right, it is free IPCore, this IP core never impose free tools so just GCC is free others are all @ payment so ARM (KEIL) is selling compiler.

    www.quadravox.com/AQ430.htm

    en.wikipedia.org/.../TI_MSP430

    From this last page you can find a list of IDE no more listed by TI like Imagecraft is less expensive as Quadravox but QV last update was 2007 and IC is 2012, maybe IC release a new version, actual market status is not driving firm to produce more than they are able to sell...

  • Appreciate the quick response, I am using MSP432 not 430. MSP430 was way too limited, especially when color TFT LCDs were involved. The QV LCD sounded promising and it worked out of the box with MSP432, but then there was virtually no room for the application. I am thinking if Energia is a better way to go. I have had some good success with CC3200 Launchpad.

    Running a small 1.8" or 2.2" LCD on any of the Launchpads is a nightmare, I know porting the heavyweight QV will not be easy. Maybe I will go back to either a ST7735 TFT or an OLED Color LCD with a small footprint.

    Any thoughts?
  • Dev Bhattacharyya said:
    MSP430 was way too limited, especially when color TFT LCDs were involved. The QV LCD sounded promising and it worked out of the box with MSP432,

     Hi Dev, not really, 5xx and 6xx series have nothing to be scared from 432 than when Floating point is required. GRLIB is fully integer so no great difference exists, better experience can be found on TIVA series where no limit is applied to compiler and large memory is available too but same exact as MSP432 at expence of a comlexity of peripheral not really efficient. MSP432 appear as a better TIVA  with less peripheral and the only present more simple to use.

     Again GRLIB has a worst method of interfacing to LCD panels, every device require a monolith driver must be patched. I was in procint to write an universal driver when just changing some parameter parallel/serial and display type can be selected but it need span across all family and come to a huge work. I quit TIVA at near half of work and all tables to select devices has to be completed and checked.

     From Energia perspective yes you can find not so fast library not so powerful but they can work in simple step, trouble sometimes is these library are hobby level and they hang for unknown reasons or due some timeout mechanism is not present.

    Dev Bhattacharyya said:
    Running a small 1.8" or 2.2" LCD on any of the Launchpads is a nightmare, I know porting the heavyweight QV will not be easy. Maybe I will go back to either a ST7735 TFT or an OLED Color LCD with a small footprint.

     If you have the library initializing your device and setting pixel you can port to GRLIB in simple step, avoiding to tamper code insert a define of display driver name.

     When you have the driver GRLIB work on whichever device you attach to.

     Anyway this problem about 32K limit need to be reported to CCS forum.

  • @Roberto - Finally got the GNU 4.8.4 to compile the code in CCS for MSP432 and QV LCD. For the linker I set the --specs=nosys.specs. Of course, all the include paths had to be corrected, I had to implement itoa and ftoa string functions - overall I have a 19K binary which gets uploaded. I will post the 16K limitation in the CCS forum.

    Thanks.

    Dev
  • "for my project (I am a self managed individual), paying 800 bucks for a compiler that serves just one need does not seem fair to my wallet. "

    I only need my car once a month. Charging me the same 10k for it as from someone who needs it every day doesn't seem fair to my wallet too.
    (sorry, couldn't resist)

    At least there is a free version available, even though it is code size limited. I wish there would have been a free version (mileage limited) for my car too.
  • Take a bus, it’s cheaper and it’s about 100K; take a train - it’s even cheaper and it’s 1000K - sometimes you get a free ride too. (Sorry couldn’t resist either)

  • Then the proper analogy to your bus would be an online compiler that is used by all people, only handles a few at a time and whenever you want to use it, there is a risk that it says 'try again in an hour' or 'only one compiler run per hour allowed'. A bus is a limited resource, shared with many other passengers, only available when the driving plan offers it and only on certain routes. And someone has to buy it. I don't know of any bus maker who also runs a transportation business.
  • It's free now!
    Thank you very much !
    Texas Instruments is nice !

    processors.wiki.ti.com/.../Licensing_-_CCSv6

    New Licensing Policy
    IMPORTANT UPDATE: FULL CCSv6 license files are now available for NO cost and available for download from the below link:

    CCS Full License
    There are no restrictions in regards to time, code size, debug probe or target used. This license file is essentially the same the a full node-locked license mentioned below - with the exception that it is not locked to any MAC address (it is not node-locked). This file can be used as part of the process for activating a license file.

    Floating licenses are no longer supported.

    All of the below (collapsed) information is now legacy information.

**Attention** This is a public forum