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

Pages: [1] 2 3 ... 10
 1 
 on: January 27, 2022, 02:30:58 AM 
Started by rascalito - Last post by rascalito
Hello!
I have a problem which doesn't seem to be documented.
I am using bitmaps stored in flash in format ASTC8x8.
I have written a function EveDisplay::StoreToFlash(uint8 * data, uint32 flash_add, uint32 len).
As if worked when debugging step by step and didn't work when running free, I suspected
a speed problem. I verified the speed from the datasheet, and it's 33 ns period.
In my case, I'm running at 13.5 MHz (MCU frequency = 216 MHz divided by 16.
And on the scope, I measure a periode in the 17 ns, so this is just fine.
Now I'm wondering about the CMD_FLASHWRITE command.
I'm sending data by blocks of 4K. If I set a delay between each block, then it works,
but otherwise it doesn't, and the screen gets lost.
I thought about checking if the screen is busy, but that would break the whole
CMD_FLASHWRITE command.

Sorry for the length, here are my questions:
1. Is there a need for some delay within the CMD_FLASHWRITE command?
2. What does the BT815 do exactly> Does it simply pipe the bytes into the flash
directly? Or does it store the bytes into a buffer that has to be flushed?
3. Is there any limit of the data buffer length of CMD_FLASHWRITE when doing
it in a single DMA burst?

Thanks for any hint.

R

 2 
 on: January 25, 2022, 03:10:33 PM 
Started by Geethanjali - Last post by Rudolph
Try again please without writing to the REG_TOUCH_TRANSFORM_x registers.

If the calibration function still does not react to any touch it may be possible that your display is defective.


Edit: annother thought.
Please also remove write access to CTOUCH_MODE, TOUCH_RZTHRESH and TOUCH_CONFIG from your init function.
And for good measure, add a delay of 100ms after the detection of 0x7c in your init function.


 3 
 on: January 25, 2022, 07:30:39 AM 
Started by Geethanjali - Last post by Geethanjali
Hi Rudolph ,

Thanks for your help . I want to calibrate the touch points , I am sending the CMD_CALIBRATE  command , I am able to see the blue dot appearing but if I touch that its not moving ie., its not calibrating the points . What is the mistake Could you please help me in that . The calibration point is rigid its not moving even though I touch no movement , its appearing in top left corner of display. Can u please help me in this.

I have sent the prerecorded values of REG_TOUCH_TRANSFORM (A to F)

CLEAR(1, 1, 1)
CMD_DLSTART
CLEAR_COLOR_RGB(0,0,0)
CMD_TEXT(256, 171, 30, 0, "calibration - please tap the dot")
CMD_CALIBRATE(0)
DISPLAY()
CMD_SWAP()

Thanks in advance.

 4 
 on: January 21, 2022, 08:54:37 PM 
Started by JuSil - Last post by Rudolph
Nice.


I connected the ILI2132A on my RVT70H to USB now.
It kind of works but I guess I would need a specialized driver for it.

I found traces of a software from Ilitek on the internet called "IliTuningTool" but had no luck getting a version
that actually works with the ILI2132A (or I am using it wrong).
Well, that software is from december 2018.

The web presence http://www.ilitek.com appears to be totally defunct, only the front page works here.
I really can not find much about Ilitek at all.

In theory it would be possible to update the firmware of the ILI2132A via USB.
Well, if we had a software to do this and a new firmware...

 5 
 on: January 21, 2022, 08:49:50 PM 
Started by Geethanjali - Last post by Rudolph
Quote
29   0xa7cc8fae   VERTEX2II(318, 200, 31, '.')
30   0x1f000001   BEGIN(BITMAPS)
31   0x8c8fafb0   VERTEX2II(100, 250, 31, '0')
32   0x00000000   DISPLAY()
33   0x00000000   DISPLAY()
34   0x8c8fafb0   VERTEX2II(100, 250, 31, '0')
35   0x00000000   DISPLAY()

This looks odd, the list ends prematurely and this is not what CMD_NUMBER puts into the display list.
And CMD_TEXT also does look a bit different, there are a couple of lines missing from the output.

Anyways, I remembered that the CTP has an USB interface.
Riverdi is even selling the cable for it: https://riverdi.com/product/rva-pcap-usb-cable/
The connector is a SHR-04V-S-B from JST.

I do not have this cable but I have SHR-05V-S-B with pins, a side-cutter and a soldering iron. :-)

I disconnected the FFC that goes into the BT817 board and connected the USB to my PC.
And I now have a 2x HID device that identifies as a touchscreen from Ilitek.
It is not really useable, it acts rather strange, one finger down appears to be left-mouse clicked already.
But at least something is happening this way confirming that the CTP does something.

 6 
 on: January 21, 2022, 12:06:26 PM 
Started by Spyy - Last post by BRT Community
Hi,

Most of these items are positioned by the pixel rather than by 1/16th. When used in code examples, you will see that Vertex2F has the value multiplied by 16 e.g. VERTEX2F(20*16, 20*16) to place something at coordinate 20,20. Note that you can actually also display numbers and letters using VERTEX2F as they are made up of a series of images (one per character).

Also note that using the text command does all the character spacing etc for you. If you use Vertex2F this only places 1 character per vertex and so to make a string of characters you will need to call a Vertex2f per character.

It is possible to just add a value to the x coordinate each time but if you want the text to look proportional (and so spacing between each char related to the width of the char) then you can use the metric block data/font properties which is in the EVE chip. For numbers you might want a fixed position for each number so that the whole number does not move around and change in length (e.g. a 1 is narrower than an 8 ) but for text, having a constant spacing between characters may not look as good.

Best regards

BRT Community

 7 
 on: January 21, 2022, 06:21:35 AM 
Started by Geethanjali - Last post by Geethanjali
Hi,

Can anyone help me with respect to interrupts should I configure the interrupt for touch , If not how to identify touch , I tried configuring the registers ie., REG_INT_EN , REG_INT_MASK and reading the interrupt source , should this be configured , Kindly let me know how to identify the interrrupt of touch or how to understand there is touch happened without interrupt.

 8 
 on: January 21, 2022, 04:40:51 AM 
Started by Geethanjali - Last post by Geethanjali
Hi, I tried with the display list that you have sent
   Raw   Text
0   0x12000064   CLEAR_TAG(100)
1   0x02000000   CLEAR_COLOR_RGB(0, 0, 0)
2   0x26000007   CLEAR(1, 1, 1)
3   0x14000001   TAG_MASK(1)
4   0x1f000002   BEGIN(POINTS)
5   0x0d0000c8   POINT_SIZE(200)
6   0x0300000a   TAG(10)
7   0x43200640   VERTEX2F(1600, 1600)
8   0x0300000b   TAG(11)
9   0x46400640   VERTEX2F(3200, 1600)
10   0x0300000c   TAG(12)
11   0x49600640   VERTEX2F(4800, 1600)
12   0x0300000d   TAG(13)
13   0x4c800640   VERTEX2F(6400, 1600)
14   0x21000000   END()
15   0x14000001   TAG_MASK(1)
16   0x1f000001   BEGIN(BITMAPS)
17   0x8c8c8fd4   VERTEX2II(100, 200, 31, 'T')
18   0x8fcc8fe8   VERTEX2II(126, 200, 31, 'h')
19   0x92cc8fe5   VERTEX2II(150, 200, 31, 'e')
20   0x958c8fa0   VERTEX2II(172, 200, 31, ' ')
21   0x96cc8fd4   VERTEX2II(182, 200, 31, 'T')
22   0x9a0c8fe1   VERTEX2II(208, 200, 31, 'a')
23   0x9cec8fe7   VERTEX2II(231, 200, 31, 'g')
24   0x9fec8fa0   VERTEX2II(255, 200, 31, ' ')
25   0xa12c8fe9   VERTEX2II(265, 200, 31, 'i')
26   0xa26c8ff3   VERTEX2II(275, 200, 31, 's')
27   0xa52c8fa0   VERTEX2II(297, 200, 31, ' ')
28   0xa66c8fae   VERTEX2II(307, 200, 31, '.')
29   0xa7cc8fae   VERTEX2II(318, 200, 31, '.')
30   0x1f000001   BEGIN(BITMAPS)
31   0x8c8fafb0   VERTEX2II(100, 250, 31, '0')
32   0x00000000   DISPLAY()
33   0x00000000   DISPLAY()
34   0x8c8fafb0   VERTEX2II(100, 250, 31, '0')
35   0x00000000   DISPLAY()
 
This is the Display list from EVE editor but If I touch the corresponding tag is not getting displayed by the number command. Kindly let me know if there are any mistakes.

Kindly help me in this .
I can see the tag value changing in REG_TOUCH_TAG but not by the number command.


Thanks in advance.

 9 
 on: January 20, 2022, 02:17:06 PM 
Started by JuSil - Last post by BRT Community
Hi,

Just to update, we were able to get the same 7" panel and have been doing some testing as we can see the same happen, Riverdi are looking into it,

Thanks to you both for reporting the problem and for all your help in investigating and gathering the data,

Best Regards, BRT Community


 10 
 on: January 20, 2022, 02:11:25 PM 
Started by Geethanjali - Last post by BRT Community
Hi,

Here is a small code example.

It will tag the four circles and so when you hold your finger on them, you should see the corresponding tag displayed by the number command.
We set the clear tag to 100 and so if you touch an area of the screen outside of the circles, you'll get tag 100
With no touch, the tag will read 0

We also mask the tag so that the text and number are not tagged, this is useful if you want to turn off tagging for these after drawing the tagged items  (the tag 13 for the last circle would otherwise also apply to the text and number)

Best Regards, BRT Community


Code: [Select]
   uint8_t Tag = 0;
   
   while(1)
    {
        EVE_LIB_BeginCoProList();                                               // Begin new screen
        EVE_CMD_DLSTART();                                                      // Tell co-processor to create new Display List

EVE_CLEAR_TAG(100);                  // Set tag to 100 for any un-tagged pixels
EVE_CLEAR_COLOR_RGB(0, 0, 0);                                           // Specify color to clear screen to

EVE_CLEAR(1,1,1);                                                       // Clear color, stencil, and tag buffer

EVE_TAG_MASK(1);                                                        // Enable tagging

EVE_BEGIN(EVE_BEGIN_POINTS);
EVE_POINT_SIZE(800);
EVE_TAG(10);
EVE_VERTEX2F((100*16), (100*16));
EVE_TAG(11);
EVE_VERTEX2F((200*16), (100*16));
EVE_TAG(12);
EVE_VERTEX2F((300*16), (100*16));
EVE_TAG(13);
EVE_VERTEX2F((400*16), (100*16));
EVE_END();

EVE_TAG_MASK(1);                                                        // Disable tagging
EVE_CMD_TEXT(100, 200, 28, 0, "The Tag is...");
EVE_CMD_NUMBER(100, 250, 28, 0, Tag);

EVE_DISPLAY();                                                          // Tell EVE that this is end of list
EVE_CMD_SWAP();                                                         // Swap buffers in EVE to make this list active

EVE_LIB_EndCoProList();                                                 // Finish the co-processor list burst write
EVE_LIB_AwaitCoProEmpty();                                              // Wait until co-processor has consumed all commands

Tag = HAL_MemRead8(EVE_REG_TOUCH_TAG);
   }

Pages: [1] 2 3 ... 10