LCD Shield Whishlist

Share here your ideas for new projects

Moderators: odroid, meveric, mdrjr

LCD Shield Whishlist

Unread postby crashoverride » Fri May 20, 2016 10:41 pm

I was thinking it may be time for a refresh of the C1 LCD shield hardware.
http://www.hardkernel.com/main/products/prdt_info.php?g_code=G142060963922

I would like to see some changes:
1) Upgrade the panel resolution from 320x240 to 480x320 since they are now commonly and cheaply available.
2) Upgrade from 3.2" to 3.5" and remove the buttons. This makes the entire surface covered by the display.
3) Replace the discrete "SPI" logic chips with a low cost/low pin count Cortex M0+ or similar! :D
4) Software backlight control support.

The Cortex M0 family is dirt cheap. It may even be cheaper than using the discrete logic chips when all is said and done (total cost to manufacture). It would allow the display to host additional host interfaces too. For example, it could provide I2C and UART interfaces making it compatible with C2. It could also function as a stand alone device similar to the Odroid Show product. The limitation is that SPI speed may be reduced depending on part selection. This can be easily overcome by using a "8 bit" interface instead of SPI.

The rough concept is that its a "LCD development kit" in addition to being a display shield. You can program it with the Arduino IDE if you choose or just use "default" firmware. It would have uses outside being stacked on an Odroid board. Additionally, when coupled with a C0, it could make a much more power friendly IoT offering.

Thought, comments, suggestions, and flaming welcome. ;)
crashoverride
 
Posts: 2458
Joined: Tue Dec 30, 2014 8:42 pm
languages_spoken: english
ODROIDs: C1

Re: LCD Shield Whishlist

Unread postby mad_ady » Sun May 22, 2016 8:18 pm

+1 I'm also interested in a small screen for use with linux as a smart home control/internet radio. The current C1 LCD is ok but limits me to use a C1. I'd like something small I could use with my C2
User avatar
mad_ady
 
Posts: 1445
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU3, C1+, C2

Re: LCD Shield Whishlist

Unread postby crashoverride » Mon May 23, 2016 5:36 pm

Here is some additional info regarding the "SPI" interface to these boards:
https://github.com/notro/fbtft/wiki/SPI-interface-circuit

The data is shifted in a bit at a time. There is no return data. Devices like the C1/C2 are not limited to a single data line. They have lots of GPIO pins. This means the data rate can be amplified eight (8) times simply by using 8 GPIO lines to carry it instead of the single MOSI line. Having a reprogramable core like a Cortex-M0 would allow this flexibility. It could function as SPI or in 8/16bit mode. As mentioned before, it could also allow UART communication opening the display up to a greater selection of hardware (you could even use the display on a PC).

One of the projects I would like to pursue for these displays is a mirroring driver for C0/C1/C2. It should use the hardware GE2D blitter to color space and scale the HDMI framebuffer to the LCD display. Using two passes, it could also capture the video output from programs like Kodi and blend the frame buffer on top.
crashoverride
 
Posts: 2458
Joined: Tue Dec 30, 2014 8:42 pm
languages_spoken: english
ODROIDs: C1

Re: LCD Shield Whishlist

Unread postby odroid » Thu Jun 16, 2016 11:24 am

Yes, many C2 users need a small LCD display.

Can you estimate/simulate the transfer speed of 8-pin GPIO on 40pin header on C2?
If we can have 10~15FPS on 480x320 LCD, we will try to find a 8bit bus interface friendly 3.5inch LCD panel.
User avatar
odroid
Site Admin
 
Posts: 21806
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: LCD Shield Whishlist

Unread postby crashoverride » Thu Jun 16, 2016 9:49 pm

From what I calculated:

320 * 480 = 153600 * 2 (RGB565) = 307200B/frame
307200B/frame * 15 fps = 4608000B/s = 4.608MB/s

We need at least 4.608 MB/s to drive the display at 15fps. With an 8bit interface, that means we need 4.608Mhz of speed on the GPIO lines (not counting protocol overhead).

According to this post:
http://forum.odroid.com/viewtopic.php?f=139&t=19033&p=126255&hilit=gpio#p126255
I got 7.56Mhz for the speed

This implies there is more than enough speed to meet the requirements even with protocol overhead.

With a processor such as Cortex-M0, there are additional options. We can use compression without increasing the component cost. Utilizing compression, it may be possible to double the speed to 30fps.

I hope to prototype and experiment with a design in the future. Right now, this idea is just theory.
crashoverride
 
Posts: 2458
Joined: Tue Dec 30, 2014 8:42 pm
languages_spoken: english
ODROIDs: C1

Re: LCD Shield Whishlist

Unread postby odroid » Sat Jun 18, 2016 3:59 pm

Thank you for the estimation.
I will try to make a prototype PCB quickly to test a 3.5inch 320x480 LCD panel.
It may take a couple of weeks.
User avatar
odroid
Site Admin
 
Posts: 21806
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: LCD Shield Whishlist

Unread postby mad_ady » Sat Jun 18, 2016 4:47 pm

Since this will be driven by gpio lines should we expect it to work with c0/c1 as well?
User avatar
mad_ady
 
Posts: 1445
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU3, C1+, C2

Re: LCD Shield Whishlist

Unread postby odroid » Sat Jun 18, 2016 5:29 pm

Yes, 12~13 GPIOs will be used and this prototype board should be compatible with C0/C1/C2.
User avatar
odroid
Site Admin
 
Posts: 21806
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: LCD Shield Whishlist

Unread postby mad_ady » Sun Jun 19, 2016 2:51 am

Great! Any ideas if it would support x11? Are you going to create some sort of kernel driver that drives the gpios that emulates an already supported x11 driver? What's the plan software-wise? I'm curious...
User avatar
mad_ady
 
Posts: 1445
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU3, C1+, C2

Re: LCD Shield Whishlist

Unread postby odroid » Sun Jun 19, 2016 10:43 am

I have a plan to modify the SPI-TFT LCD frame-buffer driver slightly to use 8-bit 8080-like bus with GPIOs bit-bang.
Once the frame-buffer works, we can run X11 on that simply. But there will be no GPU/VPU acceleration.
User avatar
odroid
Site Admin
 
Posts: 21806
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: LCD Shield Whishlist

Unread postby crashoverride » Sun Jun 19, 2016 8:17 pm

odroid wrote:use 8-bit 8080-like bus with GPIOs bit-bang.

That will actually make it easier for me to implement my prototype with a Cortex M processor depending on the chipset used for the LCD panel. I was going to use a ILI9481 based panel because I can find the datasheet online. My plan was to disassembly a SPI based "shield" and wire directly to the panel. This should save me that hassle. I am eagerly looking forward to this.
crashoverride
 
Posts: 2458
Joined: Tue Dec 30, 2014 8:42 pm
languages_spoken: english
ODROIDs: C1

Re: LCD Shield Whishlist

Unread postby odroid » Tue Jun 28, 2016 2:46 pm

We've just made a test driver to see the speed.

Code: Select all
union   reg_bitfield {
   unsigned int   wvalue;
   struct {
      unsigned int   unused0:1;
      unsigned int   bit7:1;
      unsigned int   bit6:1;
      unsigned int   bit4:1;
      unsigned int   bit5:1;
      unsigned int   bit2:1;
      unsigned int   unused1:1;
      unsigned int   bit3:1;
      unsigned int   bit1:1;
      unsigned int   bit0:1;
      unsigned int   unused2:9;
      unsigned int   wr:1;
      unsigned int   unused3:12;
   } bits;
};

int tft_write_gpio8_wr(struct fbtft_par *par, void *buf, size_t len)
{
   u8    data;
   union   reg_bitfield   dbus;

   dbus.wvalue = ioread32(par->regrd_gpiox);

   while (len--) {
      data = *(u8 *) buf;

      dbus.bits.bit0 = (data & 0x01) ? 1 : 0;
      dbus.bits.bit1 = (data & 0x02) ? 1 : 0;
      dbus.bits.bit2 = (data & 0x04) ? 1 : 0;
      dbus.bits.bit3 = (data & 0x08) ? 1 : 0;
      dbus.bits.bit4 = (data & 0x10) ? 1 : 0;
      dbus.bits.bit5 = (data & 0x20) ? 1 : 0;
      dbus.bits.bit6 = (data & 0x40) ? 1 : 0;
      dbus.bits.bit7 = (data & 0x80) ? 1 : 0;

      /* Pulling down /WR */
      dbus.bits.wr = 0;
      iowrite32(dbus.wvalue, par->regwr_gpiox);

      /* Pulling up /WR */
      dbus.bits.wr = 1;
      iowrite32(dbus.wvalue, par->regwr_gpiox);

      buf++;
   }

   return 0;
}


Measured frequency with an oscilloscope is around 2.9~3.1Mhz on the Write signal.
So we have ~10fps on 480x320 display probably.
Once we have a few engineering samples in 2~3 weeks later, I will send a couple of samples to users who want to evaluate/improve the drivers. :)
User avatar
odroid
Site Admin
 
Posts: 21806
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: LCD Shield Whishlist

Unread postby phaseshifter » Wed Jun 29, 2016 2:07 am

nice
also i would be hoping that it sit above the hi-fi shield board
Last edited by phaseshifter on Fri Jul 01, 2016 9:35 pm, edited 1 time in total.
phaseshifter
 
Posts: 1478
Joined: Fri May 08, 2015 9:12 am
languages_spoken: english
ODROIDs: opp sys.. ubuntu ..c1+ ..c-2..xu3 ,xu4...
acc`s vu7,c-shell ,uart,hi-fi ,,hi-fi2,,show,w-board,6x16GB emmc`s 3.5 inch touch...other odroid acc`s as well

Re: LCD Shield Whishlist

Unread postby odroid » Fri Jul 01, 2016 4:43 pm

Fully hand-made prototyping ! It works. The FPS seems to be 9~10Hz with 480x320 resolution.
I hope we can increase it to 15Hz with further optimization.
/dev/fb2 is well registered and I can run a console terminal with ODROID-C2.
s_s_rot_s_20160701_162112.png
s_s_rot_s_20160701_162112.png (1.11 MiB) Viewed 1805 times

The picture is not clearly sharp due to my old shaking hand. :(

We are looking for a resistive type touch-screen controller IC with I2C interface.
Once we finish another prototyping with a touch controller, we may start the production in the middle or end of August due to 6~8 weeks of LCD delivery time.

This 3.5inch LCD shield will also work with C1/C0.

@crashoverride
Really appreciate your idea. You always give me a lot of motivation. 8-)
User avatar
odroid
Site Admin
 
Posts: 21806
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: LCD Shield Whishlist

Unread postby mad_ady » Fri Jul 01, 2016 5:19 pm

It looks great odroid! Good job!
User avatar
mad_ady
 
Posts: 1445
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU3, C1+, C2

Re: LCD Shield Whishlist

Unread postby odroid » Fri Jul 01, 2016 5:30 pm

Thank you!
We will send a few free engineering samples(not hand-made one) to some talented forum users for improving the LCD drivers. ;)
I hope we can have it in 3 weeks.
User avatar
odroid
Site Admin
 
Posts: 21806
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: LCD Shield Whishlist

Unread postby crossover » Fri Jul 01, 2016 5:39 pm

Great soldering + wiring :o I really need a small TFT display to make a HiFi alarm clock based on the Volumio 2 OS with C2.
You guys are overcoming the absence of HW SPI bus on C2. :twisted:
crossover
 
Posts: 95
Joined: Wed Jul 22, 2015 2:23 pm
languages_spoken: english
ODROIDs: XU4, C1+, C2, USB-IO, Tinkering kits

Re: LCD Shield Whishlist

Unread postby mad_ady » Fri Jul 01, 2016 6:24 pm

So power is external, or is it powered via the gpio pins?
User avatar
mad_ady
 
Posts: 1445
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU3, C1+, C2

Re: LCD Shield Whishlist

Unread postby odroid » Sat Jul 02, 2016 10:53 am

From 5volt rail on the 40pin gpio port.
Backlit will be controlled by a PWM pin.
User avatar
odroid
Site Admin
 
Posts: 21806
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: LCD Shield Whishlist

Unread postby fvolk » Thu Jul 07, 2016 5:39 am

odroid wrote:Backlit will be controlled by a PWM pin.


I hope it will be able to do 1)always on 2)sleep/off after x time 3)wake up/on with touch of button.
I also hope it will be compatible with official C2 case and RTC module...

Looking forward to it :-)
fvolk
 
Posts: 80
Joined: Sun Jun 05, 2016 11:04 pm
languages_spoken: english
ODROIDs: C2

Re: LCD Shield Whishlist

Unread postby mad_ady » Thu Jul 07, 2016 2:38 pm

I'm guessing it won't be compatible with the C2 case. You will probably need to remove the top part of the case to plug it in.

@odroid - are you adding hardware buttons as well, or will the touchscreen be always on (even if the screen's backlight is off)?
User avatar
mad_ady
 
Posts: 1445
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU3, C1+, C2

Re: LCD Shield Whishlist

Unread postby odroid » Thu Jul 07, 2016 4:16 pm

We are considering 3 buttons.
The touch screen controller has a separated power source.

We can use the C2 case if we remove the GPIO cover and using an extra tall header socket.
But the RTC module needs a few wires of soldering.
User avatar
odroid
Site Admin
 
Posts: 21806
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: LCD Shield Whishlist

Unread postby fvolk » Fri Jul 08, 2016 2:20 am

Ok, so the LCD will use different pins than the RTC, that's good, so the challenge is to (re-)connect the RTC to the proper pins in a different way. Please consider this while designing the LCD attachment to make that easy.... keep up the great work! :-)
fvolk
 
Posts: 80
Joined: Sun Jun 05, 2016 11:04 pm
languages_spoken: english
ODROIDs: C2

Re: LCD Shield Whishlist

Unread postby elmerfudd » Tue Aug 09, 2016 1:19 am

Any progress on this? I'd love to have an LCD as a secondary display on my C2.
elmerfudd
 
Posts: 21
Joined: Sun May 15, 2016 10:00 pm
languages_spoken: english

Re: LCD Shield Whishlist

Unread postby odroid » Tue Aug 09, 2016 9:13 am

The first engineering sample is under testing as so far so okay.
We are developing a device driver for touch screen controller now.
I think we will have a mass production in the middle of September (4~5 weeks later).
User avatar
odroid
Site Admin
 
Posts: 21806
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: LCD Shield Whishlist

Unread postby phaseshifter » Sun Sep 18, 2016 5:39 pm

i am not shure how h-k is going to fit up the l.c.d shield..
but would it be possible to have it supplied with a ribbon i.d.c cable
thus making it possible to be mounted with hex standoff`s above the hi-fi shield
phaseshifter
 
Posts: 1478
Joined: Fri May 08, 2015 9:12 am
languages_spoken: english
ODROIDs: opp sys.. ubuntu ..c1+ ..c-2..xu3 ,xu4...
acc`s vu7,c-shell ,uart,hi-fi ,,hi-fi2,,show,w-board,6x16GB emmc`s 3.5 inch touch...other odroid acc`s as well

Re: LCD Shield Whishlist

Unread postby mad_ady » Sun Sep 18, 2016 5:49 pm

Does the hi-fi shield use the 40 pin section? The display would use it too, not sure if there are enough pins to go around
User avatar
mad_ady
 
Posts: 1445
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU3, C1+, C2

Re: LCD Shield Whishlist

Unread postby phaseshifter » Sun Sep 18, 2016 6:07 pm

i dont see the l.c.d using the mclck 7 pin bus
phaseshifter
 
Posts: 1478
Joined: Fri May 08, 2015 9:12 am
languages_spoken: english
ODROIDs: opp sys.. ubuntu ..c1+ ..c-2..xu3 ,xu4...
acc`s vu7,c-shell ,uart,hi-fi ,,hi-fi2,,show,w-board,6x16GB emmc`s 3.5 inch touch...other odroid acc`s as well

Re: LCD Shield Whishlist

Unread postby odroid » Thu Sep 29, 2016 6:57 pm

The 3.5inch 480x320 LCD Shield has been released.
http://www.hardkernel.com/main/products ... 7435282441

Its plastic case kits are also available.
http://www.hardkernel.com/main/products ... 7459332340

Image


If crashoverride didn't bring us the idea, this product couldn't be developed.
Appreciate his help sincerely.
User avatar
odroid
Site Admin
 
Posts: 21806
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: LCD Shield Whishlist

Unread postby mad_ady » Thu Sep 29, 2016 7:36 pm

Wow, also a plastic case! Yahoo! I thought I'd have to build a case out of cardboard for it. Great job everyone!
The case looks perfect. It also has an opening to take out the eMMC. I'll have to see how I can secure it to my refrigerator (probably double sided tape)...
User avatar
mad_ady
 
Posts: 1445
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU3, C1+, C2

Re: LCD Shield Whishlist

Unread postby phaseshifter » Fri Sep 30, 2016 1:33 am

ready for the new screen with my modded C-2

who`s getting the freebie l.c.d.screens odroid has not said as yet but oh well
Attachments
Photo0007.jpg
Photo0007.jpg (179.33 KiB) Viewed 1218 times
Photo0005(1).jpg
Photo0005(1).jpg (153.03 KiB) Viewed 1218 times
Last edited by phaseshifter on Fri Sep 30, 2016 5:15 am, edited 2 times in total.
phaseshifter
 
Posts: 1478
Joined: Fri May 08, 2015 9:12 am
languages_spoken: english
ODROIDs: opp sys.. ubuntu ..c1+ ..c-2..xu3 ,xu4...
acc`s vu7,c-shell ,uart,hi-fi ,,hi-fi2,,show,w-board,6x16GB emmc`s 3.5 inch touch...other odroid acc`s as well

Re: LCD Shield Whishlist

Unread postby elmerfudd » Fri Sep 30, 2016 2:37 am

Clever job on the pushbutton covers.
elmerfudd
 
Posts: 21
Joined: Sun May 15, 2016 10:00 pm
languages_spoken: english

Re: LCD Shield Whishlist

Unread postby fvolk » Thu Oct 06, 2016 2:56 pm

odroid wrote:The 3.5inch 480x320 LCD Shield has been released.


Yay!
In what subforum is the official discussion thread?

Add to spec size of a single pixel/pixel density.
Add to spec estimated power draw.
Anyone with good ideas to add RTC - solder cables on pins on backside?
What was the reason for the large case, was the routing of the 40 pins header otherwise impossible?
Mhhh... the extra space in the case could be used for the RTC.
Can I use it without a full X installation - just libSDL2 on fbdev for in- and output?
I see the need for the case hole in the botton for eMMC, but if I don't need eMMC I don't need the large bottom hole?
Will the laser cutting files for the case be released one day?
....

Now waiting for it to arrive at distributors... :-)
fvolk
 
Posts: 80
Joined: Sun Jun 05, 2016 11:04 pm
languages_spoken: english
ODROIDs: C2

Re: LCD Shield Whishlist

Unread postby odroid » Thu Oct 06, 2016 3:06 pm

Just made a new sub-forum.
viewforum.php?f=145

Feel free to ask questions on that.
User avatar
odroid
Site Admin
 
Posts: 21806
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID


Return to The Ideas

Who is online

Users browsing this forum: No registered users and 1 guest