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.
Hi!
*This question is being asked in early 2019*
We have a question from 2 years ago on E2E regarding access to upper memory (0x10000 - 0x13FFF) of MSP430FR5969 with MSPGCC 4.6.3 + Energia-imported sketches.
70%+ of our system is already based on Arduino libraries, already running on the field for 3+ years and very well debugged (it was some kinda effort to make it all work properly).
Now some firmwares versions won't fit on 48kB any longer.
I have tried all the __attributes__ possible for this MSPGCC for reallocation with no luck on linking stage, failing compilation every time. MSPGCC won't accept #pragmas for strict address/section allocation, I can't find the .ld file where I could define some addresses, long story short: Desperate.
Do you have any news since that last post regarding MSP430 memory above 0x10000 + Energia Sketches (which implies use of MSPGCC if I am not wrong)?
It will be a total regression if I have to recode 70%+ of the firmwares and I'm already suffering some pressure to change platform due to this ("if we have to go to ground zero again, let's not go with TI" - and I know this is not accurate, but it's the feeling of the sponsor).
Hope to have already some solution for this. Migrating from Arduino is being a late nightmare.
Currently using CCS 6.2.0 + Energia 17.3 (imported sketch to CCS) + MSPGCC 4.6.3
Thank you,
Mario
Hi Mario,
To best assist you, I will need some context about your original question.
Can you please provide the link to the original post (I do not see it in your post history) or a short description of your original issue and resolution.
Thanks,
-Chris
Energia currently does not support upper memory due to the limitations in mspgcc. The goal was to release an msp430-core with msp430-elf-gcc a while back. Unfortunately at that time, the binary size produces by msp430-elf-gcc was too large and would not have fitted some of the most basic sketch in some of the msp430's.
With that said, there is an upcoming release of msp430-elf-gcc that does get the size down to where it is usable. If you would like to give this a try then please send me an e-mail at make@energia.nu with the subject msp430-elf-gcc and I will send out the instructions.
Robert
The old thread you refer to was about accessing data in the upper memory area. You can write functions to do that without much effort.
If the problem is code size then the upper memory will be of little help. I checked using a current version of gcc and switching to -mlarge to get 20 bit pointers resulted in a 20% increase in code size. For a ~50K block of code that increase would use up almost all of the extra 16K of memory. It would be nice if linker relaxation were available to reduce pointer sizes where possible but the MSP430 isn't on the list of targets that support it.
Closing this thread as the original question was answered.
Please continue the discussion here if necessary:
https://e2e.ti.com/support/microcontrollers/msp430/f/166/t/787084
**Attention** This is a public forum