BRT Community

Please login or register.

Login with username, password and session length
Advanced search  

News:

Welcome to the Bridgetek Community!

Please read our Welcome Note

Technical Support enquires
please contact the team
@ Bridgetek Support

Please refer to our website for detailed information on all our products - Bridgetek - Bridging Technology

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - BRT Community

Pages: [1] 2 3 ... 50
1
Test and Review Area / Re: EVE Asset Builder 2.10.2
« on: April 19, 2024, 09:40:37 AM »
Hi Rudolph,

Yes, 2.11.0 is now out,

We were not able to make some other changes in time for this one but rest assured your suggestions are with the R&D team for future consideration,

Best Regards, BRT Community

2
Discussion - EVE / Re: EAB problem with astcenc.exe
« on: April 17, 2024, 03:36:24 PM »
Hello,

Thank you for the update, I'm glad to hear you can resolve the astcenc.exe issue.

Would you be able to provide the Conversion settings utilised in your testing? Along with the image dimensions for the needle image?

Best Regards,
BRT Community

3
Discussion - EVE / Re: EAB problem with astcenc.exe
« on: April 10, 2024, 03:39:55 PM »
Hello

Thank you for your post.

There are different versions of the astcenc.exe file available, some versions including the version distributed with EVE Asset Builder require AVX2 support in your CPUs instruction set.

Could you take a screen of the CPU-Z output for your machine?
Could you also attach the .bmp file that you were trying to convert so that we can test this?

Best Regards,
BRT Community

4
Discussion - EVE / Re: How often and when read REG_TOUCH_TAG
« on: April 04, 2024, 11:58:19 AM »
Hello,

EVE renders the screen from the contents in RAM_DL, however RAM_DL is actually double buffered meaning there is an active RAM_DL which EVE parses and uses to render the screen for every screen refresh. There is also a passive version of RAM_DL, this is the one you write to when you are issuing a display list or command list to EVE, this is swapped into the active buffer when the SWAP() command is issued.

The intention being that you only write a new display/command list to EVE when require the screen to be updated (say when a button is touched and you wish to enact a 3D effect to make this apparent), otherwise you can let the active display list continue to render the screen in the background and reduce the number of SPI transactions you send to EVE.

I note you mention you are scanning and re-issuing your Display() function every 100ms, but can I ask if this is irrespective of a touch detection?
It would not be necessary to re-issue the Display() call if you do not need to update any of the items on the screen.

Generally there are two approach's to dealing with touch on EVE, in either case we would recommend to initially issue your display list (call Display()):

  • Polling - Call Display(), then utilise another routine to periodically poll the appropriate touch registers to detect a touch (for example REG_TOUCH_TAG) 
    • If a touch is detected then you can re-issue a new display list with the appropriate updates (call Display() to update the screen) if required
  • Interrupts - Configure the touch interrupt, Call Display(), then wait for the interrupt pin to trigger and process this interrupt on your MCU (read the appropriate touch registers)
    • If an item has been touched which requires the screen to be updated then issue Display() accordingly with the required updates

Both approaches should reduce the number of times you call Display() the idea being that you would only need to update RAM_DL when something has to be changed on the screen. i.e. you shouldn't need to worry about an interrupt being triggered half way through your Display() routine because you are not continuously writing this data to EVE. If you structure your code in am manner that calls Display() and then only calls it again once a touch has been detected you should avoid any interrupted Display() calls. However it is possible that for example two interrupts would be trigged very close to each other, in this case you can utilise the recovery routine detailed in section 5.7 of the Programmers Guide and then re-issue the Display() command. As EVE will be rendering from the active versions of RAM_DL is a write to EVE is interrupted half way through a Display() command then the screen contents wont be affected.

Best Regards,
BRT Community

5
Discussion - EVE / Re: How often and when read REG_TOUCH_TAG
« on: April 03, 2024, 12:05:24 PM »
Hello,

Without knowing your exact display settings I would suggest an average configuration 1024*600 display would be running at roughly 50Fps (20ms a frame).

Therefore the 29ms you are seeing for frame rendering doesn't sound too unusual for a display of the resolution you are utilising. The CMD_SWAP command will also wait until the current screen refresh has completed to rendering a new display list, depending on when the list is issued this will add a small delay into the execution time also.

You can work out your display refresh rate in the following manner:
Code: [Select]
Fps = (System Clock/REG_PCLK) / (VCYCL * HCYCLE)

In short yes, the size of your screen is the limiting factor in this instance, I would suggest looking into utilising EVEs touch interrupts if possible.

Best Regards,


6
Discussion - EVE / Re: Picture transparency on another picture
« on: April 03, 2024, 10:11:21 AM »
Hello,

Unfortunately it is not possible to achieve this with a JPEG as these are loaded into EVE as RGB565 bitmaps (or  L8) which do not include an alpha layer (transparency), this is required to make sections of images transparent.

As you have noted using a command such as blend, this effects the whole image because it cannot determine which sections are the background in a JPEG. It may be possible to utilise a second masking image to mask off the background in your JPEG and then use the STENCIL operation to only draw the section of the image that isn't masked, but this would require an image such as a PNG which utilises an alpha layer to be used as the mask. In this case it may be simpler to modify your original JPEG image in a image processor to include a transparent background and save this accordingly.

Best Regards,
BRT Community

7
Discussion - EVE / Re: How often and when read REG_TOUCH_TAG
« on: April 03, 2024, 09:51:09 AM »
Hello,

Are you performing the flash to RAM_G write for every instance of the display being issued in relation to the RGB565 image?

Have anyone test with EVE4 1024x600 resolution display?

Current, I'm having Tiva with SPI at 16Mhz. What my display doing is load bitmap RGB565 (371x400) from flash to RAM_G, with 3 buttons. The total time it takes about 45ms. I'm not sure why it take that long to display one screen. The worst case can be more.

By that, I only can scan key every 100ms. My code doing is having a flag at 100ms. when flag is set, it scan and display. I can't find any better way to handle display and touch function.

I do feel like the cmd list I send from MCU to EVE4 is fast but the time for EVE4 display on screen is take so long that I can't do same as @Rudolph that scan key for every 5ms and display every 20ms.

I haven't try to use DMA or QSPI yet, but my setup is really simple and it take that long to display so I'm not sure using DMA/SQPI will improve the display time or not.

Best Regards,
BRT Community

8
Discussion - EVE / Re: Picture transparency on another picture
« on: April 02, 2024, 03:27:16 PM »
Hello,

Thank you for your question.

It won't be necessary to blend the two images together using the BLEND_FUNC, this is what is causing the image to only show on the darker sections of the back ground image.

You can simply place one image on top of the other so long as the image has an appropriately transparent background, for example the below code places an ASTC image (motorbike) on top of background image:

Code: [Select]
BITMAP_HANDLE(0)
CMD_SETBITMAP(0, RGB565, 800, 480)
BEGIN(BITMAPS)
VERTEX2F(0, 0)
END()

BITMAP_HANDLE(1)
CMD_SETBITMAP(768000, COMPRESSED_RGBA_ASTC_4x4_KHR, 288, 164)
BEGIN(BITMAPS)
VERTEX2F(6112, 4208)
END()

Please see the attached .png for an example of the above code running in EVE Screen Editor.

Best Regards,
BRT Community

9
Discussion - EVE / Re: UNIOCDE fonts bigger than 18
« on: March 29, 2024, 04:29:25 PM »
Hi Craggan,

We have been doing some testing and we were able to see the issue on some compiler platforms, where it seemed to be caused by the encoding.

For example, we can see the issue on Visual Studio but the same string and the same code on various MCUs is fine, and so it seems to be data type related. If the wrong data at byte level is passed into the EVE Text command by the IDE (which may not be apparent from the top-level code that you run) then you could see issues like this. This may explain why Rudolph also did not see the issue,

A second factor is to ensure that you convert all of the characters needed. If converting in higher quality and larger sizes of font, make sure that your converted data all fits into RAM_G depending on data size and address where you load it etc. With this you may see the wrong character in the string (as opposed to the 'tab' effect which seems caused by the compiler handling of unicode as above)

Best Regards, BRT Community

10
Discussion - EVE / Re: Screen updates
« on: March 29, 2024, 09:57:48 AM »
Hello,

Great to hear that it helped and thanks for letting us know,

Best Regards, BRT Community

11
Discussion - EVE / Re: EVE Scripts source codes
« on: March 28, 2024, 04:11:46 PM »
Hello,

Unfortunately the developers cannot provide the source code at this moment in time for the conversion utilities.

However I have requested an update on the progress of the Unix build for the command line tools

Best Regards,
BRT Community

12
Hello,

Unfortunately the development team are unable to share the methodology used to produce the .raw file form the ASTC file at this moment in time.

However it is possible to view .raw files within our EVE Screen Editor utility directly, by adding the .raw file as content, after whihc you can click and drag this onto the screen to generate preview.

Please see the attached screen shot of a .raw file from an 4x4 ASTC conversion being previewed in EVE Screen Editor.

Best Regards,
BRT Community

13
Discussion - EVE / Re: UNIOCDE fonts bigger than 18
« on: March 21, 2024, 07:56:19 AM »
Hi,
Thanks for your update, we are doing some testing and are discussing with our R&D team to understand this issue, and will update very soon,

Thanks Rudolph, we have also passed those to our R&D team, they seem like some good suggestions:

In regards of EAB 2.10.2 I found a couple of things a bit odd.
- why is "Reserve Space" not set as default?
- why is "L8" selected by default for "Extended Format"?
- why is the ASTC set to 4x4 by default instead of a more reasonable 8x8?
- why is this SampleApp generated every single time? can we please have a switch for that which defaults to off?

Best Regards, BRT Community

14
Hello,

Thank you for your question, I have queried the development team on the relationship between the .astc and .raw outputs when performing an ASTC image conversion.

You can find the astcec.exe utility and eab_tools.exe utility within the installation folder for EAB, generally this is in the following location:

C:\Users\Public\Documents\EVE Asset Builder\tools

Best Regards,
BRT Community

15
Hi Rudolph,
We checked with a 7" 1024x600 and also with a 10.1" 1280x800 screen.
Here is an example on the 10.1" screen

Best Regards, BRT Community

 

Pages: [1] 2 3 ... 50