STM32L4R9I-DISCO Discovery Kit - Review

Table of contents

RoadTest: STM32L4R9I-DISCO Discovery Kit

Author: gsgill112

Creation date:

Evaluation Type: Development Boards & Tools

Did you receive all parts the manufacturer stated would be included in the package?: True

What other parts do you consider comparable to this product?: My past experience with STM32L4 Nucleo Board with Nextion 3.2" LCD Display.

What were the biggest problems encountered?: Getting started with development on Kit, I.E. the learning curve for software tools.

Detailed Review:

INTRODUCTION

First of all, Thank You Element 14 Community to give me this awesome opportunity to RoadTest yet another awesome piece of hardware. This indeed was an exciting Roadtest and a solid product from ST.

 

Let's first go through a brief feature list of the STM32L4R9I-DISCO Development Board in "Whats in the Box Section"  

 

As you can see at this point, This kit is Serious business. It has almost Everything you need for for development of a Wearable, Industrial, Consumer Application. I have purposefully left out IoT as the one thing this board lacks is the communications department. But that being said as the kit do include an Arduino Rev3 compatible header, PMOD header, Microbus Click Module as well as STMOD+ header it isn't a big challenge adding functionality. (though you do need to buy them)

 

UNBOXING

So, here's an short unboxing video of the kit

 

DISASSEMBLY

I tried So hard but My curiosity of what's beneath the display and actually How thin the display is got me to Disassemble the kit to as much as I can

So, Here are some Images of the Kit, Display and the additional daughter boards that come along.

 

{gallery} STM32L4R9I-DISCO Disassembly

Full Front View of this Beautiful Beast

Full Back View of this Beautiful Beast

This sticker ?? I think This board was repaired for IDD measurement not working and then Fixed ? Any Chinese Readers ??

Without the sticker it is a Beautiful hardware (Notice it is a 6 Layer board with the layer indicator next to the joystick)

The Gorgeous 390x390px AMOLED display 

Brains behind the AMOLED Beauty (Notice the 4 Layer board ) Some serious stuff

As if the above was not good enough this sexy accessibility add-on board

Back side of the fanout board

Where's the AMOLED display

Thats Disassembly

Just the AMOLED Display and it is almost  < 1mm thick I mean WHATTT !!!

The display is from GVO Model No G1120TB103GF-MF2-B

The above ribbon cable with the Diamond pattern is the Capacitive Touch ribbon with its cute IC (FT2267 GKK 28098 If my eye sight is good )

Just for Fun it looked so beautiful I had to share this one.

 

 

 

OUT OF THE BOX DEMOS

Below are demos that come preprogrammed on the kit

 

{tabbedtable} Tab LabelTab Content
Out of the Box (OOB) DEMOS

First things First. Lets first look at the demos provided out of the box.

 

There are 3 Main Demos covering all the aspects of the board as well as the GUI showcase

 

The ST emWin Demo that is the default interface that you can see on the display, The TouchGFX is next on the list with some awesome Graphics capability and amazing game to demonstrate the ART functionality and lastly the EmbeddedWiz GUI that is a functional demonstration with couple of watch faces and static images bragging the capabilities (Though they also do support ART 2D accelerator that have not demonstrated that in the OOBD).

 

In Last I have also added the Audio Recording and playback capability. This board also supports Audio capability and I have tested it. Though I was not able to record it and hence not there in the below videos. But the kit do outputs a really good audio playback support (NO MP3 THOUGH).

STemWin DEMO

The ST emWin  OOB Demo It is developed by ST and is FREE to use as add on library.

 

TouchGFX DEMO

The TouchGfx OOB Demo, It is also owned by ST but is not free, a separate designer is required to be downloaded.

 

EmbeddedWiz DEMO

The EmbeddedWiz OOB Demo, another awesome GUI software Not affiliated to ST but is somewhat amazing.

 

Audio Record and Playback DEMO

Audio Record and Playback OOB Demo.

 

 

GUI - TOOLS FOR THE KIT

Below are demos that come preprogrammed on the kit

 

{tabbedtable} Tab LabelTab Content
GUI Development

There are a lot of GUI designing softwares available but few of them have the ART accelerator enabled.

 

In this Section I will be covering EmbeddedWiz, TouchGFX, STemWin and uLib as the major ones.

EmbeddedWiz

The First section is EmbeddedWiz.

Below are few demos of Embedded Wiz

 

This is all Objective Drag and configure Kinna interface and it auto generates the code. But I found the learning curve to be a steep one. Though it is really effective and you can build some really Awesome GUI's.

 

 

Download EmbeddedWiz HERE

 

 

 

 

 

Next lets see the Interface we get with Embedded Wiz. As I was saying it is all visual based GUI no programming needed

The Main screen with a helloWorld Project Loaded. You can see the objects required for a simple project and on the right you can see the object interactions and calls.

 

Diving into an object revels its events and resources It is analogous to Functions inside a Class .

 

Here you can see the Application object with the GUI and on left a set of dead and drop components to build your GUI

ST TouchGFX

The Second section is TouchGFX.

 

Touch GFX is more next with less learning curve and you can create some really impressive GUI.

But it is on the pricer side; So ; Compromises everywhere.

 

TouchGFX is owned by ST so .. You know what I am thinking.. .. Why not make a free version Though I can understand ST needs to make some money too

 

Initially I did face some issues as even the eval version is not a free download, you need to register and wait for them to  send you a download link, which they did not send, but after a while I finally did get the link and try it

 

Download TuchGFX Here

 

 

Everyone likes Awesome SplashScreen

The basic Screen. It is much More intuitive and east to work with.

It has many templates to choose from, just like android design studio.

 

as you can see it is Really easy to get started and has an PC based simulator also AWESOME !!!

 

And Output on a PC Simulator

ST emWin

The Third section is STemWin.

 

This is like a set of libraries given and is really promising. Though prior knowledge of C and some serious function calls are required.

You have all the basic functions like showing a picture drawing objects and fonts are pre defines and is simple to use with simple function calls.

 

Moreover it is completely FREE FREE FREE FREE !!!!!! !!!!!

(Don't imagine anything great and animated, and no drag and drop or Visual GUI present )

 

Download CubeL4 to get this library or Click HERE

 

<Video subject to if you guys need to see it. Comment below>

 

StemWin as a part of Cube L4 package. Note It has GUI design Tool, All other font Generator Tools and a Hefty documentation All that is needed

 

Tools that this baby come with

 

Straight forward Drag and drop GUI programming , Note It has a property tab, and all properties needs to be added manually. By default only the component properties are shown.

LittleGL

Web HERE

 

It seams to be a really promising library.

I am yet to get it functional !!

 

Tutorial HERE for those playing along

OTHERS

There are loads of other FREE and promising Libraries but Those will take a while testing them out

 

1. https://ugfx.io/  uGFX Library

2. https://embeddedlightning.com/ugui/   uGUI Library

3. http://www.minigui.org miniGUI Library

 

 

These were the top of my list.

 

SOFTWARE TOOLS FOR THE KIT

Below are demos that come preprogrammed on the kit

 

{tabbedtable} Tab LabelTab Content
Software Development Tools

Any Hardware is only as good as the Software development tools and the debugging tools available. So, lets explore the software development tools available for the kit.

 

Now as we are talking about ST one of the biggest Semiconductor Manufacturers, So I do hope a rich support and development experience.

 

Finally One last thing I want to talk about is, IF you are familiar with ST development bundles like Cube Series , It will be a charm getting started, or else you have to struggle to get started. The examples are documented but are somewhat complicated using plethora of modules. There arnt simple getting started blinky kinna applications as examples; ST figures you can do it yourself . That being said if you get a hand of the software, You will rock up ST portfolio

ST Cube MX

The first on the list is ST Cube MX. This is one of the coolest Auto software generators; I still rank the Cypress PSoC Creator as the first one You can select an individual pin and configure the role of an individual pin without writing any code, AWESOME.

 

--   You can also configure the Clock and basic peripherals; Again without writing any piece of code

--   It requires an active internet connection so No OFFLINE mode there

--   You can select the Part as per the requirement That cool. 

 

After entering the part number I was given a list of choices of Parts to select for and also the Discovery kit as well as Evaluation kit versions to select from. (This kit has the board definition files for the manufactured kit, so no need to worrying about what peripheral is connected where in the dev board)

 

I selected the STM32L4R9I-DISCO kit and selected to configure all the peripheral modes to default

 

Now, No wonder How much I tried, I was not able to get the GRAPHICS and display interface working. I HOPE SOMEONE CAN HELP ME HERE !!

 

But I was able to export the basic application configured and autogenerated by Cube MX, and then imported to SW4STM32 Studio and modified for LED Blink

 

Download CubeMX HERE

 

{gallery} STM32 CUBE MX

Was not able to get it working Some OCTOSPI configuration error.

ST Cube L4

ST CubeL4 sounds like it is another additional package that would co install to Cube MX but it is nothing like it.

 

Cube L4 is basically a Zip of Lower layer lib, BSP, Middleware, and useful libraries custom tailored to the L4 family. It includes all the main L4 and L4+ dev boards with examples and applications examples (Pre Compiled)

It also includes some Utilities as well as Documentation to getting started.

 

I think St should also include "How to read the documentation" in a Documentation help folder (JUST KIDDING)

 

All examples are neatly classified and fully documented with extensive comments.

 

The only complaint I have is that All the A6 STM32 Studio projects are referenced. I.e. id I import an project It doesn't copy all the files to my workspace, It just references it. So , If you screw a *.c file its pretty much permanent and you need to re extract the entire Cube L4 for getting the original one back .That being said, The libraries are really easy to use with their own documentations

 

Thumbs Up ST

 

Download Cube L4 Here

 

{gallery} Cube L4

Attollic TrueSTUDIO

Well recently bought by ST I think it is in a right approach to get an ST IDE like all other companies have (CCStudio TI, MCUXPresso NXP, SimplicityStudio SiliconLabs, etc You got what I am saying)

 

Though it has been updated and does support the On Board MCU as highlighted below, but it does not support the actual Discovery Kit. It only supports the similar slightly old kit i.e. the STM32L4R9I-EVAL kit again as shown in the image below.

 

I still downloaded the IDE and it is like what you would expect a Eclipse based IDE so Keep Going ST hopefully we will have an IDE just for ST ecosystem.

 

Download Attollic trueStudio Here

ARM MBed

Well It is a shame, as soon as you connect the kit to the computer you get the familiar mBed Mass storage device and device information in there. This got me really excited as the board is supported by mBed Awesome.

but Whan Whan Whan .  . . .

 

Nup Only the DISCO-L496AG is officially supported as of now. St might be working on a port but let's hope it turns out to be great.

 

Now as the device is different in this Discovery kit, You cant use it with mBed in any useful manner. (I am to talking about Bliky apps )

 

Arm mBed Link

MDK ARM Keil

ARM actually gives out Keil for ST F0 and L0 family free ::ThinkinG:: I should get couple of those BluePills online (I mean these nasty STM32F0 based cheep dev boards commonly referred as BluePills)

 

Coming on to the kit on review, as no surprise the STM32 Cube L4 supports Keil but surprisingly, Kiel does not support the STM32L4+ series So you need to rely on the cube examples as a base point. All the linker scripts are also included in the Cube L4 so Yup.

 

I haven't tried Keil due to it not being FREE but an Evaluation version I tried as part of an online MOOC with Ti TivaC ARM F4 ; Keil is a pretty good IDE none of those Eclipse Crap. Do mind that it is only available for Windows

 

So if you are into Keil and have a lic file. Go ahead the kit is supported  

 

Download ARM Keil HERE

 

 

IAR Systems EWARM

Just like Keil I haven't used IAR for this kit, but I have had past experiences and  this is also a pretty good IDE (Again not based on Eclipse) but IAR has better debugging toolset.

 

The MCU on the STM32L4R9I-Disco is fully supported by IAR and will come with examples to get started.

 

Moreover All the Cube L4 examples are also supported by IAR so No worries there. I think IAR is extensively used by ST for their projects

 

Download ST IAR WEARM HERE

ST A6 SW4STM32 Studio

Well Well, Last but not the least, we have ST A6 SW4STM32 Studio. It is like a community initiative supported by ST and developed by A6. It is the most awesomest IDE as it is based on Eclipse. and has all the tools required including OpenOCD for programming and debugging ST link.

 

It has GNUARM tools preinstalled and is really easy to work with.

 

You can either download the middle ware libraries in the form of L4 middleware using the ST A6 SW4STM32 Studio or rely on the Cube L4 downloaded from ST. The ST A6 SW4STM32 Studio automatically downloads the middleware and Lower layers libraries and files from ST (You cannot Download the Cube L4 and replace !!) Though it is worth mentioning that the Download process is not particularly great. It took me couple of attempts and a really reliable Nw connection to finally make it and getting running.

 

I have done all my testing using this IDE and I can say it is more than enough for what you need.

 

You can run the same in Linux, MAC as well as the Windows So pretty Cool. And It supports all the ST ARM portfolio as well as all Cube Series.

 

I highly recommend this IDE if you want to try out any st kit. St Cube L4 has all examples necessary to get started.

 

The issues I faced was

--   that all example in ST Cube L4 is given by "Stm32l4r9i-Discovery" so you can only run one example at a time

--   All example are referenced i.e. all the files are soft link and it does not copt the examples into the workspace. So you have to be careful before going further in code

 

 

Download  ST A6 SW4STM32 Studio Here

 

 

 

INITIAL PROBLEMS FACED AND FIX

 

PROBLEM NO 1 : External Loader Configuration Files Missing [FIXED]

So, I wanted to try out the example pre compiled binaries (As in the Videos above). So I did what ST said. I downloaded the STM32 ST Link Utility (Latest version <ver 4.2.0>) which said it supported the STM32L4R9IIA MCU. To my surprise The demo applications were huge some about ~100+ Mb huge !! So, to program the device we needed to set up an External Loader to load the program on the MX25M51245G external flash.

 

As expected there was "MX25M51245G_STM32L4R9I-DISCO" file there and I selected that and started the flashing process and It failed . After digging for some more I found out the issue. The Issue was that the device size on the above configuration was 32MB so the file was not fitting into the space. The resolution was this link I found on TouchGFX form from where I download "MX25M51245G_STM32L4R9I-DISCO-OSPI1" which had the device size of 64MB with the start address.

 

Although It said that ST Link ver 4.2.0 had this file included I did manually had to add it. Since then, No issue programming the kit

 

PROBLEM NO 2 : Slow Programming Rate

Another thing worth mentioning was the slow programming time, I have spoken about the issue in one of my video, So as the Kit uses SWD protocol to program the device which is serial protocol, it takes a hell lot time to program the device.

 

For example to program the example demo application it took me about 40-45 Min (including the verification) So have a COFFEE handy One Solution would be to use ARM JTAG to program which would be significantly faster

 

 

POWER ANALYSIS OF THE KIT

OK Down to some Power analysis

 

PLAYING WITH THE KIT & DISPLAY

Now what's the use of an awesome embedded kit if you cant program and play with it .

So I found an example application and was how to get my own image on it

So I started off by some modification, the kit used an RGB888 24 bit format as 8 bit values in an C array and No Alpha plane.

So ..

 

My first attempt was not quite it

but hey at least the LCD turned on , not that bad ..

Second attempt I tried online tools to get an RGB888 formatted image but I think it added an A layer

So I searched further and downloaded a tool called bmp2c gave it a try ..

I am pretty sure it said RGB888 format but didn't know what went wrong here .. Still Kept my hopes high as At least I got a Greyscale image

So, Finally I got to LCD Image Convertor Software all problems solved

 

DOWNLOAD  LCD Image Convertor HERE

 

Now the initial results were kinna same as above but after few configuration changes given below, things worked out perfectly  

 

1. Convert image to 390x390 resolution

2. load the image into the software

3. Configure the RGB format as below

4.  Change the output bit size to 8 bits as shown below

5. Check the bit sequence is correct

 

after this Convert the image a <imagename>.c file will be generated. Add that to your project and parse the image array to the LCD function and you get this

 

Cant just stop at this now can we

And finally , Cant forget the Community that has sent the kit for testing

 

Clubbing the 2 images and adding delay with fade effect = Nerdy Cool

 

CONCLUSION

So lets first see the video

 

Now in future, I would like to explore the PMOD+, micro click, Groove , etc expansion slots and to complete my cycle project .

 

 

I was abel to compile basic app skeleton for the kit, as an import to workspace without any references. Will post it on my GitHub soon. That should be basic starting point to develop apps for this kit further (for the System Workbench A6) 

 

Till then Hope you liked the review.

Please comment anything else you would want to know about the kit.

 

Please visit me at gsgill112.github.io and subscribe to my youtube channel it helps

 

 

Thanks and Regards,

GS Gill

 

P.S> Special thanks to for giving me an opportunity to Roadtest this kit. Thanks. 

Anonymous