Forum Rule: Always post complete source code & details to reproduce any issue!
Results 1 to 11 of 11

Thread: high-res MIPI display

  1. #1
    Junior Member carl0s's Avatar
    Join Date
    Dec 2017
    Location
    Manchester, England, UK.
    Posts
    3

    high-res MIPI display

    Hi!

    I'm well out of my depth here, but I'll have a go..

    I have on order, a 3.4" 800x800 MIPI round display. I've spent the last week or so getting my head around stuff, realising that microcontrollers and MIPI don't go hand in hand.

    At 16bpp, 800x800 would be 1.2 megabytes of pixel data I think ? So I need a framebuffer, or a controller with a framebuffer.

    The screen has an ILI9981c controller which has no GRAM or framebuffer (one and the same? does GRAM mean graphics ram?).

    I was thinking of using an SSD2828 to convert from RGB to MIPI. It has the requisite 3 MIPI DSI lanes. I originally thought I'd try a different MCU such as the stm32L4r9 or stm32f469/f479 with their inbuilt gfx engine and MIPI DSI, but they are only 2 lane DSI :-/

    I think the SSD2828 because it has no framebuffer though, would require a framebuffer constructing out of MCU memory, and, well, I think some sort of hardware graphics helper will help a lot.

    So I am thinking (and have ordered some bits for), a module consisting of:

    MCU SPI connection input -> RA8876 graphics / display controller + external 512MBit SDRAM -> SSD2828 which will convert RGB output from RA8876 to MIPI, which will then go into the ILI9981c that is inside the display.

    I am feeling brave with the el-cheapo hot air soldering iron, and I hear you can get PCBs made cheap.

    What do you think? Dreaming?

    The screens are on order anyway, as are 0.4mm pitch QFP breakouts, and LCD FPC breakouts, etc.

    RA8876: http://www.raio.com.tw/data_raio/Dat...DS_V11_Eng.pdf

    SSD2828: https://datasheet.lcsc.com/szlcsc/SSD2828QN4_C48596.pdf

    ILI9981c: http://en.startek-lcd.com/res/starte...7115241070.pdf

  2. #2
    Senior Member+ Theremingenieur's Avatar
    Join Date
    Feb 2014
    Location
    Colmar, France
    Posts
    2,559
    GRAM is RAM. Fast RAM for frame buffer purposes.

  3. #3
    Junior Member carl0s's Avatar
    Join Date
    Dec 2017
    Location
    Manchester, England, UK.
    Posts
    3
    Quote Originally Posted by Theremingenieur View Post
    GRAM is RAM. Fast RAM for frame buffer purposes.
    Yes that's what I thought.

    I had another idea..

    How about a processor with an LCD driver built in, e.g. stm32f767, possibly with external SRAM (but maybe not required), and put that directly into the SSD2828. Is that a good way to design an MCU display thing?

    My project is a high end automotive gauge, obviously with a round display.

    Most, if not all, high end displays are MIPI now, and the 800x800 3.4" round display I have on order is 3 lane MIPI, and no MCU supports that directly.

    The RA8876 chip seems to be unavailable in the market as such... so, maybe just an MCU with an lcd controller built in, plus the SSD2828 to convert RGB to MIPI, is a more sensible solution.

    It's a shame, but Amazon use the Mediatek MT8163V in their Echo Spot. It seems like I really should be looking at ARM A-series if I want to run a nice display, but then where is the friendly C++ framework? There's no arduino for anything bigger than M-series ARM, is there?

    It seems like ARM A-series (what they call MPU.. micro-Processor-unit, instead of Controller) are only supported by full OS (e.g. Android), and only the M series are supported by microcontroller frameworks such as Arduino and mbed. I want my system to power-on-and-run, so Android or other OS are not the right choice. All my thing needs to do is offer up a nice GUI and read/write UART.
    Last edited by carl0s; 05-02-2018 at 01:29 AM. Reason: good grammar is important.

  4. #4
    Hi carl0s
    I have a Display board with RA8876+SSD2828 drivers, and I'm having hard time to even display any thing on it,
    so please let me know. if you able to operate your display?
    Thank you

  5. #5
    Member
    Join Date
    Sep 2017
    Location
    Italia
    Posts
    87
    If i read the ILI9981c datasheet correctly, this controller can be configured as 2,3 or 4 lane. So this is your choice.
    The Raspberry Pi has a MIPI DSI connector. As this is standardized, the screen should just work.
    https://github.com/anholt/linux/wiki...display-panels

    For the Teensy this is more difficult, as a hardware interface needs to be built.

  6. #6
    Thank you for reply
    Yes, i want to use it with Teensy 4.0, and i think the hardware interface is no problem, because i have this display,
    if you have a second, please take a look

    https://www.buydisplay.com/spi-1280x...ve-touch-panel

    Please let me know what you think?

  7. #7
    Member
    Join Date
    Sep 2017
    Location
    Italia
    Posts
    87
    Nice Have you seen the "7.84"1280x400 Display with Controller Board Datasheet" on that site? There you get the pinout of the module and on how to jumper-set the interface options.
    Then in "Controller RA8876 Datasheet" you get the desription of the pins usable to connect this displkay to T4. That is, in the module pinout they just list DB0-DB15 which correspond to XDB0-XDB15 in the RA8876 datasheet, which shows in Section 4.2 the corresponding serial connections.

    For Arduino a bunch of libraries to run RA8876 exist, so that is something you need to try which one fits your project.

  8. #8
    I know about that, the controller board bast on RA8876 and SSD2828, here is the reply from BuyDisplay.com

    Sorry we don't have arduino code for your reference.

    It's complicated to make it working with arduino due board, RA8876 requires SPI for communication, On board SSD2828 also requires SPI to initialize the screen.

    CTP requires I2C, You need to connect all of them and write the software.



    I know how to handle RA8876, my problem is SSD2828.
    Thank you

  9. #9
    Member
    Join Date
    Sep 2017
    Location
    Italia
    Posts
    87
    Hmm...
    Actually, in contrast to normal RA8876 operation, they list a different way of connecting the display to the host in ER-TFTM0784-1_Interface.pdf. That is very confusing.
    They seem to have routed the signals to a separate section in the module connector with all that many of jumper settings.
    In ER-TFTM0784-1_Interface.pdf they show the SPI connection, which is the same on T4.
    The SSD2828 does need to be connected if following that connection diagram.
    In the In the 8051 Interfacing and Demo Code you find how to code all that. The code needs to be transcripted for T4 and connections, obviously.
    Last edited by radias; 03-04-2020 at 11:35 PM.

  10. #10
    Member
    Join Date
    Sep 2017
    Location
    Italia
    Posts
    87
    For the touch chip, that is plan I2C. A library is here: https://github.com/nik-sharky/arduino-goodix

  11. #11
    Ok
    Thank you for your help, let me see, if I can put all this together

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •