KV-27V66 I2C RGB Mod

The place for all discussion on gaming hardware
Post Reply
coredump
Posts: 14
Joined: Mon Jul 26, 2021 7:32 pm

KV-27V66 I2C RGB Mod

Post by coredump »

Hello there. After hitting my head on the wall a little I was able to make the unused RGB input on a 27V66 usable and finally get RGB there. I wrote about it on my buildlog: https://coredump.io/sony_rgb_mod/

The gist of it tho:
  1. Needs something between the Micom and Jungle to alter register 0XA last bit. The Micom sends data in groups of three, so 0XA is actually included on the 0X9 group.
  2. Sync has to be input via SVideo or the image is way to the right, but that seems like a problem existing in other mods too.
  3. I think it needs standby power because of the initial tests/self checks that the micom/jungle do
I still haven't figured out how to make the input name (DVD, Game, etc) disappear from the screen. It wasn't there during one of my tests, but now it's there all the time, even using the display key on the remote.

In any case, maybe this will be helpful to someone. I reckon it will probably work on any set with the same chassis or at least the same jungle ic.
User avatar
Osirus
Posts: 218
Joined: Tue Jun 16, 2020 8:51 pm

Re: KV-27V66 I2C RGB Mod

Post by Osirus »

Excellent work with all of this.
User avatar
matt
Posts: 614
Joined: Mon May 09, 2005 5:46 am
Location: Honolulu, Hawaii

Re: KV-27V66 I2C RGB Mod

Post by matt »

That is awesome! This could be a game changer for modding Trinitrons. Using the 2nd RGB input always seemed more professional to me than going through the OSD. Not only that, but there are other I2C registers that, if modified, could significantly increase the functionality of video mods on these TVs. Ideally, any BA-4 or BA-4D chassis TV could be made to seamlessly accept composite, s-video, component, and RGB as if it had been designed that way from the factory.

Have you given any thought to the following functions?

Y Sel - Disables external Y input on pin 37. This could simplify modding these TVs for component video, by eliminating the need to split the luma signal for sync and its associated brightness issues.

C Trap Off - On TVs without a separate comb filter (most of the 13" and 20" models), the trap filter is enabled by default. This ruins the picture if you mod the TV for S-Video. It can be disabled in the service menu, but that makes composite look terrible and it's a pain to do this every time you want to switch between Y/C and composite. If there's a way to change this on the fly via the arduino, it would make life much easier for those to want to use S-Video and composite.

H Position - If this value can be modified when RGB blanking is enabled, the horizontal position could be maintained without having to use the service menu. This would be especially helpful to people who want to use S-Video/composite and RGB on the same TV (mostly N64 owners I'd guess). Some Trinitrons have a horizontal position switch that you can wire up to the blanking switch to do this, but it's always good to have more options.

Interlace - This can be modified in the service menu on some of the later flat Trinitrons, but not on the curved BA-4 models. It effectively deinterlaces 480i to 240p by shifting one field by half a line. You can even select which field is shifted. This is great, especially for some of those Ps2 and Xbox 360 shmups that should be 240p but aren't.
coredump
Posts: 14
Joined: Mon Jul 26, 2021 7:32 pm

Re: KV-27V66 I2C RGB Mod

Post by coredump »

matt wrote:That is awesome! This could be a game changer for modding Trinitrons. Using the 2nd RGB input always seemed more professional to me than going through the OSD. Not only that, but there are other I2C registers that, if modified, could significantly increase the functionality of video mods on these TVs. Ideally, any BA-4 or BA-4D chassis TV could be made to seamlessly accept composite, s-video, component, and RGB as if it had been designed that way from the factory.

Have you given any thought to the following functions?

Y Sel - Disables external Y input on pin 37. This could simplify modding these TVs for component video, by eliminating the need to split the luma signal for sync and its associated brightness issues.

C Trap Off - On TVs without a separate comb filter (most of the 13" and 20" models), the trap filter is enabled by default. This ruins the picture if you mod the TV for S-Video. It can be disabled in the service menu, but that makes composite look terrible and it's a pain to do this every time you want to switch between Y/C and composite. If there's a way to change this on the fly via the arduino, it would make life much easier for those to want to use S-Video and composite.

H Position - If this value can be modified when RGB blanking is enabled, the horizontal position could be maintained without having to use the service menu. This would be especially helpful to people who want to use S-Video/composite and RGB on the same TV (mostly N64 owners I'd guess). Some Trinitrons have a horizontal position switch that you can wire up to the blanking switch to do this, but it's always good to have more options.

Interlace - This can be modified in the service menu on some of the later flat Trinitrons, but not on the curved BA-4 models. It effectively deinterlaces 480i to 240p by shifting one field by half a line. You can even select which field is shifted. This is great, especially for some of those Ps2 and Xbox 360 shmups that should be 240p but aren't.
I mean, I assumed there are a bunch of stuff on the i2c regiisters that I could change, but I don't know what half of them mean :D I will check the ones you mentioned. It should be pretty easy/simple to just alter whatever communication is sent from the Micom to the Jungle via i2c.

At this moment I am trying to go away with the input name that keeps appearing. I think I need 0.7 < V < 2.0 volts on the YS2/YM pin.
User avatar
matt
Posts: 614
Joined: Mon May 09, 2005 5:46 am
Location: Honolulu, Hawaii

Re: KV-27V66 I2C RGB Mod

Post by matt »

Sorry, those ideas have been floating around in my head for months now as I've been experimenting with Trinitron mods! Modifying the I2C signals has the potential to solve most of the problems I've run into, but I have none of the programming experience necessary to make it happen. The one I'm most interested in is the Y Sel value - it could really help with YPbPr modding.

I suppose a quick way of getting rid of the input title would be to disconnect the blanking input from YS2. But that kind of takes away the point of this mod...

I have a KV-27V42 that I've been experimenting with and a couple of Arduino Micros, I'll see if I can try this mod out some time this week and see if I have the same problem.
coredump
Posts: 14
Joined: Mon Jul 26, 2021 7:32 pm

Re: KV-27V66 I2C RGB Mod

Post by coredump »

Yeah I tried the voltage to the YS2/YM pin thing, and it actually darkens the whole output aside from the OSD, so I was able to make the OSD MORE visible :D

I found out that connecting the YS2 to GND makes the OSD all but go away, so I don't see the channel name, but I also don't see anything from the OSD anymore (inclusing volume stuff).

I tried sniffing the I2C code to see if there was something that I could change there to disable the channel showing but it doesn't seem like either. Only changes from the standard traffic is the Video Sel register when I change the inputs.

I am ready to finish the work on this thing and close the tv, so I may just do that and call it a day.

I was thinking about making a more generic version of this mod tho, that one can just choose what registers to change. It may be a future thing.
coredump
Posts: 14
Joined: Mon Jul 26, 2021 7:32 pm

Re: KV-27V66 I2C RGB Mod

Post by coredump »

Yeah in the end I have no idea what makes that OSD appear or disappear, so I will just hook up the pin to a GND switch and be done with it. If someday I find out I will come back to this.
coredump
Posts: 14
Joined: Mon Jul 26, 2021 7:32 pm

Re: KV-27V66 I2C RGB Mod

Post by coredump »

matt wrote: H Position - If this value can be modified when RGB blanking is enabled, the horizontal position could be maintained without having to use the service menu. This would be especially helpful to people who want to use S-Video/composite and RGB on the same TV (mostly N64 owners I'd guess). Some Trinitrons have a horizontal position switch that you can wire up to the blanking switch to do this, but it's always good to have more options.
I added an encoder and support to change HPOS using it, works like a charm. Of course it doesn't save the configs but that's actually a better way to do it (since HPOS adjustments like that are supposed to be a temporary thing).

I updated the post and code.
User avatar
matt
Posts: 614
Joined: Mon May 09, 2005 5:46 am
Location: Honolulu, Hawaii

Re: KV-27V66 I2C RGB Mod

Post by matt »

That's awesome. Having to change the service menu options when switching to and from RGB is kind of a nuisance. Still haven't had time to try the mod out, hopefully soon!
matt_c
Posts: 3
Joined: Fri Dec 31, 2021 3:08 am

Re: KV-27V66 I2C RGB Mod

Post by matt_c »

Sorry for reviving an old thread here, but this is awesome stuff. I'm just getting into this scene, and I can't explain why, but I'm finding these things really interesting and I keep coming back to this project in one way or another thinking about the potential.

After just writing up about my first s-video mod on my trinitron viewtopic.php?f=6&t=69497&p=1478283#p1478283, I'm wondering where to go from here.

I wanted to get your guy's idea's on this. And forewarning, I'm a developer by trade, but have no hardware (micro) development experience, so let me know if I'm off my rocker with this idea. I have no issue getting my hands dirty with this stuff though.

What if we built a main board to mount the Arduino on, then we
- put a IR unit for the arduino and tie it into the IR sensor on the trinitron (hoping this is possible)
- get a switch to enable/disable the RGB blanking signal to on / off
- Set up something on the arduino to look for the combo of tv/video then 1 to switch to rgb, else disable rgb

Then, we would have an fully enclosed solution, without external switch to enable RGB, while utilizing the existing arduino for extra functionality.

Here's a quick schematic, and after I thought about it, only blanking signal would go to switch, RGB would go right to RGB1 (75R terminated). However, we could build the 75R resistors on this break out board, and just have nice jst connectors to make wiring super easy / nice.
Image
On second thought, we could probably disable the switch all together (since RGB won't go through it anymore, like an initial idea I had) and just send the blanking signal from a pin on the arduino.

This could get extra fancy and we could enable component inputs and switching utilizing this as well, where tv/video -> 1 would do RGB, tv/video -> 2 would do Component.
User avatar
matt
Posts: 614
Joined: Mon May 09, 2005 5:46 am
Location: Honolulu, Hawaii

Re: KV-27V66 I2C RGB Mod

Post by matt »

Yes, that's absolutely going in the right direction! These jungle chips have so much functionality that's currently going unused, and a mod mod like this would vastly improve how well these TVs work for gaming. It would help a lot with S-Video mods - you could set it to disable CTRP every time the S-Video port is detected, for instance.

The hardware part is pretty simple - really all that's needed is intercepting the I2C signals and triggering blanking for the RGB and YPbPr inputs. There's probably no need for an IR sensor; everything could probably be tied to existing I2C registers from the Micon so you could control everything from the user menu.

Like I mentioned above, I've given this a lot of thought but don't have enough knowledge of programming to make it happen.
matt_c
Posts: 3
Joined: Fri Dec 31, 2021 3:08 am

Re: KV-27V66 I2C RGB Mod

Post by matt_c »

Great idea's! Although, I really like the idea of switching inputs (and settings) by remote. The little investigation I did into it today makes me think that it might be possible with no extra hardware at all, and just one more line from the arduino going to the existing IR receiver.

This month is looking crazy for me, but in February I should have time to start poking into it. When I do, I'll let you know.
Bard_the_Bowman
Posts: 52
Joined: Mon Apr 29, 2024 5:42 am

Re: KV-27V66 I2C RGB Mod

Post by Bard_the_Bowman »

Is anyone still working on this? I'm currently using Hejnfelt's code in an attempt to RGB mod an RCA MM36110 I recently got (yes I know it has RGB over VGA, but getting it to sync to 15khz over VGA is difficult to impossible depending on the output device in question, so I'm adding 15khz RGB input). Also working on using the code to fix a very obscure problem my 36110 has with intermittently losing sync or otherwise blanking the screen when on 15khz component input.

In this process I have built up a somewhat decent understanding of Hejnfelt's code. I'm also working on modernizing it to work with Arduino Nano R4's which have two sets of I2C pins, and I'm trying to eliminate the need for the bit-banging software approach on the slave side. Could potentially increase speed and efficiency of the software significantly.

I think that the benefits of Arduino I2C tampering to RGB/component modding could really be immense. There are all kinds of potential applications, from enabling unused inputs, to fixing color/contrast issues, to fixing horizontal shift issues, and on and on. If anyone is still working on any Arduino projects for their TV mods hit me up because I'd be happy to collaborate.
coredump
Posts: 14
Joined: Mon Jul 26, 2021 7:32 pm

Re: KV-27V66 I2C RGB Mod

Post by coredump »

I unfortunately had to move for work and literally lost/sold all my crts because of space/transportation, so I can securely tell you that I haven't worked more on this :D
Bard_the_Bowman
Posts: 52
Joined: Mon Apr 29, 2024 5:42 am

Re: KV-27V66 I2C RGB Mod

Post by Bard_the_Bowman »

matt wrote: Mon Jan 03, 2022 9:55 pm The hardware part is pretty simple - really all that's needed is intercepting the I2C signals and triggering blanking for the RGB and YPbPr inputs. There's probably no need for an IR sensor; everything could probably be tied to existing I2C registers from the Micon so you could control everything from the user menu.
Yep, I think this approach could work, and this is one of the things on my to-do list for my RCA. It has 3 composite/s-video inputs, and I don't need all 3, so my goal is to find out which I2C commands change inputs and have the Arduino activate the mod only when input 3 is selected, so that it can be done entirely without a physical switch. The trouble here is that usually input-switching commands are going to be going to slaves other than the jungle chip, and sometimes even on a completely separate bus than the jungle chip. And emulating multiple I2C slaves on an arduino is not easy from what I've found. So if you're already using your arduino to mess with signals to the jungle, you either have to use a SECOND arduino to listen for input changes, or else find a way to do it on the first one.

I do have one potential solution, and that's that I did find a generalized I2C "sniffer" arduino sketch that doesn't emulate a particular bus, but instead simply listens for I2C traffic. And it uses general purpose pins, and doesn't hog a set of I2C pins. So I might see if there's a way I can combine that functionality into Hejnfelt's sketch so that it would essentially be running in the "background" watching for the 12C commands to the relevant input-switching IC's. But, I am afraid that even on a newer Arduino like a Nano R4 that might be too much and interfere with the main job of emulating the jungle chip.

Or I might just use two Arduino's, one running the sniffer and one running my version of Hejnfelt's code, and the sniffer one would send a signal to the jungle one whenever a relevant event is detected. This is probably the simpler way, especially since a simple/cheap Arduino Nano V3 can be used for the sniffer (I'm probably going to be using an R4 for the jungle which while still cheap, is not completely insignificant like a V3)
Last edited by Bard_the_Bowman on Mon Feb 02, 2026 9:08 pm, edited 1 time in total.
Bard_the_Bowman
Posts: 52
Joined: Mon Apr 29, 2024 5:42 am

Re: KV-27V66 I2C RGB Mod

Post by Bard_the_Bowman »

coredump wrote: Mon Feb 02, 2026 8:42 pm I unfortunately had to move for work and literally lost/sold all my crts because of space/transportation, so I can securely tell you that I haven't worked more on this :D
Ah, that's too bad. I am getting into it because I had to for my MM36110 as it disables the extra RGB input on the jungle by default and you can only use that input by tampering with I2C signals. I was tempted to look into this when I was RGB/component modding my Sony KV35s42, but since I could get away with physical mods I was too lazy. Now that I've been forced to learn some Arduino coding its been rather eye-opening and I think there is a LOT that could be done to enhance RGB modding of many sets.
Bard_the_Bowman
Posts: 52
Joined: Mon Apr 29, 2024 5:42 am

Re: KV-27V66 I2C RGB Mod

Post by Bard_the_Bowman »

coredump wrote: Mon Feb 02, 2026 8:42 pm I unfortunately had to move for work and literally lost/sold all my crts because of space/transportation, so I can securely tell you that I haven't worked more on this :D
Did you ever publish the code for the Blackpill version you mentioned in the guide? I am using a modification of Martin Hejnfelt's I2C code which uses the same SoftI2CMaster library that your code uses, but it seems more efficient to use a board with two native I2C interfaces. However, I've had a devil of a time adapting the code to a newer double-I2C board.
KPackratt2k
Posts: 280
Joined: Sun Apr 04, 2021 11:02 pm
Location: Seattle, WA, USA

Re: KV-27V66 I2C RGB Mod

Post by KPackratt2k »

Would it be possible to design a modchip that allows one to use an SPST switch to activate YPbPr or RGB blanking depending on the active video input as well as disable the digital comb filter to allow the use of a Composite video input for sync injection on BA-4 chassis Trinitrons?

With panel mount slide switches (in the 3PDT and 3P3T varieties) becoming difficult to find now that the ones I use have been declared obsolete by DigiKey, I've become interested in developing switchless or simple switching mods for these TVs based on the KV-13FM12 mod on the CRT Database. The critical difference I immediately spotted is that while that model uses two output pins from its microprocessor, the 27" BA-4(D) uses the I2C bus on a MM1313AD switching IC instead to determine the active video input. Developing a modchip that sniffs the I2C bus to make the Video 1 input a dedicated RGB input and Video 3 a dedicated YPbPr input when activated with an SPST switch connected to VCC would be a major breakthrough in modding these TVs.

The major roadblocks standing in my way of developing such a thing are that I don't have any programming knowledge aside from MS-DOS/Windows Command Line scripting and CRT TVs (especially large Sony Trinitrons) are becoming difficult to find without breaking the bank.

Ideally, the modchip should do the following things:
1. Allow one to retain stock functionally through the use of a simple SPST switch. With the switch turned off, the TV functions in the exact same manor as if it wasn't modified, but with the switch turned on, the modchip is active.
2. Activate RGB blanking when the TV is in Video 1 mode or YPbPr blanking when the TV is in either Video 2 mode (for the S series models) or Video 3 mode (for the V series models).
3. Disable the digital comb filter to allow the use of the corresponding Composite video input for sync injection, as the comb filter shifts the image too far for it to be usable for sync injection for YPbPr/RGB modding, and there's only one S-Video input (Video 1) on all of these TVs.
4. Adjust the horizontal position accordingly so that all inputs have consistent horizontal positioning.
Post Reply