Projects:Kiosk

From Diyode Community Workshop
Revision as of 17:25, 26 February 2015 by Zander (Talk | contribs)

Jump to: navigation, search

Information and Payment Kiosk

Project : Build a self contained information and payment kiosk for the DIYode workshop.


Requirements : The Kiosk should be a simple to use system to accept member payment in various ways.



Installing Debian on IBM SurePOS Type 4840-563

Debian 7.4.0 - NetInst - i386

Do a base Debian install with desktop.


On reboot the main lcd screen will go blank. There appears to be something wrong with the i915 linux video drivers.

This is a hack that will allow the main lcd work. The only way to get in is to use the external VGA with keyboard.

 $> cat /etc/modprobe.d/i915-kms.conf
    options i915 modeset=0 

Reboot after you have added this config.

Be careful to not switch consoles with the Linux CTRL-SHIFT-F1. You will not be able to switch back to the GUI desktop. This appears to also be a bug. If you switch out of GUI mode the only way to get it back is to reboot. :(

Several sources say 'modeset=0' will break KernelModeSwitching and that the new release of X11 will not run with KMS turned off. Well it does run with this Debian version. But it definitely has problems.

The other way to get X11 working is to blacklist the i915 driver.

So you don't have to have the external VGA and keyboard install the SSH daemon, which will allow you to login via the network.

 sudo apt-get install openssh-server


Enable all 8 Serial Ports

A normal linux kernel will only 'see' the first 4 serial ports. If you have more you need to add a boot parameter to enable them:

Edit /etc/default/grub; GRUB_CMDLINE_LINUX="8250.nr_uarts=8"

 sudo update-grub.
 sudo shutdown -r now


Check to see that all the Serial ports are available with :

 sudo setserial -g /dev/ttyS[0-7]*

You also have to make sure the serial port you want to use has an irq tied to it. I got some help from here: <<http://www-01.ibm.com/support/docview.wss?uid=pos1R1003073>>

The IBMPOS if have has the multiserial card on irq 17 and port 4 is connected to the touchscreen.

 sudo setserial /dev/ttyS6 uart 16550A port 0x9c00 irq 17  ^fourport 
 sudo stty -F /dev/ttyS6 raw

You should only have to do this once.

EloGraphics Touch X11

If the below procedure does not work then you will need these drivers <<sudo apt-get install xserver-xorg-input-elographics>>

<<reference http://who-t.blogspot.fi/2012/07/elographics-touchscreen-setup.html>>

 sudo apt-get install inputattach
 sudo apt-get install evtest
   $> cat /lib/udev/rules.d/99-elographics.rules
   ACTION=="add|change", SUBSYSTEM=="tty|pnp", KERNEL=="ttyS6", \
       RUN+="/sbin/modprobe elo", \
       RUN+="/usr/bin/inputattach -elo /dev/%k --daemon"


   $> cat /usr/share/X11/xorg.conf.d/99-elographics.conf
   Section "InputClass"
     Identifier "elographics config"
     MatchProduct "Elo Serial TouchScreen"
     Option "InvertY" "True"
   EndSection