Skip to main content
Associate II
December 22, 2023
Question

How to set the the repository STM32Cube_FW_H7_V1.11.1 in a SEGGER example from the 11.0

  • December 22, 2023
  • 14 replies
  • 4253 views

As sure many of you know, the actual STM32H747i-disco can with a different display, so dont work with the examples in the 11.0 repository.

But work perfect in the 11.1 if you set in the stm32h747i_discovery_conf.h

/* LCD controllers defines */

#define USE_LCD_CTRL_OTM8009A 0U

#define USE_LCD_CTRL_NT35510 1U

#define USE_LCD_CTRL_ADV7533 0U

 

But I can not find a smart way to modify the Segger examples from the 11.0 to make it work with the new display.

In other words. how I can replace the repository files from an older version example to work with the new firmware package.

Thanks and sorry if this issue was resolved previously

This topic has been closed for replies.

14 replies

Technical Moderator
December 22, 2023

Hello @ManuelOV 

Could you explain what it means Seggle example in Cube?

 

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.Best regards,FBL
Tesla DeLorean
Guru
December 22, 2023

Assuming Segger, and emWin / STemWin type video middleware..

Tips, Buy me a coffee, or three.. PayPal VenmoUp vote any posts that you find helpful, it shows what's working..
ManuelOVAuthor
Associate II
December 22, 2023

Absolutely, most of the StemWin dont work on my STM32H747i/disco with MB1166 RevA09

 

Thanks

ManuelOVAuthor
Associate II
December 22, 2023

Found the Segger examples in the STM32Cube_FW_H7_V1.11.1. was an error, and all of then have included the new display

 

The Segger samples are located here.

STM32Cube\Repository\STM32Cube_FW_H7_V1.11.1\Projects\STM32H747I-DISCO\Applications\STemWin

 

Thanks to both of you for your time.

 

BTW some of you have wrote previously some application using Ethernet with this board? do you knw if there are some good guide/book/Example to learn how to write ethernet comms with this board?

ManuelOVAuthor
Associate II
December 23, 2023

This morning, I has been working with the segger examples in the repositorio, and unfortunately dont work most of them. Same problem than before even when I set in the conf file the apropiate setting

#define USE_LCD_CTRL_OTM8009A 0U
#define USE_LCD_CTRL_NT35510 1U
#define USE_LCD_CTRL_ADV7533 0U

Some idea? some of you did work the examples?

Thanks

Technical Moderator
December 26, 2023

> BTW some of you have wrote previously some application using Ethernet with this board? do you knw if there are some good guide/book/Example to learn how to write ethernet comms with this board?

Here is an example stm32-hotspot/STM32H7-LwIP-Examples: Ethernet examples using LwIP + FreeRTOS for STM32H7 Discovery and Nucleo boards (github.com)

 

Regarding the issue of USE_LCD_CTRL_NT35510, could you elaborate the symptoms? Maybe this link would be helpful

Update STM32H747I-DISC BSP board drivers to support LCD based on nt35… · STMicroelectronics/STM32CubeH7@1c84713 (github.com)

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.Best regards,FBL
ManuelOVAuthor
Associate II
December 26, 2023

Thanks.

About the NT35510, this morning, I open a new thread about it, just as this was open cause I dont found the STenWin files with the appropriate new settings for the Board STM32H747i-DISCO with this NT35510 display.

But I will be glad to write here for you a simple example about what is happen.

In my board and with the last FW 1.11.1 the LCD samples work few of them, and I can life with this problem, just because I prefer use the STemWin just as I hope they will use the graphic Accelerator. IN the LCD samples all the graphics are done manually.

But, unfortunately  the most simple example, does not work, I talk about the hello world, if you open the example, build it, and send to the board, really you can see "HELLO WORD" in the screen, but if you for example modify the source and include in the maintask a loop to write few other "words" in different places in the screen dot will work, no matter if you set a pause, or call exec or exec1, no way to make it work, only will see in your display the first or maybe two "words" and nothing more.

If you prefer dont write the loop, you can load the examples from segger, and you will got the same problem, if the example try to write several thing in a loop, only the first will be written/showed, but nothing more.

Sure is a easy bug, but I have been looking for the bug this weekend and no success.

THANKS a lot and MerryXmas

ManuelOVAuthor
Associate II
December 26, 2023

Dear Mr. Belaid

Regarding the "Here is an example stm32-hotspot/STM32H7-LwIP-Examples: Ethernet examples using LwIP + FreeRTOS for STM32H7 Discovery and Nucleo boards (github.com)" There are some kind of documentation about what this sample do, or even better about how to implement (write) a ethernet application using the STM drivers library?

I am really loved with the MCU but in the same way I am really disappointed about the documentation to make it work and let us develop software for it. after two weeks of been 8 hours per day with the development environment, I really feel hard find doc. I dont find step by step samples for nothing even the most simple task.

Anyhow thanks for your help and please if I am in an error and really there are guides and documentation, please let me know. maybe even there are some post with the STEP by STEP guide for this MCUs and is my fault. but after two weeks as I say before I have not found the "roseta" stone

ManuelOVAuthor
Associate II
December 27, 2023

Dear. as far I learn more fails I found in the samples supplied in the repository.

Please take contact to let me know what I must to do, if send you the bugs, contact with other people, write here, write the source code bugs in other post?

I am new here and dont know how do you manage the errors in the repository, and who is in charge of.

Thanks

Pavel A.
Super User
December 28, 2023

Hi @ManuelOV

The ethernet LwIP examples in the "hotspot" repository are LwIP version of well known iPerf server program. It is used to evaluate performance of network links using TCP.

As to reporting bugs , please see here. You can also post in this forum if you believe there's an error. Someone eventually will notice and reply. 

 

ManuelOVAuthor
Associate II
December 28, 2023

I have send this modifications to the place you point me.

Yesterday I did and let use the new display, any how the util library, do no work in both frame buffer, and must be modified to work ok, I dont know if you prefer I did it, or as far as someone is in charge of this repository is enought, to let him, the library do not write in the active frame buffer only in one of them, need take care about what is the active buffer.

Modifications in LCD_DSI_CmdMode_DoubleBuffer file->main.c in LCD_DSI_Cmd_DoubleBuffer_CM7

Line 283

#if (USE_LCD_CTRL_NT35510 > 0) // ADDED
NT35510_IO_t IOCtx; // ADDED
static NT35510_Object_t LCD_Obj; // ADDED and modified variable name
#endif /* USE_LCD_CTRL_NT35510 */ // ADDED

#if (USE_LCD_CTRL_OTM8009A > 0)
OTM8009A_IO_t IOCtx;
static OTM8009A_Object_t LCD_Obj; // Modified variable name
#endif /* USE_LCD_CTRL_OTM8009A */


Line 383
IOCtx.Address = 0;
IOCtx.GetTick = BSP_GetTick;
IOCtx.WriteReg = DSI_IO_Write;
IOCtx.ReadReg = DSI_IO_Read;
OTM8009A_RegisterBusIO(&LCD_Obj, &IOCtx); // MOdified variable name
Lcd_CompObj=(&LCD_Obj); // MOdified variable name
OTM8009A_Init(Lcd_CompObj, OTM8009A_COLMOD_RGB888, LCD_ORIENTATION_LANDSCAPE);