MicroPython libraries for the SIM800 module


After some quick research, we want to add a collection of MicroPython code offering driver support for the SIM800 modem. While the UpyPhone is already supported by corresponding code, there are also others we would like to list and investigate here.

Let’s face it: As the communication is done using regular AT-commands over UART, this is not exactly rocket science, but there’s lots of nitty gritty details to work out to get things right, so we should definitively build upon work done by others already.


Regular Python

… but also worth a look. Probably suitable for SBC machines or other things running Linux.

5 posts were merged into an existing topic: SIM800 support for ESP32

If anyone is interested, I built a one-file, pure-MicroPython driver for the SIM800L GPRS module with both HTTP(S) GET and POST support. Works out of the box on the TTGO T-Call SIM800 v1.3 board, but SIM800L pins are parametrized in the Modem() constructor class so it should work on any hardware. Does not use asyncio but for simple, sequential tasks it seems to work pretty well. You can find it here: GitHub - pythings/Drivers: A collection of Drivers for various peripherals.


Thanks a lot! @Andreas - would that suffice to get data to Grafana?

Just for reference, the example from the T-Call repo: TTGO-T-Call/examples/MicroPython_LoBo at master · Xinyuan-LilyGO/TTGO-T-Call · GitHub

Dear Stefano,

This is great news! I’ve deliberately diverted further discussions around your implementation to Unlocking and improving the Pythings SIM800 GPRS module for MicroPython.

Out-of-the-box support for HTTP POST within a pure-Python module was the main thing missing from all the other implementations referenced above. So: Yes, my conclusion is that this is the way to go right now.

Thanks a bunch and with kind regards,


Thank you @Andreas for appreciating my work and for starting the new thread on integrating it!
My pleasure to have contributed! :smiley:


2 posts were merged into an existing topic: Unlocking and improving the Pythings SIM800 GPRS module for MicroPython