I am still after months trying to get any kind of relieble use out of 3 IPn3Gb cellular modems equipped CR1000 stations.
I have them setup with the PPP setting for COM1 so that the CR1000s can send out a daily datafile via email. They work great for a while. The issue I am having now is that the COM1 settings just change to something else after a few hours to a few days.
When the emails fail to arrive I physically connect to the IPn3Gb via the ethernet port and everytime the COM1 settings have either changed back to the default PPP setting with wrong default connectoin/response strings etc or even stranger have changed to UDP. Additionally the Port Forwarding rules all dispear as well. Carrier settings never seem to change.
It is happening on all 3 modems. The 3 modems were running 3 different but relatively current firmware so I updated them all to the latest version...still happening. I have them running on different power....1 on CR1000's SW12V so the modem is on for a few hours/day and thus getting a reboot daily, 1 running direct from a AC->DC power supply (on 24h/day) and one running off 12V DC (on 24h/day).
Any ideas what is going on?
Brad,
I am assuming the COM1 settings you are referring to are the modem's settings and not the CR1000's. Is that correct?
I am not familier with this modem (in USA), but will take a crack at what might be the issue. I am assuming that it is the modem's settings that are changing and not the dataloggers. If not using the serial server model, double check the AT commands that the logger is sending to the modem (if it is doing so). Also check to see if other portions of the program could be sending serial strings to the port that that modem is connected to on the datalogger. They could be changing the modems configuration.
Make sure the modem and the logger have a common ground between them.
As a last resort, recheck that all the settings in the modem are setup per this manual (https://s.campbellsci.com/documents/ca/manuals/ipn3gb_man.pdf) and make sure to change any passwords on the modem from their factory defaults.
Brad,
I would be glad to share my settings with you, I currently have about 200 IPN3Gb's in service and have had no issues at all. I do not use PPP, but I do use the serial server on com1.
Curt
Hi Curt,
Due to issues with the cellular providers firewall/NAT/how they assign IPs/whatever I have been unable to use the serial server connection type to establish a connection to the modem/logger. As such the recommended method by Campbell was to use PPP mode with EmailSend.
It functions great until the weird setting change/glitch happens so just trying to isolate the cause of that issue.
Brad
So I have still been more or less unable to resolve this issue of the IPn3Gb modem spontaneously resetting its COM1 settings from PPP to the default UDP settings.
As mentioned I have 3 identical systems (CR1000 + IPn3Gb) setup in PPP mode to send data by email. While in my last post I had them each configured slightly different in terms of power and if the modem was powered 24/7 or intermittently, I now have all 3 the same. I have the systems running off 12V DC (+10W solar panel) with the modem powered up via the SW12 from 1AM to 4AM and send one email for HOURLY data table (sent at 2AM) and another email for the DAILY data table (sent at 3AM).
Since my last posting, one of the systems has only had the settings reset issue once, another has the issue ~ once/month and the other resets at least once per week.
Here is the program I am running in case anyone sees anything that might be causing the CR1000 to gimp up the COM1 connection somehow forcing the modem to reset to factory defaults...
'Main Program
BeginProg
 SEND_HOUR_DATA=FALSE
 SEND_DAILY_DATA=FALSE
 Send_SMS=FALSE
'Main Scan
 Scan(300,Sec,1,0)
 'Default Datalogger Battery Voltage measurement 'BattV'
 Battery(BattV)
 'Default Wiring Panel Temperature measurement 'PTemp_C'
 PanelTemp(PTemp_C,_60Hz)
 'HC2S3 (constant power) Temperature & Relative Humidity Sensor measurements 'AirTemp' and 'RH'
 VoltSE(AirTemp,1,mV2500,1,0,0,_60Hz,0.1,-40)
 VoltSE(RH,1,mV2500,2,0,0,_60Hz,0.1,0)
 If RH>100 And RH<103 Then RH=100
 '05103 Wind Speed & Direction Sensor measurements 'WS_ms' and 'WindDir'
 PulseCount(WS_ms,1,1,1,1,0.098,0)
 BrHalf(WindDir,1,mV2500,3,1,1,2500,True,0,_60Hz,355,0)
 If WindDir>=360 Or WindDir<0 Then WindDir=0
 'SP-LITE2 Pyranometer measurements 'SlrMJ' and 'SlrkW'
 VoltDiff(SlrkW,1,mV250,3,True,0,_60Hz,1,0)
 'the adjustments
 If SlrkW<0 Then SlrkW=0
 'calibration correction factor = 69.9 therefore using calculations from manual
 'the multiplier correction factors are:
 SlrMJ=SlrkW*0.0042918
 SlrkW=SlrkW*0.014306
 'TE525MM/TE525M Rain Gauge measurement 'Rain_mm'
 PulseCount(Rain_mm,1,2,2,0,0.1,0)
'Call Data Tables and Store Data
 CallTable XY_THUNDERCRK_HOUR
 CallTable ZY_THUNDERCRK_DAILY
'CELLULAR MODEM SUPER SECRET HOT SAUCE
 'powerup modem at 1am, shut off at 4am
 If TimeIsBetween (1,4,24,Hr)
 PortSet(9,1)
 Else
 PortSet(9,0)
 EndIf
'setup flag condition for data send via email.
 'send HOURLY at 2am
 If TimeIntoInterval(2,24,Hr) Then SEND_HOUR_DATA=TRUE
 'send DAILY at 3am
 If TimeIntoInterval(3,24,Hr) Then SEND_DAILY_DATA=TRUE
 
 'Voltage Alarm that will send EMAIL2TXT msg if voltage drops to critical level
 If BattV >= 11.5 Then
 Alarm_Battery = FALSE
 Send_SMS = FALSE
 Else
 Alarm_Battery = TRUE
 EndIf
 
 NextScan
 
 SlowSequence
 Scan(300,Sec,1,0)
 
 If SEND_HOUR_DATA=TRUE Then
 'email the data
 Message = "Behold!" + CRLF + CRLF
 Message = Message + "This is a automatic email message from the Thundercracker Station ID#" + Status.StationName + ". "
 Message = Message + "Here is today's delicious HOURLY CLIMATE data. " + CRLF
 Message = Message + "Datalogger time is " + Status.Timestamp
 'in case email f up...try resending up to 5 times
 For z = 1 To 5
 EmailSuccess=EmailSend(ServerAddr,ToAddr,FromAddr,Subject,Message,Attach1,UserName,Password,Result,0,0,Min,12)
 If EmailSuccess <> 0 Then
 SEND_HOUR_DATA=FALSE 
 ExitFor
 End If
 Next z
ElseIf SEND_DAILY_DATA=TRUE Then 
 'email the data
 Message = "Behold!" + CRLF + CRLF
 Message = Message + "This is a automatic email message from the Thundercracker Station ID#" + Status.StationName + ". "
 Message = Message + "Here is today's delicious DAILY CLIMATE data. " + CRLF
 Message = Message + "Datalogger time is " + Status.Timestamp
 'in case email f up...try resending up to 5 times
 For z = 1 To 5
 EmailSuccess=EmailSend(ServerAddr,ToAddr,FromAddr,Subject,Message,Attach2,UserName,Password,Result,0,0,Min,12)
 If EmailSuccess <> 0 Then
 SEND_DAILY_DATA=FALSE 
 ExitFor
 End If
 Next z
 
 ElseIf Alarm_Battery=TRUE AND Send_SMS=FALSE Then
 'send sms
 Message = "Thundercracker Station battery voltage is critical. " + BattV + CRLF
 Message = Message + Status.Timestamp
 'in case email f up...try resending up to 5 times
 For z = 1 To 5
 EmailSuccess=EmailSend(ServerAddr,SMSAddress,FromAddr,Subject,Message,"",UserName,Password,Result)
 If EmailSuccess <> 0 Then 
 Send_SMS=TRUE
 ExitFor
 End If
 Next z
 
 EndIf
 
 NextScan
EndProg
*****
On the system that resets the most I have tried a variation of the modem power on/off code by adding in PPPOpen and PPPClose but it made no difference.
'powerup modem at 1am, shut off at 4am
 If TimeIsBetween (1,4,24,Hr)
 PortSet(9,1)
 PPPOpen
 Else
 PPPClose
 PortSet(9,0)
 EndIf
I don't know if it could be involved or not. What is your declaration for CRLF?
Const CRLF = CHR(13)+CHR(10)
It's possible that it should be declared as a string. Try using 
Const CRLF = "CHR(13)+CHR(10)"
See if the program still works as expected and the problem goes away.
Another customer ran into some trouble when they had it declared as you show. Adding the quotes took care of their problem. No modems were involved in their setup, but the logger wasn't treating the CRLF quite as expected. Hopefully this can help you as well.