xml upload to iDigi not working after reboot

Hello,
I have bought iDigi X4 Starter Kit and I’m trying out Dia_1.3.8\demos\green_getting_started.

Firmware on my ConnectPort X4 is upgraded to 2.10.0.7.
Everything is working fine but when I reboot my X4 my channel_samplesNN.xml files on iDigi stop being updated.
Have tried to set dia.py in auto-start. When I start dia.py with telnet command(python dia.py) the device starts showing temp. and light readings and the digi_dia html page is showing correct info on my ConnectPort but my xml files are still the same on iDigi as they were before I rebooted.

I have logged out and in again on iDigi but no change.
Have tried to disconnect device and connect again but no change.

The only thing that works is to delete the files on dia (dia.zip, dia,py, dia.pyr) and start it with python dia.py.

When I’m trying to get data with http://sd1-na.idigi.com/ws/data/~/00000000-00000000-00XXXXFF-FFXXXXAA/green_demo i get 404 The requested resource () is not available.

I’m testing this at home so my X4 is wired to my D-Link router.

Any ideas how to ensure connection after reboot of my ConnectPort?

bjarne,
Are you making sure that the X4 is configured to talk to idigi? check the web page of the X4 (homepage -> configuration -> remote management. make sure 'Enable Remote Management and Configuration using a client-initiated connection ’ is checked?

What is the server address? It should be ‘developer.idigi.com’. That should also be the URL that you’re logging into for idigi.

The configuration on my X4 has a some different menu names thou (Configuration:iDIgi: Device-Initiated iDigi Connection)
Enable Device-Initiated iDigi Connection: ON
iDigi Server Address: developer.idigi.com
Automatically reconnect to iDigi after being disconnected: ON
Reconnect after: 10 sec

My Event Logging states:
2010-08-27 12:17:27 boot Unit restarted due to exception.
2010-08-27 12:17:27 time RTC initialized: Fri Aug 27 12:17:26 2010.
2010-08-27 12:17:30 system Product: ConnectPort X4 (ID 0x00XX).
2010-08-27 12:17:30 system Firmware Version: 2.10.0.7 (Version 82001536_G 07/20/2010).
2010-08-27 12:17:30 system Boot Version: 1.1.3 (release_82001975_A).
2010-08-27 12:17:30 system Post Version: 1.1.3 (release_82001753_D).
2010-08-27 12:17:30 system Product VPD Version: release_82002010_B.
2010-08-27 12:17:30 system Hardware Strapping: 0x0044.
2010-08-27 12:17:30 failover Failover feature is started.
2010-08-27 12:17:30 failover Failover state is OFF, fallback is ON.
2010-08-27 12:17:30 failover Link testing for “eth0” is ON.
2010-08-27 12:17:31 time RTC set to Fri Aug 27 12:17:31 2010.
2010-08-27 12:17:31 time A Time source has caused a time change
2010-08-27 12:17:32 idigi Device ID: 00000000-00000000-XXXXXXFF-FFXXXXXX
2010-08-27 12:17:32 idigi Device Type: ConnectPort X4
2010-08-27 12:17:34 mesh Radio version: HW 0x1a44 FW 0x2163
2010-08-27 12:17:36 python application ‘dia.py’ started.
2010-08-27 12:17:37 failover Interface “eth0” status is now 4 (down).
2010-08-27 12:17:37 failover Interface “eth0” status is now 2 (up).
2010-08-27 12:17:42 idigi Initiating client-initiated connection.
2010-08-27 12:17:42 idigi Finding Service, URL=en://developer.idigi.com
2010-08-27 12:17:42 idigi Trying TCP.
2010-08-27 12:17:42 idigi Connected at socket level: Local=192.168.0.51:59189 Remote=204.236.210.198:3197.
2010-08-27 12:17:42 idigi Keep-alive parameters are: RX=60 TX=60 wait=3.
2010-08-27 12:17:43 idigi Connected Using TCP.
2010-08-27 12:25:45 [End of Event Log at +0 days 00:08:18]

When I replace dia.zip and dia.pyr on my X4 and reboots, my xml files in storage on iDigi are being updated again and everything works both ways.

If I then reboot my X4 without first replacing the files, Dia stops uploading my XML files to iDigi but iCan still ping developer.idigi.com from my X4 and config my X4 from iDigi.

Here are my Telent startup messages when the X4 is started manually without first replacing the dia.zip and dia.pyr files
(xml files on iDigi goes dead):

#> python dia.py

Determining platform type…Digi Python environment found.

iDigi Device Integration Application Version 1.3.8
Using settings file: dia.pyr
Core: initial garbage collection of 0 objects.
Core: post-settings garbage collection of 10 objects.
Starting Scheduler…
Starting Channel Manager…
Starting Device Driver Manager…
XBeeDeviceManager(xbee_device_manager): retrieving node list
XBeeDeviceManager(xbee_device_manager): node ‘00:13:a2:00:40:3a:dd:b1!’ in skip configaddress list, promoting to RUNNING state.
XBeeSensor(sensor0): running indication
XBeeSensor(sensor0): DD info (module_id, product_id) = (0x0003, 0x000e)
XBeeSensor(sensor0): sensor is a ‘Digi XBee Sensor /L/T’ no humidity capability.
XBeeSensor(sensor0): 21 C, 1179 brightness
XBeeDeviceManager(xbee_device_manager): node ‘00:13:a2:00:40:31:fc:56!’ in skip configaddress list, promoting to RUNNING state.
Starting Presentation Manager…
Starting Services Manager…
Core services started.
XBeeSensor(sensor0): 21 C, 1179 brightness
XBeeSensor(sensor0): 21 C, 1179 brightness

Just a guess, but you should not be replacing the dia.pyr file - just delete it. I could see your behavior being true if you are uploading a mis-matched dia.zip and dia.pyr.

dia.py/zip desire to create their own dia.pyr, not use yours.

I deleted dia.zip and dia.pyr and uploaded just dia.zip.
(dia.zip/dia.py create their own dia.pyr) So you are right, it is not technically right to call it a replacement.

Still no solution to this problem.

Could you post the YML file from inside dia.zip as well as the dia.pyr that is generated after running Dia?

I’m curious if somehow the idigi_db portion is different in dia.pyr, causing the presentation to not start when dia.pyr is present and used in place of the YML file.

Thanks,
Chris

I will try to attach the green_getting_started.yml file and dia.pyr.

Just want to mention that the only files on my X4 and Dia are:

python.zip 144321 bytes
zigbee.py 1147 bytes
dia.py 12484 bytes
dia.zip 595384 bytes
dia.pyr 2361 bytes

Some more info.

************* Uploaded dia.zip and dpdsrv.py to X4 device.************

#> python dpdsrv.py

Launching Dia framework …

Determining platform type…Digi Python environment found.

Attempting to read “dia.pyr” in “WEB/python/dia.zip”…
iDigi Device Integration Application Version 1.3.8
Using settings file: dia.pyr
Core: initial garbage collection of 0 objects.
Core: post-settings garbage collection of 10 objects.
Starting Scheduler…
Starting Channel Manager…
Starting Device Driver Manager…
XBeeDeviceManager(xbee_device_manager): retrieving node list
XBeeDeviceManager(xbee_device_manager): node ‘00:13:a2:00:40:3a:dd:b1!’ moved to CONFIGURE state.
XBeeDeviceManagerConfigurator: worker assigned to ‘00:13:a2:00:40:3a:dd:b1!’
XBeeConfigBlockDDO.apply_config: trying SET ‘DL’ = ‘\x40\x5c\x79\x81’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockSleep: fetching ‘SP’ from ‘[00:13:a2:00:40:31:fc:56]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘P1’ = ‘0x3’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘DH’ = ‘\x00\x13\xa2\x00’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘IR’ = ‘0x1388’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘IC’ = ‘0x800’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘D2’ = ‘0x2’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘D3’ = ‘0x2’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘D1’ = ‘0x2’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘WH’ = ‘0x7d’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying ‘SP’ = ‘0x1f4’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying ‘SO’ = ‘0x0’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying ‘SN’ = ‘0x1’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying ‘SM’ = ‘0x4’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying ‘ST’ = ‘0x465’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockFinalWrite: trying ‘WR’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeDeviceManager(xbee_device_manager): configuration done for node ‘00:13:a2:00:40:3a:dd:b1!’ promoting to RUNNING state.
XBeeSensor(sensor0): running indication
XBeeSensor(sensor0): DD info (module_id, product_id) = (0x0003, 0x000e)
XBeeSensor(sensor0): sensor is a ‘Digi XBee Sensor /L/T’ no humidity capability.
XBeeDeviceManager(xbee_device_manager): node ‘00:13:a2:00:40:31:fc:56!’ moved to CONFIGURE state.
XBeeDeviceManagerConfigurator: worker assigned to ‘00:13:a2:00:40:31:fc:56!’
Starting Presentation Manager…
XBeeConfigBlockDDO.apply_config: trying SET ‘DL’ = ‘\x40\x5c\x79\x81’ to ‘[00:13:a2:00:40:31:fc:56]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘IR’ = ‘0x1388’ to ‘[00:13:a2:00:40:31:fc:56]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘D2’ = ‘0x2’ to ‘[00:13:a2:00:40:31:fc:56]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘DH’ = ‘\x00\x13\xa2\x00’ to ‘[00:13:a2:00:40:31:fc:56]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘D1’ = ‘0x2’ to ‘[00:13:a2:00:40:31:fc:56]!’
XBeeConfigBlockFinalWrite: trying ‘WR’ to ‘[00:13:a2:00:40:31:fc:56]!’
XBeeDeviceManager(xbee_device_manager): configuration done for node ‘00:13:a2:00:40:31:fc:56!’ promoting to RUNNING state.
Starting Services Manager…
Core services started.
XBeeDeviceManagerConfigurator: worker assigned to ‘00:13:a2:00:40:3a:dd:b1!’
XBeeDeviceManager(xbee_device_manager): configuration done for node ‘00:13:a2:00:40:3a:dd:b1!’ promoting to RUNNING state.
XBeeSensor(sensor0): running indication
XBeeSensor(sensor0): DD info (module_id, product_id) = (0x0003, 0x000e)
XBeeSensor(sensor0): sensor is a ‘Digi XBee Sensor /L/T’ no humidity capability.
XBeeSensor(sensor0): 15 C, 656 brightness
XBeeSensor(sensor0): 15 C, 656 brightness
XBeeSensor(sensor0): 15 C, 657 brightness

********** Rebooted the X4 and ran this ************

#> python dpdsrv.py

Launching Dia framework …

Determining platform type…Digi Python environment found.

iDigi Device Integration Application Version 1.3.8
Using settings file: dia.pyr
Core: initial garbage collection of 0 objects.
Core: post-settings garbage collection of 10 objects.
Starting Scheduler…
Starting Channel Manager…
Starting Device Driver Manager…
XBeeDeviceManager(xbee_device_manager): retrieving node list
XBeeDeviceManager(xbee_device_manager): node ‘00:13:a2:00:40:3a:dd:b1!’ in skip configaddress list, promoting to RUNNING state.
XBeeSensor(sensor0): running indication
XBeeSensor(sensor0): DD info (module_id, product_id) = (0x0003, 0x000e)
XBeeSensor(sensor0): sensor is a ‘Digi XBee Sensor /L/T’ no humidity capability.
XBeeDeviceManager(xbee_device_manager): node ‘00:13:a2:00:40:31:fc:56!’ in skip configaddress list, promoting to RUNNING state.
Starting Presentation Manager…
Starting Services Manager…
Core services started.
XBeeSensor(sensor0): 15 C, 923 brightness
XBeeSensor(sensor0): 15 C, 913 brightness
XBeeSensor(sensor0): 15 C, 920 brightness
XBeeSensor(sensor0): 15 C, 918 brightness

****** the xml files om iDia goes dead **************

Tried Digi support but they closed my CASE before it was solved.
When I tried to reopen the case by clicking “NO I don’t want to close my CASE” in the replymail from Digi support,
I just came to a receipt page that stated the supportweb was undergoing maintenance. Well that’s life.

Maybe this iDigi thing wasn’t such a good idea after all.
My “proof of concept” period is ending this month so weel see. I haven’t given up just yet.

Hi,

the .pyr and .yml files both looked fine.

I attached a slightly modified idigi_db.py that has some print statements thrown in so that you’ll get some notifications when the presentation is started and at other points in the code.

If you could try running with the modified presentation, you might get some better information on where it is failing on reboot.

Chris

I see your support case has been re-opened as well, so hopefully between the two we can get this figured out.

Think we got something to work with here…

*** Uploaded green_kit project from ESP DigiPython to X4 ***
*** using modified idigi_db.py in iDigi Dia path lib ***

#> python dpdsrv.py

Launching Dia framework …

Determining platform type…Digi Python environment found.

Attempting to read “dia.pyr” in “WEB/python/dia.zip”…
iDigi Device Integration Application Version 1.3.8
Using settings file: dia.pyr
Core: initial garbage collection of 0 objects.
Core: post-settings garbage collection of 10 objects.
Starting Scheduler…
Starting Channel Manager…
Starting Device Driver Manager…
XBeeDeviceManager(xbee_device_manager): retrieving node list
XBeeDeviceManager(xbee_device_manager): node ‘00:13:a2:00:40:3a:dd:b1!’ moved to CONFIGURE state.
XBeeConfigBlockSleep: fetching ‘SP’ from ‘[00:13:a2:00:40:31:fc:56]!’
XBeeConfigBlockSleep: fetching ‘SP’ from ‘[00:13:a2:00:40:5c:79:81]!’
XBeeConfigBlockSleep: fetching ‘SN’ from ‘[00:13:a2:00:40:31:fc:56]!’
XBeeDeviceManagerConfigurator: worker assigned to ‘00:13:a2:00:40:3a:dd:b1!’
XBeeConfigBlockSleep: fetching ‘SN’ from ‘[00:13:a2:00:40:5c:79:81]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘DL’ = ‘\x40\x5c\x79\x81’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeDeviceManager(xbee_device_manager): node ‘00:13:a2:00:40:31:fc:56!’ moved to CONFIGURE state.
Starting Presentation Manager…
XBeeConfigBlockDDO.apply_config: trying SET ‘P1’ = ‘0x3’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘DH’ = ‘\x00\x13\xa2\x00’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘IR’ = ‘0x1388’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘IC’ = ‘0x800’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘D2’ = ‘0x2’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘D3’ = ‘0x2’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘D1’ = ‘0x2’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘WH’ = ‘0x7d’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying ‘SP’ = ‘0x1f4’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying ‘SO’ = ‘0x0’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying ‘SN’ = ‘0x1’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying ‘SM’ = ‘0x4’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
XBeeConfigBlockDDO.apply_config: trying ‘ST’ = ‘0x465’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
–> idigi_db: presentation starting
–> idigi_db: there are 0 channels in the channels setting
XBeeConfigBlockFinalWrite: trying ‘WR’ to ‘[00:13:a2:00:40:3a:dd:b1]!’
–> idigi_db: I’m waiting for an event or up to 60 seconds
XBeeDeviceManager(xbee_device_manager): XBee device state for node 00:13:a2:00:40:3a:dd:b1! is invalid post configuration.
Starting Services Manager…
XBeeDeviceManagerConfigurator: worker assigned to ‘00:13:a2:00:40:31:fc:56!’
Core services started.
XBeeConfigBlockDDO.apply_config: trying SET ‘DL’ = ‘\x40\x5c\x79\x81’ to ‘[00:13:a2:00:40:31:fc:56]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘IR’ = ‘0x1388’ to ‘[00:13:a2:00:40:31:fc:56]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘D2’ = ‘0x2’ to ‘[00:13:a2:00:40:31:fc:56]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘DH’ = ‘\x00\x13\xa2\x00’ to ‘[00:13:a2:00:40:31:fc:56]!’
XBeeConfigBlockDDO.apply_config: trying SET ‘D1’ = ‘0x2’ to ‘[00:13:a2:00:40:31:fc:56]!’
XBeeConfigBlockFinalWrite: trying ‘WR’ to ‘[00:13:a2:00:40:31:fc:56]!’
XBeeDeviceManager(xbee_device_manager): configuration done for node ‘00:13:a2:00:40:31:fc:56!’ promoting to RUNNING state.
–> idigi_db: Received sample 1
–> idigi_db: Received sample 2
XBeeDeviceManagerConfigurator: worker assigned to ‘00:13:a2:00:40:3a:dd:b1!’
XBeeDeviceManager(xbee_device_manager): configuration done for node ‘00:13:a2:00:40:3a:dd:b1!’ promoting to RUNNING state.
XBeeSensor(sensor0): running indication
XBeeSensor(sensor0): DD info (module_id, product_id) = (0x0003, 0x000e)
XBeeSensor(sensor0): sensor is a ‘Digi XBee Sensor /L/T’ no humidity capability.
–> idigi_db: Received sample 3
–> idigi_db: Received sample 4
–> idigi_db: Received sample 5
–> idigi_db: Received sample 6
XBeeSensor(sensor0): 12 C, 0 brightness
–> idigi_db: Received sample 7
–> idigi_db: Received sample 8
–> idigi_db: Received sample 9
–> idigi_db: Received sample 10
XBeeSensor(sensor0): 12 C, 0 brightness
–> idigi_db: Received sample 11
–> idigi_db: Received sample 12

*** XML in Storage section on iDigi are updated regulary ***
*** REBOOT X4 and run applic ****

#> python dpdsrv.py

Launching Dia framework …

Determining platform type…Digi Python environment found.

iDigi Device Integration Application Version 1.3.8
Using settings file: dia.pyr
Core: initial garbage collection of 0 objects.
Core: post-settings garbage collection of 10 objects.
Starting Scheduler…
Starting Channel Manager…
Starting Device Driver Manager…
XBeeDeviceManager(xbee_device_manager): retrieving node list
XBeeDeviceManager(xbee_device_manager): node ‘00:13:a2:00:40:3a:dd:b1!’ in skip configaddress list, promoting to RUNNING state.
XBeeSensor(sensor0): running indication
XBeeSensor(sensor0): DD info (module_id, product_id) = (0x0003, 0x000e)
XBeeSensor(sensor0): sensor is a ‘Digi XBee Sensor /L/T’ no humidity capability.
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeDeviceManager(xbee_device_manager): node ‘00:13:a2:00:40:31:fc:56!’ in skip configaddress list, promoting to RUNNING state.
Starting Presentation Manager…
idigi_db: presentation starting
idigi_db: there are 1 channels in the channels setting
idigi_db: I’m waiting for an event or up to 60 seconds
Starting Services Manager…
Core services started.
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
idigi_db: I’m done waiting
idigi_db: Uploading to iDigi
idigi_db: I uploaded to iDigi
idigi_db: I’m waiting for an event or up to 60 seconds
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness
idigi_db: I’m done waiting
idigi_db: Uploading to iDigi
idigi_db: I uploaded to iDigi
idigi_db: I’m waiting for an event or up to 60 seconds
XBeeSensor(sensor0): 12 C, 0 brightness
XBeeSensor(sensor0): 12 C, 0 brightness

*** Now XML in Storage section on iDigi are NOT updated ***

May be this is relevant:
Read something in the XBee Device Manager code about nodes in skip configaddress list:

skip_config_addr_list:

  • XBee addresses appearing in this list will skip

  • directly from the INIT state to the RUNNING state,

  • by-passing the application of any configuration

  • blocks.

  • Be careful when using this setting. By specifing

  • nodes in this list, they will not be configured

  • by the Dia framework, potentially leaving the node

  • in an unusable state.

Is there a way to empthy this list on reboot (init or something) like setting skip_config_addr_list=[]
I’m not an expert, just guessing here…

Well …

I got it working by doing the complete opposite of what i thought was logical.

In my YML I put
devices:

  • name: xbee_device_manager
    driver: devices.xbee.xbee_device_manager.xbee_device_manager:XBeeDeviceManager
    settings:
    skip_config_addr_list: [ “00:13:a2:00:40:3a:dd:b1!”, “00:13:a2:00:40:31:fc:56!”, ]

A couple of questions sprig to mind:

Is there another proper way to get the same result or is it a bug and I just found out a workaround?

What implications do this have for my configurations to come regarding temperature readouts?

In the second stage of the project I’m looking at adding RS232 readout from a couple devices. Any special considerations for me to have in mind regarding this uploading problem to iDigi after reboot? If it’s too intricate to elaborate on this, we take this last question when it’s needed.

One more question.

Any special considerations when adding a new temp sensor to
my xBee network by using skip_config_addr_list, besides adding it, in the code,
to the skip configaddress list after it has been detected on the
network and added to the device section in the YML?

Hi,

I do not think the skip list stuff is relevant to the problem. The skip list just keeps track of XBee nodes that have already been configured so that it can skip configuring them on subsequent starts of the Dia. This allows the Dia to start up more quickly.

Here is what is interesting from the log statements you just put up:

from first start
idigi_db: there are 0 channels in the channels setting

*after restarting
idigi_db: there are 1 channels in the channels setting

The idigi_db presentation has a channels setting that allows you to specify a list of channels that it will listen to. If specified, it will only listen for changes on these channels. If the setting is omitted or the list of channels is empty, the presentation will subscribe to every channel.

You’ll notice that in the first boot case, it is as expected, you did not have the channels setting, so it found 0 channels, and hence would subscribe to all of them. In the restart case however, it found 1 channel, which means it will only listen for changes on this channel. If this channel is not updated, then data may never be pushed to idigi.

The reason I originally asked for the .yml and .pyr files was to determine if there was some problem in converting the .yml to .pyr file. When I looked at it, I noticed the channels setting was found in the .pyr (and not in the .yml), but it had a value of ‘[]’, which I thought would have simply been read in as an empty list and it would have worked as expected.

It appears as though in the restart case, there may be some problem with the presentation reading in the channels setting from the .pyr file, and then not subscribing to all channels correctly.

To test this, I attached another modification to the idigi_db presentation. This one effectively bypasses the channels setting. It will print out the value of the setting, in order to see what it thinks the setting is, but will otherwise ignore it and subscribe to all channels.

I think this should work for you. If it does, it points out some flaw in the .yml -> settings -> .pyr -> settings process.

Thanks,
Chris

(Use the 2nd file with the larger size, had a problem with the file upload on the forum)