Waveshare ILI9486 TFT 3.5 INCH LCD DISPLAY not working on a MKR WIFI 1010 put on a MKR2UNO adapter

Hello!

I am new to Arduino world and I have a lot to learn!

I have a Waveshare ILI9486 TFT 3.5 INCH LCD DISPLAY and I want to get it working with the example from the code attached below to work on the following hardware:

I have a MKR WIFI 1010 and I put in on a MKR2UNO adapter.

I am using a MKR WIFI 1010 because I want to create an application where I can connect through IP to do some things that are not related to this topic.

The main thing I want to do right now is to make the display work on this MKR WIFI 1010 put on this MKR2UNO adapter using the examples attached in the link below. I did some wiring because apparently the shield will not go in because of MKR WIFI 1010's not letting it go in fully and I just connected the shield using wires. ( schematic below )

When I upload the sketch from Arduino to MKR WIFI 1010, the screen goes on, but being white, and after that it goes off.. not showing nothing... Is weird because on Arduino Uno is working perfectly fine. I also went on DEV_config.h and define my pins how I connected them on MKR2UNO adapter, but unfortunately I experienced the same thing; after uploading the sketch screen goes black, showing nothing.

What can I do in order to make it work on this configuration?

Sorry if this is not the correct thread.
If you need more information I am here to provide it to you!

Thank you for any kind of help!


I used the sketches found here: https://www.waveshare.com/wiki/File:3.5inch_TFT_Touch_Shield_Code.7z

You might be able to work around that with a set of Stacking Headers. These might raise up the Waveshare shield enough to clear the MKR WIFI 1010 board.

@laurianhurduza, Hi, welcome to the forum!

In the Displays section of the forum it is appreciated if you provide links to the display and devices in question, such as:
3.5inch Touch LCD Shield for Arduino (waveshare.com)

Please also read How to get the best out of this forum if you haven't done yet.

Your display uses SPI, with the same "special" SPI circuit as their RPi SPI displays.
I don't have this display yet, but I did a library for this kind of displays:
GitHub - ZinggJM/ILI9486_SPI: ILI9486_SPI for Arduino
You could give it a try. Note that it has no touch support.

Jean-Marc

Good afternoon sir!

Thank you so much for providing me the solution for my tiny problem with the shield, I really appreciate your help. I will take this in the consideration!

Good afternoon!

Thank you for providing me the library!
I will give it a try and keep you updated about the situation I am facing.

I would like do put more links in the message above, or more images, but unfortunately the forum has some rules that I cannot overcome for now: I cannot put more than one link and one image in my message so.. that's why I couldn't add them.. That is because I am new here.

@ZinggJM

Hello!

I am back with the feedback after using the library you provided.

The screen it's just flashing white and that is all... I attached a video below where you can see what it is doing.

Thank you for the feedback. As I don't have the same display, I can't help yet.
I do have a MKR1000, but not the MKR2UNO adapter.

You can still hope for other experts, if you provide as much information as possible.
For multiple links, you can just use multiple posts.

No problem!

Thank you for your help, I really appreciate it and I hope to fix this issue I am having soon!

I just tried to "read" the schematics of the MKR2UNO, but I am confused. The usual UNO SPI pins are not where I expect them to be. https://content.arduino.cc/assets/MKR2UNO_V3.0_sch.pdf
Maybe you need to use the ICSP pins for SPI, and close the switches on the display for ICSP.
But then there would be a conflict on pins D8 and D9.

Unlike the Arduino UNO, the MKR2UNO Adapter do NOT have I2C signals on A4 and A5 and SPI on pins 11, 12 and 13.

This is strange...

So, you say that I need to put the SCLK, MOSI and MISO pins from the display on the ICSP pins on MKR2UNO on where they belong in the schematics?

How exactly can I do this? Sorry for being noob, but I am still learning...

There are three jumper switches on the display for this, I think normally open.
Go have a look at the schematics of the display, Waveshare wiki documents well.
But it would not help, because:

I think you should wire your display directly to your processor, without the MKR2UNO.
If you get this working, then you could wire a proto-board for a final and stable solution.

Oh, so I need to try it directly on the MKR WIFI 1010 then...

That is unfortunate... but I will give it a try and I will keep you updated.

Thank you for your patience and tips!

No, I have not studied your MKR2UNO pinout.

But I would just guess that MOSI, SCK will be found on the 3x2 SPI header.
Make sure that the SPI_Config jumpers are open.

And you can use any GPIO pins for LCD_CS, LCD_DC, LCD_RST, LCD_BL. But obviously easier if you select the same ones as on the display.

David.

@ZinggJM

I didn't making it work on MKR WIFI 1010 unfortunately...

Hi @david_prentice
Thank you for your advice

Those jumpers are meant to be on the left where there are SCLK, MISO and MOSI.. as you say?

The switches should be in the ICSP position.

You should connect MOSI and SCK from the 3x2 ICSP header.

In an ideal world you would switch to ICSP position and plug display straight into the MKR2UNO . However the MKR WIFI 1010 will be in the way. You need "tall" sockets on the MKR2UNO.

Personally, I would just try "stacking headers" if you have some.. Or just use individual jumper cables i.e. for 3.3V, 5V, GND, D9-D7 and ICSP pins 3,4.
8 cables is not too daunting.

Thank you for your suggestions

I will try this tomorrow and I will give feedback as fast as possible!
( I am planning getting some stacking headers from a local shop )

@david_prentice
@ZinggJM

Thank you so much guys for your help!
Now my display is working just fine with MKR 1010 WIFI on the MKR2UNO adapter.

I just took the Waveshare library and modified the .cpp file in the src of the library and just put wires on the pins 5, 4, 3 and 2 for LCD_CS, LCD_BL, LCD_RST and LCD_DC, connected the 3.3V, 5V, GND, and ICSP header as well.

Looks like everything is working well.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.