UDP server NRF9151 using Hologram

Hello,

I am using the example on the Nordic DK to get UDP messages from the Hologram API to the Nordic Modem. 

AT#XUDPSVR=1,6002
#XUDPSVR: 3,"started"

OK

I very inconsistently get messages (if ever). 

I am not changing any of the standard operation of the modem. I am running the AT Command with CMUX and PPPd overlay. I am successfully able to connect to the network and run a pppd connnection, but when I start the UDP server I never get messages.

Is there some additional configuration required? 

I am following this guide: https://docs.nordicsemi.com/bundle/ncs-2.6.0/page/nrf/applications/serial_lte_modem/doc/slm_testing.html#generic_at_commands

Specifically this part "Test the UDP server with UDP proxy service:"

I know this service works on Hologram because we use it with a different modem. 

I know I have a connection to the network because this is my output from CEREG

+CEREG: 3,5,"8309","04C8B910",7

I know my APN is set correctly

AT+CGDCONT?
+CGDCONT: 0,"IP","hologram","10.90.66.67",0,0

So what is going wrong? Do I need to anything additional? I am not changing any power states. I have seen inconsistent results with SMS as well (and TCP has never worked). 

Parents
  • Hi,

    Have you tried to test UDP connection using python script as shown in UDP server (points 1 and 2)?

    Best regards,
    Dejan

  • So I don't have a public IP address so I cannot use the python script. But I know the service that Hologram provides will let you send a UDP message to their SIMs since it uses their internal API and I see confirmation that the message was sent. 

    And I have seen it work with this cell modem with the Hologram SIM it is just very inconsistent. 

    For example when it worked:

    #XUDPDATA: 24,"10.254.0.75",15694
    how long does this take?
    #XUDPDATA: 9,"10.254.0.75",20100
    try again

    I can see that I have a private IP

    AT+CGDCONT?
    +CGDCONT: 0,"IP","hologram","10.90.66.67",0,0

    OK

    So I know the service does work. 

    Additionally, I am seeing low (or undefined signal quality), but a successful PPP connection. Is it possible causing the issue? Because I am seeing inconsistent results from SMS as well.

    AT+CSQ
    +CSQ: 99,99

    OK
    AT+CESQ
    +CESQ: 99,99,255,255,255,255

    OK

  • Hi,

    The issue might be related to the use of cellular network that your device connects to. Using NAT might only be possible for several minutes. It is problematic to wait for connection on cellular device. It is recommended that (if you need to use UDP) you use device in such a way that it regularly checks for messages.

    We have removed support for #UDPSVR functionality in Serial Modem Add-On. It is still possible to use UDP server with socket interface but it is not recommended.
    Another issue is that since PPP in Serial Modem uses RAW socket and receiving UDP data for the same PDN context is not possible. You need to choose another PDN context if you want to use PPP and receive anything on UDP socket.

    Best regards,
    Dejan

  • I am using CMUX + PPP overlay for the Serial LTE Modem example project. Is the UDPSVR functionality not something that should work with this configuration?

    So if I am understanding this right -- you are saying I cannot have a PPP connection and receive UDP messages if I have one PDP context?

    If I close the XPPP connection I should get the UDP messages?

  • Hi,

    Deval said:
    I am using CMUX + PPP overlay for the Serial LTE Modem example project. Is the UDPSVR functionality not something that should work with this configuration?

    Are you using Serial LTE modem sample or Serial Modem Add-on? Which NCS version do you use?

    Deval said:
    So if I am understanding this right -- you are saying I cannot have a PPP connection and receive UDP messages if I have one PDP context?

    PPP connection is in essence a raw socket. One PDN context can have only a single raw socket and nothing else. If other sockets are created into the PDN, raw socket continues to work but other sockets do not work. This happens due to routing of all packets to the raw socket.

    Deval said:
    If I close the XPPP connection I should get the UDP messages?

    You can try this and let me know the result.

    Best regards,
    Dejan

  • Turning off the XPPP does not work. 

    I can add a second PDN context but still don't get the UDP messages. Is there a way to get the PDN context to be set for the UDP server and then other PDN context for the PPP?

    AT+CGDCONT?
    +CGDCONT: 0,"IP","hologram","10.90.66.67",0,0
    +CGDCONT: 1,"IP","hologram","",0,0

    I am using the Serial LTE Modem example. 

    NCS version is 3.1.0

    Is there another sample project I could use that would give me better success?

Reply Children
Related