Technician Hatting: A Basic Orientation of the MID System

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Technician Hatting: A Basic Orientation of the MID System

NEAL SINGH
Administrator

Basic Orientation of the MID 7.2  System

  • MID Reference document 1 [2 Jan 2020]

 

An understanding the MID Technology with a view to using it as the BlueWire and cable system replacement technology. This infers communication to the PumpController as the master controller determining the functioning, protocol managements and data logging as in the BlueWire System.

MID stands for Multiple Interface Device. As the name suggests the device can connect to many devices which include Pumps, RFID Tagging, iButton Tagging, LCD Display (20 x 4 lines), Nozzle Recognition Technology, UHF Tagging and the Automatic Vehicle Recognition system. The communication system to the MID from the PumpController is via CC1310 RF system or via a cabled RS485 adapter.

In this orientation we will focus on the iButton and RFID Tagging and Pump Interfacing and the both the Communication systems.

 

The MID device

 

  1. RFID/iButton 1 conn Side A (NB: iButton Adapter required for the standard  iButton Reader)
  2. RFID/iButton 2 conn Side B (NB: iButton Adapter required for the standard  iButton Reader)
  3. Mechanical Pump interface footprint
  4. Digital Pump Interface footprint
  5. Dipswitch1
  6. Dipswitch 2
  7. 12 Volt Power jack
  8. 12 Volt Power Connector
  9. Reset Switch and Ext Reset conn
  10. Uart1 Port for RF CC1310 and RS485 Adapter

 

The Dipswitches

The MID’s modes of operation is controlled by these switches. These will be discussed in light of the purpose of this orientation.

Dip Switch 1

   *  1 MSB #ID
   *  2 MID MSB #ID
   *  3 MID LSB #ID
   *  4 LSB #ID
   *  5 The baudrate of UART 1 is copied from UART 2
   *  6 Auto clear protocol enable
   *  7-8 00 = Serial (9660), 01 = RS485 (9600) and 10 = RF (115200)

Switch Positions 1 – 4 offer the 16 possible ID# of the MID from 0000 to 1111 in the same style as used on the BlueWire Rack, where 0010 is ID# 2 and 1000 is ID# 8.

Switch Position 5 is an option used for a cable setup where Uart1 uses the same baudrate as Uart2 (Pump Comms). This enables Tagging and Pumps to work at the same baudrate which would be configured accordingly on the PumpController ini file. An example of this is using the Gilbarco baudrate of 5787 on Uart2.  This would mean that the Pump and the SFTDual Tagging baudrate would both be set at 5787 on the PumpController so with this Switch Set, Uart1 would receive the comms from the PumpController for Tagging and Pump comms at this baudrate as well. NB: Uart1’s baud is otherwise determined by Switch Position 7-8 if  Switch 5 is in the OFF position.

Switch Position 6 allows for the Tag number to be cleared from the MID device the moment it is sent to the PumpController. This allows for a faster performance in that Tag Reader never needs to be cleared and it gives the security that the Tag number will not linger longer than necessary on the MID.

Switch Position 7-8 determine the default baud of Uart1 if Switch 5 is OFF.

0 0 -  Serial Communication [9600] e.g. ribbon cabled from the USB CH340

0 1 – RS485 Communication [9600]

1 0 – RF CC1310 [115200]

 

 

Dip Switch 2

   *  1 MSB UART2 Baudrate
   *  2 MID UART2 Baudrate
   *  3 LSB UART2 Baudrate
   *  4 Protocol Wrapped ON/OFF –AutoSend Tag Pending Tag Number
   *  5 LCD Keypad ON/OFF side 1
   *  6 LCD Keypad ON/OFF side 2
   *  7 Mech pump Enable
   *  8 ON= RFID Mode / OFF = iButton Mode

 

Switch Positions 1 – 3 Baud code for the various pump type

Sw1-3

Baud Rate

Pump Make

000

1200, 8, E, 1

 

001

2400, 8, N, 1

 

010

4800, 8, E, 1

Prowalco

011

4800, 8, N, 1

 

100

5787, 8, E, 1

Gilbarco

101

9600, 8, N, 1

Tokheim

110

4800, 8, O, 1

Dresser Wayne

111

38400, 8, N, 1

 

 

 

 

 

 

Switch Position 4  The MID can handle the Pump protocols as a Wrapped Pump Protocol, this refers to using the Tagging Protocol to carry the Pump protocol within the Tagging Protocol and when communicating to the Tagging System on the MID, it can deliver a message and receive the response from the Pump and return it to the PumpController. If there is a Tag number that has just been read, the MID will send back a status saying there is a Tag number available and the PumpController will then  request the Tag  number. Switch 4, changes that operation slightly, as the MID will respond with that Tag number the moment that Pump is polled that is associated with that Tag Reader. The Tagging Type used on the PumpController is called MIDDual. The MIDDual method is far more efficient than other Tagging configuration as the PumpController polls the Pump and Tagging in a single communication and with this Switch ON, the next moment the nozzle is detected as lifted, the Beep will be sounded on the Tag Reader and the once Tagged, it immediately respond with the Tag number.

Switch Position 7 is set when the MID is configure for a Mechanical Pump

Switch Position 8 controls the type of Tagging used. ON= RFID Mode and OFF= iButton Mode

 

Digital Pump Daughter board

This device is very much the same design of the Multi-Pump. NB: If only one Loop pump connector (L- Position) is being used, ensure that the Switch on the unused port is in the T- position.

NB: 3mm Red Loop LEDs not used, the SDM green LED is the Loop indicator.

We shall not go into Mechanical Pump Interfacing in this document.

 

The RF CC1310

This is the device that create Wireless connection network between the Pump and MIDs

 

  1. The Device Configuration Switches

The MID and MC/PC settings are what we will use. NB: MC = Master Controller, it is new device that will in future replace the PumpController the protocol manager over the MID.

  1. Network ID Configuration Switches

The Network ID would be used in cases where MIDS with similar frequency channels are operating in the same area. The safe practice would be to always ensure that there are different channels and different network ID if you are aware of another MID site in the area.

 

 

 

  1. Antenna used would the same sub 1 Gig antennae used on the BlueWire system

 

The PumpController INI

The MIDDual1 acts as the Tagging device and header for the RF communication. It is setup in the Tech Config much like you would a SFTDual Reader with SideA and SideB, but it’s not at all a Tag Reader but the management structure for the various communication mode with the Tagging protocols managed within the Pump Driver. This may not make sense to a novice but with experience it will better understood, but for now just understand it as any Tag Reader setup.

Here is the colour indicator and explanation of the header and how it works.

[MIDDual1]

; 0 - No Header/ 1 - MID Header/ 2- RF_CC1310

MIDMODE                = 2

NetworkID             = 0

;Dest; 1 -MID / 2- MC / 3 - Repeater

Destination           = 1

Jumps                 = 0

;Repeater ID = 1-3

Repeater1             = 0

Repeater2             = 0

Repeater3             = 0

Repeater4             = 0

OrginationID          = 0

;Power Level 0-15

PowelLevel             = 15

FreqChannel           = 0

PortSettings          = 9600,N,8,1

 

2019/12/19|09:43:19:330|COMM : COM3 -> (W) [17]  09 00 03 0F C8 54 32 03 03 01 1E 04 03 F5 30 B0 33

2019/12/19|09:43:19:521|COMM : COM3 -> (R) [11]  32 03 09 00 03 04 F5 30 B0 E1 33

 

2019/12/19|14:16:09:829|COMM : COM3 -> (W) [18]  09 00 01 0F EF 54 32 01 03 01 3C 02 04 F0 0F A2 5D 33

2019/12/19|14:16:10:016|COMM : COM3 -> (R) [9]  32 01 07 00 03 02 20 DF 33

Byte# 0                1                      2                     3                       4                

[0000 1001]  [0000 0000]   [0000 0001]   [0000 1111]   [1100 1000]

 

  1. Main match byte:
    Bits 7 to 5: Network ID, it is set by the dip switches. For a package be processed by a device first this ID must to match. If the Id doesn’t match is discarded.

Bits 4 and 3: Device type, it must to match with the device type selected with the dipswitches.
00 = NRT network, the package is in both directions from NRT and to NRT
01 = MID destination of the package
10 = MC destination of the package
11 = Repeater destination

Bits 2 and 1: Jump counter: These Two Bits represent the repeater number that must to be read on the repeater byte. Once that pass for a repeater depending on the direction (MID or MC) this number is increased or decreased for then the next repeater can matches with its ID. This value is discarded on MID or MC devices.

Bits 0: Direction: this bit indicates if the package is going to MID or to a MC. It is used to increase or decrease the jump (#Repeaters) and reach the end devices following the right repeater sequence.
if the destination is configured as NRT, this bit means 1=Direction MID, 0= Direction NRT.

  1. Repeater byte:
    Bit 7 and 6:  these values represent the first repeater that can reach the package from the MC.

Bit 5 and 4:  these values represent the second repeater that can reach the package from the MC.

Bit 3 and 2:  these values represent the third and last repeater that can reach the package from the MC.

Bit 1 and 0:  these values must to be always zero. At this way when the algorithm reads 0x00 will know that now the package must to go to an end device (MID).

  1. Origin/Destination: This byte is loaded with the device number in each nibble. If the package is from MC to MID, the Origin will be the MC ID and the Destination the MID ID. In the answer of MID, these nibbles are flipped.
    When the network is an NRT, the device connected to MID takes the ID from MID and the end device takes its ID from dip switches. But is important to set on the end device the destination equal to MID ID number to establish the link.

 

  1. CH/PW: The higher nibble is the channel used if the configuration of the devices is in automatic, if the channel is fixed this value will be zero. The lower nibble is the power used by the devices. Once the package is received, if this value is different to the actual the device changes the power after send the ACK. This would allow the system to be tuned to ideal power requirements of each MID on the Forecourt.

 

  1. Seq #: This value is used for debugging a transaction with a sniffer. This value changes only when the MC starts a transaction. For that reason, the seq # will be the same until the last ACK from the MC to the end device. For example, if the MC request the status, the status package that starts from the MID will have the same Seq# of the request.
    Also this number is used in the ACKs.

 

  1. End RF: Byte that signalling the end of RF header

 

  1. Payload: SF package.

 

The SF Package is the actual message intended for the Pump and looking at the comms, its easy to see the message and response from the Pump if you are familiar with it.

 

2019/12/19|14:16:09:829|COMM : COM3 -> (W) [18]  09 00 01 0F EF 54 32 01 03 01 3C 02 04 F0 0F A2 5D 33

2019/12/19|14:16:10:016|COMM : COM3 -> (R) [9]  32 01 07 00 03 02 20 DF 33

 

 

The LEDs

The flashing Green indicates that the CC1310 microcontroller is running

The White LED is the Error Indicator – if there is no comms after 5 secs this LED will flash and after 15 sec it will reset the microcontroller and the sequence will start again and again until it receives signal from the PumpController. This is the RF Watchdog similar to that of the BlueWire system.

When the MIDs is powered up, the CC1310 will query the MID for the MIDs ID#, should the MID not be in the correct more, and this is not possible it will continue this query and the Rx Led on the MIDs Uart1 will continue to flash. If the MID is correctly configured, the Rx and Tx leds on Uart1 will flash once and then the MIDs is ready to receive comms from the PumpController.

 

NB: the CC1310 on the PC side, gets its ID# from the Header (discussed earlier)

 

 

Selecting the right Frequency  - Setup Modes

 

Each site may require special tuning to find the right Channel for that area. There are special changes in the protocols that are in development to help with this. Here are the modes that the CC1310 can be configured in.

 

  • Fixed Mode: the CC1310 on the MID and PC will have the same Channel number [Dipswitch S1 5 – 8] and the PumpController.ini [MIDual1] setting for Channel = 0.

In this mode all CC1310 are tuned to the same frequency and there is no interference from the PumpController affecting the Frequencies.

 

  • Auto Mode: Not tested. The CC1310 are set to channels on the MIDs and the PC are set to zero and devices auto selects the right frequency for each implementation. Do not use this mode.

 

  • Dynamic Mode: The PC’s MID’s Channel numbers [Dipswitch S1 5 – 8] are all set to zero and the MIDs are configured to a particular Channel. The PumpController.ini [MIDual1] setting for Channel will be that Channel number set on the MIDs.

 

NB: There will be a new MIDMODE = 3 in the INI file that will ignore the Channel setting and use the BlueWire Channel number in the Tech Config to setup the Frequency Channel. This will enable the same flexibility so that all MIDs can be configured to operate on their own channel. The CC1310 on the MIDs could each have its own Channel. This would also be a way to find the cleanest channel and then set all BlueWire Channels on the Tech Config to that one channel. The flexibility of the MID system is that the Channels are not dependant on the Rack ID# as in the BlueWire System.
 

 

The PC Host Adapter

 

The PumpController communicates via the USB-CH340 board which can connected to RF_CC1310 (Sub 1 GHz)

RF_CC1310 and the USB-CH340 board

 

The stability of a USB port in this purpose is still under review and an alternative of using the current BlueWire PreAdapter with a special PC Host Adapter is currently being tested in the field.

The likelihood of the using the USR-N540 instead of convention Serial Ports would steer us in this direction as there are many advantages of the ethernet technology.

 

 

RS485 Communication

 

Instead of using the CC1310 on Uart1, we have another similar size RS485 Daughter board. It has a connector with markings; A, B, 12V and GND. The comms cables are connected A to A and B to B to all devices on the network.  The Power(+12V) and Ground (GND) can be supplied from a 12V Power Supply powering up the MID or it can supplied centrally from via a 4 core cable with the A and B signals.  In this picture below, the MID on the left is powered and via the RS485 daughter board’s +12V and GND connections and the MID on the right has power jack for the power source.

The PumpController.ini [MIDMODE] must be set to 0 (raw protocol) or 1 (Wrapped Protocols).  The RS485 comm baudrate is 9600 and the Dipswitch settings apply as defined. SFTDual and MIDDual Tagging can be used, but MIDDual is recommended.

 

 

 

 

Still in development

 

RF Report

 

This is Report is a message from the CC1310 devices that that the PumpController will log that will analyse failed communication and give a report of the RF conditions should comms have failed. This part of the project is still under review but the intention is to also have a report attached to every communication of the signal strength. The purpose of this will allow of dynamic adjustment of signal power and antennae type so that every pump can be tuned for the best communication when setting up a site.

 

RF Scanner

 

The RF report can be used with a special software so that we could scan the site for the best RF channel for that area prior to installation. We will possibly have standalone held scanner with a graphic display as well if its feasible.

 

 

 


image005.png (9K) Download Attachment
image008.emz (6K) Download Attachment
Basic Orientation of the MID 7.docx (2M) Download Attachment