for the long message. But anyone fluent with esp32 with esp-idf, they can continue reading 😅.
Background:
Im making payment devices which are responsible to accept payments from the server and then send that to a vending machine.
Long story short so far out of 600 devices there are around 50-60 which often gives issues on the site (yeah already did the changing and shuffling of devices but that’s not the issue neither is the network so we can skip those basic steps already done and dusted).
Now we are making an upgraded version, the architecture is simple just like the old one esp32 with gsm and lcd that’s it.
Problem:
So far I’ve implemented the esp_modem library and used the PPP protocol, unfortunately I’m forced to use 2 protocols over the gsm or wifi, HTTP and MQTT. (Why? Well the same old chicken egg problems between a backend server developer and the hardware developer the fight is never ending )
Perhaps, sometimes the https breaks or the Mqtt breaks, in terms of the connectivity and not the esp32 or gsm crashing.
So, with the new product the confusion onto what approach to take is more likely to be difficult as now the device will have the following
1. Get the payment data
2. OTA update
3. Send Coredump
4. Update parameters and system config
5. Send device logs
With that having in hand, I’m confused whether to still stick with the PPP and add cmux to check the connection status
Or just go back to plain vanilla AT commands as my gsm modem which is SIMCOM A7672S , happens to have HTTP, MQTT stack built into it.
Proposed Solutions
After conversing with people at simcom they recommend not to use PPP as it’s mainly meant for the microprocessors and not microcontroller. So go to the AT thingy.
After conversing with people at espressif they suggest using the esp modem.
Now david cenmark who already made a video on Devcon on esp modem recommends using either usb to communicate with gsm when it’s OTA and all. Or using the RTS AND CTS lines, I don’t have enough pins on esp32 and I cannot change my hardware design to esp32 s3 so no usb as well.
After painstakingly writing AT library and still pending to finish the HTTP part. I find it slow and feel lot of errors might come if not everything is handled by that I mean, string manipulation and error codes of the gsm.
What do I expect from the members of this group?
Well any suggestions on the confusion I’m still in ? Using the AT or going back to PPP? has anyone used it on the field before and what have been your experiences?
Thanks to whoever made to the end of this message !
Hope I was able to convey my problem the right way.
I read the whole post, but I don't have enough knowledge to answer specifically. What are the differences you see between ppp and at in field?
Oh thanks for reading, Well haven't deployed at based on field but for PPP there are disconnects quite often
Обсуждают сегодня