Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
sdk:scripts:modbus-tcp-rtu-gateway [2022/07/07 12:14] klueppelsdk:scripts:modbus-tcp-rtu-gateway [2022/09/05 12:07] schmitt
Line 7: Line 7:
 DEV         = sprintf("SERIAL%d", (DEVIDX + 1)); DEV         = sprintf("SERIAL%d", (DEVIDX + 1));
 TCP_PORT    = 1502; TCP_PORT    = 1502;
-DEBUG       = 0; 
- 
- 
  
 /* check serial port config */ /* check serial port config */
Line 19: Line 16:
  
 /* set attributes */ /* set attributes */
-ret = nb_serial_setattr(DEV, 115200, 8, 1, 0, 0);+ret = nb_serial_setattr(DEV, 19200, 8, 1, 0, 0);
 if (ret != 0) { if (ret != 0) {
     nb_syslog("Could not set serial attributes: %d", ret);     nb_syslog("Could not set serial attributes: %d", ret);
Line 61: Line 58:
     exit(1);     exit(1);
 } }
-if (DEBUG == 1) { +
-    nb_modbus_set_debug(serial_fd, true);  +
-}    +
 printf("Listening for connections on port %d\n", TCP_PORT); printf("Listening for connections on port %d\n", TCP_PORT);
- 
  
 tcp_client = -1; tcp_client = -1;
 registered = 0; registered = 0;
- 
  
 while (1) { while (1) {
Line 78: Line 71:
             sleep(1);             sleep(1);
             continue;             continue;
-        } else { +        } 
-            if (DEBUG == 1) { +
-                nb_modbus_set_debug(tcp_client, true); +
-            }+
     }     }
  
Line 110: Line 100:
             nb_syslog("Unable to extract payload (%s)", nb_modbus_last_error());             nb_syslog("Unable to extract payload (%s)", nb_modbus_last_error());
         } else {         } else {
-            /* Modbus TCP - RTU must set the slave id */     
-            ret = nb_modbus_set_slave (serial_fd, payload[0]); 
-            if (ret > 0) { 
-                nb_syslog("Unable to set modbus slave id"); 
-                break; 
-            } 
- 
             response = nb_modbus_send_raw(serial_fd, payload);             response = nb_modbus_send_raw(serial_fd, payload);
             if (is_void(response)) {             if (is_void(response)) {