Core2 display remains black for a certain progamming flow



  • I am facing a realy strange problem. If i leave the marked line (see NOT WORKING IF THIS LINE IS REMOVED) away then the display remains black. With this line its working. Since this line should not have a relevant effect on the general programm i wonder if this is a bug in the library or if i am doing something wrong. Any hint?

    #include <M5Core2.h>

    #define TFTW 320 // screen width
    #define TFTH 240 // screen height
    #define TFTW2 160 // half screen width
    #define TFTH2 120 // half screen height

    void setup()
    {
    M5.begin();
    Serial.begin(115200);
    showThermostat();
    }

    void showThermostat()
    {
    M5.Lcd.fillScreen(TFT_BLACK);
    M5.Lcd.setTextColor(TFT_GREEN);
    String text = "-28 ";
    M5.Lcd.setTextSize(8);

    int xpos = TFTW2-M5.Lcd.textWidth(text)/2;
    int ypos = TFTH2-M5.Lcd.fontHeight()/2;
    M5.Lcd.drawString(text, xpos, ypos, 1);
    M5.Lcd.drawCircle(210, ypos, 5, TFT_GREEN);
    M5.Lcd.drawCircle(210, ypos, 4, TFT_GREEN);
    M5.Lcd.drawCircle(210, ypos, 3, TFT_GREEN); // NOT WORKING IF THIS LINE IS REMOVED
    }

    void loop()
    {
    }



  • Hello @HausBusDe

    exactly why this is happening I cannot say, but it seems to be related to the double initialisation of Serial.begin() which is already happening through M5.begin(). As soon as I remove the Serial.begin() your code then works w/ or w/o the 'not working line'.

    Thanks
    Felix