This section contains the answers to the most frequently questions about Nylux.
Q: How daoes works the barcodes reading's process?
A: By default, the application that manage the laser scanner and send the read code to the active window, is the "scand" demon. This program is configurable editing the /etc/scan.conf configuration file, or using the graphical utility Laser Settings.
Some custom programs can possibly manage laser's capabilities without using scand demon: it's possible to manage barcodes reading using the functions provided by the software development kit (SDK).
Q: Is it possible to modify the system configuration in order to customize it?
A: Yes, it's possible. In order to modify and manage all the functionalities and the behaviours of the mobile device the administrator can use both the system utilities (if present) or modifying some configuration files or scripts (for example for disable the desktop's startup, disable system's functionalities, remove unused utilities, launch automatically user's applications at the system startup, etc.).
The first script executed during the system's startup is the file /etc/inittab: starting from this file the administrator will can follow the boot sequence of the mobile device, and will be possible to change files and scripts in order to modify the Nylux behaviour. Possibly, if the administrator will decide a configuration to apply to much than a single Nylux, it will be possible to package all the settings in a single tgz file (that will contains all the files and scripts modified), in order to install easily the same configuration package on other mobile devices.
Q: How can I automatically run an application on system's startup?
A: It's possible to run one or more programs at system startup modifying the file /root/.xinitrc as follows: insert each command line before the last command line "gpe-confd". We suggest to create in the folder /root/ a shell script (file with .sh extension) containing all the user's applications command lines, and then call that script execution before the gpe-confd command. Please note that the script will must be launched in background mode, otherwise the normal startup of the gpe-confd program (that manages the graphic interface of the mobile device) will not be reached until the script will end: in order to launch a command or a script in background mode, the administrator will have to add the character & after the script's name or after the command to launch.
Example:
Suppose that the original /root/.xinitrc file contains the following instructions:
#! /bin/sh
/sbin/scanwedge
#x11vnc &
cp /root/.matchbox/mbdock.session.default /root/.matchbox/mbdock.session
matchbox-session &
gpe-confd
If the administrator would run some programs using a script called "myApp.sh" and saved in the folder /root/, he should modify the content of the file as follows:
#! /bin/sh
/sbin/scanwedge
#x11vnc &
cp /root/.matchbox/mbdock.session.default /root/.matchbox/mbdock.session
matchbox-session &
#user application's startup:
/root/myApp.sh &
gpe-confd
The /root/myApp.sh script will contains an executable instruction or a command line. For example, if the administrator would run the standard software Highway-g Inventario, he should place in the script the following instructions (taken from the application's startup link):
#! /bin/sh
cd /usr/hwg-inv/
/usr/share/pmea-fp/bin/cvm -Xbootclasspath/a:jdbc.jar:RXTXcomm.jar -cp absfmk.jar:swt.jar:derby.jar:HWgInv.jar:. -Dsun.boot.library.path=/usr/share/pmea-fp/ -Djava.library.path=/usr/share/pmea-fp/ start.Inventario /usr/hwg-inv/
NOTES:
#! /bin/sh
Q: Is it possible to connect to Nylux's SSH server without typing user and password?
A: Yes, it's possible. In order to configure the automatic connection for a SSH client to Nylux's server, the user must follow this procedure:
Q: How can I create an installation package for Nylux devices?
A: There are severals ways to create a compressed installation package (.tgz file) for Nylux devices, including:
We think that the last option is the best one, so we explain it better in the following lines:
Please note that the tgz file generated in this way will contains all the specified files, will define correctly the folders structure and will record files permissions
as set before the package creation.
Example: if you want to create a package called test.tgz, containing the following files:
/usr/my-app/nylux.jar
/usr/my-app/app.jar
/usr/my-app/start
/etc/init.d/rcS
/etc/inittab
you must use the following command:
tar -czf /test.tgz /usr/my-app/nylux.jar /usr/my-app/app.jar /usr/my-app/start /etc/init.d/rcS /etc/inittab
Q: Is it possible to disable device's desktop and/or applications bar?
A: Yes, it's possible. In order to change this system behaviour the administrator must modify the file /usr/bin/matchbox-session as follows.
To disable the bar, comment (adding as the first character of the line the character #) the following command
matchbox-panel -nm --orientation south &
To disable the desktop, comment (adding as the first character of the line the character #) the following command
matchbox-desktop &
Q: Is it possible to disable device's touch screen?
A: Yes, it's possible. In order to change this system behaviour the administrator must modify the script /usr/bin/X replacing the following command line
Xfbdev -ac -screen 240x320@90 -keybd keyboard,device=/dev/input/event1 -mouse tslib,,device=/dev/input/event0,rightbutton,samples=20,tolerance=4 -root-ppm /usr/share/pixmaps/xsplash-qvga.ppm
with the following
Xfbdev -ac -screen 240x320@90 -keybd keyboard,device=/dev/input/event1 -hide-cursor -root-ppm /usr/share/pixmaps/xsplash-qvga.ppm
Q: Is it possible to enable / disable scand demon at runtime?
A: Yes, it's possible.
In order to disable scand demon, the user must call the command:
echo 0 > /sys/module/nyluxkbd/parameters/scanwedge
In order to enable scand demon, the user must call the command:
echo 1 > /sys/module/nyluxkbd/parameters/scanwedge
Q: How can I install a compressed package into a Nylux device?
A: There are severals ways to install a compressed package (.tgz file) into a Nylux device, including:
1) Use the installation script "install.sh": by default every Nylux device provide an installation script that enable the user to download from network and automatically install a tgz package. The syntax of that command is the following: ./install.sh <tgz archive name> [<distribution server>]
Example: if you want to download and installa minimo.tgz package directly from Nylux site's download area (http://www.nylux.it/downloads/pacchetti/), you need to use the command "./install.sh minimo http://www.nylux.it/downloads/pacchetti/" (without quotes).
Please note that using the installation script you can also download and install packages from alternatives distribution servers. It can be used for example a private HTTP server, in order to avoid the external network access. In this case, the command's syntax will change as the HTTP server used (i.e. ./install.sh minimo 192.168.0.248/pkg/).
2) Copy the package to the mobile device, then use the command "tar -C / -xzf packageFullPath.tgz" (without quotes), where packageFullPath.tgz is the full path and name of the tgz file copied on the device.
Q: Is possible to modify the inactivity time after that the mobile device disable the display (so also the backlight)?
A: In order to configure the screensaver's timeout (i.e. the inactivity time after that the mobile device disable the display) the user must change the content of a configuration file on the mobile device: for the moment Nylux platform doesn't enable the user to make this setting using a graphic interface such as Screen Setup.
The user must edit (using the Editor utility installed on the Nylux, or using the editor integrated in the ssh communication program) the script /usr/bin/X on the mobile device
In the Nylux's default configuration, this script runs Xfbdev with the followings parameters:
Xfbdev -ac -screen 240x320@90 -keybd keyboard,device=/dev/input/event1 -mouse tslib,,device=/dev/input/event0,rightbutton,samples=20,tolerance=4 -root-ppm /usr/share/pixmaps/xsplash-qvga.ppm
In Xfbdev's startup parameters isn't defined any timeout for the screen-saver, so the platform uses the default timeout, that is 600 seconds (10 minutes).
In order to define a different timeout the user must add to Xfbdev's startup parameters the following option:
-s minutes
followed by the startup parameters already existent.
For example, to setup a timeout of 1 minute, the command line must be:
Xfbdev -s 1 -ac -screen 240x320@90 -keybd keyboard,device=/dev/input/event1 -mouse tslib,,device=/dev/input/event0,rightbutton,samples=20,tolerance=4 -root-ppm /usr/share/pixmaps/xsplash-qvga.ppm
Q: How can I show the current window in full screen mode?
A: Press the keys Func and . on the mobile device's keyboard. In order to return in non full screen mode, redo the same operation.
Q: How can I show the current scand demon's version?
A: In order to show the installed scand demon's version, the user must launch the command "logread | grep scand" (without quotes) in a console, then look for the version among the output strings generated by the command.
Q: Why my SSH client (scp or sftp) needs more than 15 seconds to connect to the mobile device?
A: The SSH client needs more than 15 seconds to connect to the mobile device because by default the Nylux platform enable the use of dns, slowing the connection procedure. In order to speed up the connection time, if not needed the dns, the user can modify the configuration file /etc/ssh/sshd_config setting for the "UseDNS" parameter the "no" value (without quotes). By default that file contains a line "#UseDNS yes" (that shows the default value): after that line the user must insert a new line containing the "UseDNS no" string (without quotes), then save the file. When finished, a reboot will be needed.
Q: In addition to the various system's utilities, which other programs can I install on Nylux mobile device?
A: On Nylux's web site are now availables various programs already packaged for Nylux. Among all these we remind as more used the followings:
We suggest also to check periodically the download area of Nylux's web site in order to check the complete list of Nylux's packages.
NOTE: it's possible to install on Nylux device also programs not already packaged for that platform, if compatibles with it.
Q: What are the features supported by Mozilla Minimo browser for Nylux?
A: Mozilla Minimo for Nylux supports a great number of features (i.e. javaScript) and allows the visualization and the use of complex web pages and web applications. For the datailed list of the features supported by Mozilla Minimo please visit the web site https://wiki.mozilla.org/Mobile/FeatureList .
Q: Is possible to change the graphic interface mode of Mozilla Minimo browser in order to disable the full screen, or show or hide the address bar?
A: Yes, it's possible. Press and hold the pencil on the graphic interface until a contextual menu appears, then select the voice to configure the browser's aspect.
Q: Why if I launch Mozilla Minimo I can't close it anymore?
A: If the browser starts in full screen mode (withouts tools and navigation bars), you can close the program pressing the Alt + F4 keys on the keyboard of the mobile device.
Q: Why if I launch Mozilla Minimo I can't navigate in internet?
A: Please verify that the mobile device is connected to a network, that the network interface is correctly configured, and that the network at witch you are connecting to allows the navigation out of the lan.
Q: Wich programs can I use in order to manage a Nylux device from a remote pc?
A: Every Nylux device is equiped with SSH (SCP/SFTP) and VNC servers. This means that from every kind of pc (Windows, Linux or Mac) you can use severals utilities (open source, free, etc.) that allow you to connect and manage the Nylux device remotely.
For Windows platforms, among all the availables we remind as more used the followings:
NOTE: both WinSCP and Putty programs use encrypted communication protocols, in order to ensure data security while connected to a Nylux device.
Regarding Linux and Mac personal computers, the most recent versions of both platforms usually integrate by default an SSH (SCP/SFTP) client, that enables the user to do the operations mentioned above without installing external applications. We suggest in this case to read the documentation provided with the used operative system.
Q: I know Nylux is an Open Source platform, where can I find the sources for this project?
A: Here follows the svn repository list:
svn://www.nylux.it/nilux/trunk/ blob for xscale and kernel
svn://www.nylux.it/nyluxRootfs/trunk/ default file system
svn://www.nylux.it/nyluxSdk/trunk/ C and Java software development kit
svn://www.nylux.it/nyluxSdk/trunk/web/ barcodes reader demon (scand)
svn://www.nylux.it/nyluxSources/trunk/ sources of utilities and various programs
svn://www.nylux.it/nyluxJavaPlatform/trunk/ Java Virtual Machine and various extensions
svn://www.nylux.it/Hw-gInventario/trunk/ Highway-g Inventario software
svn://www.nylux.it/Hw-gCaricoScarico/trunk/ Highway-g Carico/Scarico software
svn://www.nylux.it/nyluxPrinter/trunk/ Nylux Printer software
Q: Is it possible to clean the system and restore the default configuration for Nylux platform?
A: Yes, it's possible. At the moment this service is done by Bancolini Symbol's technical laboratory. However, the administrator can do that operation using the specific utility for system reload from an SD card.
Q: Is it possible to locally map on Nylux devices one or more network shared folders?
A: Yes, it's possible. In order to locally map a network shared folder, the administrator must install on Nylux device the Samba client, then use the "mount.cifs" command. The command syntax is the following:
mount.cifs //ip_host/shared_folder /media/mount_point_folder/ -o username=user_host,password=pass_host
where
ip_host is the ip address of the pc that fisically shares the folder
shared_folder is the shared folder's name
mount_point_folder is the local Nylux folder that will contain the resources shared on the remote folder
user_host and pass_host are the credentials to use for the remote host's login
If the host that shares the remote folder is part of a domain (option available on Microsoft Windows networks), the username specified in the command must also contains the domain name, using the syntax domain/user_host. The command syntax in this case changes as follows:
mount.cifs //ip_host/shared_folder /media/mount_point_folder/ -o username=domain/user_host,password=pass_host
NOTE: The mount point folder (i.e. the local Nylux folder that will contain the resources shared on the remote folder) can't be one of the followings: bin, etc, dev, sys, usr, sbin, proc, lib, tmp and var. Usually a valid mount point is a folder created in /media or in /root folders.
Q: Is it possible to show resources available in a specific shared folder?
A: Yes, it's possible. In order to show resources available in a specific shared folder, the administrator must install on Nylux device the Samba client, then use the "smbclient" command. The command syntax is the following:
smbclient -L ip_host -U username
where
ip_host is the ip address of the pc that fisically shares the folder
user_host is the credential to use for the remote host's login
If the host that shares the remote folder is part of a domain (option available on Microsoft Windows networks), the username specified in the command must also contain the domain name, using the syntax domain/user_host. The command syntax in this case changes as follows:
smbclient -L ip_host -U domain/username
NOTE: If you locally map a shared folder, the local Nylux folder will contain all the availables files and folders existents on the remote folder, so it can be possible to show available resources simply showing the content of the mount point folder.
Q: Is it possible to develop an application using C/C++ languages?
A: Yes, it's possible. In order to develop a program written in C/C++ for Nylux platform, the developer needs first to install and configure a cross-compilation environment (i.e. scratchbox, openembedded, ..) in order to compile programs for armv5te processors. The C development libraries (nowadays not officially supported) are availables at the following SVN repository :
svn://www.nylux.it/nyluxSdk/trunk/
Q: How can I develop a Java application for Nylux?
A: In order to develop a Java software for Nylux platform, we suggest as first thing to install on the pc an IDE (Integrated development environment, a software development system), such as Eclipse or Netbeans. Using one of that IDE, both develop and debug cycles will be faster and easier. You need to install on the development pc also a Java virtual machine, that will allow the source's compilantion and the project's execution on the development machine. On Windows hosts we suggest to use Oracle's jdk ver. 1.4 (similar to PhoneME jvm used by Nylux devices), while if using a Linux host we suggest to use directly the specific Linux release of the PhoneME virtual machine.
Independently by the virtual machine and the IDE used, it will be necessary to set up the compiler's “compliance level” or “source level” (in the used IDE) jdk ver. 1.3 or 1.4, and also to import in every new project's classpath every jar file needed (that depends by the project's dependencies, i.e. swt.jar, fake_nylux.jar).
Nylux website provide in the “Downloads -> SDK” section also the Java development kit, composed by the following files:
In the same website section are also provided severals files. Among these we remind as more used the followings:
NOTES:
Q: Is it possible to connect a Nylux device to a Windows pc using a usb connection?
A: Unfortunately nowadays Microsoft doesn't provide any UsbLan driver capable to connect their Windows operative systems to Linux devices using usb network. However it's possible to install on the Windows pc a demo version of driver and/or utilities provided by other sellers (i.e. Belcarra), or easily find compatible drivers over the web.
However we suggest to Windows users to use a wireless (WiFi) connection instead of an usb one.