feat(modem): added sqn_gm02s connect function

This commit is contained in:
robbedptechnics
2025-03-19 15:02:20 +01:00
parent 8560f02191
commit b97dfc08b8
2 changed files with 17 additions and 10 deletions

View File

@ -163,6 +163,8 @@ esp_err_t esp_modem_set_apn(esp_modem_dce_t *dce, const char *apn);
esp_err_t esp_modem_set_urc(esp_modem_dce_t *dce, esp_err_t(*got_line_cb)(uint8_t *data, size_t len));
#endif
esp_err_t esp_modem_sqns_gm02s_connect(esp_modem_dce_t *dce, const esp_modem_PdpContext_t *pdp_context);
/**
* @brief This API provides support for temporarily pausing networking in order
* to send/receive AT commands and resume networking afterwards.

View File

@ -459,21 +459,19 @@ extern "C" esp_err_t esp_modem_config_network_registration_urc(esp_modem_dce_t *
return ESP_ERR_INVALID_ARG;
}
return command_response_to_esp_err(dce_wrap->dce->configure_network_registration_urc(value));
return command_response_to_esp_err(dce_wrap->dce->config_network_registration_urc(value));
}
extern "C" esp_err_t esp_modem_get_network_registration_state(esp_modem_dce_t *dce_wrap, int *p_state)
{
if (dce_wrap == nullptr || dce_wrap->dce == nullptr || p_state == nullptr)
{
if (dce_wrap == nullptr || dce_wrap->dce == nullptr || p_state == nullptr) {
return ESP_ERR_INVALID_ARG;
}
int state;
auto ret = command_response_to_esp_err(dce_wrap->dce->get_network_registration_state(state));
if (ret == ESP_OK)
{
if (ret == ESP_OK) {
*p_state = state;
}
return ret;
@ -481,22 +479,29 @@ extern "C" esp_err_t esp_modem_get_network_registration_state(esp_modem_dce_t *d
extern "C" esp_err_t esp_modem_config_mobile_termination_error(esp_modem_dce_t *dce_wrap, int mode)
{
if (dce_wrap == nullptr || dce_wrap->dce == nullptr || mode > 2)
{
if (dce_wrap == nullptr || dce_wrap->dce == nullptr || mode > 2) {
return ESP_ERR_INVALID_ARG;
}
return command_response_to_esp_err(dce_wrap->dce->config_mobile_termination_error(mode));
}
extern "C" esp_err_t esp_modem_config_edrx(esp_modem_dce_t *dce, int value, const char *access_technology)
extern "C" esp_err_t esp_modem_config_edrx(esp_modem_dce_t *dce, int mode, int access_technology, const char *edrx_value, const char *ptw_value)
{
if (dce_wrap == nullptr || dce_wrap->dce == nullptr || mode > 3 || access_technology > 5) {
return ESP_ERR_INVALID_ARG;
}
if ((mode == 1 || mode == 2 ) && (strlen(edrx_value) != 4 || strlen(ptw_value) != 4)) {
return ESP_ERR_INVALID_ARG;
}
return command_response_to_esp_err(dce_wrap->dce->config_edrx(mode,access_technology,std::string(edrx_value),std::string(ptw_value)));
}
extern "C" esp_err_t esp_modem_sqns_gm02s_connect(esp_modem_dce_t *dce, const esp_modem_PdpContext_t *pdp_context)
extern "C" esp_err_t esp_modem_sqns_gm02s_connect(esp_modem_dce_t *dce_wrap, const esp_modem_PdpContext_t *pdp_context)
{
if (dce_wrap == nullptr || dce_wrap->dce == nullptr || dce_wrap->modem_type != ESP_MODEM_DCE_SQNGM02S)
if (dce_wrap == nullptr || dce_wrap->dce == nullptr)
{
return ESP_ERR_INVALID_ARG;
}