Hacker News

Top stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. OpenJev(openjev.com ↗)
    68comments
  2. ZCode, the GLM coding agent, silently uploads your Git history(tokenstead.ai ↗)
    1comments
  3. Microsoft exec called AI scraping 'the largest theft of labor in human history'(techcrunch.com ↗)
    98comments
  4. Jemalloc 5.4.0(github.com/jemalloc ↗)
    50comments
  5. The scourge of x86 emulation(fex-emu.com ↗)
    31comments
  6. Astra for Law(openai.com ↗)
    593comments
  7. Bonsai 2 27B: Near-Lossless Compression in a 9x Smaller Footprint(prismml.com ↗)
    138comments
  8. Replacing Pull Requests with Delta(zed.dev ↗)
    9comments
  9. Bend – A language that blocks AI mistakes via proof, on CPU and GPU(bend-lang.com ↗)
    233comments
  10. Qwen 3.8 Omni Flash(qwen.ai ↗)
    84comments
  11. Hister: A private search engine for the pages you visit and the files you keep(github.com/asciimoo ↗)
    170comments
  12. Wax motor(wikipedia.org ↗)
    72comments
  13. Dr Julius Neubronner's Miniature Pigeon Camera(publicdomainreview.org ↗)
    discuss
  14. Pre-Greek: The lost language hidden within Ancient Greek(linguisticdiscovery.com ↗)
    42comments
  15. Fujitsu launches made-in-Japan next-generation CPU FUJITSU-MONAKA(global.fujitsu ↗)
    234comments
  16. When the fractional part of a float fixes your shader(crocidb.com ↗)
    3comments
  17. Shapelearn Qwen 3.8 27B (13.1 GB VRAM)(byteshape.com ↗)
    13comments
  18. A heap overflow and SSO misconfiguration to compromise OpenAI internal repos(hacktron.ai ↗)
    159comments
  19. How to Write with an LLM(sockpuppet.org ↗)
    120comments
  20. Google illegally retains customer data,and I am taking legal action against them(medium.com/istokovicsgyorgy79 ↗)
    discuss
  21. Ask A Monk – A digital wilderness for thoughts with no immediate answer(askamonk.online ↗)
    25comments
  22. Telstra outage: The night a network decided the year was 2006(netnod.se ↗)
    29comments
  23. Flet 1.0 – Build cross-platform apps in Python(flet.dev ↗)
    61comments
  24. Warren Buffett Steps Down as Berkshire Chairman, Names Son to Replace Him(nytimes.com ↗)
    1comments
  25. Speeding up gearhash on ARM64(sam.dev ↗)
    discuss
  26. Diplodocus, Long Thought Exclusively American, Turns Up in Spain(sci.news ↗)
    45comments
  27. The most important product decision is what you don't build(liamnugent.me ↗)
    39comments
  28. Why I didn’t sign the Fields medallists’ letter(gowers.wordpress.com ↗)
    372comments
  29. How do we prevent mathemathics from devolving into the Medieval Era of secrecy?(mathoverflow.net ↗)
    118comments
  30. CrowdSec Source Code Leak(crowdsec.net ↗)
    49comments

Fixing an NZXT Signal 4K30 part 2: the green/pink video bug

33 pointsby 4d agodowntowndougbrown.com
10 comments
3d agoHN ↗

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.

3d agoHN ↗

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?

2d agoHN ↗

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.

2d agoHN ↗

And... you learned along the way, unlike the "i outsourced my braining to claude" crowd

2d agoHN ↗

Eh, I learn a ton from just watching Claude tear a piece of code to pieces and working through all the problems and debugging with it. Sure, I could do it myself the long way (beast mode?), but I don't have time to spend an entire day figuring out how to remove the annoying boot logo and delay from a monitor. If I can get Claude to work as my partner and get it done in 15 minutes, then it gets done now, where it didn't before.

Even something like setting up a dev environment for a random embedded processor that I will never once use again in my life. It's easier to get Claude to track down all the files and figure out how to install them and get them running. All these things are just force-multipliers.

2d agoHN ↗

Blog author here. That's pretty similar to my thinking on it all now too.

I'm not just lazily telling Claude to find everything for me and then sitting back and relaxing. My brain is still doing work, it's just different work than it was before. Coming up with a good prompt takes effort and good communication skills. I'm still watching what the LLM does and redirecting it if it's going off into the weeds. On larger tasks (not really relevant to this reverse engineering project, admittedly) I'm still making design and architectural decisions.

I've done plenty of these kinds of huge multi-month reverse engineering projects in the past by hand (just see my past blog posts). I have no doubt I could have found this bug myself if I spent enough time digging into it. A majority of the work would have been boilerplate tedious stuff in Ghidra that I already know how to do, and it would have been incredibly boring. I'm enjoying being able to tick off some of these project ideas from my (neverending) list and having some fun while doing it. Also, the older I get, the more painful and tiring it is to stare at the screen for hours and hours.

I completely respect that this approach isn't for everyone though!

2d agoHN ↗

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

2d agoHN ↗

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.

2h agoHN ↗

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.

2h agoHN ↗

so I gave that all to Claude

Damn. I have really enjoyed reading Doug Brown's past reverse-engineering and repair work (e.g., Chumby resuscitation). Shame to see another one fall to brain offloading.