Hi there, I am just taking the first steps with the Challenger LTE MKII module and I have a couple of questions:
1. Looking at the circuit python example given at https://ilabs.se/challenger-rp2040-lte- ... p-example/, I noticed that the sara_btn pin is used alternately as an input pin with pull-up and as an output pin with low state. Why not just use it as an output and switch between high and low?
2. For starting the module, the SARA R4 system integration manual recommends to monitor the modem's GPIO pin to check if the configuration is completed. That pin is not connected to the RP2040, is it?
3. Also according to the integration manual, the power supply to the modem should not be removed abruptly. However, it seems that this is exactly what happens in the example in order to reset the modem at the beginning of the script? The manual details how to initiate the switch-off and recommends to monitor the modem's V_INT pin to check the process. That pin does not seem to be connected either.
4. Does the uart communication with the modem actually require hardware flow control? I have tried with and without in micropython, and either seems to work just fine.
I would greatly appreciate if someone with a better understanding of electronics could enlighten me...
Thanks!
low-level control of SARA modem
Re: low-level control of SARA modem
Hi Tom,
Thanks for using our products. Here are some replies to your questions.
1. The button input of the SARA R4 module is a 1.8V input signal pulled up to 1.8V internally. It is not recommended to feed this input with 3.3V from the RP2040 which would happen if you use it as a regular output pin. Instead we let it float while not being activated (high) and when activated (low) it pulls the button signal low to activate the modem. The same applies to the reset pin but we have never used it and so the pin is left as an input.
2. That is correct, it is not connected. Instead we simply recommend pinging the device using the "AT" command, with a short break between requests, until it responds with OK.
3. We don't use the power enable to reset the module but we do turn the modem on when the helper class (in Arduino) is instantiated. The design is done so that when the RP2040 is being reset the pwr_enable pin floats and a pull down resistor brings this signal low effectively disabling power to the modem. In hindsight we have seen that this is not optimal and is something that is on the change list for a new revision. The same applies to the V_INT pin, we will want to add a connection to the RP2040 for that as well if we do a new revision.
4. In other projects we have seen that when transferring big files (when doing OTA) from the modem it sometimes needs a break and signals this. But in most use cases they are not used
Let me know if you have any other questions.
Thanks for using our products. Here are some replies to your questions.
1. The button input of the SARA R4 module is a 1.8V input signal pulled up to 1.8V internally. It is not recommended to feed this input with 3.3V from the RP2040 which would happen if you use it as a regular output pin. Instead we let it float while not being activated (high) and when activated (low) it pulls the button signal low to activate the modem. The same applies to the reset pin but we have never used it and so the pin is left as an input.
2. That is correct, it is not connected. Instead we simply recommend pinging the device using the "AT" command, with a short break between requests, until it responds with OK.
3. We don't use the power enable to reset the module but we do turn the modem on when the helper class (in Arduino) is instantiated. The design is done so that when the RP2040 is being reset the pwr_enable pin floats and a pull down resistor brings this signal low effectively disabling power to the modem. In hindsight we have seen that this is not optimal and is something that is on the change list for a new revision. The same applies to the V_INT pin, we will want to add a connection to the RP2040 for that as well if we do a new revision.
4. In other projects we have seen that when transferring big files (when doing OTA) from the modem it sometimes needs a break and signals this. But in most use cases they are not used
Let me know if you have any other questions.
Re: low-level control of SARA modem
Hi Pontus,
thank you for your quick and thorough reply, I appreciate your support very much!
Tom
thank you for your quick and thorough reply, I appreciate your support very much!
Tom