Jump to content
energia

New Energia release 0101E0012 - 03/20/2014

Recommended Posts

I have a strange problem with Energia. On certain simple projects it generates huge (512M) .bin file and hangs during the upload, although the binary sketch size reported in the shell is perfectly normal. It is reproduceable, but I can not find what in the code triggeres it. Has anyone noticed something similar ?

Can you post the code that results in the exorbitant code?

Share this post


Link to post
Share on other sites

Nothing abnormal in .elf (using objdump) as far as I can see, but the .bin is messed up (under XP x64 and 8.1 x64). I'll try this weekend to isolate the case.

Share this post


Link to post
Share on other sites

I think I found the culprit - uint64_t seem to confuse the linker in certain cases. Since it works sometimes perhaps the problem is related to the alignment ?

 

I used uint64_t to avoid overload in the duty cycle computations in my variant of the PMWWrite(). I switched to float and so far everything is stable.

Share this post


Link to post
Share on other sites

Perhaps someone with more experience with GCC flow can look at these objdump -x outputs and get some idea. The only change between the two projects is "uint64_t" changed to "float" in one place inside the PWMWrite().

 

using uint64_t (.bin file 512Mb):

1.txt

 

using float (.bin size 3876 bytes)

2.txt

Share this post


Link to post
Share on other sites

@@energia

1. Pull the latest wiring_analog.c and the TServo library from my Energia clone:

https://github.com/vladn2/Energia

2. Build the TServo "three_async_servos" example. The .bin should come up normal (my latest version of wiring_analog.c uses float).

3. Change the "float" to "uint64_t" inside PWMWrite() inside wiring_analog.c (there is only one place).

4. Build the example and check the size of the .bin file.

 

Let me know if you can reproduce the problem.

Share this post


Link to post
Share on other sites

FYI: New Energia release 0101E0013 - 09/05/2014

 

http://forum.43oh.com/topic/5839-new-energia-release-0101e0013-09052014/

 

"This release adds support for the awesome CC3200 WiFi LaunchPad and CC3100 BoosterPack for MSP430 and TivaC."

 

If you have a CC3200, be sure to see the preparation and cautions mentioned in the above thread.  (ADC voltage limit, jumper settings)

 

[i just realized that there hasn't been much of an announcement of this update on stellarisiti.  Thought would be well to include a notice here for those who don't read 43oh.]

 

Issues:

 

The Tiva and CC3200 support inadvertently had optimization turned off.  

http://forum.43oh.com/topic/5876-energia-0101e0013-how-turn-on-optimization-for-tivacc3200/

The next release will fix this, but in the interim you can download a patch from the above thread that turns optimization back on.

 

[Edit]micros function has problems on CC3200.  See 

http://forum.43oh.com/topic/5902-measure-short-amounts-of-time-with-micros/

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...