I have an ESP32 chip that I would like to connect to a modem that has internet access. But the modem is actually a surface mounted chip on a PCB. It has I2C, SPI, UART capabilities though. So I am wondering how to connect to the modem so I can HTTP post/get?
Does anyone have an understanding of this process?
I have an ESP32 chip that I would like to connect to a modem that has internet access. But the modem is actually a surface mounted chip on a PCB. It has I2C, SPI, UART capabilities though. So I am wondering how to connect to the modem so I can HTTP post/get?
Does anyone have an understanding of this process?
DO you have links to the documentation on the chip on the PCB?
Paul
Crossroads thanks for the suggestion but I do already have a chip in mind. I just need to find a way to connect it to the modem which is Ublox SARA-R5 modem datasheet
traditionally the esp board connects to modem/internet using wifi signal. But I don't believe this is an option in my case.
esp32-WROOM-32D has been upgraded to esp32-WROOM-32E
Nice, I haven't had a chance to use this, but I'll check out the new features! Do you know of a way to connect this chip to my modem other than wifi though (not an option for this modem)? I've heard of people making an ethernet shield for the chip but I don't think this is an option in this scenario. Correct me if I am wrong though.
I see that the chip 32E does have ethernet connection listed in the site's description of the chip's capabilities, but I don't know how I would set up an ethernet output from the modem or if this is even possible.
A very quick look at the datasheet indicates that the only viable connection option you have to the ESP32 is the Serial UART interface but this works at 1.8V so you will need voltage level shifting between the ESP32 and the SARA-R5.
The SARA-R5 series provides the following serial communication interfaces:
•UART interfaces,available for communications with host application processor
•USB 2.0 compliant interface,available for diagnostics only
•SPI interfaces, available for communications with external SPI devices and for diagnostic
•SDIO interface, available for communications with external SDIO devices
•DDC (I2C bus compatible) interface, available for communications with external I2C devices
Riva:
A very quick look at the datasheet indicates that the only viable connection option you have to the ESP32 is the Serial UART interface but this works at 1.8V so you will need voltage level shifting between the ESP32 and the SARA-R5.
Riva:
A very quick look at the datasheet indicates that the only viable connection option you have to the ESP32 is the Serial UART interface but this works at 1.8V so you will need voltage level shifting between the ESP32 and the SARA-R5.
I did see the 1.8V as you mentioned, and was surprised as Vcc is 3.3V or so. But I am curious as to how you came to the conclusion about UART being the option.
Is it because in the description you copied it says "available for communications with host application processor"?
Why not using a socket modem instead of a bare modem ic? Go for a Digi 4G-LTE-M xbee modem. They have Python API and many PC tools for testing. The modem connects automatically and all you need to do is to see how to send http requests. You could find a serial port capture software to peek into the data and commands being sent. It's all software, instead of hardware. There are a number of companies that sell socket modems. I recommend the Digi because the xbee footprint is a defacto standard and you can go with a few different companies for modems.
From the quick look at the datasheet I could see no mention of controlling the module over SPI or I2C.
SPI host mode is diagnostics only. I2C host mode is a bit more woolly in its description.
feynman137:
But I am curious as to how you came to the conclusion about UART being the option.
Is it because in the description you copied it says "available for communications with host application processor"?
Yes, SPI host mode seems to be diagnostics only and I2C host mode is a bit more vague but does not mention control of the modem. As I said it was a quick glance but I see no reference to register information for control and configuration just AT commands over UART.
liuzengqiang:
Why not using a socket modem instead of a bare modem ic? Go for a Digi 4G-LTE-M xbee modem. They have Python API and many PC tools for testing. The modem connects automatically and all you need to do is to see how to send http requests. You could find a serial port capture software to peek into the data and commands being sent. It's all software, instead of hardware. There are a number of companies that sell socket modems. I recommend the Digi because the xbee footprint is a defacto standard and you can go with a few different companies for modems.
Thanks for this suggestion as I am a noob haha so it helps greatly. The module you suggested might be more friendly for beginners. The reason I went for the U-blox IC is because it has built in GNSS module, which I do need.
Riva:
Yes, SPI host mode seems to be diagnostics only and I2C host mode is a bit more vague but does not mention control of the modem. As I said it was a quick glance but I see no reference to register information for control and configuration just AT commands over UART.
Alright so UART is the way to go. I have to ask though is there like an AT command library in the Arduino IDE? The manual for this module has a library of compatible commands, but I am wondering how I get my esp to send these commands to the modem.
If anyone is interested I can post combined SARA R-5 and esp32 circuit on a PCB after I am done.