3 ms·
Yeah, good times. I just recently had one that was a really strong misdirection, ended up being 2 simultaneous other, non related things that conspired to make
by K0balt 2y ago
Yeah, good times. I just recently had one that was a really strong misdirection, ended up being 2 simultaneous other, non related things that conspired to make it look convincingly like my code was not doing what it was supposed to. I even wrote tests to see if I had found a corner-case compiler bug or some broken library code. I was half way through opening an issue on the library when the real culprit became apparent. It was actually a subtle bug in the testing setup combined with me errantly defining a hardware interface on an ancient protocol as an HREG instead of an IREG, which just so happened to work fine until it created a callback loop inside the library through some kind of stack smashing or wayward pointer. I was really starting to doubt my sanity on this one.
- foobarian 2y ago> corner-case compiler bug They say never to blame the compiler, and indeed it's pretty much never the compiler. But DNS on the other hand... :-)
- throwup238 2y agoThe joys of modbus PLCs, I take it?
- K0balt 2y agoAh, yes. But a roll- your own device with C++ on bare metal, so lots more fun. (we’ll need a few thousand of these, and the off the shelf solution is around 1k vs $1.50 for RYO ) By the way, the RISC V espressif esp32-C3 is a really amazing device for < $1. It’s actually cheaper to go modbus-tcp over WiFi then to actually put RS485 on the board like with a MAX485 and the associated components. Also does ZIGBEE and BT, and the espressif libraries for the radio stack are pretty good. Color me favorably impressed with this platform.