Jump to content

Nodelink core usage under mono on Rpi2


paulbates

Recommended Posts

Posted

ip_guy

 

Prior to nodelink, each xxxlink program went to its own mono instance. Each mono instance could find its own core on a RPi 2B. Do you know if a single instance of nodelink under mono takes advantage of the RPi 2Bs multiple cores? 

 

Fewer mono sessions use less resources, I'm looking at moving Nodelink to an RPi B+. I can't think of a reason preventing that, and wondered if anything was being lost but a little processor speed.

 

Paul

Posted

All the link programs are multi-threaded and can use multiple cores.

That being said, the CPU cycles they use are not much. I run all mine on the original Pi.

  • 3 weeks later...
Posted

Hello IO_guy-

 

Having trouble getting started with Nodelink.  Just downloaded and ran the latest build (first install of Nodelink for me).  It crashes before I can configure it.

 

Here is the console output:

xathros@xathhome:/Nodelink$ mono NodeLink.exe 
2015-12-08 09:42:06 - ISY NodeLink Server v0.2.4 started
2015-12-08 09:42:06 - No password specified for the ISY
2015-12-08 09:42:07 - Web config server started (http://192.168.2.21:8090)
2015-12-08 09:42:07 - ISY resolved to 192.168.2.21
2015-12-08 09:42:07 - ISY Error: Login failure (verify ISY password on the system config page)

Unhandled Exception:
System.Xml.XmlException: Document element did not appear.  Line 1, position 1.
  at Mono.Xml2.XmlTextReader.Read () [0x00000] in <filename unknown>:0 
  at System.Xml.XmlTextReader.Read () [0x00000] in <filename unknown>:0 
  at System.Xml.XmlDocument.ReadNodeCore (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
  at System.Xml.XmlDocument.ReadNode (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
  at System.Xml.XmlDocument.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
  at System.Xml.XmlDocument.LoadXml (System.String xml) [0x00000] in <filename unknown>:0 
  at NodeLink.RestISY.GetNodes (System.String debugData) [0x00000] in <filename unknown>:0 
  at f.d () [0x00000] in <filename unknown>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.Xml.XmlException: Document element did not appear.  Line 1, position 1.
  at Mono.Xml2.XmlTextReader.Read () [0x00000] in <filename unknown>:0 
  at System.Xml.XmlTextReader.Read () [0x00000] in <filename unknown>:0 
  at System.Xml.XmlDocument.ReadNodeCore (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
  at System.Xml.XmlDocument.ReadNode (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
  at System.Xml.XmlDocument.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
  at System.Xml.XmlDocument.LoadXml (System.String xml) [0x00000] in <filename unknown>:0 
  at NodeLink.RestISY.GetNodes (System.String debugData) [0x00000] in <filename unknown>:0 
  at f.d () [0x00000] in <filename unknown>:0 

I inspected the config file it created and this is all thats there:

<?xml version="1.0" encoding="UTF-8"?>
<sections>
  <section name="web config">
    <item key="port" value="8090" />
  </section>
</sections>


Should I copy the ISY definition from my ISYLink config?

 

Thanks in advance.

 

-Xathros

Posted

You have duplicate device names in your ISY.

I'll handle this in the next build.

 

Can you PM me your rest return from /rest/nodes?

Posted

Thanks IO_Guy,

 

It is quite possible that I have some non-unique device names.  I will dump and send you my nodes.

 

-Xathros

Posted

I lied a little (after actually ready your error).  It can't be devices because you haven't logged in to get them yet.

 

Try 0.2.5.

Posted

That fixed it!

 

Up and running.

 

Thanks

 

-Xathros

Posted

I have nodelink running, I have added a configuration, uploaded the profile, added an "Additional ISY Data" node and installed the node.  I see n002_isylink in my tree.  I don't see any data associated with this node.  How do I access the ISYLink variables via the newly installed node?

 

 

Also, I am seeing 404 errors from Nodelink referencing the sun data but I don't currently have that enabled in Nodelink.

2015-12-09 10:58:07 - ISY Error: The remote server returned an error: (404) OK. (ns/2/nodes/n002_isylink_sun/report/status/GV1/169/14)
2015-12-09 10:58:38 - ISY Error: The remote server returned an error: (404) OK. (ns/2/nodes/n002_isylink_sun/report/status/GV1/169/14)
2015-12-09 10:59:08 - ISY Error: The remote server returned an error: (404) OK. (ns/2/nodes/n002_isylink_sun/report/status/GV1/169/14)
2015-12-09 10:59:38 - ISY Error: The remote server returned an error: (404) OK. (ns/2/nodes/n002_isylink_sun/report/status/GV1/169/14) 

Even stranger, I noticed a ham weather xml dump in my nodelink output:

2015-12-09 11:04:20 - ISY Error: The remote server returned an error: (404) OK. (ns/2/nodes/n002_isylink_sun/report/status/GV1/170/14)
2015-12-09 11:04:31 - ISY: Variable isylink-GV3 replaced in queue (Val: 493145, QS: 6)
2015-12-09 11:04:51 - ISY Error: The remote server returned an error: (404) OK. (ns/2/nodes/n002_isylink_sun/report/status/GV1/170/14)
2015-12-09 11:05:01 - ISY: Variable isylink-GV2 replaced in queue (Val: 5, QS: 6)
2015-12-09 11:05:04 - ISY: <?xml version="1.0" encoding="UTF-8"?><climate enabled="true" locationId="MID_C1490" rss="http://wx.hamweather.com/?pands=MID_C1490" lastUpdatedTS="2015/12/09 10:50:05"><Temperature>40 °F</Temperature><Temperature_High>41 °F</Temperature_High><Temperature_Low>33 °F</Temperature_Low><Feels_Like>38 °F</Feels_Like><Temperature_Average>34.7 °F</Temperature_Average><Humidity>83 %</Humidity><Pressure>30.17 inHg</Pressure><Dew_Point>35 °F</Dew_Point><Wind_Speed>3 mph</Wind_Speed><Wind_Direction>S</Wind_Direction><Gust_Speed>8 mph</Gust_Speed><Total_Rain_Today>0 inches</Total_Rain_Today><Light>13 %</Light><Evapotranspiration>0.002 inches/day</Evapotranspiration><Irrigation_Requirement>0.0073 inches</Irrigation_Requirement><Water_Deficit_Yesterday>0.002 inches</Water_Deficit_Yesterday><Elevation>354 </Elevation><Coverage>0</Coverage><Intensity>0</Intensity><Weather_Condition>0</Weather_Condition><Cloud_Condition>5</Cloud_Condition><Average_Temperature_Tomorrow>45 °F</Average_Temperature_Tomorrow><High_Temperature_Tomorrow>52 °F</High_Temperature_Tomorrow><Low_Temperature_Tomorrow>37 °F</Low_Temperature_Tomorrow><Humidity_Tomorrow>88 %</Humidity_Tomorrow><Wind_Speed_Tomorrow>4 mph</Wind_Speed_Tomorrow><Gust_Speed_Tomorrow>7 mph</Gust_Speed_Tomorrow><Rain_Tomorrow>0 inches</Rain_Tomorrow><Snow_Tomorrow>0 inches</Snow_Tomorrow><Coverage_Tomorrow>11</Coverage_Tomorrow><Intensity_Tomorrow>0</Intensity_Tomorrow><Weather_Condition_Tomorrow>6</Weather_Condition_Tomorrow><Cloud_Condition_Tomorrow>4</Cloud_Condition_Tomorrow><Forecast_Average_Temperature>41 °F</Forecast_Average_Temperature><Forecast_High_Temperature>45 °F</Forecast_High_Temperature><Forecast_Low_Temperature>36 °F</Forecast_Low_Temperature><Forecast_Humidity>76 %</Forecast_Humidity><Forecast_Rain>0 inches</Forecast_Rain><Forecast_Snow>0 inches</Forecast_Snow><Forecast_Coverage>0</Forecast_Coverage><Forecast_Intensity>0</Forecast_Intensity><Forecast_Weather_Condition>0</Forecast_Weather_Condition><Forecast_Cloud_Condition>3</Forecast_Cloud_Condition></climate> (climate)
2015-12-09 11:05:06 - ISY: Variable isylink_sun-GV1 replaced in queue (Val: 171, QS: 6)
2015-12-09 11:05:21 - ISY Error: The remote server returned an error: (404) OK. (ns/2/nodes/n002_isylink_sun/report/status/GV1/171/14)
2015-12-09 11:05:31 - ISY: Variable isylink-GV3 replaced in queue (Val: 493146, QS: 6)
2015-12-09 11:05:51 - ISY Error: The remote server returned an error: (404) OK. (ns/2/nodes/n002_isylink_sun/report/status/GV1/171/14)
2015-12-09 11:06:01 - ISY: Variable isylink-GV2 replaced in queue (Val: 6, QS: 6)
2015-12-09 11:06:21 - ISY Error: The remote server returned an error: (404) OK. (ns/2/nodes/n002_isylink_sun/report/status/GV1/171/14)
2015-12-09 11:06:31 - ISY: Variable isylink-GV3 replaced in queue (Val: 493147, QS: 6) 

If I attempt to "ReInstall" the ISYLink node, I receive:

2015-12-09 11:07:44 - ISY Error: The remote server returned an error: (404) OK. (ns/2/nodes/n002_isylink/add/ISYData?primary=n002_isylink&name=n002_isylink&nls=139D) 

-Xathros

Posted

Xathros,

I think this is similar to what I'm seeing.  I've been working with io_guy via PM.  I'm going to try again now.  Hitting the "Install ISY node" is what io_guy suggested I try, but I'd already done that ( a bunch of times ).

For me the ISY Data shows up, but doesn't update.  My Ecobee data never shows up.

When I went back to v0.2.3 of NodeLink, it all works again with everything looking as it should and updating as it should.

Posted

Xathros,

I think this is similar to what I'm seeing.  I've been working with io_guy via PM.  I'm going to try again now.  Hitting the "Install ISY node" is what io_guy suggested I try, but I'd already done that ( a bunch of times ).

For me the ISY Data shows up, but doesn't update.  My Ecobee data never shows up.

When I went back to v0.2.3 of NodeLink, it all works again with everything looking as it should and updating as it should.

Thanks.  The last bit in my previous post is what I get when I try to "Install Node" again.

 

I didn't keep the previous version of Nodelink and never had 0.2.3.  I believe only the current version is available on io_guy's site.

 

@io_guy

 

I also notice that the installed node shows up in the ISY tree as n002_<nodename) rather than <NickName>.  I'm assuming the Nickname is supposed to be the pretty name that we see in the ISY Tree no?

 

Nodelink does not show up on the Node Servers menu in ISY with the exception of on the Configuration submenu.  Should it be listed as a server like my Hue Hub is via Polyglot?

 

-Xathros

Posted

- The 404 error you receive when trying to install the node is an ISY bug.  It means the node already exists (already installed).

- I have no idea how polyglot displays node in the ISY but what you explained for NodeLink sounds right.

- The nickname will not show up in the ISY, that's just to display the webpage tab in NodeLink.  You'll need to rename the nodes in the ISY as you wish.

- If you click on the node in the ISY (from the left tree) you should see the various variables.

 

Your fail is caused by it trying to write one of the sun position variables but failing.  My guess is you enabled the sun position option in NodeLink but you need to re-hit the Install Nodes button in NodeLink to create the subnode.

Posted

I tried multiple times to install the node. No data ever shows and the detail area for the node shows only what the previously selected device or node was displaying. In other words, selecting the nodelink node does not replace the displayed data in the node detail area of the ISY UI. I have uninstalled and reinstalled several times now with the same result each time. On my very first attempt, I had configured the sun data options. After having problems, I disabled that but it persisted through at least one Nodelink restart. I think that issue has stopped for now however. Paulbates just sent me ver 0.2.3. I'm going to give that a try in the morning and see if that is any different. Glad to know that I can rename the nodes in the ISY. Should there be an entry on the ISY's Node Server menu for Nodelink?

 

 

-Xathros

 

Sent from my iPhone using Tapatalk

Posted

I'm not getting the entry above Configure. In my case, I'm using slot 2 since I already have a polyglot node server for my Hue hub in slot 1

 

 

-Xathros

 

Sent from my iPhone using Tapatalk

Posted

0.2.3 works just fine.  Not sure what in 0.2.5 does not like my setup.

 

-Xathros

Posted

No.  The 404's went away after restarting Nodelink with the sun option deselected.  The problem is that the node does not appear to fully install on the ISY under 0.2.5.  It appears in the tree with no data and does not show up on the node server menu except under the Config submenu.  No amount of reinstalling the node and rebooting the ISY has any effect on this outcome.

 

0.2.3, on the other hand, works exactly as you and your docs describe both with and without the sun stuff enabled.

 

I'm happy to assist in any way I can to help diagnose/debug.

 

-Xathros

 

EDIT: Uder 0.2.3, I notice that if the ISY is restarted after Nodelink is already running, the majority of the ISYLink data fields are not repopulated.  Hour, Minute and Minute of year seem to populate as they change and I suspect the other fields will at the point where they change.  Those like week, month, year  and season  could take a while to repopulate.  Restarting nodelink resolves this and populates all fields as it comes back up.  Not sure if this was addresses in a later build, if not, could nodelink send all fields whenever it has to resubscribe?

Posted

Can you run 0.2.5 and try to get some sort of error log?  I have no idea what's going on with your system.

 

NodeLink does not subscribe to the ISY.  To update the values I would recommend your run a program that queries the NodeLink ISYData node on startup.

Posted

I will reinstall 0.2.5 and see what I can get for log data for you.  It will be tomorrow as I'm heading out for the evening.

 

Running 0.2.3, I did try querying the node after ISY startup from the admin console and it did not populate the values.  I will try again after my next restart and see what I get.

 

Thanks.

 

-Xathros

Posted

OK, so I lied.  I got a chance to play with this this evening.  I terminated 0.2.3 and launched 0.2.5 and it works just fine.  This however seems to be because 0.2.3 installed the node successfully.  I am going to uninstall the nodes (ISY Additional Data and Sun Data) and then try to reinstall using 0.2.5.  I will attempt to capture any relevant log data during the process.

 

-Xathros

Posted

Update:  Still running 0.2.5.  ISY restarted, only Hour, Minute, Minute of year and Sun data populated.  Queried ISY_Data node and received:

post-1150-0-99140200-1449865557_thumb.jpg

 

This was the only thing generated in the Nodelink log file:

2015-12-11 15:22:15 - Web Request: /isylink/nodes/n002_testnode/cmd/QUERY

ISY error log shows:

Fri 2015/12/11 03:22:16 PM	System	-140008	ISY:404	

I set up a network resource to call the RESTART via the relay server.  I tested the resource and as soon as Nodelink restarts, all of the fields populate.

 

I am still going to uninstall all of the nodes and do a fresh install with 0.2.5 to see if I can capture anything useful to diagnose the failure to install under 0.2.5

 

-Xathros

 

Posted

Update 2:

 

Shutdown Nodelink 0.2.5 and removed config.xml.

Deleted nodes and deleted nodeserver from the ISY then rebooted ISY.

 

Started Nodelink 0.2.5, configured with ISY credentials and created Node for Additional ISY Data - did not configure sun data.

In ISY, added nodeserver in slot 2 and uploaded nodesetup.zip

Restarted ISY

Clicked Install Node in Nodelink

Node appeared in ISY tree with no data, NodeLink doesn't appear on Node Servers menu.

post-1150-0-10573000-1449868227_thumb.jpg

 

I archived the NodeLink log file from this setup and can PM to you if you need.  ISY error log contains no information from this install.

 

It looks like the node and/or node server are not properly installing in the ISY when starting with 0.2.5

 

-Xathros

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...