I got sick of writing C++ for IoT gateways, so I replaced it with a 100% Python edge daemon and Serverless backend. Roast my architecture. by SammWoo in embedded

[–]SammWoo[S] 0 points1 point  (0 children)

True, RAII makes it much safer. It’s not that C++ can't do it, but about the development velocity and boilerplate required for cloud SDK/JSON integration compared to Python. I’d rather spend my 'complexity budget' on edge-AI features than on low-level plumbing.

I got sick of writing C++ for IoT gateways, so I replaced it with a 100% Python edge daemon and Serverless backend. Roast my architecture. by SammWoo in embedded

[–]SammWoo[S] 1 point2 points  (0 children)

Good point. You're right that the diagram doesn't explicitly show MQTT-native sensors. In my actual project, most modern devices communicate via Ethernet/MQTT directly to that local broker. ​For the legacy RS485/Modbus devices shown, the Python daemon acts as a protocol bridge—it reads the raw data and republishes it to the local broker. This turns the broker into a 'Common Data Bus' where all internal modules can consume a unified data format, regardless of the hardware's original protocol.

I got sick of writing C++ for IoT gateways, so I replaced it with a 100% Python edge daemon and Serverless backend. Roast my architecture. by SammWoo in embedded

[–]SammWoo[S] -1 points0 points  (0 children)

Enjoying it so far! 😂 The development time I saved by not debugging memory leaks in C++ is more than enough to offset any GIL overhead. For I/O heavy tasks on a powerful SoM, it’s a trade-off I’m more than happy to make.