Manual
User Manual:
Open the PDF directly: View PDF
.
Page Count: 9
| Download | |
| Open PDF In Browser | View PDF |
HackPSU RFID Scanner Box User Manual HackPSU Technology Team October 4, 2018 Contents 1 QuickStart Guide 1.1 First Time Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Check-in . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Event Scanning . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2 2 3 2 RFID Devices 3 3 Keypad Controls 3 4 Access Control 4 5 Scanning 5.1 User Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Reasons for Denial . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4 4 6 Check-in 6.1 User Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2 Reasons for Error . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 5 5 7 Configuration 6 8 Troubleshooting 8.1 Failure to Scan an RFID 8.2 Long Scan Times . . . . 8.2.1 Causes . . . . . . 8.3 Failure to Boot . . . . . 8.4 Unexpected Shutdowns 8.5 Soft Locked Scanner . . . . . . . . 6 6 7 7 7 7 8 9 Appendix 9.1 Finite State Machine . . . . . . . . . . . . . . . . . . . . . . . . . 9 9 Tag . . . . . . . . . . . . . . . . . . . . . 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 QuickStart Guide 1.1 First Time Setup In the configuration header: • Disable SECURE BOOT by commenting the define out • Change the MASTER KEY value to any string of 16 bytes or fewer. • Change the SSID value to your WiFi network name • Change the PASSWD value to your WiFi network password. • Change the REDIS value to your local cache server IP address and port. Do not include any protocol information • Compile and upload the sketch to the box • Write the MASTER KEY to a wristband using the duplicate state • Enable SECURE BOOT by uncommenting the define • Recompile and upload the sketch to the box • The box is now ready and you now have a master wristband 1.2 Check-in • Unlock the box with a master wristband • Use the menu to navigate to the check-in state, then press ’#’ to begin • The check-in process will now begin • Enter the registrant’s pin using the keypad, then press ’#’ to submit or ’*’ to clear. • Confirm the registrant’s name using the ’#’ or press ’*’ if the name is incorrect • Scan a wristband to assign it to the user, if told to scrap the wristband, please discard it • The registrant’s shirt size is now displayed on the screen, give them the correct shirt size and confirm photo consent • Press any key to check-in another registrant 2 1.3 Event Scanning • Select the ”Locate & Scan” state from the menu using the ’#’ key • The box will fetch a list of active locations; this may take a few seconds • Use the menu of locations to select your event location and press ’#’ to begin scanning • Event scanning will now begin • Have each entrant scan their wristband at the top of the scanner above the LCD. • The LCD will then display ”Allow” or ”Deny” • The scan state will now loop 2 RFID Devices This scanner uses the MFRC522 RFID transceiver unit. The present implementation is intended for use with MIFARE compatible RFID devices. This decision was made to simplify the implementation of the scanning functionality. Other devices may be compatible, but may not work. It is suggested that each operator have a wristband with a valid UID and the MASTER KEY from the configuration to unlock the box to aid in debugging possible issues. 3 Keypad Controls The keypad behaves like a normal numeric keypad in most cases; however, the nonnumerical characters have special functions listed below. A The ’A’ key acts as a scroll up function in all menus. B The ’B’ key acts as a scroll down function in all menus, and the ’B’ key acts as the back key when in a non-menu state, returning the user to the main menu. C The ’C’ key serves no special functionality presently. In a future implementation, it will scroll the LCD. D The ’D’ key transitions the box into the locked state. * The ’*’ key acts as a clear or negative input button. # The ’#’ key acts as a submit or positive input button. 3 4 Access Control Access control is handled in a locked state, where the scanner waits for a staff wristband to be scanned. This is intended to provide a minimal layer of security on the device so that event goers cannot scan themselves into events. The duplicate state will produce a staff band by writing the master key into the data sector of the band. Access control can be disabled in the implementation. 5 Scanning This is the primary function of the box, and will be used frequently. Upon entering the ”Locate & Scan” state, the scanner will fetch a list of available locations from the cache server defined in the configuration header. To select an entry from the menu, press the ’#’ key. Numerical inputs are not supported in this menu. Once the location is selected; wristbands may be scanned. During this state, the ’D’ key can be pressed at any time to return to the locked state. Upon receiving a successful scan, a request is sent to the cache server to commit the scan. If the response is received and the ”isRepeat” field is set to ’false’ then the LCD will display ”Allow” if no response is received or if the field is set to ’true’ then ”Deny” will be printed to the LCD. The only case where the ”isRepeat” field will be set to ’true’ is if the event at the current location is a ’food’ event and the user has been scanned once before. 5.1 User Guide • The box will fetch a list of active locations • Select one location using the ’#’ key and navigate the menu with ’A’ and ’B’ for up and down respectively. • The box is now set to a location and is ready to scan • Scan each entrant for the event, waiting for a response to be displayed in between scans • The box will display ”Allow” or ”Deny” based on the validity of the scan 5.2 Reasons for Denial • The box will deny any user with an invalid RFID band; they must be checked in first • The box will deny any user who attempts to cycle though a food event more than once • The box should hang, but may deny a user if WiFi becomes disconnected or if the cache server is unavailable. 4 6 Check-in The check-in state follows a linear flow. First a pin must be entered using the keypad. Once a pin is submitted, a request to retrieve the user data will be made. If no response is received or if the pin is not found on the cache server, the message ”Invalid Pin” will be displayed. Upon successfully entering a pin, a new prompt will appear, asking the user to validate the name displayed below. The user may press ’#’ to confirm that the user pin was correct, or ’*’ to return to pin entry. The user will then be prompted to scan a wristband. If the wristband’s UID already exists in the cache server’s database, then a message instructing the user to dispose of the band will be displayed. If the scan function times out before a wristband is scanned, the pin will need to be entered again. If the user name is confirmed and a wristband is scanned, the user will be checked-in on the cache server. The next step displays the user’s shirt size and asks for photo consent. Any key can be pressed to escape the photo consent menu, although using ’*’ or ’#’ is recommended as this may change in a future implementation. The scanner will then return to the beginning of the check-in process. Press ’B’ or ’D’ in the pin entry state to leave the check-in state. 6.1 User Guide • The box will request that a registrant’s pin is entered • Use the keypad to enter the registrant’s base 10 bin, or press ’D’ to escape to the locked state • If the registrant’s pin was invalid, a message will be displayed • If the registrant’s pin was valid; it will ask that you confirm their name. Use the ’#’ key to confirm or the ’*’ key to deny • Once the registrant’s name is confirmed, the box will be ready to assign them a UID from a wristband • Scan the wristband now, and if the box says to scrap the wristband, please discard the band as a UID collision has occurred • Once the wristband has been successfully scanned, the registrant’s shirt size will be displayed and a prompt asking for photo consent will appear. • Give the registrant the shirt size displayed and ask for photo consent • Photo consent is not handled by our cache or database server, so photo consent must be tracked physically. Press any key to continue • The box will now cycle back to the first step 5 6.2 Reasons for Error • ”Invalid Pin” will be displayed if a user enters an invalid pin or a pin that has already registered pin. • ”Scrap Band” will be displayed if the given wristband or a wristband with the same UID has already been registered. Please discard the wristband and try another one. • Either of these error states may also be caused by a WiFi disconnect or by the cache server becoming unreachable. Check that the WiFi is still connected in the WiFi status mode and validate that the cache server is still running at the correct address 7 Configuration The configuration for the device must be done prior to deployment. All configuration should be done in the sketch’s hackPSUconfig.h file. The following fields are available: MASTER KEY This defines the key written to sector 4 of the staff wristbands used to unlock the scanner as well as the key that the duplicate state writes to staff bands. SCAN TIMEOUT The time that the scanner will block for when attempting to interact with a wristband. BAUD RATE The baud rate for the serial communications. WIFI CONSTS This definition should be empty; it is a flag marking whether or not the SSID and PASSWD fields have been defined; if unset, the sketch will fail to compile. REDIS The address of the cache server; this should not have any protocol, just a network address and a port. SSID The name of the network to connect to; if this network cannot be found, the scanner will not boot. PASSWD The password for the network that is being connected to; if this is incorrect, the scanner will not boot. fp The fingerprint of the SSL certificate being used by the caching server. 8 8.1 Troubleshooting Failure to Scan an RFID Tag There are two reasons that the box may not scan an RFID Tag. The most likely reason is that the given band was already scanned. The scanner is stately 6 and will prevent the same band from being scanned twice in a row. This is done to prevent multiple unintentional scans, but may result in the scanner being soft locked. To unlock the scanner, simply scan another wristband or enter the locked state. It is suggested that each operator have a band with the MASTER KEY written to it to unlock the box from the locked state and to free the scanner from a soft lock. 8.2 Long Scan Times If scan times are taking a long time, the likely culprit is a bad RFID signal or a long RTT on the connection to the cache server. A bad RFID signal may be caused by excess material between the wristband and the scanner of the box. A long RTT can be caused by long network hops to the cache server or by network congestion. To test RTT with your cache server, use the following ”time total” feature in cURL. 8.2.1 Causes • Poor RFID Signal • Poor WiFi Signal • Long RTT to cache server 8.3 Failure to Boot A failure to boot generally means that the network configuration is incorrect. Double check the network SSID and password are correct. If they are correct, the LCD should indicate that the network connection succeeded. The next blocking call will be to get an API key from the cache server. This call will fail if the cache server is misconfigured, or if the scanner is misconfigured. On the scanner side, check that the address is correct and does not have ”http://” or ”https://” prepended to the hostname. Also validate that the port on the server is correct. The next point of failure will be in the SSL certificate fingerprint or if HTTPS is not implemented on the server, the implementation for the API wrapper must be changed to use HTTP instead of HTTPS. If the box fails reaches the point where it is locked and will not enter the menu state, the user must scan a wristband, which contains the master key value as defined in the configuration header. If your wristbands do not support read/write access, undefine SECURE BOOT in the state machine header to bypass a secure boot. 8.4 Unexpected Shutdowns The scanner may crash and shutdown. When this happens, the most common failure mode during developent was an unhanded exception like a memory allocation failure. The scanner will attempt to reenter the program. In this case, 7 unplug the power and force the scanner to boot from the beginning. If the scanner shuts down unexpectedly, check its battery charge; the device does not know how much battery is left and will not give a low battery warning. 8.5 Soft Locked Scanner The scanner should not ever soft lock. In the event that it does, the best option is to power cycle the device. Another alternative would be to hold the ’B’ or ’D’ key and hope that the box times out and transitions to the menu or lock state. 8 9 9.1 Appendix Finite State Machine 9
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.5 Linearized : No Page Count : 9 Page Mode : UseOutlines Author : Title : Subject : Creator : LaTeX with hyperref package Producer : pdfTeX-1.40.19 Create Date : 2018:10:04 16:00:19-04:00 Modify Date : 2018:10:04 16:00:19-04:00 Trapped : False PTEX Fullbanner : This is MiKTeX-pdfTeX 2.9.6668 (1.40.19)EXIF Metadata provided by EXIF.tools