I wonder if somebody worked with nucleo boards

I have a few mcufriend TFT screens which work fine on arduino, nucleo has arduino uno compatible connector.

I wonder if somebody managed to get those screens working on nucleo

Which Nucleo board(s)?

The MapleCore from Roger Clark only supports the Nucleo-F103
The ST Core from ST Microelectronics supports several Nucleo and Discovery boards.

I would expect ST to add more boards. It is unlikely that the MapleCore will ever support modern STM32 chips.

The MCUFRIEND_kbv Beta on GitHub should run on all the supported TQFP-64 Nucleo boards.

No one has ever asked for the TQFP-144 boards.
In fact I think only one person has ever asked for F401, F411


I have nucleo STM32F446, the mcufriend TFT fits nicely, I have been looking around for some demo program to test

nothing works so far

Ah-ha. I do not have that one. I might buy the NUCLEO-F446ZE because I do not own any 144 pin Nucleos. Farnell have them in stock.

Do you have the 446RE or 446ZE ?


I have 446RE

there is plug in for arduino EDI, which is supposed to compile code for nucleo boards.

but any TFT library I tried did not work, the error message I see shows no support for STM32

but on other had in the big mcfriend zip file, I got from guy selling it on ebay, I see entries STM32 like there is something

I see the files with extension .h and .s which start with the name stm32 but I am not so good to know how to use it.

I have just ordered a NUCLEO-F446RE. It is Friday. So it might not arrive tomorrow.

Yes. Run the Arduino Boards Manager. Install the "ST Cores" from ST Microelectronics".

Most regular Arduino sketches should run out of the box. Sketches that are dependent on hardware might need to be "slowed down" for the 180MHz F_CPU.

When my F446RE has arrived, I will add support to the MCUFRIEND_kbv Beta on GitHub and verify that the examples work. Then I will probably issue the pending Release. So it is available through the Library Manager. Do not trust guy selling it on ebay

Note that ILI9320 class of controllers can not run as fast as MIPI controllers like ILI9341, ILI9486, ...


well it is big zip file 20 MB, I doubt I can post it here, there are bunch of those h files with entries like this

/* #define STM32F10X_LD / /!< STM32F10X_LD: STM32 Low density devices /
#define STM32F10X_LD_VL / /!< STM32F10X_LD_VL: STM32 Low density Value Line devices /
#define STM32F10X_MD / /!< STM32F10X_MD: STM32 Medium density devices /
#define STM32F10X_MD_VL / /!< STM32F10X_MD_VL: STM32 Medium density Value Line devices /
#define STM32F10X_HD / /!< STM32F10X_HD: STM32 High density devices /
#define STM32F10X_HD_VL / /!< STM32F10X_HD_VL: STM32 High density value line devices /
#define STM32F10X_XL / /!< STM32F10X_XL: STM32 XL-density devices /
#define STM32F10X_CL / /!< STM32F10X_CL: STM32 Connectivity line devices */

I wish I was better in C programming to figure it out.

I see there is soemthing, it is together with adafruid files / libraries

But the nucleo board is really interesting, it would be amazing to get the TFT working

I do have the "ST Cores" from ST Microelectronics". installed already, I managed only to get the LED blink program to work so far on Nucleo,

Which Nucleo boards do you have?

You should not need anything technical to get going with standard Arduino examples. Or standard MBED examples. Try them. Ask if you have a problem. Make sure that you quote library version, example, wiring, ...

However TFT libraries tend to need low level access to achieve performance. It is unlikely that something written for a Uno will run immediately on Due or Nucleo unless it sticks religiously to digitalWrite().
It is surprising how easy it is to get a SPI or I2C device up and running on a new target.


I have STM32F446RE

see picture

I am surprised that STM does not have anything for TFT, I have the 3.5 inch touch from mcufiend, it plugs nicely into to board

Somebody said nucleo-144?

The main trouble is the pinuot manage on the nucleo boards and its compatibility with the pinout of the arduino boards but at level of the AVR core nomenclature. The nucleo boards have ARM cores inside.

Unfortunately such kind of boards have limited support. Many hours and only white screens >:(

But not all is lost!

Recently we our team has work it hard in order to manage TFT´s like the FT81X, on the IDE arduino, through the generic core of danieleff on the nucleo F767Z board. Many hours inverted, sleeplessness, but this is the result:

Arduino IDE 18.0
STM32 core: generic of danieleff
library: gameduino 2/3 modified for STM32
MCU: nucleo F767ZI
TFT: NHD 5" FT813 800x480

PD: our library it's free, nothing of commercial relationships with the TFT makers, only for the fun :slight_smile: like the David's work on the arduino forum.

There is little point in posting a JPEG of your Nucleo board. Everyone knows what a Nucleo-F446RE looks like.

The Mcufriend Uno Shields mate directly with Nucleo64 and Nucleo144 headers.

Your NHD display contains an intelligent CPU. You just send high-level commands via SPI or otherwise.
Simple interface but you need to provide the hardware adapter board to mate with the Nucleo.

I would guess you get stunning graphics, fonts, text, ... Plotting individual pixels will be arduous.
Much like RA8875.

I have made a 40-pin SSD1963 display adapter with a BluePill and protoboard. The BluePill can do the local graphics. And receive high-level commands like your FT813.


I saw TFT screen wired to Nucleo, I was hoping I can get the mcufirend screen working.

Why would they make connector compatible with arduino if you cannot get the TFT working.

I just got today arduino due today but I cannot install the USB diver it keeps saying "the device cannot start code 10"

I tired on Win 10 and XP the same error, I do not see any updated driver or any solution.

They sell arduino due but how people get it connected ?

Mcufriend shields plug into the Arduino header sockets as Nature intended. Do NOT use flying leads.

I suggest that you delete your Ebay guy library. Install via the Library Manager. Examples should run on Uno, Due, Nucleo-F103, ...

Wait for a few days. The new Release will run on your F446RE. The Library Manager will Update to the new Release.

If you are having a problem, provide version details, example name, ...
And the exact steps that you made.

Then someone can walk you through any solution.


It would be cool to have TFT library for F446RE, I guess for somebody with the know how it is easy job.

As for DUE I am close to give up, it will just not install the USB driver. It keeps saying "the device cannot be started error 10".

First off. Take pencil and paper and write down each step as you make it.

Install the Arduino IDE from the official site i.e. Arduino.cc
There is no need to be exactly the latest. Anything recent should be fine.

This should work immediately for Uno, Mega2560, ...

Run the Boards Manager. Install the Due.
Run the Library Manager. Install Adafuit_GFX, MCUFRIEND_kbv

Post a link to the actual Due board that you have bought. e.g. the Ebay sale.

Run the standard Arduino examples e.g. Blinky, AsciiTable, ...

I would definitely start with Uno. Gain familiarity with the examples building and running on the Uno.
The Due is well supported. Everything should work much the same.

STM32 boards are not so straightforward. The ST Core from ST Microelectronics works well.
But the BluePill enthusiasts tend to use the Maple Core. Many of their examples only run on Maple Core.


My Nucleo-F446RE arrived yesterday. It works fine with the ST Core from ST Microelectronics. Install it via the Boards Manager.

I have just released v2.9.8 of MCUFRIEND_kbv library. Update with the Library Manager.
If you have been using a hacked or Beta version, delete the directory and install new version from scratch.

The F446 is too fast for ILI9320 class of controller. MIPI controllers should be fine. Shout if you have a problem.


did you use arduino IDE for the Nucleo? will it work with some of the examples like the Glue Demo 480 x 320

Yes, install from the Boards Manager. i.e. Tools->Board->Boards Manager

Everything works nicely with the STM32 Cores from ST-Microelectronics version 1.2.0

Why do you want to run a GLUE Demo?


I just want to load anything to see if it works so far no luck

I am getting errors on compilation for F446RE

Arduino\libraries\MCUFRIEND_kbv/MCUFRIEND_kbv.h:16:26: fatal error: Adafruit_GFX.h: No such file or directory

it seems to be calling for Adafruit_GFX.h

Do I need to install the Adafruit libraries ?