Professional Documents
Culture Documents
IWC Manual Issue 2
IWC Manual Issue 2
Model: IWC900-1-1-GB-XX
This document describes how to setup these various interfaces through the use of the supplied
"identiTAG IWC Interface" Windows application software as well as the basic operation of the unit.
UNIT MODES
The IWC operates in a multitude of output modes, most of which can be run concurrently over a
single communicate interface (USB/TCP etc.).
• Learn Mode
o The IWC can keep a list of nozzles used for authentication purposes
o Nozzle Suppression Mode must be activated
• SPP Mode (Serial Protocol Packet)
o Authenticated Output (Only learnt nozzles are pushed when Suppression enabled)
o _01022002,01122867,0111122223330001000001,17040024_1684
• MMP Mode (Magstripe Mirroring Packet)
o Authenticated Output (Only learnt nozzles are pushed when Suppression enabled)
o card=01111 cust=2222333 veh=0001 rep=2 dataId=1002 000001122867
• RRP Mode (Raw RF Packet)
o The Raw packet is transmitted directly
o Unauthenticated Output
o E011223317010024 000000000000 000000000000 00039559 0000 73CC
• DP Mode (Diagnostic)
o Extra information is displayed in order to help diagnose potential issues
Timestamps
RSSI (estimated signal strength)
Nozzle and Vehicle Unit Count
Nozzle type
Failure reasons (authentication, CRC)
• Nozzle Suppression Mode
o Enables Authentication for SPP and MMP protocols (RRP remains unaffected)
If no text is displayed after the 10 second wait period, disconnect power to the IWC unit and try
swapping the TxD and RxD pin connections of the RS-232 cable, and repeat the test procedure given
above.
Please ensure that the FIFO buffers for the COM port used have been disabled. This can be done by
going to “Start->Control Panel->System”. On the “Hardware” tab, click on the “Device Manager”
button. Under “Ports (COM & LPT)” double click on the desired COM port, and go to the “Port
Settings” tab. Click the “Advanced...” button, untick the “Use FIFO buffers” and press “OK”.
The definitions for this header are listed in the following table:
Please consult the “User/Installation Manual” for more information on the earth connection.
1.1.3 USB
The USB connection simply requires a “USB-to-mini B” cable (as shown below), which gets
connected from the PC's USB port to the mini-B USB connector location on the IWI PCB.
Figure 4 : USB-
USB- to-
to - mini B cable needed for USB communications
In addition, the hardware of the IWI (IWC) cannot support reception of RS-232 and USB data
simultaneously. As a result the USB selection needs to be turned ON using the DIP Switch, if any
commands are required to be sent to the unit. If only pushed (fueling) data is required over USB
and/or RS-232, this DIP can be ignored since all pushed data will be transmitted to both USB and
RS-232 interfaces simultaneously when the Host output is set correctly on the DIP Switch
1.1.4 ETHERNET
Like USB, all that is required to connect the receiver to the Ethernet is a cable, in this case a RJ-45
cable.
Once the test software has been installed, run it by clicking on the “DHRtest.exe” file or through the
"Start->All Programs->identiTAG->IWC Test Interface” shortcut.
Note: The software may change without this document being updated. Most changes will be minor
and shouldn’t detriment the understanding of the software.
• Screenshots
o To be used as references for the instructions.
• Specific Interface Instructions
o The different communication mediums will require unique setups.
• General Interface Instructions
o These will be common features which aren’t reliant on any specific communication
medium.
2.1 Screenshots
Screenshots
Figure 6 : Configure/Status
Figure 10:
10 : Network Parameters
Figure 12:
12: Firmware Update
Note: This available port list is generated whenever you click on the drop down button. If there are any
issues with conflicting ports you may need to change the port in device manager and restart the
computer.
Select the COM port to which the IWC was connected on the PC, and press the “Open COMx”
button. If successful, the status box at the bottom right of the application will change from RED to
GREEN - indicating that the selected port was successfully opened.
2.2.2 RS
RS--485
RS-485 cannot be connected to a PC directly, however, devices do exist to convert/adapt RS-485 to
RS-232 (which beyond the scope of this document – but note that Impro Technologies can supply
such a device, if required). When such a device is used, the same procedure given in Section 2.2.1
can be followed to make use of RS-485 as a virtual COM interface within the test software.
Figure 13:
13 : RS-
RS- 485 to RS-
RS- 232 converter.
2.2.3 USB
The USB connection works similar to RS-232, except that the USB-to-mini B cable is required to be
connected from the PC to the IWC (via the IWI) prior to starting up the Windows test application
software. This is required because the IWI consists of an onboard USB-to-serial converter, which
Windows only detects and enumerates when plugged into the PC.
Please also note that even though the IWI can be powered through the USB, the IWC can only be
powered externally and therefore will not boot.
Please ensure that the DIP switch mention in section 2.3 is set to the ON position, otherwise the unit
will ignore all commands sent to it – even if the correct COM port is selected and opened within the
test application.
2.2.4 ETHERNET
There are two different types of setup for Ethernet: Dynamic IP address assignment and manual IP
address assignment, depending on the configuration of the customer network.
Essentially, the IP address of the IWC unit needs to be known at all times, in order to communicate to
it through the "identiTAG IWC Interface" Windows application software. If a DHCP server is used to
assign all the network parameters to the unit automatically, it is recommended that the IP address
The MAC address of the unit can be worked out by looking at the supplied sticker (or read from
Hyper-terminal if the Host output protocol is set to RS-232 or USB, and the pushed boot data read
on power-up, as given in Figure 3). A command can also be sent to the unit to display the IP Address
(See the protocol document). An example of such a supplied sticker is shown in the picture below:
Figure 14:
14 : MAC address determination
determination from supplied sticker
If one takes the first fix address (FixAdd) and prepends 001A to this number, the 6-byte (12 digit) MAC
address of the unit will be determined, which in this instance will be 00:1A:6E:00:30:25.
The first task is to disable DHCP. This can be done by clicking on “Get DHCP Settings”. The “Use
DHCP?” box will become ticked, and the “Timeout” value will become populated with 10 seconds.
Untick the “Use DHCP?” box and press the “Set DHCP Settings” button to disable DHCP. Note that
the “Get DHCP Settings” button still needs to be pressed, even if DHCP has already been disabled
from the unit, as this unlocks the “Send Current Network Parameters to Unit” button.
Next, the network parameters of the IP network need to be feed to the unit. Once all the settings have
been entered, simply press the “Send Current Network Parameters to Unit” button to configure the
unit with these new settings. An example of this is shown over the page.
Now the unit has a fixed address of 192.1.2.222, plug in the RJ-45 connector into the Ethernet
socket, and wait a few seconds (customer network dependent) for the network to realize the
existence of this new unit.
Click on Get Date/Time to check whether the unit is responding. If the unit responds with the time
value then it is operational. If you are having issues please ensure that the hardware and software are
setup correctly in Section 1.1 and Sectoin 2.2.
3 SOFTWARE
SOFTWARE CODE EXCERPTS
All excerpts are from Visual Studio 2010 C#
[C#]
message = "@";
message += Convert.ToByte(mBoxLAddr.Text).ToString("X").PadLeft(2, '0');
message += "64";
SendSerialData(message);
3.2 Networking
The following network examples are simply modifications from the examples provided by Microsoft on
their MSDN website. See System.Net.Sockets (http://msdn.microsoft.com/en-
us/library/sb27wehh.aspx) with particular notice to the TcpClient, TcpListener and UdpClient classes.
The ellipses are used to separate different sections of code. Most functions will use threads to in
order to efficiently use the data.
3.2.1 UDP
[C#]
static UInt16 PORTcmd = 10005;
UdpClient udpClientCMD = new UdpClient(PORTcmd);
Thread rxUDPthread;
...
message = "@";
// Convert logical address into hex string
message += Convert.ToByte(logicalAddress).ToString("X").PadLeft(2, '0');
message += "10"; // 10 is the command for get date/time
...
while (true)
{
data = udpClientCMD.Receive(ref recvpt);
[C#]
static UInt16 PORTdata = 10500;
UdpClient udpClientDATA = new UdpClient(PORTdata);
Thread UDPthread;
...
...
while (true)
{
data = udpClientDATA.Receive(ref recvpt);
3.2.2 TCP
[C#]
static UInt16 PORTdata = 10500;
TcpListener tcpListener = new TcpListener(IPAddress.Any, PORTdata);
Thread TCPthread;
...
// spawn a TCP listen thread
TCPthread = new Thread(new ThreadStart(ListenForClients));
TCPthread.IsBackground = true;
TCPthread.Start();
...
private void ListenForClients()
{
tcpListener.Start();
while (true)
{
//blocks until a client has connected to the server
TcpClient client = tcpListener.AcceptTcpClient();
...
TcpClient tcpClient = new TcpClient(remIP, PORTcmd);
NetworkStream stream = tcpClient.GetStream();
while (true)
{
while (true) ;
}
...
private void HandleClientComm2(object client)
{
TcpClient tcpClient = (TcpClient)client;
NetworkStream clientStream = tcpClient.GetStream();
while (true)
{
byte[] message = new byte[1024];
int bytesRead = 0;
tcpClient.Close();
}