-
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.
Information and content for this report was gathered from photographs, diagrams and screenshots taken during the project, content sourced from Internet websites. Various hardware RS-232 serial Input / Output (IO) monitors were found to be 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 analyser 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.
An Agile approach to rapid prototyping was adopted to build a series of prototypes with each prototype improved upon incrementally compared with the previous one.
The objective for Prototype V1 was to complete a simple functional prototype and successfully test this under controlled conditions in a real world Quick Service Restaurant (QSR).
While Prototype V1 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 V2 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 V2 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 V3:
- 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
TBC
The developed system has been successfully demonstrated but is not yet ready for use outside of controlled conditions within a commercial environment. Compliance and certifications are needed before a device can be considered ready to commercialise.
**In an ideal world a commercially acceptable product would feature compliance with:
- RoHS2
- CE-Mark
- FCC
- UL Certification**
None of the prototypes built so far are ready to be used as commercial products and further development is needed in order to reach this point. Each prototype built has built upon what was learned from the previous one. The as yet unbuilt Prototype 4 would be another step forward yet it is fully expected that further development stages will be required in order to progress sufficiently to arrive at a commercially acceptable product.
This project was originally completed by Stephen Julian of BizKiwi 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)
Arduino Files. Retrieved from https://github.com/bizkiwi/serial-port-monitor/tree/main/arduino-files
BOM Files. Retrieved from https://github.com/bizkiwi/serial-port-monitor/tree/main/bom-files
Gerber Files. Retrieved from https://github.com/bizkiwi/serial-port-monitor/tree/main/gerber-files
Schematic Files. Retrieved from https://github.com/bizkiwi/serial-port-monitor/tree/main/schematic-files
Pick and Place Files. Retrieved from https://github.com/bizkiwi/serial-port-monitor/tree/main/pickandplace-files