• Recent
    • Tags
    • Popular
    • Register
    • Login

    Please Note This forum exists for community support for the Mango product family and the Radix IoT Platform. Although Radix IoT employees participate in this forum from time to time, there is no guarantee of a response to anything posted here, nor can Radix IoT, LLC guarantee the accuracy of any information expressed or conveyed. Specific project questions from customers with active support contracts are asked to send requests to support@radixiot.com.

    Radix IoT Website Mango 3 Documentation Website Mango 4 Documentation Website Mango 5 Documentation Website

    getting java.lang.UnsatisfiedLinkError when running as modbusmaster

    Modbus4J general discussion
    2
    2
    2.5k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • torgeir123T
      torgeir123
      last edited by

      Hello,

      I am experiencing problems running the following code:

            ModbusFactory factory = new ModbusFactory();
            
            SerialParameters params = new SerialParameters();
            
            params.setCommPortId("/dev/ttyM0");
            params.setBaudRate(9600);
            params.setDataBits(8);
            params.setParity(0);
            params.setStopBits(1);
            
            RtuMaster master = (RtuMaster) factory.createRtuMaster(params);
            
            
          try {
              master.setTimeout(1000);
              master.init();
              
                List<Integer> slaves = master.scanForSlaveNodes();
                System.out.println("slaves: "+slaves);
           
          } catch (ModbusInitException ex) {
              Logger.getLogger(modbus.class.getName()).log(Level.SEVERE, null, ex);
          }
      

      when I run the above code, I get the following error:

      java -cp lib/ -jar HaystackClient.jar
      log4j:WARN No appenders could be found for logger (com.serotonin.io.serial.JsscSerialPortProxy).
      log4j:WARN Please initialize the log4j system properly.
      Exception in thread "main" java.lang.UnsatisfiedLinkError: /root/.jssc/linux/libjSSC-2.8_armsf.so: /root/.jssc/linux/libjSSC-2.8_armsf.so: cannot open shared object file: No such file or directory
      at java.lang.ClassLoader$NativeLibrary.load(Native Method)
      at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1938)
      at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1821)
      at java.lang.Runtime.load0(Runtime.java:809)
      at java.lang.System.load(System.java:1086)
      at jssc.SerialNativeInterface.<clinit>(SerialNativeInterface.java:172)
      at jssc.SerialPort.<init>(SerialPort.java:120)
      at com.serotonin.io.serial.JsscSerialPortProxy.openImpl(JsscSerialPortProxy.java:111)
      at com.serotonin.io.serial.SerialPortProxy.open(SerialPortProxy.java:80)
      at com.serotonin.io.serial.SerialUtils.openSerialPort(SerialUtils.java:95)
      at com.serotonin.modbus4j.serial.SerialMaster.init(SerialMaster.java:58)
      at com.serotonin.modbus4j.serial.rtu.RtuMaster.init(RtuMaster.java:45)
      at modbus.main(modbus.java:39)

      Two strange things:

      1: The file in the error message actually exists
      2: The processor is an ARMv7 Cortex-A8 which has hard float, so it doesn't make sense to load armsf lib.

      Any ideas would be greatly appreciated :-)

      1 Reply Last reply Reply Quote 0
      • hussamH
        hussam
        last edited by

        you run on a linux system. please confirm the serial com name is "/dev/ttyM0"? right?
        and this should be a jssc environment problem,pleause comfirm if you lose some jar lib

        1 Reply Last reply Reply Quote 0
        • First post
          Last post