Commit 6b38df8f authored by Mark Tearle's avatar Mark Tearle
Browse files

Add config_modbus_port option to allow Modbus port to be set (for virtualcoke)

parent 9eb2276f
...@@ -9,6 +9,8 @@ items_file items.cfg ...@@ -9,6 +9,8 @@ items_file items.cfg
# PLC - coke brain # PLC - coke brain
#coke_modbus_address 130.95.13.73 #coke_modbus_address 130.95.13.73
coke_modbus_address 0.0.0.0 coke_modbus_address 0.0.0.0
# 502 is default modbus port, virtualcoke uses 1502
coke_modbus_port 502
# Zero price items, defaults to off # Zero price items, defaults to off
test_mode no test_mode no
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
# Type ID Price Description # Type ID Price Description
# Drinks # Drinks
coke 0 200 Blue Powerade coke 0 200 X Blue Powerade
coke 1 200 Mother Energy Drink coke 1 200 Mother Energy Drink
coke 2 75 Solo coke 2 75 Solo
coke 3 75 Lemonade coke 3 75 Lemonade
......
...@@ -49,6 +49,7 @@ tHandler gCoke_Handler = { ...@@ -49,6 +49,7 @@ tHandler gCoke_Handler = {
Coke_DoDispense Coke_DoDispense
}; };
const char *gsCoke_ModbusAddress = "130.95.13.73"; const char *gsCoke_ModbusAddress = "130.95.13.73";
int gsCoke_ModbusPort = 502;
modbus_t *gCoke_Modbus; modbus_t *gCoke_Modbus;
time_t gtCoke_LastDispenseTime; time_t gtCoke_LastDispenseTime;
time_t gtCoke_LastReconnectTime; time_t gtCoke_LastReconnectTime;
...@@ -126,7 +127,7 @@ int Coke_int_ConnectToPLC(void) ...@@ -126,7 +127,7 @@ int Coke_int_ConnectToPLC(void)
if( !gCoke_Modbus ) if( !gCoke_Modbus )
{ {
gCoke_Modbus = modbus_new_tcp(gsCoke_ModbusAddress, 502); gCoke_Modbus = modbus_new_tcp(gsCoke_ModbusAddress, gsCoke_ModbusPort);
if( !gCoke_Modbus ) if( !gCoke_Modbus )
{ {
perror("coke - modbus_new_tcp"); perror("coke - modbus_new_tcp");
......
...@@ -31,6 +31,7 @@ extern int gbServer_RunInBackground; ...@@ -31,6 +31,7 @@ extern int gbServer_RunInBackground;
extern int giServer_Port; extern int giServer_Port;
extern const char *gsItemListFile; extern const char *gsItemListFile;
extern const char *gsCoke_ModbusAddress; extern const char *gsCoke_ModbusAddress;
extern int gsCoke_ModbusPort;
extern const char *gsDoor_SerialPort; extern const char *gsDoor_SerialPort;
extern bool gbSyslogEnabled; extern bool gbSyslogEnabled;
...@@ -126,13 +127,15 @@ int main(int argc, char *argv[]) ...@@ -126,13 +127,15 @@ int main(int argc, char *argv[])
gbServer_RunInBackground = Config_GetValue_Bool("daemonise", 0); gbServer_RunInBackground = Config_GetValue_Bool("daemonise", 0);
gsCokebankPath = Config_GetValue("cokebank_database", 0); gsCokebankPath = Config_GetValue("cokebank_database", 0);
gsDoor_SerialPort = Config_GetValue("door_serial_port", 0); gsDoor_SerialPort = Config_GetValue("door_serial_port", 0);
gsCoke_ModbusAddress = Config_GetValue("coke_modbus_address", 0);
giServer_Port = Config_GetValue_Int("server_port", 0); giServer_Port = Config_GetValue_Int("server_port", 0);
gsItemListFile = Config_GetValue("items_file", 0); gsItemListFile = Config_GetValue("items_file", 0);
gbNoCostMode = (Config_GetValue_Bool("test_mode", 0) == 1); gbNoCostMode = (Config_GetValue_Bool("test_mode", 0) == 1);
gbSyslogEnabled = (Config_GetValue_Bool("disable_syslog", 0) == 0); gbSyslogEnabled = (Config_GetValue_Bool("disable_syslog", 0) == 0);
gsCoke_ModbusAddress = Config_GetValue("coke_modbus_address", 0);
gsCoke_ModbusPort = Config_GetValue_Int("coke_modbus_port", 0);
signal(SIGINT, sigint_handler); signal(SIGINT, sigint_handler);
signal(SIGTERM, sigint_handler); signal(SIGTERM, sigint_handler);
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment