Thinkify TF9 User Manual

HSP 3.0 Guide
Thinkify, LLC, 18450 Technology Drive, Suite E1, Morgan Hill, Ca. 95037, www.thinkifyit.com 408-782-7111
Copyright 2014 Thinkify LLC. All Rights Reserved.
Table of Contents
Note Regarding RF Exposure................................................................................................................3
FCC Notice and Cautions......................................................................................................................3
Compliance FCC Part 90 ......................................................................................................................3
Acceptable Frequencies.........................................................................................................................3
Migrating from Thinkify HSP2_0 to HSP3_0 firmware.......................................................................4
Overall command entry -..................................................................................................................4
Data entry of programming data -....................................................................................................4
System Type -...................................................................................................................................5
Config.ini File -................................................................................................................................5
The STATUS message -....................................................................................................................6
System Commands -.........................................................................................................................6
List of supported commands as of version 3.0.4 5-25-2018.............................................................6
Ethernet Communication between HOST and THINKIFY HSP3.0.....................................................8
Output and Status Messaging in the Thinkify HSP3.0 system............................................................10
IO and Timing control in the Thinkify HSP3.0 System......................................................................13
Trigger input................................................................................................................................13
Commands to adjust trigger timing............................................................................................13
Commands to further adjust timing within the programming loop.............................................14
STATUS Outputs.......................................................................................................................15
System Type Functions and control in the Thinkify HSP3.0 system..................................................16
Using the LOCK function in Thinkify HSP3.0...................................................................................20
Controlling the programming list database in the Thinkify HSP 3.0 system......................................21
Thinkify, LLC, 18450 Technology Drive, Suite E1, Morgan Hill, Ca. 95037, www.thinkifyit.com 408-782-7111
Copyright 2014 Thinkify LLC. All Rights Reserved.

Note Regarding RF Exposure.

This equipment complies with FCC radiation exposure limits set forth for an uncontrolled environment. This equipment should be installed and operated with minimum distance of 20cm between the radiator (antenna) and your body. This transmitter must not be co-located or operating in conjunction with any other antenna or transmitter.

FCC Notice and Cautions

Any changes or modifications to this device not expressly approved by Thinkify, LLC could void the user's authority to operate the equipment.

Compliance FCC Part 90

Thinkify RFID readers that have been configured by the manufacturer for the FCC Part 90 regulatory region. Pursuant to FCC Part 90.205, the Thinkify RFID reader’s radiated power is limited to +20dBm (100 mWatts) ERP (Effective Radiated Power). Under all conditions, the Thinkify RFID reader will operate will below the maximum limit of Part 90 devices.

Acceptable Frequencies

917 to 923.25 MHz
Operation outside of these limits in Japan is not authorized!
Three preferred frequencies are:
917 MHz
920 MHz
923.25 MHz
Thinkify, LLC, 18450 Technology Drive, Suite E1, Morgan Hill, Ca. 95037, www.thinkifyit.com 408-782-7111
Copyright 2014 Thinkify LLC. All Rights Reserved.

Migrating from Thinkify HSP2_0 to HSP3_0 firmware

The 3.0 firmware command interface is similar, but not backwards compatible with the interface used in the 2.0 system. Changes were made to add functionality, and improve the usability and consistency of the command structure. At the end of this document is a list of commands supported by the 3.0 system. Further details of these commands will be described in additional documents.

Overall command entry -

In the 2.0 system several commands were redundantly provided both as PI level commands and TR65 commands, but were actually just pass through commands to the TR65 module. Then later on in the development of the 2.0 system it was determined there was just too many commands to support this way of doing things, and the concept of sending a command preceded by a '!' would result in a command directly sent to the TR65. The 3.0 system no longer supports this. For any command sent, the command interface parser in the 3.0 will first determine if this command is meant to be processed by the PI. If it is not recognized as a valid PI command it is then sent to the TR65. If the TR65 recognizes it as a valid command it executes it, otherwise reports UNKNOWN COMMAND. Therefore the whole concept of preceding the commands intended for the TR65 with a '!' is eliminated. and the PI does not support any commands that are really direct TR65 control commands, but instead just directly sends these on to the TR65. Some examples of the commands this applies to are setting the attenuation and radio parameters and setting the trigger and delay parameters.

Data entry of programming data -

The development process in the 2.0 evolved as time went on. In the beginning only 96 bit EPC programming was supported along with passwords. As development proceeded it became apparent that further functionality was desired - examples being the size of the EPC memory data field and the ability to program USER memory data. As these were attempted to be added to the 2.0 command interface, the control structure got cumbersome and difficult to use. There were multiple commands and setup procedures depending on the desired actions to the tags currently being run which were unable to be changed easily etc. The 3.0 system attempts to correct this.
Thinkify, LLC, 18450 Technology Drive, Suite E1, Morgan Hill, Ca. 95037, www.thinkifyit.com 408-782-7111
Copyright 2014 Thinkify LLC. All Rights Reserved.
The concept approach in the 3.0 system is WYEIWYP (What You Enter Is What You Program).. A structure of 65536 (0x10000) programming database entries is maintained as a circular FIFO buffer. Each of these database entries can hold varying length data fields for the EPC and USER fields, data for the password fields, and data for the PC word. When a system trigger occurs to initiate a programming sequence, the next available entry is popped from the FIFO, and whatever data is included in that particular database entry is used in programming operations to the tag. Any programming operations for data fields of NULL length are simply not executed. In this way all operational control on a tag that has triggered the system, for any operations, depends solely on the data entered for that particular database entry - there is no need for modes and setup commands etc.
In the initial release of the 3.0 system, this programming database can be created in two ways - through a series of WRITEITEM commands, or the system can automatically create a programming sequence list through a GENERATE command. Further control commands of this database include GETBUFFERCOUNT, READBUFFER, RESETBUFFER, and AUTOCLEAR. One further operation beyond the data programming which can optionally be performed during a triggered loop is LOCKING the tag. A separate document describes details of these database control commands, along with program flow and the LOCK operation control details.

System Type -

Three different system types are supported in the 3.0 system. Any PI/TR65 combination can be defined as a VERIFIER, an ENCODER, or STANDALONE system. The specification of the system type is best done in the config.ini file, but a command also exists to specify the type during runtime. The exact differences in operations for these three types is described in a separate document.

Config.ini File -

A file will exist in the /home/pi/HSP_3_0 folder of the Pi Linux file system. This file will specify parameters the program will initialize at reset for general system setup. It will allow setting the TCP port numbers used, the USB com port the TR65 is attached to, the overall system type, and the initial settings of the AUTOCLEAR mode and the TRIGGER type. The file is a simple text file and can be edited with any text editor. It is expected that parameters set in this file rarely change after initial system setup.
Thinkify, LLC, 18450 Technology Drive, Suite E1, Morgan Hill, Ca. 95037, www.thinkifyit.com 408-782-7111
Copyright 2014 Thinkify LLC. All Rights Reserved.

The STATUS message -

As the set of operations performed in response to a trigger is concluded, a status message is sent indicating the success/failure of all operations performed during the interaction with this tag. This is similar to the HSPDONE message in the 2.0 system, but since a different set of operations is now available to be performed the syntax of this response is changed somewhat. It is also modified in an attempt to be a more informative. A separate document will describe the format and status codes used in this message.

System Commands -

The DISENAGE and ENGAGE commands are used to enable the acceptance of triggers by the system. The behavior of the programming database during these commands is controlled by the AUTOCLEAR setting. Two further commands are provided - one to do a firmware update to the attached TR65, and one to easily modify the STARTUP MACRO settings in a TR65 to facilitate system setup. A separate document will describe details of these.

List of supported commands as of version 3.0.4 5-25-2018

Programmer3.0 PI Internal Commands
QUIT - Exit the program SYSTEMTYPE(= TYPE) - either GET the current setting of the system
type, or set it to VER,ENC,or STA
GETVERSIONS - PI and TR65 firmware version GETBUFFERCOUNT - Current number of PROG DATA STRUCT loaded READBUFFER - Display all PROG DATA STRUCT loaded RESETBUFFER - Clear PROG DATA STRUCT buffer WRITEITEM=<DATA LIST> - enter 1 item into PROG DATA STRUCT
buffer GENERATE=<DATA LIST>,NUM(count) - create arbitrary number of items in PROG DATA STRUCT buffer AUTOCLEAR=<ON or OFF> - control clearing of PROG DATA STRUCT buffer on ENGAGE
ENGAGE - START the trigger acceptance system DISENGAGE - STOP the trigger acceptance system TR65LOADER=<filename> - updates the firmware in the attached TR65 TR65MACROLOAD - loads the text file in the HSP_3_0 folder named
TR65MacroList.txt as a STARTUP MACRO into the TR65
Thinkify, LLC, 18450 Technology Drive, Suite E1, Morgan Hill, Ca. 95037, www.thinkifyit.com 408-782-7111
Copyright 2014 Thinkify LLC. All Rights Reserved.
Programmer3.0 Specific TR65 Commands
Any Normal TR65 command may also be sent (radio control etc) Send command with no parameters to GET the current value HC<2 ASCIIHEX> -- CORRECT Minimum loop time control - units are milliseconds HH<2 ASCIIHEX> -- HOLDOFF inhibit Trigger time control - units are milliseconds HI<ACTION RETRY COUNT (1 ASCIIHEX)><OPEN RETRY COUNT (1 nibble)> -- ITERATE Controls looping retry paramters
HL<OFF> -- LOCK Inhibit LOCK command in ENCODE loop HL<LOCK PAYLOAD (5 ASCIIHEX)> -- LOCK Set the LOCK command
payload HP<2 ASCIIHEX> -- PAUSE Delay after Trigger time control - units are milliseconds
HQ<1 ASCIIHEX> -- QUIET Delay after OPEN - units are milliseconds HT<OFF or R or F> -- TRIGGER Control TRIGGER INPUT - off or edge
type RISING FALLING HW<1 ASCIIHEX> -- WAIT Override GEN2 ASYNC WAIT - units are milliseconds
Thinkify, LLC, 18450 Technology Drive, Suite E1, Morgan Hill, Ca. 95037, www.thinkifyit.com 408-782-7111
Copyright 2014 Thinkify LLC. All Rights Reserved.

Ethernet Communication between HOST and THINKIFY HSP3.0

The communication between a HOST system and the Thinkify HSP3.0 system is performed over 3 Ethernet PORT connections. These port connections are simple ASCII protocol Telnet type connections.
The three ports are used for command and control (called the CMD port), status of the operations inside the triggered programming loops (called the DATA port) and a diagnostic stream indicating timing and occurrence of various events in the HSP operation (called the DIAG port).
It is very useful for the HOST to log all messages on the DIAG port - especially in cases of system setup and in the troubleshooting of problems. If the system is functioning properly there is no need to have the DIAG port open, but it is generally advised to do so.
The ports are configured as SERVERS and expect the host to establish a CLIENT connection to initiate communication. The CMD port is full duplex - commands can be sent from the host and responses to commands received. The DATA and DIAG port are simplex - data is only sent from the system to the host - the only system reception on these ports is to perform the necessary TCP protocol handshaking and port termination.
The server configuration will allow up to 5 simultaneous client connections on each port ­however - it is NEVER necessary to have more than one client connection to each. Code execution overhead is increased with each client connection so it is advised to only have one connection open during operation. There is NEVER any need during the program flow to disconnect and reconnect port. Connections should be done ONCE at the beginning of the operation and left connected until it is desired to completely exit the system.
However if more than one client connection is opened for some reason - the CMD port will only send responses to the CMD port which sent the command being responded to, the DATA and DIAG ports will send identical data to all open ports.
There are also some diagnostic messaging on the Linux console port - mainly concerning initialization operations before the ports are connected and status of the port connections. It can be useful to have access to this console port either through the HDMI port of the PI or through a SSH connection into the Linux system.
Thinkify, LLC, 18450 Technology Drive, Suite E1, Morgan Hill, Ca. 95037, www.thinkifyit.com 408-782-7111
Copyright 2014 Thinkify LLC. All Rights Reserved.
Loading...
+ 16 hidden pages