Unable to receive message from dashboard

I was able to reproduce this issue on an 02B. The UMNOPROF = 100 setting enables eDRX and PSM by default. However, once I disabled both, I was able to receive inbound socket messages. Can you please try disabling eDRX and PSM? You can use the following commands:

AT+CFUN=0
AT+CPSMS=0
AT+CEDRXS=0,2
AT+CEDRXS=0,5
AT+CFUN=15

Thanks for providing some additional troubleshooting steps Sara, I get a failure at this line:

image

Apologies Dom - it wasn’t my intent to “crosspost” but illustrate that in at least my case there did not appear to be ANY inbound communications. (Acknowledging perhaps that I didn’t follow some example somewhere correctly). As a complete layman to this system and having only picked the hardware, the SDK and the entire solution up on Saturday, it is entirely possible I didn’t initialize something somewhere properly. Happy to try anything you need with the device to further the ability to pass inbound socket messages.

What is the output of AT+CEDRXS?

Ah these tricky command lines :slight_smile: - I almost tried “AT+CEDRXS” which is not the same as “AT+CEDRXS?” (grin)

image

Thanks, :slight_smile:

1 Like

Ah, flip the values of the CEDRXS commands (ex. AT+CEDRXS=0,2 rather than AT+CEDRXS=2,0). Be sure to run AT+CFUN=0 before running these commands and run AT+CFUN=15 afterwards.

AT+CFUN=0
AT+CEDRXS=0,2
AT+CEDRXS=0,4
AT+CEDRXS=0,5
AT+CFUN=15

I will update the commands in my previous post.

OH BRAVO! Most excellent Sara!

And the output shows the first successful message has passed!

pi@RPI-GATE(ro):~$ sudo hologram receive -vv
DEBUG: checking for vid_pid: (‘12d1’, ‘1001’)
DEBUG: checking for vid_pid: (‘12d1’, ‘1506’)
DEBUG: checking for vid_pid: (‘1546’, ‘1102’)
DEBUG: checking for vid_pid: (‘1546’, ‘1104’)
DEBUG: checking for vid_pid: (‘05c6’, ‘90b2’)
INFO: Detected modem NovaM
DEBUG: checking port ttyUSB0
DEBUG: checking port ttyUSB1
DEBUG: [AT]
DEBUG: {AT}
DEBUG: {OK}
INFO: found working port at ttyUSB1
INFO: chatscript file: /usr/local/lib/python3.7/dist-packages/Hologram/Network/Modem/chatscripts/default-script
DEBUG: [ATE0]
DEBUG: {ATE0}
DEBUG: {OK}
DEBUG: [AT+CMEE=2]
DEBUG: {}
DEBUG: {OK}
DEBUG: [AT+CPIN?]
DEBUG: {}
DEBUG: {+CPIN: READY}
DEBUG: {}
DEBUG: {OK}
DEBUG: [AT+CPMS=“ME”,“ME”,“ME”]
DEBUG: {}
DEBUG: {+CPMS: 0,23,0,23,0,23}
DEBUG: {}
DEBUG: {OK}
DEBUG: [AT+CMGF=0]
DEBUG: {}
DEBUG: {OK}
DEBUG: [AT+CNMI=2,1]
DEBUG: {}
DEBUG: {OK}
DEBUG: [AT+CEREG=2]
DEBUG: {}
DEBUG: {OK}
INFO: Instantiated a NovaM interface with device name of /dev/ttyUSB1
DEBUG: [AT+CGMM]
DEBUG: {}
DEBUG: {SARA-R410M-02B}
DEBUG: {}
DEBUG: {OK}
DEBUG: [AT+CCID]
DEBUG: {}
DEBUG: {+CCID: 8944500105191493819}
DEBUG: {}
DEBUG: {OK}
DEBUG: [AT+CIMI]
DEBUG: {}
DEBUG: {234500007149381}
DEBUG: {}
DEBUG: {OK}
DEBUG: [AT+USOCR=6]
DEBUG: {}
DEBUG: {+USOCR: 0}
DEBUG: {}
DEBUG: {OK}
DEBUG: [AT+USOLI=0,4010]
DEBUG: {}
DEBUG: {OK}
Ready to receive data on port 4010
DEBUG: {}
DEBUG: {+UUSOLI: 1,“10.176.100.4”,56116,0,“10.117.128.110”,4010}
DEBUG: URC! +UUSOLI: 1,“10.176.100.4”,56116,0,“10.117.128.110”,4010
DEBUG: handleURC state: 0
DEBUG: {}
DEBUG: {+UUSORD: 1,30}
DEBUG: URC! +UUSORD: 1,30
DEBUG: handleURC state: 2
DEBUG: [AT+UDCONF=1,1]
DEBUG: {}
DEBUG: {OK}
DEBUG: [AT+USORD=1,30]
DEBUG: {}
DEBUG: {}
DEBUG: {+USORD: 1,30,“32303230303732392D31383135202D204669727374204D6573736167650A”}
DEBUG: {OK}
DEBUG: [AT+UDCONF=1,0]
DEBUG: {}
DEBUG: {OK}
DEBUG: [AT+USOCL=1]
DEBUG: {}
DEBUG: {OK}
Received message: 20200729-1815 - First Message

I’m afraid I’m lost however on what eDRX and PSM are…
What is their importance?
What do they bring to the table?
Should I want them? :slight_smile:
What impact disabling them will have in the long run?
Are these new “features” to the 02B hardware?

1 Like

Further update - now with simply the CLI I am able to receive socket messages (I’m sure to be as expected, but after 3 days and numerous test examples I was completely unaware of how simple this should have been:

image

1 Like

This is great! I also have been working on this for weeks now. Looking forward to giving it a try soon when I have access to the system. Thanks Larray and Sara.

Not completely out of the woods… SMS still doesn’t work and I get errors with establishing a TCP connection with the Hologram Cloud and sending a message to the Hologram Cloud still using AT commands - but those are topics for another post.

Primarily to round this issue out I would like to understand the impact of disabling eDRX and PSM and if it will “bite” me later. Again - huge thanks to at least get my first message to the device Sara!

1 Like

Ah, yes, success! I too am able to receive messages with the CLI after changing the CEDRXS settings. And I had previously tried, but received errors, I guess due to input values being flipped.

I agree with Larray, are there any drawbacks to disabling eDRX and PSM? I do notice each message takes longer to receive than it has on previous modems/STK versions. In verbose receive mode, the debug messages start showing up for a message to be received, but it is then 30+ seconds or so until the actual message (Data) goes through. Not a big deal for my applications, but just wondering if this is a response to the new modem settings.

edrx and psm are power saving features of CAT M1 devices. (basically the only reason you would use M1 over CAT 1 LTE if you need a small footprint and long battery life) They can be safely disabled and the only real downside would be that it would use more power than if they were on.

Can read more about it here: https://www.hologram.io/blog/nb-iot-vs-cat-m1-vs-cat-1

CostalMeasures - may want to check your console - I saw a 30 second lag from message submission to update that the message had been delivered to the device. I don’t know if the second message was driven by the Nova (like a checksum or confirmation response) or if the message is a confirmation from the dashboard processes that it was sent:

I would assume with Dom’s info that we are turning off all power savings features (and from the article linked - thank you - they may not have much effect anyway) - so I would assume the radio is in “constant” contact with the carrier. I hope disabling power management doesn’t introduce latency?

Thanks, Larray. Yeah, after making the setting changes on the modem, the Nova seems to be receiving data reliably now through either the CLI or SDK (and after making the change in the SDK to interpret the data as a string rather than bytes Unable to receive message from dashboard). And I agree, reducing the power-saving measures should not add latency. Nonetheless, I am seeing some interesting things.

I am running this python3 code as a test and then sending a message from the dashboard at certain times (marked in output):

import serial, time
from Hologram.HologramCloud import HologramCloud

hologram = HologramCloud(dict(), network='cellular')

def return_data():
data = hologram.popReceivedMessage()
if data is not None:
    print(data)
return data

result = hologram.network.connect()
if result == False:
print('Error: failed to connect to cellular network')
else:
print('Connected to '+hologram.network_type+' v'+hologram.version)

hologram.openReceiveSocket()

for waitN in range(120):
data=return_data()
time.sleep(1)
print(waitN, end = ' ', flush=True)
hologram.closeReceiveSocket()

result = hologram.network.disconnect()
if result:
print('Disconnected from Network')

The results are interesting. The first data packet is received quickly every time. Any follow-ups are typically delayed quite a bit long and are not necessarily received in order. Not sure what to make of this, but just to be aware in case it matters for the application. Also, this is probably a different issue, so I can start a new thread if need be, but I am just going to let this go as I don’t think it will matter for my application.

Output:
Connected to Cellular v0.9.0
0 1 2 3 4 5 6 7 8 9 10 11 12 13 – Test MSG sent on 5
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 – Test MSG sent on 15
49 – Test MSG sent on 35
50 – Test MSG sent on 25
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 – Test MSG sent on 65
82 – Test MSG sent on 45
83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 Disconnected from Network

Dom, sara, et al,

I am trying to run a python script to periodically send data (every three hours) and continually scan for incoming messages. My script seems to work for awhile (1-4 days) but it always stops working at some point when a sent messages gets an “unknown response” return from the hologram.sendmessage call. (Support at Hologram suggested that I look at this thread.)

I have made changes to the SDK to allow the messages to be received as text. I have tried to make the above changes for eDRX and PSM but when I input the commands this is what I get.

at+cfun=0
OK
at+cedrxs=0,2
OK
at+cedrxs=0,4
OK
at+cedrxs=0,5
OK
at+cedrxs?
+CEDRXS:
OK

Any idea what I am doing wrong?

Note: this is a Nova running on a RPi 3.

ati
Manufacturer: u-blox
Model: SARA-R410M-02B
Revision: L0.0.00.00.05.08 [Apr 17 2019 19:34:02]
SVN: 02
IMEI: 356726102491925

Hi Sara. Thanks for your help on this. However, while I have 1 nova receive messages just fine after these changes, I have several others that still are not receiving data after making these changes to the modem.

As far as I can tell, everything is configured exactly the same on all of them, so I’m at a loss. Do you know if there is a way to list all of the modem settings or something so that I could compare them? I have manually checked all the ones noted in this and related posts that I may have changed and they are the same.

Just pulling at straws at this point, so any directions is appreciated. Thanks!

Most AT commands followed by a ? will return the current settings for that command. Some modems might have a settings dump but AFAIK ublox do not. Unfortunately that is the only way to verify the settings is manually as you have likely been doing.

If you change the SIM in the nova does it change your ability to receive messages, as in a working SIM in one nova does not work in another? That would be probably the most indicative test since it would show that the modems settings are preventing the messages from being retrieved.

1 Like

Can you open a new topic. Your issue is likely unrelated since the eDRX settings would effectively never allow you to receive data in the first place as was the case here. Also we have no idea what your script is doing or what error codes it is running into so there is nothing to really help us with your issue without more information.

Thanks for the idea. I switched the SIM between one that was working and one that wasn’t and the ability to receive data messages also switched. The one with the working SIM is consistently connected through SPRINT while the non-working ones are connected through AT&T Mobility.

I guess this confirms it is a SIM/network issue rather than modem setting issue. Still looking to resolve, but I can start a new thread?

Dom.

This topic has been open and it starts to explain what I am trying to do and what is going wrong.