Jump to content

Nodelink On Mac With Latest Mono (6.0)


macjeff

Recommended Posts

Posted

I run mono on the mac to run nodelink in terminal.  Works great.  Yesterday Mono 6 came out of Beta.   I had the latest Mono 5 and upgraded to 6.   Seemed to run fine but a couple hours later I came  back and nodelink had stopped due to error.

I tried again and same thing.

So I went back to 5.0.20 and been running fine all night.

Just wanted to let poeple know.

Posted

Not mac specific, but new versions of mono have been a problem for me in the past. As my system became more 'production' oriented, I moved from early to late adopter of OS and especially mono upgrades. Thanks for trying out and posting

Paul

Posted

Interesting.  On vacation but will try it out when I get back.  

In the fall I'll be moving NodeLink over to NET CORE 3 when it's finally released.  

  • 2 weeks later...
Posted

if you go to the ARCHIVE there is a 6.0.316.   The current release is 6.0313 which is still crashing for me.

Keep the current installer (or get from Archives) before 6.0 came out in case of problems.  I have it if needed for mac.

Reinstalling the last 5.0 release does work fine and crashes go away.

I just installed the 3.16.   Takes a while to crash (i used Ecobee, Weatherflow, and Honeywell Total Connect nodes) but it never goes more than about 12 hours so this time tomorrow if I dont post than it worked on 3.16.   Just remember the release download (As of this moment) is still 3.13.   3.16 is NOT under beta or nightly builds so no idea why its not the current download.  I can only get it for mac by going to the archive and going to July 25 or 26 when it was released.

 

 

 

Posted

crashed on 6.0.3.16

 

2019-07-29 12:07:15 - Mono version: 6.0.0.316 (2019-02/5e7b96082dd Thu Jul 25 10:36:27 EDT 2019)
2019-07-29 12:07:16 - Web config server started (http://172.16.1.243:xxxxxx)

Unhandled Exception:
System.InvalidOperationException: An attempt was made to transition a task to a final state when it had already completed.
  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[TResult].SetException (System.Exception exception) [0x0004b] in <b1fcf3eb0f374870866bafcf7e06cbfe>:0
  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder.SetException (System.Exception exception) [0x00000] in <b1fcf3eb0f374870866bafcf7e06cbfe>:0
  at System.Net.Http.ConnectHelper+ConnectEventArgs.OnCompleted (System.Net.Sockets.SocketAsyncEventArgs _) [0x0006a] in <9847f1663c314d598effbd20dab0be73>:0
  at System.Net.Sockets.SocketAsyncEventArgs.Complete () [0x00009] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Net.Sockets.SocketAsyncEventArgs.FinishOperationAsyncFailure (System.Exception exception, System.Int32 bytesTransferred, System.Net.Sockets.SocketFlags flags) [0x0001d] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Net.Sockets.MultipleConnectAsync.AsyncFail (System.Exception e) [0x0001a] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Net.Sockets.MultipleConnectAsync.InternalConnectCallback (System.Object sender, System.Net.Sockets.SocketAsyncEventArgs args) [0x000b7] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Net.Sockets.SocketAsyncEventArgs.OnCompleted (System.Net.Sockets.SocketAsyncEventArgs e) [0x0000e] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Net.Sockets.SocketAsyncEventArgs.Complete () [0x00009] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Net.Sockets.Socket+<>c.<.cctor>b__315_3 (System.IAsyncResult ares) [0x00057] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Net.Sockets.SocketAsyncResult+<>c.<Complete>b__27_0 (System.Object state) [0x0000b] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem () [0x00008] in <b1fcf3eb0f374870866bafcf7e06cbfe>:0
  at System.Threading.ThreadPoolWorkQueue.Dispatch () [0x00074] in <b1fcf3eb0f374870866bafcf7e06cbfe>:0
  at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback () [0x00000] in <b1fcf3eb0f374870866bafcf7e06cbfe>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.InvalidOperationException: An attempt was made to transition a task to a final state when it had already completed.
  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[TResult].SetException (System.Exception exception) [0x0004b] in <b1fcf3eb0f374870866bafcf7e06cbfe>:0
  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder.SetException (System.Exception exception) [0x00000] in <b1fcf3eb0f374870866bafcf7e06cbfe>:0
  at System.Net.Http.ConnectHelper+ConnectEventArgs.OnCompleted (System.Net.Sockets.SocketAsyncEventArgs _) [0x0006a] in <9847f1663c314d598effbd20dab0be73>:0
  at System.Net.Sockets.SocketAsyncEventArgs.Complete () [0x00009] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Net.Sockets.SocketAsyncEventArgs.FinishOperationAsyncFailure (System.Exception exception, System.Int32 bytesTransferred, System.Net.Sockets.SocketFlags flags) [0x0001d] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Net.Sockets.MultipleConnectAsync.AsyncFail (System.Exception e) [0x0001a] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Net.Sockets.MultipleConnectAsync.InternalConnectCallback (System.Object sender, System.Net.Sockets.SocketAsyncEventArgs args) [0x000b7] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Net.Sockets.SocketAsyncEventArgs.OnCompleted (System.Net.Sockets.SocketAsyncEventArgs e) [0x0000e] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Net.Sockets.SocketAsyncEventArgs.Complete () [0x00009] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Net.Sockets.Socket+<>c.<.cctor>b__315_3 (System.IAsyncResult ares) [0x00057] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Net.Sockets.SocketAsyncResult+<>c.<Complete>b__27_0 (System.Object state) [0x0000b] in <b9136dad10f24a2399466f56d9a602e0>:0
  at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem () [0x00008] in <b1fcf3eb0f374870866bafcf7e06cbfe>:0
  at System.Threading.ThreadPoolWorkQueue.Dispatch () [0x00074] in <b1fcf3eb0f374870866bafcf7e06cbfe>:0
  at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback () [0x00000] in <b1fcf3eb0f374870866bafcf7e06cbfe>:0
logout

[Process completed]

 

  • 1 month later...
Posted

Hello,

I'm relatively new to ISY programs having only written a few that turn lights on and off according to time of day.  Now I have some temperature sensors that I want to use to chart temperatures about once per hour and ultimately use to control a fan.  My computers are all Macs.  I've had trouble with Mojave on my Mac Air so I continue to use High Sierra 10.13.6 on the house desktop, which is what runs Admin Console and would run Mono.  I looked for some intro to Nodelinks with a Mac and this was the only thread that seemed to match.  If there is a better place for me to start learning about this connection to ISY, please point me there.  Otherwise, I will start with a few get-acquainted questions.  

Mono runs on a Mac and interfaces to ISY.  How does one get a copy of Mono to download and install?
Is there some charge for licensing Mono?
Who is maintaining Mono?
I want to chart this temperature data on my Mac, best choice for me would be with Excel, but could be Google Sheets or Apple spreadsheet that I have yet to use.
Does Mono have to run continuously to receive data from ISY or can ISY log the data for some time and then I run Mono when I want to look at it? 
Again, any other suggestions of where to look for Nodelink or Mono information would be greatly appreciated.  

Thanks

Posted

https://www.mono-project.com/docs/about-mono/

Mono indeed runs on a Mac.  Mono will let you run Windows applications on your Mac or Linux machine.  Nodelink is a Windows executable binary file, so it requires Mono if you run it on a platform other than Windows.  I used to run Nodelink on a Mac Mini, and it ran like a champ.  I run it on a Linux machine, now.

Reading your post, it sounds like you simply are looking chart some data from your ISY.  If the sensors you're using write data to the ISY system log, then you could simply use that data to make your charts, with no need to install anything but your spreadsheet of choice (Google Sheets, Apple Numbers and Libre Office are all free and perfectly adequate for the task).  No need for Nodelink at all, unless you're interested in using the Nodelink data logger -- sorry, I haven't used that Nodelink functionality, so I don't know anything about it.

Good luck!

 

Posted

Thank you, Bumbershoot, for the reply.  Sorry for my delay in replying. Working on this personal project often takes a backseat to more pressing responsibilities.  

A quick read of the document you pointed me to didn't say who maintains Mono or if there is a licensing fee to download it.  It looks like it may be useful, if not for this immediate project, then one later.  

Regarding this immediate project, I checked a bit about just using the ISY system log.  I assume this is the one labeled "log" that is in the list of Tools at the ISY console.  I wrote a very simple program to query my temp sensors and then checked the log.  It appeared that the Query saved a temperature reading only when the value had changed.  I will have to look more into how this works to see if/how I can get a value with each read which would make charting over time much easier, but it does look like this may be a much simpler way to get what I want.  

Thanks again,
Jimini

 

Posted
26 minutes ago, Jimini said:

A quick read of the document you pointed me to didn't say who maintains Mono or if there is a licensing fee to download it.

Mono is licensed under the MIT public license, so it's open sourced software and free to use.  There is no fee.  Currently, Microsoft and the .NET Foundation have taken over the maintenance of the code.

Archived

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

  • Recently Browsing

    • No registered users viewing this page.
  • Forum Statistics

    • Total Topics
      37.1k
    • Total Posts
      371.5k
×
×
  • Create New...