Announcement

Collapse
No announcement yet.

Exception 29

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

  • Exception 29

    Hi
    I was working on iod 24 device and when I use wificliensecure and run program crash appears on anyoment with exception 29 code. Have any suggestions?

  • #2
    Hi,

    This is a known problem with the ESP8266 using wificlientsecure and usually relates to RAM use.

    This may help to explain it better than I can.

    https://github.com/esp8266/Arduino/issues/4875

    The GFX capability of the display uses some RAM and then there will be your application on top of this so it might be best to see if you can make some savings in RAM use if possible.

    Best regards

    Paul

    Comment


    • christiandelanus
      christiandelanus commented
      Editing a comment
      Thanks a lot Paul. I will read carefully.

  • #3
    Hi
    Im workin with arduino ide1.8.13 and esp8266 3.0.1 and hav this error
    Arduino:1.8.13 (Windows 10), Tarjeta:"4D Systems gen4 IoD Range, 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, DOUT (compatible), 2MB (FS:64KB OTA:~992KB), v2 Lower Memory, Disabled, None, Only Sketch, 115200"

    C:\Users\christian\Desktop\PROYECTOS\fujimetros\flowmet expansion\pantalla\flowmet_con_expansio_mushroom_GEN4_32T\flowmet_con_expansio_mushroom_GEN4_32T.ino : In function 'bool get_topic(int)':
    flowmet_con_expansio_mushroom_GEN4_32T:1741:19: error: control reaches end of non-void function [-Werror=return-type]
    1741 | Serial.println("Falló conexión!");
    | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
    cc1plus.exe: some warnings being treated as errors
    Se encontraron varias bibliotecas para "ESP8266WiFi.h"
    Usado: C:\Users\christian\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.1\libraries\ESP8266 WiFi
    No usado: C:\Users\christian\Documents\Arduino\libraries\ESP8266WiFi_old
    Se encontraron varias bibliotecas para "EEPROM.h"
    Usado: C:\Users\christian\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.1\libraries\EEPROM
    No usado: C:\Program Files (x86)\Arduino\libraries\arduino-NVM
    Se encontraron varias bibliotecas para "DNSServer.h"
    Usado: C:\Users\christian\Documents\Arduino\libraries\DNSServer
    No usado: C:\Users\christian\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.1\libraries\DNSServ er
    Se encontraron varias bibliotecas para "ESP8266HTTPClient.h"
    Usado: C:\Users\christian\Documents\Arduino\libraries\ESP8266HTTPClient
    No usado: C:\Users\christian\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.1\libraries\ESP8266 HTTPClient
    Se encontraron varias bibliotecas para "ESP8266WebServer.h"
    Usado: C:\Users\christian\Documents\Arduino\libraries\ESP8266WebServer
    No usado: C:\Users\christian\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.1\libraries\ESP8266 WebServer
    Se encontraron varias bibliotecas para "Hash.h"
    Usado: C:\Users\christian\Documents\Arduino\libraries\Hash
    No usado: C:\Program Files (x86)\Arduino\libraries\Hash
    No usado: C:\Users\christian\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.1\libraries\Hash
    Se encontraron varias bibliotecas para "GFX4d.h"
    Usado: C:\Users\christian\Documents\Arduino\libraries\GFX4d
    No usado: C:\Program Files (x86)\Arduino\libraries\GFX4d-master
    No usado: C:\Program Files (x86)\Arduino\libraries\GFX4d_old
    Se encontraron varias bibliotecas para "SD.h"
    Usado: C:\Users\christian\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.1\libraries\SD
    No usado: C:\Program Files (x86)\Arduino\libraries\SD
    Se encontraron varias bibliotecas para "Ticker.h"
    Usado: C:\Users\christian\Documents\Arduino\libraries\Ticker
    No usado: C:\Users\christian\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.1\libraries\Ticker
    exit status 1
    control reaches end of non-void function [-Werror=return-type]


    Could check? Thanks a lot

    Comment


    • #4
      Hi,

      You may be missing a '}' in your function bool get_topic(int)

      Would you be able to send your code to me, you can send it via your open Ticket if you prefer.

      Best regards

      Paul

      Comment


      • #5
        Hi Paulelio:

        Thanks a lot for your response. Really code haven´t trouble, Memory crash when softap() is started. I test many sketch with this and nothing work.
        here my exception
        --------------- CUT HERE FOR EXCEPTION DECODER ---------------

        Exception (29):
        epc1=0x40249350 epc2=0x00000000 epc3=0x00000000 excvaddr=0x1bff7b1a depc=0x00000000

        >>>stack>>>

        ctx: cont
        sp: 3ffffbb0 end: 3fffffc0 offset: 0190
        3ffffd40: 3fff437c 0104a8c0 3fff437c 0000000a
        3ffffd50: 4024a4ae 1bff7b19 3ffffdf8 40100c88
        3ffffd60: 00ffffff 0104a8c0 40268c70 401005e4
        3ffffd70: 40261eff 00000000 3fff7a9c 3ffefa8c
        3ffffd80: 4024a6fa 3fff7a9c 3fff7634 00000000
        3ffffd90: 0000000a 3ffefae4 3ffefa60 3ffefcd0
        3ffffda0: 0104a8c0 4026253f 3ffefa60 3fff7634
        3ffffdb0: 3fff7b0c 00000000 3fff437c 40226b80
        3ffffdc0: 40268cb8 00000064 3ffffdf8 40245e01
        3ffffdd0: 3ffefa60 3fff7634 3fff3d4c 3fff3e48
        3ffffde0: 00000064 40245de8 3fff7634 00000004
        3ffffdf0: 41e83a2e 000025e8 00000000 3fff7b16
        3ffffe00: 00000000 00000000 00000000 00000000
        3ffffe10: 00000000 00000000 00000000 00000000
        3ffffe20: 00000000 00000000 00000000 4024714b
        3ffffe30: 3fff7634 00000003 00000003 40247193
        3ffffe40: 40265991 00000003 3fff0958 00000000
        3ffffe50: 402659a9 00000003 00000003 00000003
        3ffffe60: 40265b0b 00000003 00000003 40265abf
        3ffffe70: 0000000f 00000001 00000000 3fff7194
        3ffffe80: 40265be2 00000003 00000003 00000001
        3ffffe90: 4020635c 00000003 00000001 00000001
        3ffffea0: 3fffff40 00000001 3fff3d4a 4020642d
        3ffffeb0: 3ffea5e2 3fffff30 3fffff20 40205f08
        3ffffec0: 3fff3854 00000030 3fff0e54 3fff3e48
        3ffffed0: 40214d94 3ffea5e0 3fff3e48 40214da0
        3ffffee0: 40214d94 3ffea5e0 3fff3e48 40215d78
        3ffffef0: 00000004 0000000a 3fff3e48 40215fec
        3fffff00: 3fff0e54 0000000b 3ffe9ebb 3fff3e48
        3fffff10: 3fff3d4a 3fff0e54 3fff3bc4 40203386
        3fffff20: 4021bcf8 00ffffff 000000d2 00000000
        3fffff30: 4021bcf8 0904a8c0 3fff0e54 40215d78
        3fffff40: 4021bcf8 1604a8c0 3fff3bc4 40215d9c
        3fffff50: 000000b4 00000000 3fff0e54 00000000
        3fffff60: 00000004 3fff0e54 3fff3bc4 40205b49
        3fffff70: 0000ad55 00000000 3fff0e54 40202bb8
        3fffff80: feefeffe feefeffe feefeffe feefeffe
        3fffff90: feefeffe feefeffe feefeffe 3fff4020
        3fffffa0: 3fffdad0 00000000 3fff400c 40217f68
        3fffffb0: feefeffe feefeffe 3ffe8660 40100f19
        <<<stack<<<

        last failed alloc call: 40217D30(16709)

        --------------- CUT HERE FOR EXCEPTION DECODER ---------------

        I have tested this simple sketch and crash to
        /*
        Copyright (c) 2015, Majenko Technologies
        All rights reserved.

        Redistribution and use in source and binary forms, with or without modification,
        are permitted provided that the following conditions are met:

        * * Redistributions of source code must retain the above copyright notice, this
        list of conditions and the following disclaimer.

        * * Redistributions in binary form must reproduce the above copyright notice, this
        list of conditions and the following disclaimer in the documentation and/or
        other materials provided with the distribution.

        * * Neither the name of Majenko Technologies nor the names of its
        contributors may be used to endorse or promote products derived from
        this software without specific prior written permission.

        THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
        ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
        WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
        DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
        ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
        (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
        LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
        ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
        (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
        SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
        */

        /* Create a WiFi access point and provide a web server on it. */

        #include <ESP8266WiFi.h>
        #include <WiFiClient.h>
        #include <ESP8266WebServer.h>

        #ifndef APSSID
        #define APSSID "ESPap"
        #define APPSK "thereisnospoon"
        #endif

        /* Set these to your desired credentials. */
        const char *ssid = APSSID;
        const char *password = APPSK;

        ESP8266WebServer server(80);

        /* Just a little test message. Go to http://192.168.4.1 in a web browser
        connected to this access point to see it.
        */
        void handleRoot() {
        server.send(200, "text/html", "<h1>You are connected</h1>");
        }

        void setup() {
        delay(1000);
        Serial.begin(115200);
        Serial.println();
        Serial.print("Configuring access point...");
        /* You can remove the password parameter if you want the AP to be open. */
        WiFi.softAP(ssid, password);

        IPAddress myIP = WiFi.softAPIP();
        Serial.print("AP IP address: ");
        Serial.println(myIP);
        server.on("/", handleRoot);
        server.begin();
        Serial.println("HTTP server started");
        }

        void loop() {
        server.handleClient();
        }
        esp8266 board 3.0.0 (3.0.1 doesn't work with gfx4d library)
        Arduino 1.9.13
        GFX4d Library 1.0.4
        device GEN4-IOD-32T
        hope you understandme. Regards

        Comment


        • #6
          Hi,

          Thanks for the extra information. I will try this code and find out which element causes the issue. It isn't necessarily an issue with the IoD more something to to with the ESP8266 core but I'll try to find out why.

          With regard to GFX4d and ESP8266 version 3.0.1, I've done some testing here and it seems fine but it would be great if you could send me the errors that you are experiencing whilst using 3.0.1 so I can investigate further. There were many changes at 3.0.0 which effectively broke GFX4d but these have all been rectified but maybe something in 3.0.1 that I haven't noticed is still causing an issue.

          Best regards

          Paul

          Comment


          • #7
            Hi,

            Could you try adding a yield(); in your loop.

            eg

            void loop() {
            server.handleClient();
            yield();
            }

            I have noticed an issue with Serial.begin(115200); here so I will look into it further.

            Best regards

            Paul

            Comment


            • #8
              Hi paulelio This sketch is from examples on Arduino IDE. I put yeld function on my sketch and nothing. In fact all sketch work if I erase WiFi.softap(....) function. I have tested on iod-24T device too and the same. Regards.

              Comment


              • #9
                Hi,

                Click image for larger version

Name:	COM12.png
Views:	20
Size:	18.5 KB
ID:	76437

                This is the result on mine running the above code and ESP core 3.0.1

                Could you try removing the ESP8266 board and then installing version 3.0.1

                Best regards

                Paul



                Comment


                • #10
                  Paulelio

                  Thanks a lot. Have you test serial monitor? In fact I can't use esp8266 3.0.1 because I have error compiling for gen4 iod range. I reinstall all libraries gfx4 and esp and nothing. A few days ago I use wifimanager library and work for a few days I will try to use another PC. If you could test serial monitor please check if you have an exception. Regards

                  Comment


                  • #11
                    Hi,

                    Yes, I have tried but I can't replicate the issue at my end. It appears to work perfectly ok with Serial Monitor, I get the expected result apart from the baud rate but I am still looking into that as a separate issue.

                    Best regards

                    Paul

                    Comment


                    • #12
                      Hi Paulelio

                      Thanks a lot for your work. Finally I test gen4 iod 28t device and work I think my 32T device is broken. Wen I test WifiAccessPoint sketch from examples work but when I upload my oun sketch I get that error. Esp8266 3.0.1


                      Arduino:1.8.15 (Windows 10), Tarjeta:"4D Systems gen4 IoD Range, 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, DOUT (compatible), 2MB (FS:64KB OTA:~992KB), v2 Lower Memory, Disabled, None, Only Sketch, 115200"

                      C:\Users\cmaricl\Documents\Arduino\libraries\GFX4d\src\GFX4d.cpp: In member function 'void GFX4d::ImageWifi(boolean, String, uint16_t, String)':
                      C:\Users\cmaricl\Documents\Arduino\libraries\GFX4d\src\GFX4d.cpp:1153:13: error: call to 'HTTPClient::begin' declared with attribute error: obsolete API, use ::begin(WiFiClient, host, port, uri)
                      1153 | http.begin(Address,port,hfile);
                      | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
                      C:\Users\cmaricl\Documents\Arduino\libraries\GFX4d\src\GFX4d.cpp:1156:13: error: call to 'HTTPClient::begin' declared with attribute error: obsolete API, use ::begin(WiFiClient, url)
                      1156 | http.begin(Address);
                      | ~~~~~~~~~~^~~~~~~~~
                      C:\Users\cmaricl\Documents\Arduino\libraries\GFX4d\src\GFX4d.cpp: In member function 'void GFX4d::Download(String, uint16_t, String, String)':
                      C:\Users\cmaricl\Documents\Arduino\libraries\GFX4d\src\GFX4d.cpp:3060:13: error: call to 'HTTPClient::begin' declared with attribute error: obsolete API, use ::begin(WiFiClient, host, port, uri)
                      3060 | http.begin(Address,port,hfile);
                      | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
                      C:\Users\cmaricl\Documents\Arduino\libraries\GFX4d\src\GFX4d.cpp:3062:13: error: call to 'HTTPClient::begin' declared with attribute error: obsolete API, use ::begin(WiFiClient, url)
                      3062 | http.begin(Address);
                      | ~~~~~~~~~~^~~~~~~~~
                      Se encontraron varias bibliotecas para "SD.h"
                      Usado: C:\Users\cmaricl\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.0\libraries\SD
                      No usado: C:\Users\cmaricl\Desktop\arduino-1.8.15\libraries\SD
                      exit status 1
                      Error compilando para la tarjeta 4D Systems gen4 IoD Range.


                      Este informe podría contener más información con
                      "Mostrar salida detallada durante la compilación"
                      opción habilitada en Archivo -> Preferencias.

                      Comment


                      • #13
                        Hi,

                        Thank you for this, It helps now that I have errors to check for in 3.0.1 I will try to find out why you get these errors.

                        Best regards

                        Paul

                        Comment


                        • #14
                          Hi,

                          Are you using the latest GFX4d from Github ?

                          https://github.com/4dsystems/GFX4d

                          We added a check for versions from 3.0.0 upwards but it appears that your GFX4d is running the pre 3.0.0 code for the above functions. I noticed that the compile messages above are using core 3.0.0

                          Usado: C:\Users\cmaricl\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.0\libraries\SD

                          Best regards

                          Paul

                          Comment


                          • #15
                            Paulelio
                            I willreinstall library and check that. regards.

                            Comment

                            Working...
                            X