🤖Have you ever tried Chat.M5Stack.com before asking??😎
    M5Stack Community
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    PlatformIO and FreeRTOS

    SOFTWARE
    1
    1
    2.5k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • I
      Illerian
      last edited by

      A little help would go a long way!

      I am trying to use FreeRTOS with PlatformIO on my M5Stack Core 2

      I can get it to work on cpu core 1 but not on cpu core 0. Any suggestions?

      I am suspicious that it has to do with SPI communication with the LCD screen. I am hoping I am doing something wrong. It is easier to fix my faults than those of TFT_eSPI or M5Display.

      Thanks in advance!

      Code snippet

      xTaskCreatePinnedToCore(loop,"task1",8192,NULL,1,taskHandle,1); //Works
      
      xTaskCreatePinnedToCore(loop,"task2",8192,NULL,1,taskHandle,0); // Sets CPU in panic and reboots
      
      void loop(void *parameters) {
          while(1) {
              M5.Lcd.println("Somthing to think about!");
              Serial.println("Something to ponder?");
              delay(1000);
      }
      

      Stacktrace

      Backtrace: 0x4008a380:0x3ffbe4f0 0x4008a5f9:0x3ffbe510 0x400e73e7:0x3ffbe530 0x40086195:0x3ffbe550 0x400d29a9:0x3ffb5ce0 0x400d3941:0x3ffb5d00 0x400d3e15:0x3ffb5d80 0x400d33a9:0x3ffb5df0 0x400fba1b:0x3ffb5e20 0x400d6232:0x3ffb5e40 0x400d6311:0x3ffb5e60 0x400d5f4e:0x3ffb5e80 0x400d5e74:0x3ffb5fd0 0x4008b5fe:0x3ffb5ff0
      #0 0x4008a380:0x3ffbe4f0 in invoke_abort at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp32/panic.c:715
      #1 0x4008a5f9:0x3ffbe510 in abort at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp32/panic.c:715
      #2 0x400e73e7:0x3ffbe530 in task_wdt_isr at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp32/task_wdt.c:252
      #3 0x40086195:0x3ffbe550 in _xt_lowint1 at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/freertos/xtensa_vectors.S:1154
      #4 0x400d29a9:0x3ffb5ce0 in TFT_eSPI::setWindow(int, int, int, int) at .pio/libdeps/m5stack-core2/M5Core2/src/utility/In_eSPI.cpp:6120
      #5 0x400d3941:0x3ffb5d00 in TFT_eSPI::drawChar(int, int, unsigned short, unsigned int, unsigned int, unsigned char) at .pio/libdeps/m5stack-core2/M5Core2/src/utility/In_eSPI.cpp:6120
      #6 0x400d3e15:0x3ffb5d80 in TFT_eSPI::drawChar(unsigned short, int, int, unsigned char) at .pio/libdeps/m5stack-core2/M5Core2/src/utility/In_eSPI.cpp:6120
      #7 0x400d33a9:0x3ffb5df0 in TFT_eSPI::write(unsigned char) at .pio/libdeps/m5stack-core2/M5Core2/src/utility/In_eSPI.cpp:6120
      #8 0x400fba1b:0x3ffb5e20 in Print::write(unsigned char const*, unsigned int) at /Users/noname/.platformio/packages/framework-arduinoespressif32/cores/esp32/Print.cpp:42
      #9 0x400d6232:0x3ffb5e40 in Print::write(char const*) at /Users/noname/.platformio/packages/framework-arduinoespressif32/cores/esp32/Print.cpp:261
      #10 0x400d6311:0x3ffb5e60 in Print::print(char const*) at /Users/noname/.platformio/packages/framework-arduinoespressif32/cores/esp32/Print.cpp:261
      (inlined by) Print::println(char const*) at /Users/noname/.platformio/packages/framework-arduinoespressif32/cores/esp32/Print.cpp:195
      #11 0x400d5f4e:0x3ffb5e80 in M5OS::ScreenClass::println(char const*, ...) at lib/M5OS/src/Screen.cpp:31
      #12 0x400d5e74:0x3ffb5fd0 in loop(void*) at main.cpp:10 (discriminator 1)
      #13 0x4008b5fe:0x3ffb5ff0 in vPortTaskWrapper at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/freertos/port.c:355 (discriminator 1)

      1 Reply Last reply Reply Quote 0
      • First post
        Last post