“PCB800099”, also known as VS-TY2662-V1 is an LCD controller PCB which has entered the market relatively recently. As per usual I have no idea who designed either the board or who wrote its software, but I do know it is based on the Realtek RTD2662 controller, although some may be labelled RTD2660 (which in theory means no HDMI), but if your HDMI input works, it’s an RTD2662. This is just sloppy chip labelling. The RTD266x family represents Realtek’s “TV” lineup, and using this, you notice it.
With my favourite variety (the RM5451 and variants) of D.I.Y. LCD controllers getting long in the tooth, and this also being a Realtek looks like a promising replacement, but having ordered one, I’m not quite sure it is.
Here’s the things I didn’t like about it compared to R.RM5451:
- It feels more like a TV, less like a Monitor. The RM5451’s firmware mostly manages to stay out of your way, whereas with PCB800099, it’s firmware is in your face. You’ll get a no input “Blue screen”, comprehensive and lengthy OSD popups warning of “No Signal” and whatever input it’s set to.
- Because it’s a TV, it assumes that more than one input is in use at a time, and doesn’t auto detect, You’ve got to select the desired input. This is annoying when you’ve got it as a carry around rig using only one input at a time. At least once you a select an input, it remembers it even if you power it off. Thank god.
- For the more advanced hacker (i.e. one who’s bought the programmer kit), it’s not as great. Unlike RM5451 which comes with a reliable USB programmer, with hundreds of images for various LCD panels, PCB800099 has only a parallel port programmer with just a handful of binary images, hacked by the vendor to to support a few panels. Some images don’t work at all.
But it’s not all bad. I’ve added support for PCB800099 to my ROVATool application, allowing a USB programmer (More here) which at least makes the programming of these boards a bit easier, but I don’t support editing.
The panel I used here (LP171WP4) is unsupported by the supplied images, but by picking one with the same resolution and LVDS interface type and modifying the embedded EDID blocks I was able to get it working.
There are some pros to PCB800099 compared to RM5451. These are:
- Two composite inputs. Useful for someone considering this for a surveillance or reversing camera project
- It supports TTL panel output. There aren’t many boards that still do this
- It’s got an HDMI input (If DVI connectors are too bulky for you, because the audio capabilities are of no use on this)
- Like a TV, it comes with an infra-red remote control, if this kind of thing floats your boat
- It is connector compatible with R.RM5451, including the LVDS interface and backlight. Caveat: backlight enable signal is only driven to +3.3v, which in rare cases could cause issues. The LP171WP4 I’ve got it connected to is a rare example of this, where I’ve had to buffer it because it requires a +5V backlight enable signal.
Overall the hardware solution of the RTD266x is a clear improvement over the RTD2120L + RTD2545 combo of the RM5451/RM5251, but unfortunately in this case, unless you’re happy with the insides of a cheap TV, the same cannot be said for its firmware.
Firmware source code
It’s no secret that the source code for the firmware that runs on this board is out there. Licensing arrangements? Who knows.
A reader has kindly posted a source snapshot on github (originally provided by another reader) of the firmware, including the changes needed to make it actually compile and program with ROVATool.
You can view it here.
It’s generally compiled with the Keil C Compiler (which isn’t free).
Merge128K.bat has to be executed after compilation – to create a single .BIN file which ROVATool requires.
Contacting me about this board
I get a lot of emails about this board to the effect of “I just bought one of these – how do I make it work with X?” If you’re thinking of sending one, please don’t. Trying to train up even a single newbie on this subject can burn hours of my day.
I am always keen to hear from people who have already been on the journey of learning about display controllers, and are at an advanced level of understanding, and perhaps even may have something to add to what I have here.
Do feel free to leave a comment on this post, I might be able to quickly answer it, or perhaps someone else may know.
76 thoughts on “PCB800099 – RTD2660/RTD2662 based LCD Controller Review”
I just purchased some PCB800099 v0.9 board for interfacing N070ICG-LD1 boards to raspberry pi’s. Now the question is: How can I control brightness and turn on/off the display by the PI itself (Software)? This is essential for my project. Unfortunately, the manufacturer does have / give any information.
Any help would be highly appreciated.
With best regards & thank,
You can control the brightness and switch on/off the display by the 2 blue wire of 6-pin connector. You have to separate them, one is for on/off control (0V->off 3V3-> on) the other is for PWM input of brightness control. Pull this 2 blue wires from plug and connect directly to Pi’s IO pin that You can control.
Hope it helps.
Can you please clarify which pin is PWM input? On the 6-pin connector, there are two 12v and two GND pins on either side. And the middle two are On/Off (confirmed) and something labelled “NC”. Is this the PWM pin? Does it operate from 0 to 3.3V, or 0 to 5V? Thanks
I have the same question regarding the 6 pin header for PWM brightness control, which pin exactly for the PWM?
i understand as well that Pin3 is Enable pin, does that mean 4 as PWM? and what frequency is max brightness and what frequency is lowest?
Last night I tried pushing a PWM signal to that pin with an Arduino and it had zero effect…
I don’t doubt that there’s a way — I just have no idea what it is!
Sorry to jump in unannounced, but I would love to know if people have solved the pinouts to get PWM brightness control working on this controller. Thanks!
I checked two RTD2662-based PCB schematics and it seems the PWM and Power for the backlight are actually OUTPUTS, _not_ inputs. I’m afraid there’s no way to change them except firmware or cutting traces and soldering hacks..
Hey there I am also interested in controlling the brightness via the PI, Was anyone successful in this? Do you mind sharing?
thanks for the write-up! I wonder if there’s a way to grab analogue audio from this board. Are there points I can solder speakers to in order to tap the already-converted HDMI audio? Maybe that’s a bit much to ask from this board…
I’m fairly sure that the only audio output from RTD266x is SPDIF which is demuxed from the HDMI. It’s up to you to decode that analogue with additional silicon if needed.
I’m looking to use one of these boards with a 7″ 1280×800 LCD screen, available as sets on ebay.
My primary application would be FPV for multirotor UAV’s (“drones”), using 5.8GHZ video transmission going to the composite input, and maybe HDMI in the future.
The problem is the no-video bluescreen. I have different monitors that vary in tolerance/response for turning blue with a weak signal, as well as recovering back to viable video.
Obviously in FPV, snowy video is better than a blue screen. Is there any way to disable the bluescreen function and simply show the original “snowy” signal?
Thanks in advance for any help you can provide!
if you have 7″ 1280×800 go rather with TSUMV29 FWs can really comfortably turn off the blue screen…
I’ve got a PCB800099 V0.9 but I need to reconfigure EDID data.
I’m looking for the ROVA USB-TOOLS Programmer but it seems not to be available any more… 🙁
Do you know where I can get one ?
Thanks in advance.
I can’t see any on eBay. But assuming you’re using my software, one of these will work just fine using FTDI mode:
Other than that, you are on your own.
Also, try messaging njytouch. They surely will still have them even if there aren’t any listings on eBay at present.
Okay… my mistake.
I have to do it with an Adafruit FT232H board.
Hi, got my board with rtd2660 working, but the issue is: It show hdmi signal from windows 10 laptop, like INVERSE video.
Colors are false , blue background show like yellow gold.
Adjustment in the RGB settings do not correct this, neither color settings in the menu configuration, I left color temp in 6500.
Any ideas how to solve this, I plan to connect to Beaglebone Black or Raspberry PI3b.
Thanks for any reply.
Did you get this sorted out?
I am having the same problem with a LP171WX2-A4K7 display and what seems the right firmware (1440×900 dual channel 6-bit) but colors look incorrect.
Maybe the problem is not with the screen or the controller, but windows 10. maybe you could check the settings?
Was wondering something about this. If i supply it with 5v, it seems very picky on my power source, if i supply it with 5.1v it works fine, if it’s 4.99v it freaks out, which makes me wonder if the main regulator is set for 5 specifically. If so, would it be possible for me to completely bypass the regulator, or even remove it, since i’m using 5v anyways?
It runs on 12 volts.
About that, I mistakenly plug a 5V power supply, and everything worked fine for many hours until I find out my mistake (This was a “huge” power block (6A) with the same form factor than my regular 12V ones).
After that I tried successfully to power it from a 5V USB power bank, so I may actually try this since I’m doing a portable thingy.
The only difference is that the 12V pins on the various headers are now providing 5V, which isn’t a surprise, but it worth knowing about this.
Hi, is there a way to flash using and arduino as breakout board?
It’s not something I’d add to this suite myself, but I am certainly willing to assist anyone who wishes to attempt it.
Something like this would be able to be used as a basis for such a project: https://gist.github.com/kraftb/8c0bbcc35a9778608d74
Good day. I’m from Taiwan. May I ask you a question?
Now, I found a problem of my VGA output.
As we know, new LCD monitor are up to FHD.
But old system was not support, it just has VGA out.
And it is not standard resolution, for example
640×500 H24.8KHz, V 47.9Hz
640×400 H24.8KHz, V56Hz
720×520 H31.4KHz, V57.9Hz
My problem is can I use RTD2660 to convert these signal
to New LCD monitor or LCD module?
Can you give me some suggestion, as your experience.
Hi, any other board that supports hdmi audio in –> speaker out??
This board doesn’t have internal speaker connector…
VS-TY2668-V1 or VS-TY2662-V4
im about to buy one of these controller board; im wondering can i update the firmware with a USB EEPROM Programmer like CH341A which is normally used for flashing computer BIOS!; you know just desolder the chip and erase it and write the new program and solder it again?? any input will be greatly appreciated
sure u can
I wanted to say thanks for posting this information !
I wish I had come across your post earlier, when I was trying to decide from which seller to buy a controller. I was oscillating between njytouch and others. I finally decided to go with unique.buy*. To anyone interested in having their product delivered quickly avoid the ebay user unique.buy* (after one week and having paid for expedited shipping, I still don’t have a valid tracking number from this user, despite his very high ebay rating o.O). I will now proceed with ordering from njytouch, which you recommend here. I hope my experience will help others in making the right decision from the start.
I would like to ask you 2 questions about RTD2660 board:
1- Is it possible to reduce the startup time? AV comes after about 4 seconds by first start or by power on/off.
2- How can we get the board in power saving mode?
Any help would be highly appreciated.
If you want the original specification of PCB800099 you can find here:
Use an online translator like https://www.onlinedoctranslator.com/
And you will get good information
is there any (confirmed) way to turn on/off the backlight out of a Raspberry Pi (GPIO)?
I’m using one of these boards in an android integration project in my bmw. Is there any way through firmware modification to disable the composite input selection when switching sources? I use the VGA and hdmi and one of the composites is triggered by my reverse camera feed but I don’t require this as a selectable input.
Did you found a solution ? I have the same problem as you. 🙂
I have some experience with this board and have seen it used as a part of many LCD hobbyist kits with LVDS displays, often with a little breakout board that attaches to it.
They often will fail after several hours of use and I figured out why: people are connecting their LCD backlights to the 3.3V logic supply and this is pulling far more current through the 3.3V domain than its built for. The inductor coil on the switching power supply reaches over 290ºF after about 45 minutes when using my HSD070PWW1 and then this causes downstream components to be damaged.
I solved this my building my own separate switching power supply that can provide enough current and driving the backlight with that. Another solution I found that seems to work also (although haven’t tested it as much) is to replace the inductor coil (82uH) with one which can handle over 2A. I replaced it with AIUR-06-820K off digikey and this doesn’t get anywhere near as hot.
Just thought I would share.
the original inductor coil is 22uH not 82uH
Hi, I’m trying to modify the source code under the name Source1_081015_PCB800099. I have a problem that when VGA input is drawn only source of blue. Red and green not working. Does anyone have any advice on how to fix it. Somewhere there is an error in the source code, but I can not figure it out.
I have bought on of these boards with RTD2660 to connect it to a 10inch 1024×600 LCD. The LCD model is B101AW03. But it does not work. I only get a black screen and then it fades and turn of. With an HDMI to my computer it is detected and I can select different resolutions but the LCD still does not work. I am wondering if there is a firmware that I need to flash for this to work with my LCD. Please help me because I can not seem to find any firmware files on the net,
this reply may be too late but yes this seems like a firmware problem, for the mentioned screen you need to use the “PCB800099-LVDS1024x600-s6-ej070na02-2av1vga1hdmi-5key-ir2” firmware.
youll find it with many others here: https://github.com/raparram/Programador-I2C-RTD2660-Rpi3/tree/master/PCB800099
Loved this useful page – much appreciated 😉
I want to use the Board with an LED 10.1 Screen from China (Raspberry 10.1 Set HDMI)
Is this 3.3V issue with the overload on the coil restricted to special Screens,
Or where do I see the supply voltage of Backlight system?
What’s your long- term experience with that Board in terms of durability ?
i been using this controller for sometime now, i recently got this same annoying problem mentioned here: https://www.cnet.com/forums/discussions/samsung-lcd-keeps-resetting-to-default-factoy-settings-410377/
the fix in the link above didnt work, i guess those are only for samsung tvs, it must be i have to do something different for this board, i cant figure it out, i searched on the net but i found nothing, anyway it will be a great help if anyone have a clue how to get rid of this issue, thankyou
after loading a different firmware this problem is no longer present
narrowing it to this one NL8048AC21-01F
Anybody to help me find a compatible controller, please?
Ebay is fulll of controllers but no seller is able to confirm compatibility. Only one is offering me this but it is only VGA. I need hdmi connectivity.
mmm no one 🙁
I’ve that famous PCB800099 v9, a 19″ (1600×900) and a 23″ (1920×1080) LCD panel. I want to drive one of these panels while the input is either VGA or HDMI. I’ve downloaded some source codes (and I’m sure that all of them have the same structure –you may noticed) and I’m playing with them.
I modified the Panel_LVDS.h by adding a custom panel data for 1600×900, setting the active panel variable to that custom panel type and making an EDID for it. It works nice for HDMI. The problem is, when I change _NORMAL_SOURCE to _SOURCE_VGA, _VGA_SUPPORT to _ON and _VGA_EDID to _ON, it stops. I’ve tried everything on panel description struct and EDID, but no go. Actually, if I don’t connect the VGA socket the display is showing “VGA” first then “NO SIGNAL”; but when I connect the VGA socket, it stops. Shows nothing.
I’ve downloaded some .bin files and one of them is says that it’s for 1280×800 LVDS displays. I’ve burnt that .bin file into the board and it works (but does not fit to the panel). So the problem does not come from VGA input circuitry. It’s something software-related issue.
So what should I do to support VGA input?
hello. You can share the working source codes. I already continuous time try to make change to the source code, but the result cannot achieve.
hello, I have the same problem and I cant solve this problem.
I just purchased PCB800099 v0.9 board for interfacing raspberry pi’s. I have a display IVO M101NWT2 and touch screen that have cable 11051502309 (1101H11A1).Now the question is: How can I add both with my PCB800099. I am not much aware of electronics things please let me know the solution? This is essential for my project. Cable for IVO display is LCD P10AM01 P/W: 45R-P10001-0202
this answer maybe late but anyway!
to connect the lcd to the controller board you need the proper cable, in your case you need to have a “40 Pin 1 Channel 6 Bit LVDS Cable”, like this one: https://www.banggood.com/40-Pin-1-Channel-6-Bit-LED-LCD-LVDS-Screen-Cable-For-Display-p-1140430.html
then to get the screen working you may need to flash the right firmware to the controller, you’ll find it here: https://github.com/raparram/Programador-I2C-RTD2660-Rpi3/tree/master/PCB800099
the one for your screen is in the list, namely:”PCB800099-LVDS1024x600-s6-ej070na02-2av1vga1hdmi-5key-ir2.bin”
as for the touch screen i am not sure, i know that if you have this kind: https://www.aliexpress.com/item/10-1-inch-4Wire-228-x149-mm-Resistive-Touch-IPS-LCD-Touch-Screen-for-HSD101PWW1-B101AW03/32816058291.html
then all you need to do is plug it to your raspberry usb,
anyway take care
Have a few of these boards now and have just successfully flashed one without any extra hardware!
being a bit of a linux noobie, it took a few hours to get ubuntu live CD working but i’ve now got a board flashed ready for an 800×600 screen – as soon as my LVDS cable turns up!
Does anyone know what the IR codes the PCB800099 understands are?
I used this PCB Board in my ECG and for control used HDMI cable of other modules. When I test for the EMC test, this is radiate and NOT pass. Dose any know why solve this problem.
Odd question. From what I can tell, the only way to switch inputs is to click a button and cycle, in order, through the various input sources. Is there a way to jump to a particular input, or reverse the order of the input cycling?
I’d like to be able to push a single button and have it go to HDMI, and then press another button and have it go to AV1, and back again. Is this possible?
Almost same question here. Default source seems to be VGA. Is there any way to make the HDMI input default or force HDMI somehow? I‘m building an arcade bartop with a Pi 3 and it would be great if it starts with the correct source input without having to push additional buttons. Screen controls would be hidden inside the cabinet anyway.
Simple question: Does anyone have, or know where I can find, a schematic diagram for this board? I am not a super hacker, but would love to know if SPDIF audio appears at any of the numerous headers that populate this controller….
I’ve never seen a schematic for this board.
Hello! First off: Wow! What a journey I’ve been on, and I must thank you for your blog! I have had two of the PCB800099 boards for quite a number of years with stories behind them for another day. After monkeying around, I got RovaTool to read and write images to the boards. Some EDID learning with free tools (Deltacast and EEditGold) did WONDERS for making the board present a native resolution to the source machine so I have a crisp display. Now, I have Keil. I have the source. I have set the panel info. I have compiled and linked to a BIN. It ‘looks’ good on the inside of the BIN. But I’ll be damned if I can get it to not be a scrambled load of junk after uploading it to the board. I REALLY want to be able to compile the code myself so I can make some changes to it – with the #1 goal of getting it to support TTL 640×480 panels (I know – odd). Has anyone been able to make a working firmware image from the source?
Nevermind! I figured out my issue – was compiling on a 64bit version of Windows which didn’t support HEX2BIN, and was using CreateBin.exe. I ran HEX2BIN on an old 32bit machine and it produced a viable BIN file. Still not 100% sure I am out of the woods, but at least I know where my issue was now.
Any chance you can share the firmware file you compiled? Im having issues getting my 640×480 screens working and I dont have a license for Keil. Im using ZJ050NA-08C panels.
I’ve got a question:
I want to flash the board with a CH341A-Programmer. I get a connection to the chip.
But the new firmware is just 256 KB and the flash-chip is 512 KB big.
What do I have to do? Has it to be flashed to a specific location in the flash? Should I flash it just 2 times? Should I leave the second half of the chip blank?
hi everyone, on github raparram which firmware is for panel B141EW04, and the size for bin file is it correct only 256k?
can i flash the eeprom with ch341?
Hello, I was seraching the web for some documentation about the PCB800099 LVDS Driver Board. One of my first search results was this site. But no documentation was found: Later I found this (manufacturer) site where docs, specs firmware, updater and firmware source code is available 🙂
Maybe it helps somebody else.
I just purchased a PCB800099-V.9 to connect it to a Toshiba laptop monitor and run my PS4 through it and I want to know how to connect speakers to the board it does have an HDMI input which does support sound I just do not know how or where to connect speakers and I realize that it does not have an amplifier in it and I would need to get something for that but once I have that I do not know where to connect that.
I would like this too.
I have a PCB800099 board and a 7 “1024×600 IPS display from Feelworld FPV720 monitor.
If I load the firmware for 1024×600 TTL 24 bit monitor, the image is shifted and Windows sees the monitor as 1280×720 recommended.
Monitor Labeling is CPT070IPS-600, HLX0701G-27A0-150709,
flex cable marking XXGD-FPC070-TI-01A
I’m sending an attachment with a picture. Unfortunately I dont have longer FEELWORLD electronic board from which to transfer the firmware from EEPROM. FEELWORLD has not released the firmware for migration.
Thank you very much for any help !!!
Bit of a long shot, but I have a AT080TN64 display, but I can’t seem to find the firmware anywhere to program the PCB800099 driver board. I don’t suppose you have it handy?
I have one of these which kinda seems to work ok with my 17.1 16:10 LCD (can’t remember it’s model) with 1440×900 res. It is a dual channel, 6 bit display. I have already flashed a firmware with the same parameters.
The thing is the image has a red tint, so there must be something wrong. The same cable and display combo used to work just fine with a different make/model controller, but I’m experiencing difficulties getting this sorted out.
Can anyone help?
I have a unique display challenge where I need to convert an old custom CRT rasterized image running at 61Hz vert & 7.8KHz horiz to an LCD display. Both H & V have neg sync pulses and there is a video signal that is either ON (bright dot) or off.
The H is 1/2 the normal NTSC rate of 15750Hz.
Does anyone know of a controller chip that can be programmed for that H freq?
i would like to ask , if this touchscreen can be connected on the pcb800099 board https://www.aliexpress.com/item/10000281901695.html
Hola tengo la versión nueva del controlador PCB800099-V.9, por un descuido en la alimentación se me quemo el optoacoplador, opto regulador o circuito integrado de 6 pines o como se llame, se ubica justo a la entrada de la alimentación, alguien que tenga me podría brindar su valor. Gracias.
I found your page while searching for a TFT controller. This is some sort of retro project: I want to use a TFT with an old computer, I’ve developed. I have RGB and horizontal/vertical sync signals, but they are not VGA-compatible, but instead hsync is 15kHz. Do you think, the controller ICs will convert these signals, too? Or do I need to double the frequency before feeding the signal into the IC? Do you have any experience with interlace? Is an interlace signal buffered or just put trough those ICs?
I have already a PCB here, that can control my display, but it refuses to work with the 15kHz input signal. The PCB is based around an IC called NT6867UFG, but I haven’t found anything useful for this IC…
I used this tutorial and it works perfectly.
PSD: Don’t forget to connect A4 to SCL and A5 to SDA and GND to GND of the arduino.
For anyone considering this board, it doesn’t need 12V 2-4A like many product pages say. It works fine even with 5V 0.5A from a USB port.