BRT Community

General Category => Discussion - EVE => Topic started by: mattF on February 17, 2022, 02:05:01 PM

Title: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: mattF on February 17, 2022, 02:05:01 PM
Hello Fellow Bridgetek Users,

For a new project I have elected to use a Riverdi 7" capacitive touch display that has a BT817Q.
For reference these are links to the display and STM32 Eval board.
https://riverdi.com/product/eve4-intelligent-display-rvt70hsbfwca0-7-inch-projected-capacitive-touch-panel-air-bonding-atouch-frame/
https://riverdi.com/product/stm32-evaluation-board/

So far I have been following a user guide for Riverdi's STM32 board on how to connect PC to STM32 and STM32 to 7" inch display over a USB to SPI bridge.
My issue is that no matter the jumper configuration our display is not appearing under the devices tab in screen editor.
The users guide shows that this device should appear as RS232 HS() in screen editor, but it only appears this way under device manager.

An initial thought was that the issue may have been admin/firewall settings but I tested this on an alternate PC with all privileges with no success.

Any and all help is appreciated.
Thank you,
MattF
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: BRT Community on February 17, 2022, 04:35:34 PM
Hello,

Thank you for your question.

I have reviewed the schematic of the module you are using and irrespective of the jumper settings the FT2232H included the device should appear in EVE Screen Editor.

I note the device appears correctly in device manager, this indicates there are no HW issues, and in this case using the 'Refresh Device List' button should allow the device to appear.
Could you clarify which version of EVE screen Designer you are using?

Best Regards,
BRT Community

Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: mattF on February 17, 2022, 05:31:15 PM
Thank you for the quick response!
We are using EVE screen editor version v4.2.0.
We haven't used screen designer but we have version 4.5 installed.

In screen editor program, the refresh device button has had no affect on the device list when our STM32/BT817Q are connected.

I am open to using either Editor or Designer program for our future GUI designs.
Although Editor seems like the better option since Designer will not have compatible libraries for STM32 from my understanding.

-MattF
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: BRT Community on February 21, 2022, 12:04:29 PM
Hello,

Thank you for the details, I must apologies I mistyped when asking for the ESD version, i did mean to ask for the ESE version.

I have tested with ESE 4.2.0 and found that an MPSSE device should appear in the devices tab, irrespective of an EVE device being connected to its SPI signals.

Is this behavior repeatable across different host PCs?
Could you please let me know the path that ESE is installed on your host PC?


And just to clarify yes, you are correct ESD does not natively support the STM32, however we do have a porting guide available for ESD projects to the STM32:
https://brtchip.com/wp-content/uploads/2021/06/ESD-4.10-Exported-Project-Porting-Guide-for-STM32L4-Discovery-Board-and-FreeRTOS.pdf (https://brtchip.com/wp-content/uploads/2021/06/ESD-4.10-Exported-Project-Porting-Guide-for-STM32L4-Discovery-Board-and-FreeRTOS.pdf)

The other development approach would be to utilize ESE to create static displays and then copy these display lists into a lower level STM32 EVE library where you can then program any screen logic required,

Best Regards,
BRT Community
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: mattF on February 22, 2022, 02:22:49 PM
Hello,

I have tested this version of ESE with duplicates of the same STM32 Evaluation board and Riverdi EVE 4 module across 3 separate PCs.
The install path is C:\Users\Public\Documents\EVE Screen Editor.

I am hoping to get the ESE up and running for faster GUI development. In the meantime I plan to start a project using the ESD.
wen developing on the ESD with my specific hardware environment, should I begin with a simple GUI developed offline then follow the porting guide to implement it onto my STM32?

Thank you,
MattF
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: BRT Community on February 22, 2022, 04:44:35 PM
Hello,

Thank you for the clarification, I am going to ask the development team if they have one of these modules to hand to test with.

I’d suggest to port over one of the examples provided with ESDin its original form (e.g. a simple one like SimpleButton) first and then look at creating the final application. This will allow you to try the porting with a known working example.

Best Regards,
BRT Community
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: mattF on March 10, 2022, 07:09:28 PM
Hello,

I figured out the issue with connecting our STM dev board and Riverdi eve 4 display, it was a missing driver from FTDI.
https://ftdichip.com/drivers/d2xx-drivers/

Now, I am running into to some trouble trying to get a STM32 mcu to flash a RVT70HSBFWCA0 display
I have a RVT70HSBFWCA0 display with a BT817Q display chip. We are using the EVE screen designer tool 4.2.0 to design a GUI for the display.
We are looking to have an STM32 chip talk to the display over SPI to show this GUI and then if a button is pressed on the screen the STM32 will send a character over UART to another device.
I have exported the EVE screen designer project as an eclipse project, then brought it over to a STM32CUBEIDE project and I running into trouble on how to implement the eclipse export to the STM32 project. It appears that it is meant for another chip? Is there a way so it builds the project for STM32?

I have setup another STM32 project with https://github.com/riverdi/riverdi-eve files wired it up and got it to display the logo and the bouncing ball on the screen.
I did change the SPI init function and CS/PD pins in for the STM32 dev board I am using.

Thank You for your time!
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: BRT Community on March 11, 2022, 10:54:09 AM
Hello,

Thank you for the update, I'm glad you have resolved the issue with the FT232H.

Yes ESD is intended to be utilized with our own FT9xx series of MCUs, as such you would need to port any project from ESD to your desired MCU.
We do have the following example available which covers porting ESD projects to the STM32:
ESD 4.10 Exported Project Porting
Guide for STM32L4 Discovery Board
and FreeRTOS (https://brtchip.com/ic-module/wp-content/uploads/sites/3/2022/02/BRT_AN_073-ESD4.10.pdf)

Alternately I can provide a lower level STM32 library if you desire, but this is not compatible with the ESD framework and would require you to manually program screens and any associated screen logic.

Best Regards,
BRT Community
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: macioknor on March 29, 2022, 06:29:59 PM
Hello,

Thank you for the update, I'm glad you have resolved the issue with the FT232H.

Yes ESD is intended to be utilized with our own FT9xx series of MCUs, as such you would need to port any project from ESD to your desired MCU.
We do have the following example available which covers porting ESD projects to the STM32:
ESD 4.10 Exported Project Porting
Guide for STM32L4 Discovery Board
and FreeRTOS (https://brtchip.com/ic-module/wp-content/uploads/sites/3/2022/02/BRT_AN_073-ESD4.10.pdf)

Alternately I can provide a lower level STM32 library if you desire, but this is not compatible with the ESD framework and would require you to manually program screens and any associated screen logic.

Best Regards,
BRT Community

Hello,
there is the possibility to add the whole example project (Guide to STM32) to the GitHub repo or as attachment here? It will be easier to try this example than doing this step by step:)
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: macioknor on March 30, 2022, 10:18:15 AM
Hello,

Thank you for the update, I'm glad you have resolved the issue with the FT232H.

Yes ESD is intended to be utilized with our own FT9xx series of MCUs, as such you would need to port any project from ESD to your desired MCU.
We do have the following example available which covers porting ESD projects to the STM32:
ESD 4.10 Exported Project Porting
Guide for STM32L4 Discovery Board
and FreeRTOS (https://brtchip.com/ic-module/wp-content/uploads/sites/3/2022/02/BRT_AN_073-ESD4.10.pdf)

Alternately I can provide a lower level STM32 library if you desire, but this is not compatible with the ESD framework and would require you to manually program screens and any associated screen logic.

Best Regards,
BRT Community

Hello,
there is the possibility to add the whole example project (Guide to STM32) to the GitHub repo or as attachment here? It will be easier to try this example than doing this step by step:)

For example, chapter 5 Interrupt handling example whole project which can be imported to STM cube IDE and built will be really helpful. I hit a lot of issues during the build with variadic functions eg: ESD_METHOD, the second question what is the purpose of using all these variadic function as METHOD, PARAMETER etc? :)
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: BRT Community on March 30, 2022, 03:18:07 PM
Hello,

Thank you for your post.


For example, chapter 5 Interrupt handling example whole project which can be imported to STM cube IDE and built will be really helpful. I hit a lot of issues during the build with variadic functions eg: ESD_METHOD, the second question what is the purpose of using all these variadic function as METHOD, PARAMETER etc? :)

Unfortunately the file size limit on the forum prevents me from attaching the examples, I can forward the files to you via a file sharing service if this is acceptable?

On the variadic function point, i would need to clarify with the developers why the ESD framework utilises these. If this is an significant issue i can forward you a lower level STM32 library for EVE which does not use variadic functions, however this is not compatible with ESD.

Best Regards,
BRT Community
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: macioknor on March 30, 2022, 04:00:39 PM
Hello,

Thank you for your post.


For example, chapter 5 Interrupt handling example whole project which can be imported to STM cube IDE and built will be really helpful. I hit a lot of issues during the build with variadic functions eg: ESD_METHOD, the second question what is the purpose of using all these variadic function as METHOD, PARAMETER etc? :)

Unfortunately the file size limit on the forum prevents me from attaching the examples, I can forward the files to you via a file sharing service if this is acceptable?

On the variadic function point, i would need to clarify with the developers why the ESD framework utilises these. If this is an significant issue i can forward you a lower level STM32 library for EVE which does not use variadic functions, however this is not compatible with ESD.

Best Regards,
BRT Community

Hello,
of course, you can zip project and forward via sharing service, thank you a lot for your support here:)  This is not compatible with ESD it means that if I will develop some screens via EVE screen designer it will be not possible to used it?
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: BRT Community on March 30, 2022, 04:50:55 PM
Hello,


Hello,
of course, you can zip project and forward via sharing service, thank you a lot for your support here:)  This is not compatible with ESD it means that if I will develop some screens via EVE screen designer it will be not possible to used it?

Thank you I will send you an email with a download link.

Yes that is correct the ESD framework and the lower level framework are not compatible with each other, if you were to utilise the lower level framework you would need to manually program displays and display logic, however you can use the EVE Screen Editor tool to help with this process.

Best Regards,
BRT Community
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: macioknor on March 30, 2022, 05:01:45 PM
Hello,


Hello,
of course, you can zip project and forward via sharing service, thank you a lot for your support here:)  This is not compatible with ESD it means that if I will develop some screens via EVE screen designer it will be not possible to used it?

Thank you I will send you an email with a download link.

Yes that is correct the ESD framework and the lower level framework are not compatible with each other, if you were to utilise the lower level framework you would need to manually program displays and display logic, however you can use the EVE Screen Editor tool to help with this process.

Best Regards,
BRT Community

Thanks a lot, I got the email. I hope I will be able to adjust this for my solution and used EVE screen designer. If not then I will switch to EVE Screen Editor I expect that inside this tool we can generate raw DL list?
Thanks a lot for supporting:)
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: BRT Community on March 31, 2022, 03:22:19 PM
Hello,

Thanks a lot, I got the email. I hope I will be able to adjust this for my solution and used EVE screen designer. If not then I will switch to EVE Screen Editor I expect that inside this tool we can generate raw DL list?
Thanks a lot for supporting:)

Yes this is correct, raw display lists for a given generated screen can be obtained from EVE Screen Editor. Please note however some slight syntax changes may be require to utilises these in a BRT_AN_025 (low level) code project for example: CMD_BUTTON -> EVE_CMD_BUTTON, etc

Please let me know if you have any issues with the pre-ported projects.

Best Regards,
BRT Community
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: macioknor on April 05, 2022, 12:02:52 PM
Dear BRT community,
I was able to run the project on my side and my own designs are also working fine, thanks a lot for supporting me :)

I have some questions :
1. There is a possibility to zoom in/expand  the logic nodes in the logic nodes editor because now I have the situation like below:
(http://logicNode.JPG)
So the names of parameters are not fully visible, I can see the start of names and dots.

2. I have an issue with adding the image/bitmap. I want to store the image in my MCU flash/ram memory, so what should I select to achieve this in generating code?
a) I did the test via Eve screen editor and it works fine:

   Gpu_Hal_WrCmd32(phost, CMD_INFLATE);
   Gpu_Hal_WrCmd32(phost, RAM_IMAGES_LOGO230);
   Gpu_Hal_WrCmdBuf(phost, images_logo230, sizeof(images_logo230));
   Gpu_CoCmd_FlashFast(phost, 0);
   Gpu_CoCmd_Dlstart(phost);

   App_WrCoCmd_Buffer(phost, CLEAR_COLOR_RGB(255, 255, 255));
   App_WrCoCmd_Buffer(phost, CLEAR(1, 1, 1));
   Gpu_CoCmd_BgColor(phost, 0xFFFFFF);
   Gpu_CoCmd_FgColor(phost, 0xFFFFFF);
   App_WrCoCmd_Buffer(phost, BITMAP_HANDLE(0));
   Gpu_CoCmd_SetBitmap(phost, 0, ARGB1555, 230, 293);
   App_WrCoCmd_Buffer(phost, BEGIN(BITMAPS));
   App_WrCoCmd_Buffer(phost, VERTEX2F(4704, 1280));
   App_WrCoCmd_Buffer(phost, END());


   App_WrCoCmd_Buffer(phost, DISPLAY());
   //swap the current display list with the new display list
   Gpu_CoCmd_Swap(phost);
   App_Flush_Co_Buffer(phost);
   Gpu_Hal_WaitCmdfifo_empty(phost);

 b) I was trying to add only the array with image (array generating from point a) and link the array address in the struct object like this:
Ft_Esd_BitmapInfo logo230__Info = {
   .Width = 230,
   .Height = 293,
   .Format = ARGB1555,
   .Stride = 460,
   .Size = 134780,
   .File = images_logo230,
   .GpuHandle = {
      .Id = MAX_NUM_ALLOCATIONS,
      .Seq = 0
   },
   .BitmapHandle = ~0,
   .AdditionalFile = 0,
   .AdditionalInfo = 0,
   .PaletteFile = 0,
   .PaletteGpuHandle = {
      .Id = MAX_NUM_ALLOCATIONS,
      .Seq = 0
   },
   .Cells = 1,
   .Compressed = 1,
   .Persistent = 0,
   .Flash = 0,
   .PreferRam = 0,
   .CoLoad = 0,
};
and next, I am expecting that the image should be copied to RAM GPU via this function Esd_LoadBitmap? But this is not working.

When I used this kind of functions :
bool EVE_Util_loadInflateFile(EVE_HalContext *phost, uint32_t address,
      const char *filename)
{
      Gpu_Hal_WrCmd32(phost, CMD_INFLATE);
      Gpu_Hal_WrCmd32(phost, RAM_IMAGES_LOGO230);
      Gpu_Hal_WrCmdBuf(phost, images_logo230, sizeof(images_logo230));
      Gpu_CoCmd_FlashFast(phost, 0);
      return true;
}
;

it looks like it is working fine.

3. Calibrate for touch needs to be invoked every time in the new power cycle?  Or one it is enough and next the values are storing in the persistency?


Thanks a lot.
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: BRT Community on April 07, 2022, 03:37:38 PM
Hello,

Thank you for your questions:

1) resizing the logic nodes is currently not a feature in ESD, you can however view all of the node associated properties if you selected it and view the properties tab in the bottom right on the ESD window. I will suggest this as a feature to the development team.

2) Could you clarify if you wish to store these images on a connected flash IC/card on your MCU? or is it sufficient to store these in the program memory? The EVE_LoadFile_FATFS.c and EVE_LoadFile_STDIO.c files may be useful in the former case if you require to load data from flash connected to your MCU. See the EVE_Util_loadRawFile function in the latter.

3) By default yes the touch calibration routine will be run on every power cycle, however if you wish you can run the routine once, store the values captured and use these to update the REG_TOUCH_TRANSFORM_A-F accordingly during intilization.

Best Regards,
BRT Community
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: macioknor on April 11, 2022, 09:33:39 AM
Hello,

Thank you for your questions:

1) resizing the logic nodes is currently not a feature in ESD, you can however view all of the node associated properties if you selected it and view the properties tab in the bottom right on the ESD window. I will suggest this as a feature to the development team.

2) Could you clarify if you wish to store these images on a connected flash IC/card on your MCU? or is it sufficient to store these in the program memory? The EVE_LoadFile_FATFS.c and EVE_LoadFile_STDIO.c files may be useful in the former case if you require to load data from flash connected to your MCU. See the EVE_Util_loadRawFile function in the latter.

3) By default yes the touch calibration routine will be run on every power cycle, however if you wish you can run the routine once, store the values captured and use these to update the REG_TOUCH_TRANSFORM_A-F accordingly during intilization.

Best Regards,
BRT Community

Hi,
Ad1. I am able now to read the whole name, thanks.
Ad2. I would like to store it in MCU program memory, so I should use EVE_Util_loadRawFile  yes? Should I somehow change the option for the image widget in the EVE tool?
Ad3. I was disabled the calib routine and also the touch is working fine on my side, it means that the screen has some default values already stored during production? And it can be sufficient?
Title: Re: EVE Screen Editor Troubleshooting (With STM32 Dev Board and Riverdi 7" BT817Q)
Post by: BRT Community on April 11, 2022, 04:35:10 PM
Hello,


Hi,
Ad1. I am able now to read the whole name, thanks.
Ad2. I would like to store it in MCU program memory, so I should use EVE_Util_loadRawFile  yes? Should I somehow change the option for the image widget in the EVE tool?
Ad3. I was disabled the calib routine and also the touch is working fine on my side, it means that the screen has some default values already stored during production? And it can be sufficient?

For 2), by default if an image is not selected to be included as a flash asset (EVE attached flash) it will be generated as a data array in either a .h or .c file in the ESD output, and therefore should be in the program memory of the MCU. is this not the case in your expected project?

For 3) Defaults are not stored in the IC during production, and calibration values can vary from screen to screen, so it is recommended to run the calibration routine at least once per given screen. After which you can include an option for uses to re-calibrate the screen if needed.

Best Regards,
BRT Community