Issue
I’m using Niagara WorkPlace Pro version 514 with an Echelon USB Lon adaptor and OpenLDV4.0 driver, but I’m unable to communicate a Lon network. The following message is displayed in the Standard Output Window when attempting to start the Enterprise Server:
Error opening driver LON1 java.lang.Exception: ldvRead() failed - rc = 3,
***************************************************************
ERROR: Cannot startService [Sys: LonWorksService [10] LonWorksService]
java.lang.IllegalStateException: Unable to open lonworks driver
at tridiumx.lonworks.services.LonLinkLayer.start(LonLinkLayer.java:89)
at tridiumx.lonworks.services.LonWorksService.startService(LonWorksService.java:196)
at tridium.foundation.Sys.startServices(Sys.java:438)
at tridium.foundation.Station.startStation(Station.java:364)
at tridium.foundation.Sys.boot(Sys.java:643)
at tridium.foundation.Sys.bootLocalLoad(Sys.java:616)
at tridium.tools.StationMain.attemptBoot(StationMain.java:214)
at tridium.tools.StationMain.bootPStore(StationMain.java:181)
at tridium.tools.StationMain.doIt(StationMain.java:145)
at tridium.tools.StationMain.main(StationMain.java:262)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at tridium.nre.Nre.mainImpl(Nre.java:663)
at tridium.nre.Nre.main(Nre.java:603)
tridiumx.lonworks.LonException E_LON_COMM_SERVICE_NOT_STARTED
at tridiumx.lonworks.services.LonCommService.doLonCommSendRequest(LonCommService.java:300)
at tridiumx.lonworks.services.LonCommService.lonCommSendRequest(LonCommService.java:276)
at tridiumx.lonworks.services.LonCommService.lonCommSendRequest(LonCommService.java:209)
at tridiumx.lonworks.util.Neuron.readMemory(Neuron.java:425)
at tridiumx.lonworks.util.Neuron.readMemory(Neuron.java:415)
at tridiumx.lonworks.util.Neuron.isNMAuthSet(Neuron.java:312)
at tridiumx.lonworks.util.Neuron.isNMAuthSet(Neuron.java:300)
at tridiumx.lonworks.devices.LocalLonAppDevice.verifyDevice(LocalLonAppDevice.java:935)
at tridiumx.lonworks.services.LonWorksService.stationReady(LonWorksService.java:222)
at tridium.foundation.Sys.stationReady(Sys.java:459)
at tridium.foundation.Station.startStation(Station.java:380)
at tridium.foundation.Sys.boot(Sys.java:643)
at tridium.foundation.Sys.bootLocalLoad(Sys.java:616)
at tridium.tools.StationMain.attemptBoot(StationMain.java:214)
at tridium.tools.StationMain.bootPStore(StationMain.java:181)
at tridium.tools.StationMain.doIt(StationMain.java:145)
at tridium.tools.StationMain.main(StationMain.java:262)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at tridium.nre.Nre.mainImpl(Nre.java:663)
at tridium.nre.Nre.main(Nre.java:603)
MESSAGE: Station started successfully. (HTTP port=80) [/WoodMode
Environment
Niagara R2, WorkPlace Pro Version 514
Cause
The Echelon USB Lon adaptor was first supported in Niagara R2 build 522.
Resolution
Niagara version 514 does not support a Lon USB adapter. If possible, upgrade to Niagara version 522 or later. In cases where upgrading is not an option and an USB adapter must be used, then the following should be applied.
- Stop the Enterprise Server station.
- Open Windows Explorer and browse to niagara.r2.301.514/nre/bin folder.
- Find the lon.dll file and rename it lon.dll.old.
- Copy the lon.dll from a later Niagara Build, i.e. 522 or later.
- Paste copied lon.dll to Niagara.r2.301.514/nre/bin folder.
- Restart the station.
The Lon Service should now start and Lon communication should be established.