2019-05-20 16:45:48 +07:00
|
|
|
=./odoo.py --load=web,hw_proxy,hw_posbox_homepage,hw_posbox_upgrade,hw_scale,hw_scanner,hw_escpos===========================
|
2015-11-13 21:17:18 +07:00
|
|
|
Point of Sale Hardware Setup
|
|
|
|
============================
|
2015-10-12 19:39:07 +07:00
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
POSBox Setup Guide
|
2015-10-12 19:39:07 +07:00
|
|
|
==================
|
|
|
|
|
|
|
|
.. image:: media/posbox_setup.png
|
|
|
|
|
|
|
|
Prerequisites
|
|
|
|
-------------
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
Before you start setting up your POSBox make sure you have everything.
|
2015-10-12 19:39:07 +07:00
|
|
|
You will need :
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
* The POSBox
|
2015-10-12 19:39:07 +07:00
|
|
|
* A 2A Power adapter
|
|
|
|
* A computer or tablet with an up-to-date web browser
|
2018-07-18 18:32:11 +07:00
|
|
|
* A running SaaS or Odoo database with the Point of Sale installed
|
2015-10-12 19:39:07 +07:00
|
|
|
* A local network set up with DHCP (this is the default setting)
|
2016-10-24 04:28:04 +07:00
|
|
|
* An Epson USB TM-T20 Printer or another ESC/POS compatible printer
|
2015-10-12 19:39:07 +07:00
|
|
|
(officially supported printers are listed at the `POS Hardware page
|
|
|
|
<https://www.odoo.com/page/pos-ipad-android-hardware>`_)
|
|
|
|
* A Honeywell Eclipse USB Barcode Scanner or another compatible scanner
|
|
|
|
* An Epson compatible cash drawer
|
2018-01-10 01:37:37 +07:00
|
|
|
* An RJ45 Ethernet Cable (optional, Wi-Fi is built in)
|
2015-10-12 19:39:07 +07:00
|
|
|
|
|
|
|
Step By Step Setup Guide
|
|
|
|
------------------------
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
Current version of the POSBox (since 2015)
|
2015-10-12 19:39:07 +07:00
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
.. figure:: media/posbox_2_doc_schema.svg
|
|
|
|
|
|
|
|
Connect peripheral devices
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
|
|
|
Officially supported hardware is listed on `the POS Hardware page
|
|
|
|
<https://www.odoo.com/page/pos-ipad-android-hardware>`_, but other
|
|
|
|
hardware might work as well.
|
|
|
|
|
|
|
|
* **Printer**: Connect an ESC/POS printer to a USB port and power it
|
|
|
|
on.
|
|
|
|
|
|
|
|
* **Cash drawer**: The cash drawer should be connected to the printer
|
|
|
|
with an RJ25 cable.
|
|
|
|
|
|
|
|
* **Barcode scanner**: Connect your barcode scanner. In order for your
|
|
|
|
barcode scanner to be compatible it must behave as a keyboard and
|
|
|
|
must be configured in **US QWERTY**. It also must end barcodes with an
|
|
|
|
Enter character (keycode 28). This is most likely the default
|
|
|
|
configuration of your barcode scanner.
|
|
|
|
|
|
|
|
* **Scale**: Connect your scale and power it on.
|
|
|
|
|
|
|
|
* **Ethernet**: If you do not wish to use Wi-Fi, plug in the Ethernet
|
2015-10-22 17:02:02 +07:00
|
|
|
cable. Make sure this will connect the POSBox to the same network as
|
2015-10-12 19:39:07 +07:00
|
|
|
your POS device.
|
|
|
|
|
2018-01-10 01:37:37 +07:00
|
|
|
* **Wi-Fi**: The current version of the POSBox has Wi-Fi built
|
|
|
|
in. Make sure not to plug in an Ethernet cable, because all Wi-Fi
|
|
|
|
functionality will be bypassed when a wired network connection is
|
|
|
|
available.
|
2015-10-12 19:39:07 +07:00
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
Power the POSBox
|
2015-10-12 19:39:07 +07:00
|
|
|
~~~~~~~~~~~~~~~~
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
Plug the power adapter into the POSBox, a bright red status led should
|
2015-10-12 19:39:07 +07:00
|
|
|
light up.
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
Make sure the POSBox is ready
|
2015-10-12 19:39:07 +07:00
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
Once powered, The POSBox needs a while to boot. Once the POSBox is
|
2015-10-12 19:39:07 +07:00
|
|
|
ready, it should print a status receipt with its IP address. Also the
|
|
|
|
status LED, just next to the red power LED, should be permanently lit
|
|
|
|
green.
|
|
|
|
|
|
|
|
Setup the Point of Sale
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
To setup the POSBox in the Point of Sale go to :menuselection:`Point
|
2018-07-18 18:32:11 +07:00
|
|
|
of Sale --> Configuration --> Point of Sale` and select your Point of
|
|
|
|
Sale. Scroll down to the ``PoSBox / Hardware Proxy`` section and
|
2015-10-12 19:39:07 +07:00
|
|
|
activate the options for the hardware you want to use through the
|
2015-10-22 17:02:02 +07:00
|
|
|
POSBox. Specifying the IP of the POSBox is recommended (it is printed
|
|
|
|
on the receipt that gets printed after booting up the POSBox). When
|
2015-10-12 19:39:07 +07:00
|
|
|
the IP is not specified the Point of Sale will attempt to find it on
|
|
|
|
the local network.
|
|
|
|
|
2018-07-24 15:52:15 +07:00
|
|
|
If you are running multiple Point of Sale on the same POSBox, make sure
|
2015-10-12 19:39:07 +07:00
|
|
|
that only one of them has Remote Scanning/Barcode Scanner activated.
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
It might be a good idea to make sure the POSBox IP never changes in
|
2015-10-12 19:39:07 +07:00
|
|
|
your network. Refer to your router documentation on how to achieve
|
|
|
|
this.
|
|
|
|
|
|
|
|
Launch the Point of Sale
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
If you didn't specify the POSBox's IP address in the configuration,
|
2015-10-12 19:39:07 +07:00
|
|
|
the POS will need some time to perform a network scan to find the
|
2015-10-22 17:02:02 +07:00
|
|
|
POSBox. This is only done once.
|
2015-10-12 19:39:07 +07:00
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
The Point of Sale is now connected to the POSBox and your hardware
|
2015-10-12 19:39:07 +07:00
|
|
|
should be ready to use.
|
|
|
|
|
|
|
|
Wi-Fi configuration
|
|
|
|
-------------------
|
|
|
|
|
2018-01-10 01:37:37 +07:00
|
|
|
The most recent version of the POSBox has Wi-Fi built in. If you're
|
|
|
|
using an older version you'll need a Linux compatible USB Wi-Fi
|
|
|
|
adapter. Most commercially available Wi-Fi adapters are Linux
|
|
|
|
compatible. Officially supported are Wi-Fi adapters with a Ralink 5370
|
|
|
|
chipset.
|
2015-10-12 19:39:07 +07:00
|
|
|
|
|
|
|
Make sure not to plug in an Ethernet cable, as all Wi-Fi related
|
|
|
|
functionality will be disabled when a wired network connection is
|
|
|
|
available.
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
When the POSBox boots with a Wi-Fi adapter it will start its own Wi-Fi
|
2015-10-12 19:39:07 +07:00
|
|
|
Access Point called "Posbox" you can connect to. The receipt that gets
|
2015-10-22 17:02:02 +07:00
|
|
|
printed when the POSBox starts will reflect this. In order to make the
|
|
|
|
POSBox connect to an already existing Wi-Fi network, go to the
|
|
|
|
homepage of the POSBox (indicated on the receipt) and go to the Wi-Fi
|
2015-10-12 19:39:07 +07:00
|
|
|
configuration page. On there you can choose a network to connect
|
|
|
|
to. Note that we only support open and WPA(2)-PSK networks. When
|
|
|
|
connecting to a WPA-secured network, fill in the password field. The
|
2015-10-22 17:02:02 +07:00
|
|
|
POSBox will attempt to connect to the specified network and will print
|
|
|
|
a new POSBox status receipt after it has connected.
|
2015-10-12 19:39:07 +07:00
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
If you plan on permanently setting up the POSBox with Wi-Fi, you can
|
2015-10-12 19:39:07 +07:00
|
|
|
use the "persistent" checkbox on the Wi-Fi configuration page when
|
|
|
|
connecting to a network. This will make the network choice persist
|
|
|
|
across reboots. This means that instead of starting up its own
|
|
|
|
"Posbox" network it will always attempt to connect to the specified
|
|
|
|
network after it boots.
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
When the POSBox fails to connect to a network it will fall back to
|
2015-10-12 19:39:07 +07:00
|
|
|
starting it's own "Posbox" Access Point. If connection is lost with a
|
2015-10-22 17:02:02 +07:00
|
|
|
Wi-Fi network after connecting to it, the POSBox will attempt to
|
2015-10-12 19:39:07 +07:00
|
|
|
re-establish connection automatically.
|
|
|
|
|
|
|
|
Multi-POS Configuration
|
|
|
|
-----------------------
|
|
|
|
|
|
|
|
The advised way to setup a multi Point of Sale shop is to have one
|
2015-10-22 17:02:02 +07:00
|
|
|
POSBox per Point of Sale. In this case it is mandatory to manually
|
|
|
|
specify the IP address of each POSBox in each Point of Sale. You must
|
|
|
|
also configure your network to make sure the POSBox's IP addresses
|
2015-10-12 19:39:07 +07:00
|
|
|
don't change. Please refer to your router documentation.
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
POSBoxless Guide (advanced)
|
2015-10-12 19:39:07 +07:00
|
|
|
===========================
|
|
|
|
|
|
|
|
.. image:: media/posboxless_setup.png
|
|
|
|
|
|
|
|
If you are running your Point of Sale on a Debian-based Linux
|
2015-10-22 17:02:02 +07:00
|
|
|
distribution, you do not need the POSBox as you can run its software
|
2015-10-12 19:39:07 +07:00
|
|
|
locally. However the installation process is not foolproof. You'll need
|
|
|
|
at least to know how to install and run Odoo. You may also run into
|
|
|
|
issues specific to your distribution or to your particular setup and
|
|
|
|
hardware configuration.
|
|
|
|
|
|
|
|
Drivers for the various types of supported hardware are provided as
|
2015-10-22 17:02:02 +07:00
|
|
|
Odoo modules. In fact, the POSBox runs an instance of Odoo that the
|
2015-10-12 19:39:07 +07:00
|
|
|
Point of Sale communicates with. The instance of Odoo running on the
|
2015-10-22 17:02:02 +07:00
|
|
|
POSBox is very different from a 'real' Odoo instance however. It does
|
2015-10-12 19:39:07 +07:00
|
|
|
not handle *any* business data (eg. POS orders), but only serves as a
|
|
|
|
gateway between the Point of Sale and the hardware.
|
|
|
|
|
2016-08-12 11:32:26 +07:00
|
|
|
The goal of this section will be to set up a local Odoo instance that
|
2015-10-22 17:02:02 +07:00
|
|
|
behaves like the Odoo instance running on the POSBox.
|
2015-10-12 19:39:07 +07:00
|
|
|
|
|
|
|
Image building process
|
|
|
|
----------------------
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
We generate the official POSBox images using the scripts in
|
2018-07-18 18:32:11 +07:00
|
|
|
https://github.com/odoo/odoo/tree/11.0/addons/point_of_sale/tools/posbox. More
|
2015-10-12 19:39:07 +07:00
|
|
|
specifically, we run
|
2018-07-18 18:32:11 +07:00
|
|
|
`posbox_create_image.sh <https://github.com/odoo/odoo/blob/11.0/addons/point_of_sale/tools/posbox/posbox_create_image.sh>`_.
|
2015-10-12 19:39:07 +07:00
|
|
|
This builds an image
|
|
|
|
called ``posbox.img``, which we zip and upload to `nightly.odoo.com <https://nightly.odoo.com>`_
|
|
|
|
for users to download.
|
|
|
|
|
|
|
|
The scripts in this directory might be useful as a reference if you
|
|
|
|
get stuck or want more detail about something.
|
|
|
|
|
|
|
|
Summary of the image creation process
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
|
|
|
The image creation process starts by downloading the latest `Raspbian
|
|
|
|
<https://www.raspbian.org/>`_ image. It then locally mounts this
|
|
|
|
Raspbian image and copies over some files and scripts that will make
|
2015-10-22 17:02:02 +07:00
|
|
|
the Raspbian image turn itself into a POSBox when it boots. These
|
2015-10-12 19:39:07 +07:00
|
|
|
scripts will update Raspbian, remove non-essential packages and
|
|
|
|
install required packages. In order to boot Raspbian we use qemu,
|
|
|
|
which is capable of providing ARM emulation. After this, the emulated
|
|
|
|
Raspbian OS will shut itself down. We then once again locally mount
|
|
|
|
the image, remove the scripts that were used to initialize the image
|
|
|
|
at boot and we copy over some extra configuration files. The resulting
|
|
|
|
image is then ready to be tested and used.
|
|
|
|
|
|
|
|
Prerequisites
|
|
|
|
-------------
|
|
|
|
|
|
|
|
- A Debian-based Linux distribution (Debian, Ubuntu, Mint, etc.)
|
2018-07-24 15:52:15 +07:00
|
|
|
- A running Odoo instance you connect to load the Point of Sale
|
2015-10-12 19:39:07 +07:00
|
|
|
- You must uninstall any ESC/POS printer driver as it will conflict
|
|
|
|
with Odoo's built-in driver
|
|
|
|
|
|
|
|
Step By Step Setup Guide
|
|
|
|
------------------------
|
|
|
|
|
|
|
|
Extra dependencies
|
|
|
|
~~~~~~~~~~~~~~~~~~
|
|
|
|
|
2019-05-20 16:45:48 +07:00
|
|
|
Because Odoo 11.0 runs on Python 3, you need to check which version of pip
|
2015-10-12 19:39:07 +07:00
|
|
|
you need to use.
|
|
|
|
|
|
|
|
``# pip --version``
|
|
|
|
|
|
|
|
If it returns something like::
|
|
|
|
|
2019-05-20 16:45:48 +07:00
|
|
|
pip 1.4.1 from /usr/lib/python2.7/dist-packages (python 2.7)
|
2015-10-12 19:39:07 +07:00
|
|
|
|
2019-05-20 16:45:48 +07:00
|
|
|
You need to try pip3 instead.
|
2015-10-12 19:39:07 +07:00
|
|
|
|
|
|
|
If it returns something like::
|
|
|
|
|
2019-05-20 16:45:48 +07:00
|
|
|
pip 1.5.6 from /usr/local/lib/python3.3/dist-packages/pip-1.5.6-py3.3.egg (python 3.3)
|
2015-10-12 19:39:07 +07:00
|
|
|
|
|
|
|
You can use pip.
|
|
|
|
|
|
|
|
The driver modules requires the installation of new python modules:
|
|
|
|
|
2019-05-20 16:45:48 +07:00
|
|
|
``# pip install netifaces evdev pyusb==1.0.0b1``
|
2015-10-12 19:39:07 +07:00
|
|
|
|
|
|
|
Access Rights
|
|
|
|
~~~~~~~~~~~~~
|
|
|
|
|
|
|
|
The drivers need raw access to the printer and barcode scanner devices.
|
|
|
|
Doing so requires a bit system administration. First we are going to
|
|
|
|
create a group that has access to USB devices
|
|
|
|
|
|
|
|
``# groupadd usbusers``
|
|
|
|
|
2018-09-26 21:06:48 +07:00
|
|
|
Then we add the user who will run the Odoo server to ``usbusers``
|
2015-10-12 19:39:07 +07:00
|
|
|
|
2016-09-01 16:45:11 +07:00
|
|
|
``# usermod -a -G usbusers USERNAME``
|
2015-10-12 19:39:07 +07:00
|
|
|
|
|
|
|
Then we need to create a udev rule that will automatically allow members
|
|
|
|
of ``usbusers`` to access raw USB devices. To do so create a file called
|
2016-09-01 16:45:11 +07:00
|
|
|
``99-usbusers.rules`` in the ``/etc/udev/rules.d/`` directory with the
|
2015-10-12 19:39:07 +07:00
|
|
|
following content::
|
|
|
|
|
|
|
|
SUBSYSTEM=="usb", GROUP="usbusers", MODE="0660"
|
|
|
|
SUBSYSTEMS=="usb", GROUP="usbusers", MODE="0660"
|
|
|
|
|
2019-05-20 16:45:48 +07:00
|
|
|
Then you need to reload the udev rules or reboot your machine if reloading the rules did not work.
|
|
|
|
|
|
|
|
``# udevadm control --reload-rules && udevadm trigger``
|
2015-10-12 19:39:07 +07:00
|
|
|
|
|
|
|
Start the local Odoo instance
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
|
|
|
We must launch the Odoo server with the correct settings
|
|
|
|
|
2019-05-20 16:45:48 +07:00
|
|
|
``$ ./odoo-bin --load=web,hw_proxy,hw_posbox_homepage,hw_scale,hw_scanner,hw_escpos``
|
2015-10-12 19:39:07 +07:00
|
|
|
|
|
|
|
Test the instance
|
|
|
|
~~~~~~~~~~~~~~~~~
|
|
|
|
|
|
|
|
Plug all your hardware to your machine's USB ports, and go to
|
|
|
|
``http://localhost:8069/hw_proxy/status`` refresh the page a few times and
|
|
|
|
see if all your devices are indicated as *Connected*. Possible source of
|
|
|
|
errors are: The paths on the distribution differ from the paths expected
|
|
|
|
by the drivers, another process has grabbed exclusive access to the
|
|
|
|
devices, the udev rules do not apply or a superseded by others.
|
|
|
|
|
|
|
|
Automatically start Odoo
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
|
|
|
You must now make sure that this Odoo install is automatically started
|
|
|
|
after boot. There are various ways to do so, and how to do it depends
|
|
|
|
on your particular setup. Using the init system provided by your
|
|
|
|
distribution is probably the easiest way to accomplish this.
|
|
|
|
|
|
|
|
Setup the Point of Sale
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
|
|
|
The IP address field in the POS configuration must be either
|
|
|
|
``127.0.0.1`` or ``localhost`` if you're running the created Odoo
|
|
|
|
server on the machine that you'll use as the Point of Sale device. You
|
|
|
|
can also leave it empty.
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
POSBox Technical Documentation
|
2015-10-12 19:39:07 +07:00
|
|
|
==============================
|
|
|
|
|
|
|
|
Technical Overview
|
|
|
|
------------------
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
The POSBox Hardware
|
2015-10-12 19:39:07 +07:00
|
|
|
~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
The POSBox's Hardware is based on a `Raspberry Pi 2
|
2015-10-12 19:39:07 +07:00
|
|
|
<https://www.raspberrypi.org/products/raspberry-pi-2-model-b/>`_, a
|
|
|
|
popular single-board computer. The Raspberry Pi 2 is powered with a 2A
|
|
|
|
micro-usb power adapter. 2A is needed to give enough power to the
|
|
|
|
barcode scanners. The Software is installed on a 8Gb Class 10 or
|
|
|
|
Higher SD Card. All this hardware is easily available worldwide from
|
|
|
|
independent vendors.
|
|
|
|
|
|
|
|
Compatible Peripherals
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
|
|
|
Officially supported hardware is listed on the `POS Hardware page
|
|
|
|
<https://www.odoo.com/page/pos-ipad-android-hardware>`_.
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
The POSBox Software
|
2015-10-12 19:39:07 +07:00
|
|
|
~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
The POSBox runs a heavily modified Raspbian Linux installation, a
|
2015-10-12 19:39:07 +07:00
|
|
|
Debian derivative for the Raspberry Pi. It also runs a barebones
|
|
|
|
installation of Odoo which provides the webserver and the drivers. The
|
|
|
|
hardware drivers are implemented as Odoo modules. Those modules are
|
|
|
|
all prefixed with ``hw_*`` and they are the only modules that are
|
2015-10-22 17:02:02 +07:00
|
|
|
running on the POSBox. Odoo is only used for the framework it
|
|
|
|
provides. No business data is processed or stored on the POSBox. The
|
2018-09-26 21:33:38 +07:00
|
|
|
Odoo instance is a shallow git clone of the ``11.0`` branch.
|
2015-10-12 19:39:07 +07:00
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
The root partition on the POSBox is mounted read-only, ensuring that
|
2015-10-12 19:39:07 +07:00
|
|
|
we don't wear out the SD card by writing to it too much. It also
|
|
|
|
ensures that the filesystem cannot be corrupted by cutting the power
|
2015-10-22 17:02:02 +07:00
|
|
|
to the POSBox. Linux applications expect to be able to write to
|
2015-10-12 19:39:07 +07:00
|
|
|
certain directories though. So we provide a ramdisk for /etc and /var
|
|
|
|
(Raspbian automatically provides one for /tmp). These ramdisks are
|
|
|
|
setup by ``setup_ramdisks.sh``, which we run before all other init
|
|
|
|
scripts by running it in ``/etc/init.d/rcS``. The ramdisks are named
|
|
|
|
/etc_ram and /var_ram respectively. Most data from /etc and /var is
|
|
|
|
copied to these tmpfs ramdisks. In order to restrict the size of the
|
|
|
|
ramdisks, we do not copy over certain things to them (eg. apt related
|
|
|
|
data). We then bind mount them over the original directories. So when
|
|
|
|
an application writes to /etc/foo/bar it's actually writing to
|
|
|
|
/etc_ram/foo/bar. We also bind mount / to /root_bypass_ramdisks to be
|
|
|
|
able to get to the real /etc and /var during development.
|
|
|
|
|
|
|
|
Logs of the running Odoo server can be found at:
|
|
|
|
|
|
|
|
``/var/log/odoo/odoo.log``
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
Various POSBox related scripts (eg. wifi-related scripts) running on
|
|
|
|
the POSBox will log to /var/log/syslog and those messages are tagged
|
2015-10-12 19:39:07 +07:00
|
|
|
with ``posbox_*``.
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
Accessing the POSBox
|
2015-10-12 19:39:07 +07:00
|
|
|
--------------------
|
|
|
|
|
|
|
|
Local Access
|
|
|
|
~~~~~~~~~~~~
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
If you plug a QWERTY USB keyboard into one of the POSBox's USB ports,
|
2015-10-12 19:39:07 +07:00
|
|
|
and if you connect a computer monitor to the *HDMI* port of the
|
2015-10-22 17:02:02 +07:00
|
|
|
POSBox, you can use it as a small GNU/Linux computer and perform
|
2015-10-12 19:39:07 +07:00
|
|
|
various administration tasks, like viewing some logs.
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
The POSBox will automatically log in as root on the default tty.
|
2015-10-12 19:39:07 +07:00
|
|
|
|
|
|
|
Remote Access
|
|
|
|
~~~~~~~~~~~~~
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
If you have the POSBox's IP address and an SSH client you can access
|
|
|
|
the POSBox's system remotely. The login credentials are
|
2015-10-12 19:39:07 +07:00
|
|
|
``pi``/``raspberry``.
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
Updating The POSBox Software
|
2015-10-12 19:39:07 +07:00
|
|
|
----------------------------
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
Only upgrade the POSBox if you experience problems or want to use
|
2015-10-12 19:39:07 +07:00
|
|
|
newly implemented features.
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
The best way to update the POSBox software is to download a new
|
2015-10-12 19:39:07 +07:00
|
|
|
version of the image and flash the SD-Card with it. This operation is
|
|
|
|
described in detail in `this tutorial
|
|
|
|
<http://elinux.org/RPi_Easy_SD_Card_Setup>`_, just replace the
|
|
|
|
standard Raspberry Pi image with the latest one found at `the official
|
2015-10-22 17:02:02 +07:00
|
|
|
POSBox image page <http://nightly.odoo.com/master/posbox/>`_. This
|
2015-10-12 19:39:07 +07:00
|
|
|
method of upgrading will ensure that you're running the latest version
|
2015-10-22 17:02:02 +07:00
|
|
|
of the POSBox software.
|
2015-10-12 19:39:07 +07:00
|
|
|
|
|
|
|
The second way of upgrading is through the built in upgrade interface
|
2015-10-22 17:02:02 +07:00
|
|
|
that can be reached through the POSBox homepage. The nice thing about
|
2015-10-12 19:39:07 +07:00
|
|
|
upgrading like this is that you don't have to flash a new image. This
|
|
|
|
upgrade method is limited to what it can do however. It can not
|
|
|
|
eg. update installed configuration files (like
|
|
|
|
eg. /etc/hostapd.conf). It can only upgrade:
|
|
|
|
|
|
|
|
- The internal Odoo application
|
|
|
|
- Scripts in the folder ``odoo/addons/point_of_sale/tools/posbox/configuration/``
|
|
|
|
|
|
|
|
When in doubt, always use the first method of upgrading.
|
|
|
|
|
|
|
|
Troubleshoot
|
|
|
|
============
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
The POS cannot connect to the POSBox
|
2015-10-12 19:39:07 +07:00
|
|
|
------------------------------------
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
- The easiest way to make sure the POSBox is properly set-up is to turn
|
2015-10-12 19:39:07 +07:00
|
|
|
it on with the printer plugged in as it will print a receipt
|
2015-10-22 17:02:02 +07:00
|
|
|
indicating any error if encountered or the POSBox's IP address in case
|
2015-10-12 19:39:07 +07:00
|
|
|
of success. If no receipt is printed, check the following steps:
|
2015-10-22 17:02:02 +07:00
|
|
|
- Make sure the POSBox is powered on, indicated by a brightly lit red
|
2015-10-12 19:39:07 +07:00
|
|
|
status LED.
|
2015-10-22 17:02:02 +07:00
|
|
|
- Make sure the POSBox is ready, this is indicated by a brightly lit
|
|
|
|
green status LED just next to the red power status LED. The POSBox
|
2015-10-12 19:39:07 +07:00
|
|
|
should be ready ~2 minutes after it is started.
|
2015-10-22 17:02:02 +07:00
|
|
|
- Make sure the POSBox is connected to the same network as your POS
|
|
|
|
device. Both the device and the POSBox should be visible in the list
|
2015-10-12 19:39:07 +07:00
|
|
|
of connected devices on your network router.
|
|
|
|
- Make sure that your LAN is set up with DHCP, and gives IP addresses
|
|
|
|
in the range 192.168.0.X, 192.168.1.X, 10.0.0.X. If you cannot setup
|
2015-10-22 17:02:02 +07:00
|
|
|
your LAN that way, you must manually set up your POSBox's
|
2016-08-22 15:42:57 +07:00
|
|
|
IP address.
|
2015-10-22 17:02:02 +07:00
|
|
|
- If you have specified the POSBox's IP address in the configuration,
|
|
|
|
make sure it correspond to the printed on the POSBox's status
|
2015-10-12 19:39:07 +07:00
|
|
|
receipt.
|
|
|
|
- Make sure that the POS is not loaded over HTTPS.
|
|
|
|
- A bug in Firefox's HTTP implementation prevents the autodiscovery
|
|
|
|
from working reliably. When using Firefox you should manually set up
|
2015-10-22 17:02:02 +07:00
|
|
|
the POSBox's IP address in the POS configuration.
|
2015-10-12 19:39:07 +07:00
|
|
|
|
|
|
|
The Barcode Scanner is not working
|
|
|
|
----------------------------------
|
|
|
|
|
|
|
|
- The barcode scanner must be configured in US QWERTY and emit an
|
|
|
|
Enter after each barcode. This is the default configuration of most
|
|
|
|
barcode readers. Refer to the barcode reader documentation for more
|
|
|
|
information.
|
2015-10-22 17:02:02 +07:00
|
|
|
- The POSBox needs a 2A power supply to work with some barcode
|
2015-10-12 19:39:07 +07:00
|
|
|
scanners. If you are not using the provided power supply, make sure
|
|
|
|
the one you use has enough power.
|
|
|
|
- Some barcode scanners will need more than 2A and will not work, or
|
|
|
|
will work unreliably, even with the provided power supply. In those
|
|
|
|
case you can plug the barcode scanner in a self-powered USB hub.
|
|
|
|
- Some poorly built barcode scanners do not advertise themselves as
|
|
|
|
barcode scanners but as a usb keyboard instead, and will not be
|
2015-10-22 17:02:02 +07:00
|
|
|
recognized by the POSBox.
|
2015-10-12 19:39:07 +07:00
|
|
|
|
|
|
|
The Barcode Scanner is not working reliably
|
|
|
|
-------------------------------------------
|
|
|
|
|
|
|
|
- Make sure that no more than one device with 'Scan via
|
2015-10-22 17:02:02 +07:00
|
|
|
Proxy'/'Barcode Scanner' enabled are connected to the POSBox at the
|
2015-10-12 19:39:07 +07:00
|
|
|
same time.
|
|
|
|
|
|
|
|
Printing the receipt takes too much time
|
|
|
|
----------------------------------------
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
- A small delay before the first print is expected, as the POSBox will
|
2015-10-12 19:39:07 +07:00
|
|
|
do some preprocessing to speed up the next printings. If you suffer
|
|
|
|
delays afterwards it is most likely due to poor network connection
|
2015-10-22 17:02:02 +07:00
|
|
|
between the POS and the POSBox.
|
2015-10-12 19:39:07 +07:00
|
|
|
|
|
|
|
Some characters are not correctly printed on the receipt
|
|
|
|
--------------------------------------------------------
|
|
|
|
|
2015-10-22 17:02:02 +07:00
|
|
|
- The POSBox does not support all languages and characters. It
|
2015-10-12 19:39:07 +07:00
|
|
|
currently supports Latin and Cyrillic based scripts, with basic
|
|
|
|
Japanese support.
|
|
|
|
|
|
|
|
The printer is offline
|
|
|
|
----------------------
|
|
|
|
|
|
|
|
- Make sure the printer is connected, powered, has enough paper and
|
|
|
|
has its lid closed, and is not reporting an error. If the error
|
|
|
|
persists, please contact support.
|
|
|
|
|
|
|
|
The cashdrawer does not open
|
|
|
|
----------------------------
|
|
|
|
|
|
|
|
- The cashdrawer should be connected to the printer and should be
|
|
|
|
activated in the POS configuration.
|
|
|
|
|
|
|
|
Credits
|
|
|
|
=======
|
2015-10-22 17:02:02 +07:00
|
|
|
The POSBox project was developed by Frédéric van der Essen with the
|
2015-10-12 19:39:07 +07:00
|
|
|
kind help of Gary Malherbe, Fabien Meghazi, Nicolas Wisniewsky,
|
|
|
|
Dimitri Del Marmol, Joren Van Onder and Antony Lesuisse.
|
|
|
|
|
|
|
|
This development would not have been possible without the Indiegogo
|
|
|
|
campaign and those who contributed to it. Special thanks goes to the
|
|
|
|
partners who backed the campaign with founding partner bundles:
|
|
|
|
|
|
|
|
- Camptocamp
|
|
|
|
- BHC
|
|
|
|
- openBig
|
|
|
|
- Eeezee-IT
|
|
|
|
- Solarsis LDA
|
|
|
|
- ACSONE
|
|
|
|
- Vauxoo
|
|
|
|
- Ekomurz
|
|
|
|
- Datalp
|
|
|
|
- Dao Systems
|
|
|
|
- Eggs Solutions
|
|
|
|
- OpusVL
|
|
|
|
|
|
|
|
And also the partners who've backed the development with the Founding
|
2015-10-22 17:02:02 +07:00
|
|
|
POSBox Bundle:
|
2015-10-12 19:39:07 +07:00
|
|
|
|
|
|
|
- Willow IT
|
|
|
|
- E\. Akhalwaya & Sons
|
|
|
|
- Multibase
|
|
|
|
- Mindesa
|
|
|
|
- bpso.biz
|
|
|
|
- Shine IT.
|