I’ve had 2 WIO terms fail on me - both in the same way. The first was out of the box - grey screen. I could program it and sent a simple turn the screen on/off with the face button. Screen went on/off but when on was only grey. The second failed with the same mode after running a color change routine (red - green - blue with 10 second delay between).
Happy to tell you that the code works fine in my Wio Terminal… your code seems fine. Sorry about your specific Wio Terminal. I hope I don’t “do something” to my Terminal*, to change what it is doing today!
(* Ha! Web nanny doesn’t allow the word M-I-N-E! (^_^)
Yes, I have tried this code, and it runs smoothly and there is no problem. At present, it may be that there is a problem with your Wio Terminal. You can contact our technical support email and send this forum post and details to [email protected], they will help you exchange goods or solve problems.
Just to be clear. I have been programming arduinos since 2014, and use them regularly in products I sell. I have 3 projects running on WIO terminals, 2 LED controllers and one environmental sensor array. I don’t have ONE board with this problem I now have three, all showing the same issue - no display with TFT_eSPI. In all cases when originally plugged in the game appeared and when I pressed a button - disappeared and the screen went dark. The only TFT_eSPI function that gets any response is the set brightness function which gives either a black screen at LOW or a grey screen at HIGH.
It is possible I did something that corrupted the devices source code on the first 2, but the third was not connected to a computer when the game disappeared, so I’m thinking low probability on that. It is also possible that I have the only 3 devices SEEED has ever sold with this problem, but the statistical probability of that is indistinguishable from ZERO.
They are working fine with the LovyanGFX library, as well as with CircuitPY, so there is something going on here about compatibility that is not obviously hardware related.
I’ll buy another one and test it out, but if I were running SEEED, I’d want these boards back in my shop to find out what is going on…
I’m having this same issue – none of the examples change the TFT on my Wio Terminal.
I have found that if I do
digitalWrite(LCD_BACKLIGHT, HIGH);
Then I can at least get the LCD to turn on. (Without that, it is always completely off.) However, the screen only displays what was last written to it.
If I add something like a Serial.println() to the setup, I can see that in the serial console. But no changes to the screen ever show up.
If I load up the CircuitPython bootloader, though, that works fine, as the original poster had mentioned.
I ran your program and tried it, and it is possible to turn on and off the screen to display green. In this case, I suggest you to burn the wio terminal initialization program and try again. https://wiki.seeedstudio.com/Wio-Terminal-Firmware/
The screen worked with the jumper game and works with curcuit python programs
The backlight works and I can toggle it
None of the TFT_eSPI library commands or the Lovyan graphics library commands I have tried have any effect on the screen.
None of the example code updates the screen.
I have no additional libraries installed. I have only the default Arduino boards and the SEEED board that include the Wio Terminal installed.
The compilation log lists only a single Seeed LCD library for the display. adding or removing the separate TFT_eSPI library has no effect.
Installing and configuring the Arduino IDE on another machine has the same effect, I don’t see how this could be a library problem.
Any suggestions on how I could debug the issue would be appreciated. Can anyone can provide a compiled program that I could test on my hardware?
debug output
example program:
#include"TFT_eSPI.h"
TFT_eSPI tft;
void setup() {
// put your setup code here, to run once:
tft.begin();
tft.setRotation(3);
tft.fillScreen(tft.color565(255, 0, 0));
Serial.begin(115200);
while(!Serial); // Wait for Serial to be ready
Serial.println("setup() done");
}
void loop() {
// put your main code here, to run repeatedly:
}
last few lines of compile output:
Using library Seeed_Arduino_LCD at version 1.6.0 in folder: C:\Users\Spanner\AppData\Local\Arduino15\packages\Seeeduino\hardware\samd\1.8.5\libraries\Seeed_Arduino_LCD
Using library SPI at version 1.0 in folder: C:\Users\Spanner\AppData\Local\Arduino15\packages\Seeeduino\hardware\samd\1.8.5\libraries\SPI
Using library Adafruit Zero DMA Library at version 1.0.4 in folder: C:\Users\Spanner\AppData\Local\Arduino15\packages\Seeeduino\hardware\samd\1.8.5\libraries\Adafruit_ZeroDMA
"C:\\Users\\Spanner\\AppData\\Local\\Arduino15\\packages\\Seeeduino\\tools\\arm-none-eabi-gcc\\7-2017q4/bin/arm-none-eabi-size" -A "C:\\Users\\Spanner\\AppData\\Local\\arduino\\sketches\\74E180D89873E78ED5C530347C0138D4/most_basic_lcd_test.ino.elf"
Sketch uses 56280 bytes (11%) of program storage space. Maximum is 507904 bytes.
And Welcome here. WHat BSP have you used to compile with, you may need to roll back to an earlier one or check the TFT_eSPI. h Library version it’s been updated. the Old one only works with certain older BSP’s btw.