EEVblog Electronics Community Forum

Electronics => Projects, Designs, and Technical Stuff => Topic started by: HSPalm on October 13, 2015, 11:06:36 am

Title: Getting analog video into mobile phone replacement LCDs?
Post by: HSPalm on October 13, 2015, 11:06:36 am
Hi,
I guess there is some info online to find, but no matter how hard I google, it only shows results with guides to how LCDs are replaced.

I know mike from mikeselectricstuff did some good research on some small iPod screens. But is there any other common replacement screen for phones that have had their driver circuit reverse engineered and a driver board with analog output (preferred) have been made? It's such a shame that these screen which are often very good quality and high resolution (and very cheap!) has no use in hobby products...

I'm investigating making some DIY video goggles like the http://www.fatshark.com/ (http://fatsharks), but I want it more compact than the http://www.hobbyking.com/hobbyking/store/__78125__Quanum_DIY_FPV_Goggle_V2_w_5_inch_LCD_Monitor_Kit_.html (http://quanum ones).

The ideal screen size is 3-4".
Title: Re: Getting analog video from mobile phone replacement LCDs?
Post by: SL4P on October 13, 2015, 01:28:28 pm
I think your post title should be...

Getting analog video INTO mobile phone replacement LCDs?
Title: Re: Getting analog video from mobile phone replacement LCDs?
Post by: HSPalm on October 14, 2015, 11:44:53 am
I think your post title should be...

Getting analog video INTO mobile phone replacement LCDs?

You are correct, I edited it.
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: Kilrah on October 14, 2015, 01:28:26 pm
and a driver board with analog output (preferred) have been made?
You mean input I guess.

There are many generic driver boards, can find some on eBay:
http://www.ebay.com/bhp/lcd-controller-board-hdmi (http://www.ebay.com/bhp/lcd-controller-board-hdmi)

BUT those usually apply to larger screens on which the interface is a bit better standardized. Mobile phone screens often need to be so compact that they use very different potentially custom interfaces, i.e. any attempt at a converter board would be limited to a small number of screen models and thus not worth it.
The converters above are also big and usually more expensive than a whole Quanum set.
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: HSPalm on October 21, 2015, 02:54:10 pm
and a driver board with analog output (preferred) have been made?
You mean input I guess.

There are many generic driver boards, can find some on eBay:
http://www.ebay.com/bhp/lcd-controller-board-hdmi (http://www.ebay.com/bhp/lcd-controller-board-hdmi)

BUT those usually apply to larger screens on which the interface is a bit better standardized. Mobile phone screens often need to be so compact that they use very different potentially custom interfaces, i.e. any attempt at a converter board would be limited to a small number of screen models and thus not worth it.
The converters above are also big and usually more expensive than a whole Quanum set.

Thanks for your reply. What I found out was that the cell phone industry is sort of on it's way to standardize on MIPI DSI, which I understand is like a component level HDMI/Display Port. The iPhone 4 and 4s screen is 3.5" and 640 x 960 resolution, and costs around $13. It's the perfect screen.

STM32F469/479 comes with MIPI DSI controller. I'm used to some embedded programming, but advanced graphics would be a steep learning curve. Could I use this mcu to read PAL/NTSC composite video via ADC and just draw the pixels back on the MIPI DSI display?  ::)
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: unitedatoms on October 21, 2015, 03:17:09 pm
Hi,
I guess there is some info online to find, but no matter how hard I google, it only shows results with guides to how LCDs are replaced.

I know mike from mikeselectricstuff did some good research on some small iPod screens. But is there any other common replacement screen for phones that have had their driver circuit reverse engineered and a driver board with analog output (preferred) have been made? It's such a shame that these screen which are often very good quality and high resolution (and very cheap!) has no use in hobby products...

I'm investigating making some DIY video goggles like the http://www.fatshark.com/ (http://fatsharks), but I want it more compact than the http://www.hobbyking.com/hobbyking/store/__78125__Quanum_DIY_FPV_Goggle_V2_w_5_inch_LCD_Monitor_Kit_.html (http://quanum ones).

The ideal screen size is 3-4".

I have a pile of new boards exactly for this. Your post made me to list it on eBay (for USA only). http://www.ebay.com/itm/-/121793709812? (http://www.ebay.com/itm/-/121793709812?)

Hope, (even if you are not in USA) it will help you to identify what you can use better.

(http://unitedatoms.com/media/1090/img_0127.jpg)
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: Rasz on October 21, 2015, 04:30:25 pm
you will need cpld/fpga + pal/ntsc decoder(ancient SAA7112/SAA7115?) chip to shoot analog video into cellphone lcd. hmmm maybe fast ARM m4 could also handle it instead of fpga
something like http://andybrown.me.uk/2013/10/19/vivaz-u5-lcd/ (http://andybrown.me.uk/2013/10/19/vivaz-u5-lcd/) + pal decoder


laptop screens are cheaper and easier, $12 gets you universal controller, lcd you can get from a broken laptop for free, add black cardboard shroud to remove reflections and you have pretty nice cheap FPV setup
https://sites.google.com/site/lcd4hobby/ (https://sites.google.com/site/lcd4hobby/)
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: krivx on October 21, 2015, 04:36:09 pm
Some small LCD units come with a pretty similar board https://www.eevblog.com/forum/reviews/mini-teardown-5'-hd-800x480px-car-lcd-monitor-screen/ (https://www.eevblog.com/forum/reviews/mini-teardown-5'-hd-800x480px-car-lcd-monitor-screen/)
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: Rasz on October 21, 2015, 05:00:03 pm
Some small LCD units come with a pretty similar board https://www.eevblog.com/forum/reviews/mini-teardown-5'-hd-800x480px-car-lcd-monitor-screen/ (https://www.eevblog.com/forum/reviews/mini-teardown-5'-hd-800x480px-car-lcd-monitor-screen/)

those chinese TVs use ~400x270 LCD screens, if that resolution is fine then go for one, just make sure it can handle signal dropout
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: HSPalm on October 22, 2015, 08:29:57 am
Hi,
I guess there is some info online to find, but no matter how hard I google, it only shows results with guides to how LCDs are replaced.

I know mike from mikeselectricstuff did some good research on some small iPod screens. But is there any other common replacement screen for phones that have had their driver circuit reverse engineered and a driver board with analog output (preferred) have been made? It's such a shame that these screen which are often very good quality and high resolution (and very cheap!) has no use in hobby products...

I'm investigating making some DIY video goggles like the http://www.fatshark.com/ (http://fatsharks), but I want it more compact than the http://www.hobbyking.com/hobbyking/store/__78125__Quanum_DIY_FPV_Goggle_V2_w_5_inch_LCD_Monitor_Kit_.html (http://quanum ones).

The ideal screen size is 3-4".

I have a pile of new boards exactly for this. Your post made me to list it on eBay (for USA only). http://www.ebay.com/itm/-/121793709812? (http://www.ebay.com/itm/-/121793709812?)

Hope, (even if you are not in USA) it will help you to identify what you can use better.


Thank you. I see the board is exactly the same as in the 5" LCD teardown that Krivx link to.

you will need cpld/fpga + pal/ntsc decoder(ancient SAA7112/SAA7115?) chip to shoot analog video into cellphone lcd. hmmm maybe fast ARM m4 could also handle it instead of fpga
something like http://andybrown.me.uk/2013/10/19/vivaz-u5-lcd/ (http://andybrown.me.uk/2013/10/19/vivaz-u5-lcd/) + pal decoder


laptop screens are cheaper and easier, $12 gets you universal controller, lcd you can get from a broken laptop for free, add black cardboard shroud to remove reflections and you have pretty nice cheap FPV setup
https://sites.google.com/site/lcd4hobby/ (https://sites.google.com/site/lcd4hobby/)
That first link is interesting. But, all though someone manages to drive the LCD with an Arduino or even stm32 that still doesn't mean they can handle the resolution of that display with 30 fps video. Which is why I mentioned the STM32F469 with separate MIPI DSI controller capable of 720p at 30fps.

But laptop screens are far too large, the pixel density is much higher, and the cost is also higher.

Some small LCD units come with a pretty similar board https://www.eevblog.com/forum/reviews/mini-teardown-5'-hd-800x480px-car-lcd-monitor-screen/ (https://www.eevblog.com/forum/reviews/mini-teardown-5'-hd-800x480px-car-lcd-monitor-screen/)

Some small LCD units come with a pretty similar board https://www.eevblog.com/forum/reviews/mini-teardown-5'-hd-800x480px-car-lcd-monitor-screen/ (https://www.eevblog.com/forum/reviews/mini-teardown-5'-hd-800x480px-car-lcd-monitor-screen/)

those chinese TVs use ~400x270 LCD screens, if that resolution is fine then go for one, just make sure it can handle signal dropout

The first FPV goggles had resolutions similar to this. The Fatshark Dom v2 and HD are miles better. I was hoping to find a neater solution where I'm in control of what is signal loss or not (in other words just display static when there is static.


As mentioned before, the iPhone 4 and 4s screens are perfect. They use MIPI DSI. Composite video comes from the video receiver. I don't need to draw anything on the screen, so bit-banging from an ADC straight to the MIPI DSI would work if I could make it. Maybe some logic to choose whether to stretch the image or keep the 4:3 format from the camera. If I want local OSD I can use the MAX7456 on the analog signal.
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: Rasz on October 22, 2015, 09:00:11 am
That first link is interesting. But, all though someone manages to drive the LCD with an Arduino or even stm32 that still doesn't mean they can handle the resolution of that display with 30 fps video. Which is why I mentioned the STM32F469 with separate MIPI DSI controller capable of 720p at 30fps.

But laptop screens are far too large, the pixel density is much higher, and the cost is also higher.

:palm:
you need to work on your reading comprehension, you contradict me by .. repeating what I said and denying reality :/
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: HSPalm on October 22, 2015, 02:34:14 pm
That first link is interesting. But, all though someone manages to drive the LCD with an Arduino or even stm32 that still doesn't mean they can handle the resolution of that display with 30 fps video. Which is why I mentioned the STM32F469 with separate MIPI DSI controller capable of 720p at 30fps.

But laptop screens are far too large, the pixel density is much higher, and the cost is also higher.

:palm:
you need to work on your reading comprehension, you contradict me by .. repeating what I said and denying reality :/

Please, I invite you to inform me better on how I misunderstood you (did I?). If you count the number of forum posts required to make me get your point, you will see how intermediate statements like this will make you reply me at least twice. If you intend on further informing me, that is, and not just leave me hanging.

Laptop screens are easier to interface, yes. But they are too big, yes. If this was your point also I guess it was just a statement of agreement from my side :) The LCD in the Andy Brown-link is indeed driven by an M4 like you point out, but do you agree it is not sufficient for video?

Btw there was a typo in my post, I meant pixel density is much lower in laptop screens.
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: bktemp on October 22, 2015, 08:32:17 pm
A microcontroller is the wrong way for this unless it has a dedicated video pipeline. Since you do not want to do much processing on the video data, a FPGA can easily handle the data rates:
http://electricstuff.co.uk/nanohack.html (http://electricstuff.co.uk/nanohack.html)
You can even implement a scaler for resizing the video data to match the screen resolution.
A very good and easy to use video decoder is the TVP5150. It accepts PAL, NTSC and SECAM composite or s-video and outputs digital YUV data.
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: HSPalm on January 21, 2016, 10:15:04 am
A microcontroller is the wrong way for this unless it has a dedicated video pipeline. Since you do not want to do much processing on the video data, a FPGA can easily handle the data rates:
http://electricstuff.co.uk/nanohack.html (http://electricstuff.co.uk/nanohack.html)
You can even implement a scaler for resizing the video data to match the screen resolution.
A very good and easy to use video decoder is the TVP5150. It accepts PAL, NTSC and SECAM composite or s-video and outputs digital YUV data.

Hi there, didn't see your answer until now.

Yes, I'm aware. I wrote briefly about a STM32 mcu with MIPI DSI peripheral a few posts up, STM32F469. If my idea would ever become a product it couldn't cost too much. Power is also an issue because it's battery powered, all though the LCD with probably consume the most power anyway.

I fund this new intersil chip, TW9992, seems to do exactly what I need.
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: bktemp on January 21, 2016, 12:20:14 pm
Yes, I'm aware. I wrote briefly about a STM32 mcu with MIPI DSI peripheral a few posts up, STM32F469. If my idea would ever become a product it couldn't cost too much. Power is also an issue because it's battery powered, all though the LCD with probably consume the most power anyway.

I fund this new intersil chip, TW9992, seems to do exactly what I need.
A STM32F469 can drive MIPI LCDs and read video data using the DCMI, but I doubt it has enough processing power to scale the image to fit the LCD screen.
Video scaling is simple, but it needs to be done for each pixel. Therefore the best way to do this is a FPGA or a dedicated ASIC where all the scaling operations can be easily pipelined.

The TW9992 looks interesting, but it can not drive MIPI displays directly: It is an analogue video to MIPI CSI converter designed for streaming camera data to a video processor.
For driving MIPI displays it would need a scaler to match the video stream to the display resolution and a MIPI DSI output.
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: chris_leyson on January 21, 2016, 11:19:18 pm
If you want to digitize analogue video go for the TI TVP5150, they are good for 720p you get 8-bit YUV 4:2:2 format video, they're low power and good enough video quality for a small LCD. You need to put some interface logic in to drive your display, cpld or fpga, or whatever.
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: savril on January 22, 2016, 08:49:21 am
Yes, I'm aware. I wrote briefly about a STM32 mcu with MIPI DSI peripheral a few posts up, STM32F469. If my idea would ever become a product it couldn't cost too much. Power is also an issue because it's battery powered, all though the LCD with probably consume the most power anyway.

I fund this new intersil chip, TW9992, seems to do exactly what I need.
A STM32F469 can drive MIPI LCDs and read video data using the DCMI, but I doubt it has enough processing power to scale the image to fit the LCD screen.
Video scaling is simple, but it needs to be done for each pixel. Therefore the best way to do this is a FPGA or a dedicated ASIC where all the scaling operations can be easily pipelined.

The TW9992 looks interesting, but it can not drive MIPI displays directly: It is an analogue video to MIPI CSI converter designed for streaming camera data to a video processor.
For driving MIPI displays it would need a scaler to match the video stream to the display resolution and a MIPI DSI output.

The STM32F469 has an integrated DSP and graphic ART accelerator. It should be possible to use it to scale the video, but I don't know if it has enough throughput.
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: HSPalm on January 22, 2016, 09:38:16 am
The TW9992 looks interesting, but it can not drive MIPI displays directly: It is an analogue video to MIPI CSI converter designed for streaming camera data to a video processor.
For driving MIPI displays it would need a scaler to match the video stream to the display resolution and a MIPI DSI output.

So the MIPI signals that go from a camera to a processor are different from those that go from a processor to a lcd?
Not sure if I understand you correctly here. This video processor you refer to, is this not part of the display? If I buy an iPhone lcd and interface it via its MIPI DSI signal lines, will not the part you're talking about be integrated into the display? The actual driving of the pixels I understand is done at the video processor, but I never thought this was done at the controller side (TW9992 for instance) either.

The TW9992 has The MIPI data signals, clock +/- and data +/-, that correspond with MIPI DSI display interface. It only has one data line, for instance the iphone lcds have four data lines but this varies between lcds and I've read that the single data line then only limits resolution, color depth or refresh rate, it does not make it non-compatible.

The first control registers of the MIPI interface at the TW9992 include, amongst others, 13-bit picture height and width registers. 


If you want to digitize analogue video go for the TI TVP5150, they are good for 720p you get 8-bit YUV 4:2:2 format video, they're low power and good enough video quality for a small LCD. You need to put some interface logic in to drive your display, cpld or fpga, or whatever.

Thanks, I will look into it. But first and foremost I will extensively ensure that there are no solutions ready made for my application. It may end up being a two-chip solution but I sure would not like of of those two chips to need programming, other than via registers at least.

"Good enough" quality I'm not sure what is yet. I choose the smart phone lcds because they have such high pixel density and large resolutions. In my application these screens will be magnified right in front of your eyes to resemble a 80" or 100" TV, they will not be used in the traditional sense of holding the screen 40cm away from you to read a text or look at a picture.


Yes, I'm aware. I wrote briefly about a STM32 mcu with MIPI DSI peripheral a few posts up, STM32F469. If my idea would ever become a product it couldn't cost too much. Power is also an issue because it's battery powered, all though the LCD with probably consume the most power anyway.

I fund this new intersil chip, TW9992, seems to do exactly what I need.
A STM32F469 can drive MIPI LCDs and read video data using the DCMI, but I doubt it has enough processing power to scale the image to fit the LCD screen.
Video scaling is simple, but it needs to be done for each pixel. Therefore the best way to do this is a FPGA or a dedicated ASIC where all the scaling operations can be easily pipelined.

The TW9992 looks interesting, but it can not drive MIPI displays directly: It is an analogue video to MIPI CSI converter designed for streaming camera data to a video processor.
For driving MIPI displays it would need a scaler to match the video stream to the display resolution and a MIPI DSI output.

The STM32F469 has an integrated DSP and graphic ART accelerator. It should be possible to use it to scale the video, but I don't know if it has enough throughput.

The STM32F469 is a bit pricey though... At $13 in 1000 quantities ($20 in single quantity). I'm sure it would be more worth it in a sophisticated  embedded product with lots of interaction and at higher sales prices, but in my simple low cost FPV goggles its job would be solely video conversion. Of course I will keep it as an option.
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: bktemp on January 22, 2016, 02:14:13 pm
The STM32F469 has an integrated DSP and graphic ART accelerator. It should be possible to use it to scale the video, but I don't know if it has enough throughput.

The ART accelerator can only move image data around and blend images together. Scaling is a completely different task. If you drop frames or discard pixels instead of scaling them properly it will work. But a STM32 is still a bad choice for a video converter.
A FPGA or a dedicated video converter IC does the same job much better.

The TW9992 looks interesting, but it can not drive MIPI displays directly: It is an analogue video to MIPI CSI converter designed for streaming camera data to a video processor.
For driving MIPI displays it would need a scaler to match the video stream to the display resolution and a MIPI DSI output.

So the MIPI signals that go from a camera to a processor are different from those that go from a processor to a lcd?
Not sure if I understand you correctly here. This video processor you refer to, is this not part of the display? If I buy an iPhone lcd and interface it via its MIPI DSI signal lines, will not the part you're talking about be integrated into the display? The actual driving of the pixels I understand is done at the video processor, but I never thought this was done at the controller side (TW9992 for instance) either.

The TW9992 has The MIPI data signals, clock +/- and data +/-, that correspond with MIPI DSI display interface. It only has one data line, for instance the iphone lcds have four data lines but this varies between lcds and I've read that the single data line then only limits resolution, color depth or refresh rate, it does not make it non-compatible.

The first control registers of the MIPI interface at the TW9992 include, amongst others, 13-bit picture height and width registers. 
MIPI is only the physical layer. It describes all the electrical stuff and how the data packets are being transferred. MIPI is most common used for MIPI-DSI (display) and MIPI-CSI (camera) but it is also used for transferring other data between the main processor and its subsystems.
The TW9992 will transmit the video data, but the data will have the wrong resolution and wrong colour format and maybe use the wrong commands. And also the initialisation sequence needed to turn the display on is missing.
A STM32F469 has a quite good MIPI DSI interface that can be used to drive almost every small MIPI DSI display up to about 800x480. If you look at its documentation, there is a list of MIPI specs. Maybe you can find the files somewhere.
The MIPI-DSI protocol supports 2 different modes: Video and command mode. Depending on the display both or one of both is supported.
Because most MIPI displays are custom build, it is hard to find good documentations including the full command set. The basic commands are fixed in the MIPI specifications, but most displays also use non standard commands for additional settings. Some of them are needed make the display fully operational.
Title: Re: Getting analog video into mobile phone replacement LCDs?
Post by: HSPalm on January 26, 2016, 02:44:44 pm
The STM32F469 has an integrated DSP and graphic ART accelerator. It should be possible to use it to scale the video, but I don't know if it has enough throughput.

The ART accelerator can only move image data around and blend images together. Scaling is a completely different task. If you drop frames or discard pixels instead of scaling them properly it will work. But a STM32 is still a bad choice for a video converter.
A FPGA or a dedicated video converter IC does the same job much better.

The TW9992 looks interesting, but it can not drive MIPI displays directly: It is an analogue video to MIPI CSI converter designed for streaming camera data to a video processor.
For driving MIPI displays it would need a scaler to match the video stream to the display resolution and a MIPI DSI output.

So the MIPI signals that go from a camera to a processor are different from those that go from a processor to a lcd?
Not sure if I understand you correctly here. This video processor you refer to, is this not part of the display? If I buy an iPhone lcd and interface it via its MIPI DSI signal lines, will not the part you're talking about be integrated into the display? The actual driving of the pixels I understand is done at the video processor, but I never thought this was done at the controller side (TW9992 for instance) either.

The TW9992 has The MIPI data signals, clock +/- and data +/-, that correspond with MIPI DSI display interface. It only has one data line, for instance the iphone lcds have four data lines but this varies between lcds and I've read that the single data line then only limits resolution, color depth or refresh rate, it does not make it non-compatible.

The first control registers of the MIPI interface at the TW9992 include, amongst others, 13-bit picture height and width registers. 
MIPI is only the physical layer. It describes all the electrical stuff and how the data packets are being transferred. MIPI is most common used for MIPI-DSI (display) and MIPI-CSI (camera) but it is also used for transferring other data between the main processor and its subsystems.
The TW9992 will transmit the video data, but the data will have the wrong resolution and wrong colour format and maybe use the wrong commands. And also the initialisation sequence needed to turn the display on is missing.
A STM32F469 has a quite good MIPI DSI interface that can be used to drive almost every small MIPI DSI display up to about 800x480. If you look at its documentation, there is a list of MIPI specs. Maybe you can find the files somewhere.
The MIPI-DSI protocol supports 2 different modes: Video and command mode. Depending on the display both or one of both is supported.
Because most MIPI displays are custom build, it is hard to find good documentations including the full command set. The basic commands are fixed in the MIPI specifications, but most displays also use non standard commands for additional settings. Some of them are needed make the display fully operational.

The explanation on MIPI-DSI vs MIPI-CSI killed my dreams for now :)