Announcement

Collapse
No announcement yet.

Error : Maximum program size of 32750 for device has been exceeded

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Error : Maximum program size of 32750 for device has been exceeded

    As in the title i have ran out of program memory, I have 44 forms over 100 magic events countless number of buttons gauges and spectrum's.

    I have been reading the memory management app note about saving the main program to uSD and using a parent child system for running the program with the parent program saved on the processor.

    All my programming up until now has been using Visi-Genie can i proceed using genie or do I have to change to Visi to use this functionality.

    i am using workshop PRO.

    Regards
    Ian
    Last edited by ian79; 7 July 2017, 02:57 AM.

  • #2
    Hello Ian,

    Would it be possible to let us have a look at your code to see if there can be any memory saving's so you can continue your project in Visi-genie. It would be esier to continue this way rather than having to change to Visi.

    Best regards

    Paul

    Comment


    • #3
      Great can you PM me your email thanks

      Comment


      • #4
        Hi Ian,

        I have just sent you a PM

        Best regards

        Paul

        Comment


        • #5
          program sent thanks

          Comment


          • #6
            Hello,

            I also have this program of exceeding the 32750 limit on a Gen4-uLCD-50DT. Is that really the limit? I added 18 lines, which exceeded the limit, so I deleted 30 or so lines that were commented out, and the "code size required" is not going down at all - it seems to stay at 32788 no matter how much I delete. Does anyone know why this might be happening?

            Thanks!

            Comment


            • #7
              commented out lines are not written to flash or compiled, thats why nothing changed when you removed 30 commented out lines

              Comment


              • #8
                Thanks, tonton81. Is there a commonly-used strategy to deal with the 32750 space limitation?

                Comment


                • #9
                  depends on your code, functions used (floats, Strings vs char arrays, str* related shortcut functions) many possibilities

                  Comment


                  • #10
                    you can compress your code or make it smaller as well by bitshifting certain things. when i created an hvac setup with 9 leds i used a single uint16_t to store the 9 led states. sometimes making it complex can save space, while doing quickest methods consume more

                    Comment


                    • #11
                      All,
                      I have encountered the same issue, I've used up all available flash memory and my code size has exceeded 32750 bytes.
                      Is there a way to do a child program while using visi-genie?

                      I have found some methods in which I can reduce code size such as changing the background image on each form to include the static text that I would've had on that page.
                      I'll look into uint16_t that tonton81 mentioned above as well. Are there any other methods I should look at to reduce code size?
                      Some overview of what I have is around 60 forms with lots of different variables being set on about 40 of those forms. I have a large amount of graphic images, userbuttons/userimage states, variables to track previous touch locations, variables storing parameters, static text, strings and I still haven't even started printing the values stored to variables to their respective buttons.
                      Does program to uSD store the images to the uSD or can I be reducing space required by images somehow?
                      Are arrays less memory intensive than variables up to some break even point?

                      Regards,
                      Justin

                      Comment

                      Working...
                      X