Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions lte/alt1250/alt1250_atcmd.c
Original file line number Diff line number Diff line change
Expand Up @@ -379,6 +379,32 @@ int lwm2mstub_send_setautoconnect(FAR struct alt1250_s *dev,
return send_internal_at_command(dev, container, -1, NULL, 0, &dummy);
}

/****************************************************************************
* name: ltenwop_send_getnwop
****************************************************************************/

int ltenwop_send_getnwop(FAR struct alt1250_s *dev,
FAR struct alt_container_s *container)
{
int32_t dummy;
snprintf((char *)dev->tx_buff, _TX_BUFF_SIZE,
"AT%%NWOPER?\r");
return send_internal_at_command(dev, container, -1, NULL, 0, &dummy);
}

/****************************************************************************
* name: ltenwop_send_setnwoptp
****************************************************************************/

int ltenwop_send_setnwoptp(FAR struct alt1250_s *dev,
FAR struct alt_container_s *container)
{
int32_t dummy;
snprintf((char *)dev->tx_buff, _TX_BUFF_SIZE,
"AT%%NWOPER=\"TRUPHONE\"\r");
return send_internal_at_command(dev, container, -1, NULL, 0, &dummy);
}

/****************************************************************************
* name: lwm2mstub_send_m2mopev
****************************************************************************/
Expand Down
6 changes: 6 additions & 0 deletions lte/alt1250/alt1250_atcmd.h
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,12 @@ int lwm2mstub_send_getautoconnect(FAR struct alt1250_s *dev,
int lwm2mstub_send_setautoconnect(FAR struct alt1250_s *dev,
FAR struct alt_container_s *container, bool en);

int ltenwop_send_getnwop(FAR struct alt1250_s *dev,
FAR struct alt_container_s *container);

int ltenwop_send_setnwoptp(FAR struct alt1250_s *dev,
FAR struct alt_container_s *container);

int lwm2mstub_send_m2mopev(FAR struct alt1250_s *dev,
FAR struct alt_container_s *container, int16_t usockid,
FAR int32_t *ures, bool en);
Expand Down
22 changes: 22 additions & 0 deletions lte/alt1250/alt1250_reset_seq.c
Original file line number Diff line number Diff line change
Expand Up @@ -293,6 +293,28 @@ static int alt1250_lwm2m_ponreset(FAR struct alt1250_s *dev,
ret = REP_SEND_ACK;
}

/* Make sure NWOPER is not DEFAULT */

t_or_f.target_str = "DEFAULT";
ltenwop_send_getnwop(dev, container);
recv_ret = recv_atreply_onreset(check_atreply_truefalse, dev, &t_or_f);
if (recv_ret == REP_MODEM_RESET)
{
return recv_ret;
}

if (t_or_f.result)
{
ltenwop_send_setnwoptp(dev, container);
recv_ret = recv_atreply_onreset(check_atreply_ok, dev, NULL);
if (recv_ret == REP_MODEM_RESET)
{
return recv_ret;
}

ret = REP_SEND_ACK;
}

if (ret == REP_SEND_ACK)
{
/* Force Reset is needed. */
Expand Down