-
Notifications
You must be signed in to change notification settings - Fork 1
Home
The Serial Port Monitor, also known as AutoScan, is an Arduino-based device capable of monitoring and non-invasively intercepting data sent between a PC and a thermal printer connected via RS-232 serial cable. The device firmware parses intercepted text data for preset keywords to locate positioning of text characters of interest. Successful parsing and reading triggers writing of data to an LCD module and the USB port which connects the device to a second PC as USB host.
The Serial Port Monitor was originally designed as a hardware addon improvement to the Made Order Advisor for automating the previously manual process of Pick Slip barcode scanning when orders are completed. However, the device has other potential applications, such data collection as part of a customer loyalty programme.
Automated monitoring of the content of data sent to printers has a wide range of potential applications in Quick Service Restaurants and many other customer service and other industries.
The objective of this project was to build a Serial Port Monitor device capable of monitoring and non-invasively intercepting data sent between a PC and an RS-232 connected thermal printer. The device firmware is required to parse intercepted text data for keywords and trigger events by writing data to a USB port connecting the device to a PC as the USB host.
There are various hardware RS-232 serial Input / Output (IO) monitors currently available in the market. These typically capture data transmitted along a serial cable and forward all of this data to a PC or server for analysis with protocol analyzer software.
Broadly the market is split into 3 categories including devices with data forwarding via:
- USB interface.
- Ethernet interface.
- Bluetooth interface.
Market research was unable to find existing hardware capable of on-board protocol analysis (parse for key word/s of interest using delimiters) as they instead perform this function with external servers or PC hardware and software.
The objective for Prototype 1 was to complete a simple functional prototype and successfully test this under controlled conditions in a real world Quick Service Restaurant (QSR).
While Prototype 1 was found to be functionally successful during trials a great deal of improvement would be needed to sustain the harsh environment of a Quick Service Restaurant (QSR).
Goals for Prototype 2 included addition of:
- Water resistant enclosure
- Water resistant cable gland
- Water resistant Reset button
- LCD module for display of Order Numbers and Device Status
Prototype 2 was functionally successful however it also highlighted some important issues to resolve. The enclosure space was too crowded and this was largely due to there being so many connection wires.
Goals for Prototype 3:
- Replacement of the mini breadboard (and the wiring introduced in Prototype 2) with a single PCB Adapter Board (PCB V1).
- Addition of protoboard space on the PCB where if needed additional components can be soldered in future device variants based around this board.
N/A
The Serial Port Monitor, also known as AutoScan, was designed to automate the barcode scanning process of the Made Order Advisor (MOA) order ready customer notification system.
Optoisolation circuit.
N/A
TBC
TBC
This project was originally completed by Stephen Julian as part of his New Zealand Diploma of Engineering (Electronics) studies. This GitHub repository delivers on intentions to publish the project work under the MIT Licence.
While this wiki provides a summary, the complete original project documentation is available in Adobe PDF format below:
Julian, Stephen (2018). Serial Port Monitor - DE6102 Project Report (~22MB PDF, 36 pages)
Julian, Stephen (2018). Serial Port Monitor - Comparison of Old System vs New System (~6MB PDF, 5 pages)
Julian, Stephen (2018). Serial Port Monitor - Building a Series of Prototypes (~12MB PDF, 4 pages)