It Started With a Hardware Limitation I have been using Quectel GNSS modules in my designs for a while. They are reliable, well-documented, and the support ecosystem is solid. But the module I had been using had one problem that I kept running into: no external antenna support . For most projects that is a minor inconvenience. For a marine vessel monitoring and control system , it is a non-starter. A vessel hull blocks sky view, antenna placement is critical, and the difference between a clean fix and no fix at all often comes down to whether you can mount the antenna where it actually has line of sight. An integrated antenna in a sealed enclosure below deck simply does not cut it. So I went directly to Quectel. The Conversation With Quectel I reached out through their official sample request channel. I was not expecting much — most component manufacturers have a standard process: fill out a form, wait, get a few uni...
This is a custom ESP32S3 prototyping board i built to troubleshoot the issues. It Started With a Simple Problem I was testing the EvilCrow Cable Wind — a USB HID device built around the ESP32-S3 that executes keystroke injection payloads over WiFi. Everything seemed fine: the keyboard HID was typing correctly, the web interface loaded, basic commands like RunWin worked. But ServerConnect and ShellWin did absolutely nothing. No error. No feedback. Just silence. Digging Into the Code The first thing I found was this pattern — repeated across four commands: ORIGINAL — DANGEROUS if (!clientServer.connect(serverIP, serverPort)) { while(1); // hangs forever if TCP fails } ⚠ Critical Bug If TCP connection failed for any reason, the device entered an infinite loop with no timeout, no error output, and no recovery path. Ever. But there was more. The bugs were stacking: critical TCP failures were environmental: listener ...