Proposed payment system. It was written by @olf42
We use a Datalogic 8200 Omega as Barcode scanner. It puts out the barcode in serial. A microcontroller reading the serial output registers as a USB Keyboard and is plugged into the server. Any USB Barcodescanner should be useable, some of them print a prefix, which in our case is 'F'. This prefix is specified in the constants.py.
Check if the lights are glowing or the motor is running (sounds like a fan). If not, hit the volume button and it should wake up. Otherwise check the power cable.
A receipt printer is used to print out the user receipts. They contain a barcode registered in the database and connected to a username.
Our printer has a static ip so if it is connected directly to the ethernet port of the server, you need to change the ip range of the server.
sudo ip addr add 192.168.0.1/24 dev [interface name]
ip link set dev [interface name] up
Printer should have a static 192.168.0.10 Otherwise check with tcpdump Test with
ping 192.168.0.10
Change this line in constants.py to activate printing out receipts
PRINT_ENABLED = False
Found in the ubuntu repositories
sudo apt-get install tcl8.6 tcl8.6-dev
sudo apt-get install autoconf
git clone https://github.com/flightaware/tcl.gd
cd tcl.gd
autconf
./configure --with-tcl=/usr/lib/tcl8.6
make
sudo make install
The tcl package compiling does not work on xubuntu 16.10. It works under Ubuntu16.04.
Firefox somehow doesn't get all the scans and sometimes it takes multiple scans to get a product into the cart.
sudo apt-get install chromium-browser
It is 8025 by default, but can be configured in run_server.py
Install python3
sudo apt-get install pyhton3
Install pip3
sudo apt-get install python3-pip
Then do:
pip3 install -r requirements.txt
Make all the parts executable (!)
chmod +x tcl-escpos/epprint.tcl
chmod +x startup.sh
./startup.sh
or start the paywhack server
python3 run_server.py
Start the print service
python3 escpos_server.py