Microhard Corp makes some of the best M2M products on the planet. Configuring your modem for serial pass through is relatively easy and straight-forward. SCADACore offers Microhard modems as an option for the Cellular Communication Packages.
The modems that we will cover for setting up serial pass through are:
- Bullet-3G – Low Cost, one serial port. Not Class 1 Div 2.
- IPn3Gb – Low Cost, 2 serial ports, RS485 native
- IPn3Gii – Medium Cost, 3 serial ports, RS485 native, Analog and Digital Outputs (Legacy)
- IPn4Gb – High Cost, 2 serial ports, RS485 native, 4G speeds
- IPn4Gii – High Cost, 3 serial ports, RS485 native, Analog and Digital Outputs, 4G speeds
The most versatile modem for the price is the IPn3Gb modem. There screw terminals allow for easy access to RS485 and RS232 options and the dual ports are useful for communicating to more than one device.
NOTE: Com2 is in the front of the modem it is an RS232 port ONLY
NOTE: Com1 is in the back of the modem. There is an option to switch between RS485 and RS232 only one of the Screw Terminal (RS485) and Data port (RS232) can be used at once.
When using RS485 2-wire, with the microhard modems requires a jumper from TxB to RxB and a jumper from TxA to RxA. This is the most common RS485 configuration for SCADA.
When wiring the IPn3G using the RS485+ from the RxA and the RS485- from the RXB.
Follow the instructions to connect to the modem via Ethernet.
By default the modem’s IP address is 192.168.0.1
When setting up com one ensure:
- Port Status = Enable
- Channel Mode is the protocol you want to use for your serial communication
- Set your Data Baud Rate and Data Format (usually 9600, 8N1)
- Flow Control is rarely used in SCADA leav it to none.
- When using Pass through Pre-Data Delay and Post-Data Delay are not used.
- Data Modem is set to Transparent
- Character timeout is the length of time you wait until the packet is sent. With 9600 baud rate the character timeout is essentially a millisecond delay. 30-70 is a good Character timeout. If you are receive packets that are cutoff you can increase this timeout slightly.
- Maximum packets size is rarely used in SCADA Setting it to 256 (the max size of a modbus packet is usually safe)
- Protocol Config needs to be set to TCP Server – This means the modem acts as a server and listens for requests from the master.
- Set the listening port to the port you wish to access the modem.
- The connection timeout is the timeout for the Connection between your remote host and the Modem. If you are automatically polling the device it is good to set this lower (to around 30 seconds) if you are using software to connect directly to it you will want it a bit higher so the connection will not break during a pause in usage.
When setting up com 2 most of the settings are similar to com 1 with the exception that there is no option to change the Channel Mode.
Make sure that if you are using 2 com ports they do not have the same server port. It will cause conflicts.
In the firewall tab do NOT allow Wan Request. This will open up the modem completely to the outside world. When troubleshooting you can allow the wan request temporarily but if you leave the Wan Request Open you will get unsolicited traffic from the outside world that will drive up your modem usage.
With the Wan Request Blocked by default we need to allow access to the single port that was selected as the TCP server in the com settings.
To do this:
- Give your rule a name (Com1 Access)
- Remove any content from Source IP and Destination IP
- Destination Port is set the the TCP server port we selected in com settings
- Click Add
- Click Apply
- Test modem for connectivity
The single most common problem is a reversed +/- on the RS485 port or a reversed RX TX on the RS232 ports. Simply flipping these wires will help to resolve the com issues.
If you are still having trouble with the firewall enable (allow access from Wan) to see if there is a firewall rule issue.
If Data is getting cut off increase the Character Timeout in the Com settings
If Data is receiving multiple requests on the single packet or the delay is too high lower the Character Timeout in the Com settings