RetroTINK 4K Pro – Lumacode, CRT Beam and IVTC Updates
Mike Chi has released some firmware updates, with more stable Lumacode support, optimizations and bugfixes for the 6x CE, 4K CE and 4K Pro. There were also some updates to Pro-only features like IVTC and CRT Beam…

Mike Chi has released some firmware updates, with more stable Lumacode support, optimizations and bugfixes for the 6x CE, 4K CE and 4K Pro. There were also some updates to Pro-only features like IVTC and CRT Beam Emulation BFI. I posted a CRT Beam Emulation example above and I’ll go over the rest of it below the links:
Latest Firmware: https://retrotink-llc.github.io/firmware/4k-experimental.html
Purchase RetroTINK Products: https://retrorgb.com/retrotink.html
First, Lumacode users should have an even more simplified experience. If you haven’t already, you’ll definitely want to delete the existing Lumacode folder on your SD card, then replace it with the new Lumacode folder from the 1.87.3 update (just the Lumacode folder, skip that update). Then, of course, update to the latest from the “experimental” firmware link above. Now you can just connect your Lumacode console to any Green input, select that input from the RetroTINK’s menu, then go into Advanced Settings and Sample Rate Detection. Enable the Lumacode option, then click on the “Load Preset” under it. Then just click on whatever file matches your console and note that NES also has a subfolder with other palette options. I didn’t even re-create profiles for this, as I think just doing it yourself takes exactly the same amount of time as loading custom profiles – It’s that easy. Also, if you still have any issues, you can change the Lumacode setting from “On” to Luma code to “AGC Manual” and then adjust the Pre-gain in the ADC menu until the image looks correct. That used to be required for SMS, but it should be fully automatic now.
Next, Mike implemented the second-generation inverse telecine (IVTC) engine. This is excellent for everyone using the RT4K Pro for 24p video content, as well as any 480i video game locked at 30fps; The updated engine should lock onto sources more accurately, with less artifacts and better adapting to changing framerates. Mike used Final Fantasy X cutscenes as an example, but for video content an example might be a 480i show with 30p effects (or just credits/title cards) – These should look closer to how standard IVTC’d video would look.
Next, there’s a completely revamped CRT Beam Simulate BFI, with new options. In the example above, I started with the middle option, Motion Clarity, which can be set from 0 to 12. This essentially dictates how much of the screen is black space. The higher you turn this up, you gain more motion clarity at the cost of brightness.
Then there’s Beam Steepness. This adjusts how much of each frame blends into the other. It’s default of “smooth” should prevent any screen tearing, with the full amount of blending. As you raise it up, there’s less blending, with the max of “Hard” having no blending at all between each frame.
Lastly, Multi-Frame glow tries to blend each of the frames together with a “glow” to emulate phosphor glow. It’s important to note that all of these will look different on every display and all are best used with HDR enabled. The example above shows what it’s doing, but how it actually looks will 100% rely on your eyes, display, refresh rate and content.
Here’s the full list of changes since the last time we covered RetroTINK firmware updates, up till this 1.99.1 firmware:
- Many bug fixes for edge cases and rarely used modes and functions
- Cleaned-up HDMI output audio mute policy: no more garbage audio when no valid audio input is present
- Improved handling and scaling of content when 1080i is selected as the output mode
- Fixed Auto Fill Int and Int HV behavior at higher decimation rates
- Second-generation inverse telecine engine for RT4KPRO with two field look back decorrelation analysis and multi-tap filter bank artifact detection
- Dual FPGA and MCU detection state machines for fast lock / unlock
- Result is significantly improved inverse 3:2 and 2:2 reliability
- For example, Final Fantasy X cutscenes should be nearly free of artifacts and adapt quickly to changing frame rates
- New inverse telecine engine does not need manually tuned thresholds (removed from menu)
- Minor fixes to the XBR smoother plus optimization to reduce the amount of resources used
- Fixed bug that dropped data in decimation factor 5x
- Further tuning of thresholds
- Revised CRT beam BFI mode
- Beam Steepness Smooth now aligns more closely with Blur Busters reference implementation
- Phosphor Glow replaced by Beam Gain; Beam Steepness is now Smooth / Sharp 1-6 / Hard
- VRR: sources slower than the output mode now run at their own rate instead of showing VRR Out of Range
- Inverse 3:2 now holds lock through brief processing pauses
- Fixed minor CSC coefficient rounding error in enhanced s-video
- Various menu, file browser and stability fixes
- Major infernal optimizations to reclaim resources consumed over the past few months
- Auto gain measures only active picture on post decimated pixels
- Fixed auto gain loop of death when used on no signal
- Added Multi-frame Glow to CRT Beam BFI (4K Pro, off by default): the previous frame keeps trailing below the beam while the new frame is scanned in at the top, like taking a photograph of a CRT
- With Multi-frame Glow on, CRT Beam aligns with the Blur Busters / Timothy Lottes reference GPU shader
- CRT Beam “Beam Gain” is now “Motion Clarity” (0 to 12): the default (0) matches the default GAIN_VS_BLUR of the Blur Busters GPU shader; increasing Motion Clarity reduces blur at the expense of brightness
- Added support for HDMI 2.1 style extended EDID
- VRR gating no longer uses the strict VICs declared by the display’s EDID
- True VRR pacing will engage as long as the frame rate is within the display’s declared minimum and maximum
- However, this may result in some displays rejecting the modelines if they strictly enforce the declared VIC
- CRT Motion Clarity can now go negative (down to -12) for brighter output (but more blurry)
- This falls outside the reference GPU shader, so negative values may cause seams depending on the specific beam pattern and/or BFI rate