by bishopsmother on 12/29/22, 10:52 AM with 125 comments
by keewee7 on 12/29/22, 12:06 PM
Other companies like TI and STMicro had their own cheap WiFi/BLE MCUs but their devkits used to be too expensive for hobbyists and students. But the Chinese startup behind the ESPxx chips made sure that their devkits were cheap enough for hobbyists and students and through that influence they now also dominate the professional industry.
by willemmerson on 12/29/22, 5:21 PM
Generally IoT devices make an outbound connection to a server and use MQTTS for bi-directional data flow, because of the difficulty of inbound connections due to firewalls, NAT etc. But this has some downsides in that you have to run an MQTT server, each device is doing it's own TLS (which uses a lot of ram and increases firmware size on an ESP32), and MQTT doesn't really have end-to-end message confirmation.
It seems like a better way would be for each esp32 device to be in a wireshark network and to be running it's own HTTP webserver (which is easy to do with the SDK). Therefore any device can be sent a message from the server using a simple POST request to its ip address, and can send messages to the server using the servers HTTP api. It's much easier to test HTTP api's than mess about with MQTT, and individual devices don't need to do SSL because all data between the devices and server is encrypted by wireguard.
I suspect there's something I've overlooked, I think addressing individual devices could be difficult if you only know their IP addresses.
by alex_sf on 12/29/22, 3:43 PM
The only ones I've messed with before were from Adafruit, but they are all 3g which is, afaik, completely decom'd now.
by squarefoot on 12/29/22, 4:26 PM
by atonse on 12/29/22, 6:15 PM
by lormayna on 12/29/22, 4:56 PM
by jvanderbot on 12/29/22, 3:13 PM
by adriancr on 12/29/22, 12:04 PM
by fulafel on 12/29/22, 5:38 PM
by no_time on 12/29/22, 12:41 PM
I enjoy WireGuard and it's tooling but in this case TLS seems like the better, battle tested option without any significant downsides if all you are doing is HTTP anyways...
by dmos62 on 12/29/22, 1:34 PM
by gorgoiler on 12/29/22, 12:38 PM
by thingyop on 12/29/22, 5:34 PM