Fixing an NZXT Signal 4K30 part 2: the green/pink video bug (downtowndougbrown.com)
31 points by zdw 4 days ago
TechIsCool 4 days ago
I love reading about these types of firmware "bugs" fixed by AI in a few minutes with the correct context. I recently patched my LG monitor that had a blinking white LED in standby. Why any designer thinks why yes lets blink this 1 second on 2 seconds off when I go to sleep is deranged.
Well now I can sleep easily because of the same style of patch. I also hit the version refusal but found that you just lie to the upgrade tooling that it's newer and then the version number doesn't change after flashing.
qingcharles 4 days ago
This is a golden age of finally being able to fix all the niggling little bugs in these bits of hardware. So many of them are wide open, the friction of trying to figure out how to get the firmware cracked open, creating a build environment etc was just too huge before. I wonder how long before all these manufacturers start signing and encrypting their updates to stop us fixing their shit?
gblargg 3 days ago
I did this the old fashioned way on an Acer monitor a while back, eliminating the 10-second logo when turning it on. I ended up dumping the ROM (8051 CPU), writing a disassembler and mapping out enough of the code to patch it, and threw in a strobed backlight mode since I had already decoded other things. It helped that the processor allowed register writes over the DDC channel on VGA, allowing easy testing of the changes before writing any code. I did have to short a jumper inside when flashing the modified code (over DDC). I'd never attempt such a project again due to how long it took, but with AI it would be far more reasonable.
dmitrygr 3 days ago
paimapi 3 days ago
>hit the version refusal but found that you just lie to the upgrade tooling that it's newer and then the version number doesn't change after flashing.
good for right to repair but man is this not a major vulnerability? we need to start going after tech companies not employing best practices like mutation testing esp with how easy those tests are to write now
TechIsCool 2 days ago
Since the monitor I was working on was CRC32ed I could have patched the version numbers forward. For all intents the monitor thought it was upgraded a minor version. It just uses a CONST for the actual version number within the build that I didn't change. It read the version from the zip file name which seemed less smart all things considered.
mrheosuper 23 minutes ago
> Claude also gave me back a command-line utility that reflashes the firmware using the DLL included with NZXT’s updater
This is surprisingly good. One of common question when RE is: How do we even read/write firmware.