Access Server

User's and Developer's Guide

Bluegiga Technologies

Bluegiga Technologies reserves the right to alter the hardware, software, and/or specifications detailed herein at any time without notice, and does not make any commitment to update the information contained herein. Bluegiga Technologies assumes no responsibility for any errors which may appear in this manual. Bluegiga Technologies' products are not authorized for use as critical components in life support devices or systems.

The WRAP is a registered trademark of Bluegiga Technologies. iWRAP, WRAP THOR and WRAP Access Server are trademarks of Bluegiga Technologies.

The Bluetooth trademark is owned by the Bluetooth SIG Inc., USA, and is licensed to Bluegiga Technologies.

ARM and ARM9 are trademarks of ARM Ltd.

Linux is a trademark of Linus Torvalds.

All other trademarks listed herein belong to their respective owners.


Table of Contents
1. Introduction to Access Server
1.1. Licenses and Warranty
1.2. Bluegiga Technologies Contact Information
2. Getting Started with Access Server
2.1. Powering Up
2.2. WWW Interface
2.3. Shell Prompt Access
2.3.1. Management Console
2.3.2. Accessing Remotely
2.3.3. Transferring Files to/from Access Server
2.4. Introduction to Configuration
2.5. Using the Setup WWW Interface
2.6. Using the setup Command Line Application
2.7. Resetting a Configuration
2.8. Exporting and Importing Configurations
3. Using the System
3.1. Network Interfaces
3.2. Bluetooth
3.2.1. iWRAP Password Protection
3.2.2. LAN Access Profile
3.2.3. Serial Port Profile
3.2.4. Object Push and File Transfer Profile
3.2.5. PAN Profiles
3.2.6. Changing the Bluetooth Range
3.2.7. BTCLI - iWRAP Command Line Interface Utility
3.2.8. serialbluetooth
3.3. Compact Flash Cards
3.3.1. Compact Flash GPRS Cards
3.3.2. Compact Flash GPS Card
3.3.3. Compact Flash Wi-Fi Cards
3.4. USB Memory Dongles and Compact Flash Memory Cards
3.5. Servers
3.5.1. Finder
3.5.2. ObexSender
3.5.3. SMS Gateway Server
3.5.4. User Level Watchdog
3.5.5. Remote Management
3.5.6. FTP
3.5.7. Web Server
3.5.8. SNMP
3.5.9. OpenVPN
3.5.10. SSH
3.5.11. Telnet
3.5.12. NTP
3.6. Utilities
3.7. Real Time Clock
3.8. Time Zone
3.9. System Re-Install and Upgrade
4. SPP-over-IP
4.1. How SPP-over-IP Works
4.1.1. Standard Operation
4.1.2. Repeater Operation
4.1.3. SPP-over-IP over GPRS
4.1.4. Opening Connections from Access Server
4.1.5. SPP-over-IP and COM Ports
4.2. Configuring SPP-over-IP
4.2.1. Preparations
4.2.2. Preparations
4.2.3. Repeater Configuration
4.2.4. Wi-Fi Configuration
4.2.5. GPRS Configuration
5. Obexsender
5.1. Key Features
5.2. Use Cases
5.2.1. Content Push
5.2.2. Content Pull
5.3. Configuration
5.3.1. Getting Started
5.3.2. Updating Obexsender
5.3.3. Ensuring Obexsender is Enabled
5.3.4. Basic Obexsender Configuration
5.3.5. Uploading Files
5.3.6. Advanced Obexsender Configuration
5.3.7. How to Store Files Sent to Access Server
5.4. Monitoring Obexsender
5.5. Troubleshooting and Known Issues
6. Software Development Kit
6.1. Introduction to SDK
6.2. Installing SDK
6.2.1. Access Server Software Development Environment System Requirements
6.2.2. Questions Asked by the Install Script
6.3. Creating Applications
6.3.1. Application Examples
6.3.2. Creating a New Project
6.3.3. Building from the Command Line
6.3.4. Transferring an Application to Access Server
6.3.5. Running an Application Transferred to Access Server
6.3.6. Using Debugger (GDB/DDD)
6.3.7. Native SDK
7. iWRAP - Bluetooth Interface
7.1. Terms
7.2. Starting the iWRAP Servers
7.3. Writing iWRAP Applications
7.3.1. Forklistener
7.3.2. iWRAP Client
7.4. Commands Controlling iWRAP
INFO -- Get basic info
QUIT -- Close iWRAP connection
SET -- Change parameters
SAVE -- Save iWRAP settings
LOAD -- Run iWRAP command script
PING -- Ask if the connection is alive
PONG -- Connection is alive
ECHO -- Send a message to other iWRAP clients
LOCK -- Lock other iWRAP clients
UNLOCK -- Unlock other iWRAP clients
SHUTDOWN -- Close iWRAP server
SLEEP -- Wait a second
7.5. Finding Bluetooth Devices
INQUIRY -- Search for other devices
NAME -- Find a friendly name
7.6. Making a Bluetooth Connection
CALL -- Connect to other device
CONNECT -- Connected to other device
NO CARRIER -- Disconnected from other device
RING -- Another device is calling you
RINGING -- Call in progress
CLOSE -- Disconnect
LIST -- List connections
STATUS -- Status of a connection
7.7. Service Discovery
SDPSEARCH -- Browse SDP Records
SDPATTR -- Browse SDP Records
SDPQUERY -- Browse SDP Records
SDP bdaddr -- Check devices SDP
SDP ADD -- Add entry to local SDP
SDP DEL -- Delete entry for local SDP
SDP LIST -- List local SDP
7.8. Example Sessions
7.9. Error Codes
8. I/O API
8.1. Led and Buzzer API
8.2. GPIO API
9. Advanced Use Cases for Access Server
9.1. Making Access Server Secure
9.2. Saving Bluetooth Pairing Information Permanently
9.3. Digital Pen
9.4. OpenVPN
9.4.1. Prerequisites
9.4.2. Installing OpenVPN
9.4.3. Creating Certificates and Keys
9.4.4. Creating Configuration Files
9.4.5. Starting up VPN
10. Certification Information and WEEE Compliance
A. Directory Structure
B. Setup Options
B.1. Security settings
B.2. Generic settings
B.3. Network settings
B.3.1. Default interface settings
B.3.2. Ethernet cable settings
B.3.3. Wi-Fi settings
B.3.4. GPRS settings
B.4. Applications
B.4.1. wpkgd settings
B.4.2. FTP server settings
B.4.3. ObexSender settings
B.4.4. SMS gateway settings
B.5. Bluetooth settings
B.5.1. Bluetooth profiles
B.6. Advanced settings
B.6.1. System information
B.6.2. Reboot system (confirm)
B.7. Summary of Setup Options
C. Open Source Software Licenses
D. Supported Hardware

Chapter 1. Introduction to Access Server

Bluegiga's WRAP™ product family offers for device manufacturers, integrators, companies and developers a simple and fast way to set-up wireless communication systems between standard or proprietary devices, networks, machines and instruments.

Access Server is a cutting edge wireless Bluetooth router. It supports multiple communication standards including Ethernet, WiFi, and GSM/GPRS enabling full media-independent TCP/IP connectivity. Access Server is easy to deploy and manage in existing wired and wireless networks without compromising speed or security. For rapid deployment, Access Server configurations can easily be copied from one device to another by using USB memory dongles. The device can be conveniently managed and upgraded remotely over SSH secured links. By using Simple Network Management Protocol (SNMP), Access Servers can also be connected to the customer's management and monitoring systems.

Access Server usage scenarios and applications:

Access Server key features:


1.1. Licenses and Warranty

Warning

Bluegiga Technologies is hereby willing to license the enclosed WRAP product and its documentation under the condition that the terms and conditions described in the License Agreement are understood and accepted. The License Agreement is supplied within every WRAP product both in hard copy. It is also available on-line at http://bluegiga.com/as/current/doc/eula.pdf. The use of the WRAP product will indicate your assent to the terms. If you do not agree to these terms, Bluegiga Technologies will not license the software and documentation to you, in which event you should return this complete package with all original materials, equipment, and media.

Some software components are licensed under the terms and conditions of an open source license. Details can be found in Appendix C. Upon request, Bluegiga will distribute a complete machine-readable copy of the source of the aforementioned open source software components during a period of three (3) years from the release date of the software. Delivery costs of the source code will be charged from the party requesting the source code.

The Bluegiga WRAP Product Limited Warranty Statement is available on-line at http://bluegiga.com/as/current/doc/warranty.pdf.


1.2. Bluegiga Technologies Contact Information

Please see http://www.bluegiga.com/ for news and latest product offers. For more information, contact .

Please check http://bluegiga.com/as/ for software and documentation updates.

Please contact if you need more technical support. To speed up the processing of your support request, please include as detailed information on your product and your problem situation as possible.

Please begin your email with the following details:

  • Access Server product type

  • Access Server product serial number

  • Access Server software version

  • End customer name

  • Date of purchase


Chapter 2. Getting Started with Access Server

Access Server can be controlled in three ways:

Note: The default username is root and the default password is buffy.


2.1. Powering Up

To get started with Access Server, connect it to your local area network (LAN) by using an Ethernet cable, and connect the power adapter. Access Server will power up and retrieve the network settings from your network's DHCP server.

Access Server will also use Zeroconf (also known as Zero Configuration Networking or Automatic Private IP Addressing) to get an unique IP address in the 169.254.x.x network. Most operating systems also support this. In other words, you can connect your controlling laptop with a cross-over Ethernet cable to Access Server, then power up Access Server, and the devices will automatically have unique IP addresses in the 169.254.x.x network.

Note: If you need to configure the network settings manually and cannot connect first by using Zeroconf, you can do it by using the management console. For more information, see Section 2.3.1.

The physical interface locations of Access Server are described in Figure 2-1 and Figure 2-2.

Figure 2-1. Access Server Connectors

Note: There is no power switch in Access Server. The adapter is the disconnection device; the socket-outlet shall be installed near the equipment and shall be easily accessible. Unplug and plug the power adapter to switch the power on and off. The power led in Figure 2-2 is on when the power adapter is connected.

Figure 2-2. Access Server LEDs

All the blue status LEDs are turned off when the boot procedure is finished and Access Server is ready to be connected.


2.2. WWW Interface

Most Access Server functionality can be controlled through the WWW interface by using any standard WWW browser.

The wrapfinder application (see Figure 2-3), available for the Windows operating system from Bluegiga Techforum (http://www.bluegiga.com/techforum/) provides an easy-to-use interface for finding Access Servers (with SW version 2.1.0 or later) in the local area network.

Figure 2-3. Access Server Finder Application

When wrapfinder is launched, it automatically identifies the broadcast address of the network it runs in and sends a special query packet (UDP broadcast) to Access Servers. Most important information in their answers is then shown in table format.

You can change the broadcast address used for finding Access Servers. A new scan can be done by clicking Rescan.

Select an Access Server by clicking its serial number, and click Details to see more information (such as all Bluetooth addresses and friendly names) on Access Server. See Figure 2-4 for details.

Figure 2-4. Details Dialog of Access Server Finder

Click Connect or double-click a serial number to connect to the selected Access Server by using a WWW browser.

Click Exit to close the program.

Note: To find Access Server's IP address without wrapfinder, see Section 2.3.2.

To access the WWW interface, enter the IP address of Access Server to the browser's address field and press Enter (see Figure 2-5).

Figure 2-5. Access Server WWW Interface

From the top-level page, click Setup to log in to the configuration interface. The default username is root and the default password is buffy (see Figure 2-6).

Figure 2-6. WWW Login Prompt for Access Server Setup

After logging in, you can configure several Access Server settings (see Figure 2-7). These are discussed in detail in Section 2.4.

Figure 2-7. The WWW Configuration Interface of Access Server


2.3. Shell Prompt Access

Shell prompt access may be needed for advanced controlling operations that cannot be performed by using the WWW interface.

You can get to the shell prompt by using either SSH or the management console. The management console is only needed to change the network configuration settings if you cannot configure the network by using DHCP or Zeroconf. The management console is connected to Access Server with a serial cable. All further controlling activities can be performed remotely using SSH sessions over Ethernet or Bluetooth LAN/PAN connection.

If you can establish an SSH connection from a device that has Bluetooth LAN Access or PAN profile support, you do not need the management console. Just connect to Access Server by using LAN Access or PAN profile. Access Server can be seen in Bluetooth inquiries as "Wserialno_n", where "serialno" is the serial number of the device and "n" is the number of the Bluetooth baseband in question (model 2293 has three Bluetooth basebands, any of which can be connected). After you have connected to the server (no PIN code, username or password needed), establish an SSH connection to the device at the other end of the connection, typically 192.168.160.1. You can also use the wrapfinder application to find the IP address (see Section 2.2 for details).

Note: Bluetooth LAN Access and PAN profiles are disabled by default. Use the WWW interface to enable them, if needed. The PAN profile can also be enabled by sending the enable-pan.wpk file (available on-line at http://bluegiga.com/as/current/enable-pan.wpk) to Access Server by using Bluetooth Object Push profile or by inserting a USB memory dongle with the file in its root directory to Access Server's USB port.

Note: The default username is root and the default password is buffy.


2.3.1. Management Console

If you do not have a Bluetooth LAN/PAN client and if Access Server is not connected to your LAN, or if you do not know the IP address given to Access Server, you can get the first shell prompt access by using the management console.

To setup the management console, proceed as follows:

  1. Have a PC with a free COM port.

  2. Power off Access Server.

  3. Configure your terminal application, such as HyperTerminal in Windows, to use the settings below for your computer's free COM port

    Table 2-1. The Management Console Port Settings

    SettingValue
    Speed115200bps
    Data Bits8
    ParityNone
    Stop Bits1
    Flow ControlNone
  4. Connect the serial cable shipped with Access Server to your PC's free COM port.

  5. Connect the serial cable to the management (user) port in Access Server (see Figure 2-1).

  6. Power on Access Server.

  7. Enter letter b in the terminal application during the first five seconds, while the blue LEDs in Access Server turn on one by one.

  8. The management console is now activated and you can see the boot log in your terminal window.

    Note: The boot process may stop at the following U-Boot prompt:

    
              Hit any key to stop autoboot:  0
                  U-Boot>
                

    If this happens, enter command boot to continue to boot Linux.

  9. Wait for the device to boot up and end with the following prompt:

    
              Please press Enter to activate this console.
                
  10. Press Enter to activate the console. You will be logged in as root in directory /root:

    
              [root@wrap root]
                
  11. You can now control Access Server from the management console.


2.3.2. Accessing Remotely

When Access Server is connected to a LAN, it tries to get the IP address by using DHCP and Zeroconf by default. You can then use the wrapfinder application to find the IP address (see Section 2.2).

If you cannot get the IP address by using the wrapfinder, another way to see the IP address of Access Server is to connect with a management console (see previous section), power on the unit and, after the system is up and running, give the ifconfig nap command. The inet addr field for the nap interface contains the IP address of Access Server. For example, in the following capture from the management console, the IP address is 192.168.42.3.


        [root@wrap /]$ ifconfig nap
        nap      Link encap:Ethernet  HWaddr 00:07:80:00:BF:01
                 inet addr:192.168.42.3  Bcast:192.168.42.255  Mask:255.255.255.0
                 inet6 addr: fe80::207:80ff:fe00:bf01/64 Scope:Link
                 UP BROADCAST MULTICAST  MTU:1500  Metric:1
                 RX packets:12635 errors:0 dropped:0 overruns:0 frame:0
                 TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
                 collisions:0 txqueuelen:100
                 RX bytes:1686246 (1.6 MiB)  TX bytes:1640 (1.6 KiB)
                 Interrupt:24 Base address:0xc000
      

You can use this address to connect to Access Server remotely over SSH, SCP or SFTP.

Note: The default username is root and the default password is buffy.


2.3.3. Transferring Files to/from Access Server

You can transfer files to and from Access Server by using, for example:

  • SCP (secure copy over SSH)

  • SFTP (secure FTP connection over SSH)

  • FTP (plain FTP connection)

    Note: FTP is disabled by default for security reasons. Use SFTP instead.

    Tip: If enabled, use the integrated FTP client on the Internet Explorer (type ftp://root:buffy@wrap-ip-address/ in the address bar)

  • Bluetooth OBEX (Object Push and File Transfer Profiles) to/from directory /tmp/obex in Access Server

  • NFS (mount an NFS share from a remote device as a part of Access Server's file system)

  • SSHFS (mount an Access Server directory over SSH as a part of any other Linux host file system)

    To download and install SSHFS, visit http://fuse.sourceforge.net/sshfs.html.

  • USB memory dongle (see Section 3.4 for more information).

  • Xmodem/Ymodem/Zmodem (use rz/rx/rb/sz/sx/sb commands from the management console)

For examples of transferring files, see Section 6.3.4.


2.4. Introduction to Configuration

When Access Server is installed and powered up for the first time, the default configuration settings are being used. With these settings, Access Server automatically configures its network settings assuming that it is connected to a LAN network with a DHCP server running. Additionally, Access Server also uses Zero Configuration Networking (also known as Automatic Private IP Addressing) to connect to the 169.254.x.x network, which can be used if the network has no DHCP server.

After booting up, the only Bluetooth profiles enabled are the Object Push and File Transfer Profiles, used to send files to/from Access Server.

More Bluetooth profiles can be enabled, and most of Access Server settings can be configured by using the setup application. It has a WWW interface at http://wrap-ip/setup but it can also be run at the command line.

All configurable settings in the setup application are listed in Appendix B with short help texts.

Note: The default username is root and the default password is buffy.


2.5. Using the Setup WWW Interface

The easiest way to change Access Server settings is to use the WWW interface. Accessing the WWW interface is instructed in Section 2.2.

A typical WWW configuration page is shown in Figure 2-8 (This page can be found at SetupSecurity settings)

Figure 2-8. Example WWW Setup Page

The different parts of the WWW Setup page are discussed in the following list:

  • Status area

    The status area serves two purposes:

    • It indicates that the changes are permanently saved when the user clicks the Save button (or when the user clicks a toggling Yes/No link).

    • If invalid values were entered in one or more fields, an error message is shown in this area (see Figure 2-9).

    Figure 2-9. Trying to Save an Invalid Input

    Note: It is typically necessary to reboot Access Server for the changes to take effect. This can be done through the WWW interface (Advanced settings menu).

  • Number or text entry fields

    Most of the configurable settings are text (or number) entry fields. For some fields, such as the IP address or netmask, there are restrictions on the input format. Setup validates the input at save time and accepts valid data only. The fields with errors are shown to the user so that mistakes can be fixed (see Figure 2-9).

  • Help -link

    Click the Help link to retrieve the setup page again with requested help information displayed. For an example, see Figure 2-10.

    Figure 2-10. Help Links in WWW Setup

    Warning

    If you have made changes to the settings on the page before clicking Help and not saved them yet, they are lost.

  • Yes and No radio buttons

    These buttons are typically used to configure a setting that can be either enabled or disabled, and this setting has no effect on the visibility of other settings.

  • Link to a configuration file

    Some of the configurable settings are actually editable configuration files, such as /etc/httpd.conf for WWW passwords. Clicking the link will retrieve the file for editing in the browser window, or create a new file, if it does not exist. See Figure 2-11.

    Figure 2-11. Editing Files in WWW Setup

    Note: You can edit any file through the WWW Setup. to edit files, navigate to SetupAdvanced settingEdit other configuration files.

  • Reset button

    Reset button resets the fields to the values currently in use at Access Server. In other words, the Reset button discards unsaved changes.

    Note: The Reset button does not make a "factory reset".

  • Save button

    Save button sends the WWW page to the setup application for validation. If the values in the fields are valid, they are permanently saved and the page is refreshed with the Changes have been saved. message at the top. The accepted values are shown in the page fields.

    If there were errors in the fields, these are shown as in Figure 2-9.

    Note: It is typically necessary to reboot Access Server for the changes to take effect. This can be done through the WWW interface (Advanced settings menu).

  • Back link

    Press the Back link to return to the previous level of the Setup menu hierarchy.

    Note: Pressing the Back link does not save changes in the fields on the current page.

  • Exit link

    Exit link quits the setup application and returns to the Access Server's main WWW page.

    Note: Pressing the Exit link does not save changes in the fields on the current page.

  • Toggling Yes/No and on/off links

    Clicking the Yes/No link (see Figure 2-12) immediately changes the setting and saves the change. Typically these links are used display or hide further settings.

    Figure 2-12. Yes / No links in WWW Setup

    The on/off links in SetupApplicationsDefault bootup applications behave in a same way, making and saving the change immediately (see Figure 2-13).

    Figure 2-13. Selecting Default Bootup Applications in WWW Setup

    Note: To configure the default bootup applications from the command line, use the chkconfig command.

  • Upload links

    The WWW Setup has settings that allow user to upload files to Access Server, for example SetupAdvancedUpload a software update (see Figure 2-14).

    Figure 2-14. Uploading files via WWW Setup

    Use the Browse... button to select the file to be uploaded, and send it to Access Server by clicking Upload.

  • Browsing files

    Some WWW Setup pages allow users to browse the Access Server file system or part of it, such as SetupAdvancedBrowse files (see Figure 2-15).

    Figure 2-15. Browsing files via WWW Setup

    Click the directory names to navigate in the file system.

    Click del to delete a file or an empty directory.

    Warning

    Deletion is not confirmed.

The WWW Setup also has menu items that run commands in Access Server, and show the output in the browser window. Some commands, such as rebooting Access Server, are confirmed before execution.


2.6. Using the setup Command Line Application

The basic configuration settings can also be changed by using the setup application at the command line interface.

The setup application displays the settings in a hierarchical menu (see Figure 2-16). Navigating the menu is accomplished by entering the number or letter corresponding to the setting to be viewed and/or changed and pressing Enter. Pressing only Enter either accepts the previous value of the setting or returns to the previous level in the menu hierarchy.

Figure 2-16. Using the setup Command Line Application

Note: Ensure that your terminal application does not send line ends with line feeds. If your terminal sends both CR and LF when you press Enter, you cannot navigate in the setup application.


2.7. Resetting a Configuration

You can reset the default configuration with the setup -r command. The command requires rebooting of Access Server. When the system starts up, the default configuration settings are restored. If you have only changed the configuration by using the setup application, the following commands at the Access Server's command prompt will suffice:


      [root@wrap /]$ setup -r
      [root@wrap /]$ reboot
    

Note: This does not reset the edited files to factory defaults; it only affects only the settings changed through the WWW Setup or the setup command line application.


2.8. Exporting and Importing Configurations

You can export configuration settings (expect for passwords and the list of default bootup applications) with the following command:


      [root@wrap /root]$ setup -o > settings.txt
    

The saved settings can later be restored with the following commands:


      [root@wrap /root]$ setup -m settings.txt
      [root@wrap /root]$ reboot
    

Chapter 3. Using the System

This chapter describes the basic features of a Bluegiga Access Server. This includes information on using Access Server as a Bluetooth LAN/PAN Access Point or a Bluetooth Serial Port Cable Replacer, using the Web Server, ObexSender, and WRAP Package Management System. The various ways of uploading content for browsing and/or downloading are also included, as well as getting familiar with the utility applications.

Using the features described in this chapter does not require Access Server Software Development Environment to be installed.

Note: The default username is root and the default password is buffy.

Note: Most of the configuration files are in Linux text file format, where the lines end with a single Line Feed (LF, "\n") character. Some applications will not work if the configuration file format is changed to MS-DOS format (this happens, for example, if you transfer the files to Windows for editing with Notepad), where the lines end with both Carriage Return and Line Feed (CR+LF, "\r\n") characters.


3.1. Network Interfaces

The Access Server network interfaces are described in Table 3-1.

Table 3-1. Access Server Network Interfaces

InterfaceDescription
napDynamic virtual Ethernet ("cable") device. This is the device having an IP address. All the programs should use this device instead of eth0.
eth0Real Ethernet device, which is dynamically linked to the nap device. Do not use this device, use nap instead.
wlan0Wi-Fi device. In the client mode (default), this device has its own IP address. In the access point mode, it is dynamically linked to the nap device (the default interface).
wifi0Virtual control device for wlan0. Do not use this device.
gnVirtual device for PAN-GN connections.
bnep#These devices are used for incoming and outgoing PAN connections. These devices are created, deleted and linked (to nap or gn) dynamically.
ppp#These devices are used for incoming and outgoing LAP connections. These devices are created and deleted dynamically. By default, data coming from ppp# is masqueraded to the nap device.

3.2. Bluetooth

The iWRAP servers (one server in Access Server 2291, three in Access Server 2293) are automatically started at power-up. By default, the Object Push and File Transfer Profiles are activated. The iWRAP servers can be accessed and controlled (by applications or even interactively with a telnet client) through the iWRAP interface, described in Chapter 7. Currently, there can be up to 14 simultaneous Bluetooth connections between a single master iWRAP server and up to seven simultaneous slaves.


3.2.1. iWRAP Password Protection

The access to iWRAP can be password protected. The default password is buffy, but it can be set off or changed with the setup application (see Section 2.4). The password is case sensitive. The password must be typed in as the first command after the server has replied with "READY."


3.2.2. LAN Access Profile

This profile is not automatically started at boot. The default settings can be changed with the setup application (see section Section 2.4), or runtime with the iWRAP interface (see Chapter 7).

Access Server can also act as a LAN Access Client, but in this case it must be controlled manually using iWRAP commands, as described in Chapter 7.

Note: Since Bluetooth specification 1.2, LAN Access Profile has been deprecated.


3.2.3. Serial Port Profile

This profile is not automatically started at boot. The default settings can be changed with the setup application (see section Section 2.4).

The Serial Port Profile is used to replace an RS-232 serial cable between two devices with a Bluetooth connection. The physical setup is shown in Figure 3-1.

Figure 3-1. Serial Cable Replacement Physical Setup

State A) in the figure is the starting situation with a serial cable connecting the devices. This cable is to be replaced with a Bluetooth connection.

In state B) the long serial connection is replaced with a Bluetooth Serial Port Profile connection between the two Access Server devices. These Access Server devices are then locally connected to the user devices with (short) serial cables. The cable between user device A and Access Server device A must be a cross-over cable. The cable between user device B and Access Server device B must be similar (direct or cross-over) to the one used in state A).

If RTS/CTS handshaking is used to ensure correct data transfer, the serial cables must have these pins connected. Notice that this handshaking is "local": it takes place between the user device and Access Server. No handshaking between user device A and user device B on the other end of the Bluetooth connection is provided.

If RTS/CTS handshaking is not used, CTS must be connected to DTR.

DCD, DTR, and DSR signals are not supported. This also means that user devices A and B will not be able to tell whether or not the Bluetooth connection is up.

When the physical setup is ready, you can create the Bluetooth connection. By default, the Serial Port Profile is started up at boot with the default settings. That is, listening in DevB mode, at 115200 bps, 8 data bits, no parity, 1 stop bit, and RTS/CTS enabled. To change these settings, use the setup application or the WWW Setup interface, as described in Section 2.4.

Note: To enable Serial Port Profile, navigate to SetupApplications Default bootup applications in the WWW Setup interface, and switch serialport application to off.

Enabling can also be done from command prompt with command chkconfig serialport on.


3.2.4. Object Push and File Transfer Profile

Access Server has two OBEX profiles: Object Push Profile (ObjP) and File Transfer Profile (FTP). You can use these profiles to transfer files easily between different Access Server devices and other devices supporting ObjP/FTP.

The OBEX profiles are handled by forwarding incoming calls to the obexserver program, which handles both profiles. The working directory is /tmp/obex, and users have full read and write access to that directory. By default, the default contact card /etc/default.vcf is copied to that directory at boot.

In the ObjP mode, obexserver will prefix received files with the sender's Bluetooth address and iWRAP port number.

Two simple command line utilities, obexput and obexget, are provided. They can be used to send and retrieve files to and from another Bluetooth device supporting ObjP/FTP.

Usage:

obexput [parameters] bdaddr channel file(s)

Note: You can use the friendly name instead of Bluetooth address as the "bdaddr" parameter and keywords "OBJP" and "FTP" as the "channel" parameter for automatic service discovery.

Enter either of these commands without parameters to view a short help text for using the command.

A non-zero return value indicates an error. The reason for this error is printed to the terminal.

Tip: Special parameters and the iWRAP interface (see Chapter 7) obexput command can be easily used from the user application as follows:


            CALL bdaddr OBJP FORK \"/usr/bin/obexput - 1 filename\"
          
- as bdaddr and 1 as channel tells obexput that it will be launched by the iWRAP server, and that data connection is bound to standard input and output.


3.2.5. PAN Profiles

Access Server has support for all PAN profile modes: Personal Area Network User (PANU), Network Access Point (NAP) and Generic Networking (GN). Accepting incoming PAN connections to any of these modes is disabled by default for security reasons.

Access Server can be configured to accept incoming PAN connections and the default settings can be changed by using the setup application (see section Section 2.4).

The Network Access Point mode is the most useful PAN profile mode. You can enable it by sending the enable-pan.wpk file (available on-line at http://bluegiga.com/as/current/enable-pan.wpk) to Access Server by using the Bluetooth Object Push profile. Alternatively, you can copy the file to the root of a USB memory dongle and insert the dongle to Access Server's USB port.

The device creating the PAN connection decides upon the modes to be used. Access Server automatically handles incoming connections. Access Server can also act as a PAN client, but in this case it must be controlled manually by using the iWRAP interface, described in Chapter 7.


3.2.6. Changing the Bluetooth Range

The transmit power of Access Server is configurable. By default, class 1 (100 meter range) settings are used. The settings can be changed down to "class 2" (10 meter range) settings with the b2b_class2 command, or even lower with the b2b_class3 command. Class 1 settings can be restored with the b2b_class1 command.

After b2b_class# is given, it is recommended to reboot Access Server once to restart ObexSender and other applications connected to the iWRAP server(s).

Note: If the operation is successful, you get one Can't open baseband message with Access Server model 2293 and three messages with the 2291 model.


3.2.7. BTCLI - iWRAP Command Line Interface Utility

You can send commands to an iWRAP server by using the btcli application.

Usage:

btcli [options] command

To see the command options, enter the btcli --help command.

The specified command is sent to an Access Server iWRAP server (the first server at port 10101 by default) and all replies are echoed to the standard output. The application waits and prints the replies for a certain amount of time (10 seconds by default) and exits.

The iWRAP commands are described in Chapter 7.


3.2.8. serialbluetooth

It is also possible to control the first iWRAP server (at port 10101) through RS-232 with the serialbluetooth application.

Usage:

serialbluetooth [options]

To see the command options, enter the serialbluetooth --help command.

Basically, serialbluetooth takes commands from a serial port and forwards them to the iWRAP server. All the commands available through iWRAP are also available through serial port.

There are two exceptions:

  1. After making an outgoing RFCOMM data call, all input from the serial port is forwarded to the data socket, not to the control socket. To close the data socket, you have to write +++ with a 200ms pause before each character. It is not possible to have two concurrent RFCOMM calls.

  2. All incoming RFCOMM calls are answered automatically. Again, to close the data socket, write +++ as with the outgoing call.


3.3. Compact Flash Cards

Access Server functionality can be extended by using GSM/GPRS, Wi-Fi and GPS Compact Flash cards. The supported Compact Flash cards are listed in Appendix D.


3.3.1. Compact Flash GPRS Cards

The operating system automatically identifies the Compact Flash GPRS card when it is inserted. Access Server can use the GPRS card to connect to the GPRS network, or to act as an SMS gateway to send and receive SMS messages.

You can enable the GPRS mode and configure its settings, such as the SIM card's PIN code, by using the setup application or its WWW interface. For more information, see Section 2.4 and documentation for SetupNetwork settingsEnable GPRS interface in Appendix B.

GPRS, when enabled, is by default only turned on when needed. If Access Server can access the Internet (or any desired address) by using the default interface nap, it does not activate and use the GPRS (ppp0) interface.

The simplest way to test the GPRS interface is to configure the default interface nap to use dynamic network configuration (the default) and enable GPRS through the setup application, then to disconnect the Ethernet cable, reboot the device with the management console enabled. After the boot, ping an IP address in the Internet, such as 194.100.31.45 (bluegiga.com).

The first five or so packets are lost, but after that the GPRS connection should be up. To enable the interface automatically, just enter ping -c 20 ip-in-internet to /etc/rc.d/rc.local.

Note: If you also want to use the Ethernet connection, you must remove it from the default interface (nap) bridge and configure its network settings individually using the setup application while keeping the default interface network settings in their default (dynamic) state.

Using WRAP SMS Gateway Server is documented in Section 3.5.3.

If needed for some special use, the Compact Flash GPRS card can also be accessed directly from /dev/ttyS0, a device file which exists if the GPRS card is successfully initialized.


3.3.2. Compact Flash GPS Card

The operating system automatically identifies the Compact Flash GPS card when it is inserted. At that time, the device file /dev/ttyS0 is created and the GPS card can be accessed by using that device with the serial port settings the GPS card uses.

The supported Compact Flash cards are listed in Appendix D.


3.3.3. Compact Flash Wi-Fi Cards

Access Server supports Prism II/III based CF Wi-Fi cards. The supported Compact Flash cards are listed in Appendix D.

By default, Access Server notices when a supported Wi-Fi card is inserted and tries to use it in the client mode, without encryption. So, if there is an open Wi-Fi Access Point in range, Access Server will automatically connect to it.

To configure Wi-Fi to the Access Point mode, or to change other Wi-Fi settings, use the setup application or its WWW interface at SetupNetwork settingsWi-Fi.

Note: Older Compact Flash cards with firmware version 1.4.2 do not work in the Access Point mode. Instead, you will see an error message in the system log (/var/log/messages, viewable at SetupAdvancedSystem InformationShow system log file).

A standard set of command line wireless utilities is provided to fine-tune your Wi-Fi configuration:

  • iwconfig

  • iwlist

  • iwpriv

For more information on these utilities, see: http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html


3.4. USB Memory Dongles and Compact Flash Memory Cards

Access Server's persistent memory storage can be extended by using an USB memory dongle or a Compact Flash memory card. These are also used by the Access Server Remote Management System (see Section 3.5.5) - each time a dongle or memory card is inserted, it is automatically mounted, and scanned for management packets, which are processed and unmounted.

To use the USB dongle or Compact Flash memory card for your own applications, the memory must be mounted manually by using command:


      [root@wrap /]$ mount -t vfat device /mnt/usb
    

The device parameter is a path to the USB dongle or Compact Flash memory card filesystem device. For the first dongle inserted after a reboot, it is /dev/sda1 if the dongle is partitioned (which often is the case) and /dev/sda if the dongle has no partition table. The first Compact Flash memory card is typically at /dev/hda1, correspondingly. If you have used several dongles after reboot, new device file names are created: /dev/sdb1 for the second one, /dev/sdc1 for the third one, and so on. In the case of memory cards, naming is similar, that is, the second one gets device file name /dev/hdb1.

Note: Always remember to unmount the memory dongle or memory card with command:


        [root@wrap /]$ umount /mnt/usb
      

3.5. Servers

Access Server server applications are started automatically at system power-up or when an iWRAP server or the Internet services daemon needs them. The servers and their purposes are described in Table 3-2.

Table 3-2. Access Server Servers

ServerDescription
bluetoothAccess Server iWRAP Server, which is described in detail in Chapter 7.
finderWRAP Finder Service.
obexsenderWRAP ObexSender server.
smsgwWRAP SMS gateway server, which is described in detail in Section 3.5.3. Notice that this server is disabled by default. Use the setup application or the chkconfig smsgw on command to enable it.
watchdogWRAP user level watchdog.
wpkgdWRAP remote management system daemon.
crondA daemon to execute scheduled commands. This server is configurable through the /var/spool/cron/crontabs/root file or the crontab command in the same way as any Linux crond.
ftpdInternet File Transfer Protocol Server. You can configure this server with the setup application. Notice that this server is disabled by default. Use the WWW interface of the setup application or the chkconfig ftpd on command to enable it.
udhcpdThis server is a DHCP daemon for providing automatic network configuration for clients in the network. Notice that, by default, this server is only enabled for the gn interface, used by Bluetooth PAN Generic Networking profile.
udhcpcdDHCP client daemon for automatic network configuration.
inetdInternet services daemon. Notice that this server is disabled by default. Use the setup application or the chkconfig inetd on command to enable it.
httpdWeb server, which is described in detail in Section 3.5.7.
pppdPoint to Point Protocol daemon. iWRAP server uses this server. This server can be used manually over the user serial port (/dev/ttyAT1).
snmpdSNMP daemon. This server is available as a separate installation packet.
sshdSSH daemon.
syslogdSystem logging daemon. This server can be configured by using the setup application.
telnetdTelnet protocol server. Notice that this server is disabled by default. Use the setup application or the chkconfig telnetd on command to enable it.
zcipZero configuration networking service.
ntpdNetwork Time Protocol (NTP) daemon.

3.5.1. Finder

The Finder service is a small service, which listens for UDP broadcast queries from Access Server Finder applications and responses to those queries with identification information (IP address, model, serial number, etc.) about Access Server.

The finder command can be used to query Finder service information from Access Servers in the network. With no parameters, finder sends the query using the broadcast address of the default interface (nap). Broadcasting to networks of other interfaces can be done with --interface parameter, such as the zero configuration interface nap:9in the following example:


        [root@wrap root]$ finder --interface nap:9
        Access Server 2291 (S/N: 0402110112) (build: 3.1)
        - Hostname: wrap.localdomain
        - IP: 169.254.30.233 (nap:9), 192.168.161.1 (gn)
        - Ethernet MAC: 00:07:80:00:03:ed
        - iWRAP: 10101 00:07:80:80:0b:c3 bt1.2 (W0402110112_1)

        Access Server 2291 (S/N: 0606221029) (build: 3.1)
        - Hostname: wrap.localdomain
        - IP: 169.254.36.138 (nap:9), 192.168.161.1 (gn)
        - Ethernet MAC: 00:07:80:00:0d:44
        - iWRAP: 10101 00:07:80:80:0b:c4 bt1.2 (W0606221029_1)

        [root@wrap root]$
      

3.5.2. ObexSender

The ObexSender application is automatically started in Access Server. Its purpose is to receive business cards (vCards), images, or other files, and analyze their content and send files back selecting them based on configured keywords found.

ObexSender can also make an inquiry for bluetooth devices, and automatically send one or more files to all new devices found.

ObexSender can be configured with the setup application or by editing the /etc/obexsender.conf file (see Section 2.4).

For detailed instructions on using ObexSender, see Chapter 5.


3.5.3. SMS Gateway Server

WRAP SMS Gateway Server supports Nokia 20, Nokia 30, or Wavecom WMOD2 compatible GSM terminals and the supported GSM/GPRS Compact Flash cards for sending and receiving SMS messages. By default, the Compact Flash card is used. The PIN code query of the SIM card at power-up must be disabled.

WRAP SMS Gateway Server is disabled by default. To enable it, use the setup application's WWW interface, as described in section Section 2.4. Enabling is done at SetupApplicationsDefault bootup applicationssmsgw.

WRAP SMS Gateway Server can be configured to use a modem connected to the user serial port with the setup application or its WWW interface by changing the setting at SetupApplicationsSMS gateway settingsModem device to /dev/ttyAT1 from the default /dev/ttyS0.

Note: If you are using the user serial port, ensure you have Bluetooth Serial Port Profile disabled, as they share the same physical user serial port.

Note: To use Nokia terminals, the device must be connected to the user serial port when the server starts up. Also, the terminal must be configured to operate in RS-232/AT command. Nokia terminals are configured with the N20 or N30 Configurator application.

For further information on using smsgw, see the makesms example in Section 6.3.1.


3.5.4. User Level Watchdog

WRAP User Level Watchdog daemon listens on UDP port 4266 for "id timeout" messages. "id" is an ASCII string, without spaces. If "timeout" equals to 0 (zero), the "id" is removed from the list of processes to wait. If "timeout" is greater than 0 (zero), the "id" is added or updated.

When there is no message for "id" received within the "timeout" seconds, the user level watchdog dies and the kernel watchdog reboots Access Server.

The watchdog command can be used to send messages to the watchdog daemon. This is done through command watchdog id timeout. For example, watchdog test 5.


3.5.5. Remote Management

Access Server contains simple tools that provide means for full and secure remote management of the device.

The basic remote management can be performed using the WWW Setup interface, SSH command line access, and SCP and SFTP file transfer protocols.

In addition to those, Access Server contains WRAP Remote Management System for transferring management packets over different media to Access Server and automatically sending response packets back.

The management packets (*.wpk) are automatically processed when they are transferred to the autoinstall directory in Access Server (/tmp/obex by default, but configurable with the setup application or WWW interface at SetupApplicationswpkgd settings). The easiest way to transfer a management packet to this directory is to upload it from WWW Setup at SetupAdvanced settingsUpload a software update.


3.5.5.1. Overview

WRAP Remote Management System top level architecture is shown in Figure 3-2.

Figure 3-2. WRAP Remote Management Architecture

A management action is performed using the following procedure:

  1. A customer system prepares the management packet (*.wpk).

  2. The management packet is delivered to Access Server, to the packaging daemon's inbox directory. You can currently use Bluetooth, SCP, SFTP and plain FTP to do this. The packet can also be transmitted using a USB memory dongle, Compact Flash memory card or through the WWW Setup interface.

  3. The Access Server packaging daemon processes the management packet, possibly generating a reply packet.

  4. (Optional) The reply packet is delivered to the customer system.


3.5.5.2. Management Packet Format

  • The package name must be of format name.wpk, where "name" can be user defined.

  • Package must be a tar archive that is compressed with gzip (such as files named *.tar.gz or *.tgz).

  • The package must contain a package information file called wpkg.pif in the package root (the file contents are described later), otherwise the built-in defaults for wpkg.pif are used.

  • All other files, if any exist, should be data files, scripts or executables required for the management operation.


3.5.5.3. Management Packet Information File Format

The management packet information file (wpkg.pif) consists of tags and their data, described here:

%wpkg-version: 2

Contains information for version checking. 2 is currently the only supported version. It is also the default value.

%wpkg-prepare: [command line[s]]

One or more commands (all commands are lines until the next tag is interpreted as a command line) to execute. Commands may contain parameters, redirections and job control as well.

The built-in default value for this is /usr/bin/dpkg -i *.deb || echo ERROR: Installation failed.. This enables the special case of creating .wpk packets from .deb packets simply with tar czf foo.wpk foo.deb. (wpkg.pif is not needed in this special case).

%wpkg-reply: method

This value indicates where the generated reply packet is sent. By default, it is sent to where it came from. Possible values are:

  • default

  • file:///path/filename

  • scp://remote:file

  • objp://bdaddr/

  • none

%wpkg-format: type

This value indicates what kind of a reply packet will be generated. Possible values are:

  • ascii (this is the default value, everything echoed by the prepare-section will be sent).

  • tgz (all files in the current directory will be sent).

  • vcf (same as ascii, but assume it is a vCard).

  • vmg (same as ascii, but assume it is a vMessage).

  • vnt (same as ascii, but assume it is a vNote).

  • vcs (same as ascii, but assume it is a vCalendar).

  • html (same as ascii, but assume it is HTML).

%wpkg-auth: auth

Optional authentication string required by wpkgd.


3.5.5.4. Management Operation Example: Hello World

See below for the simplest example of wpkg.pif:


          %wpkg-version: 2
          %wpkg-prepare:
          echo Hello world
        

This will generate a reply packet containing text "Hello world". You can generate the wpk file simply by giving the command tar czf hello.wpk wpkg.pif.


3.5.5.5. Management Operation Example: Software Update

See below for a more complex example of wpkg.pif:


          %wpkg-version: 2
          %wpkg-prepare:
          FOO=`pwd`
          cd /
          tar xzf ${FOO}/files.tar.gz
          echo Done.
        

This example will extract files from the included files.tar.gz file. You can generate the wpk file with command tar czf update.wpk wpkg.pif files.tar.gz.


3.5.5.6. Management Operation Example: IPQUERY

In this example, we build a simple packet that can be used with a Bluetooth enabled phone to retrieve the IP address of an Access Server. File wpkg.pif reads:


          %wpkg-version: 2
          %wpkg-format:  vcf
          %wpkg-prepare:

          ipaddr() {
          echo `ifconfig nap | grep "inet addr" | awk -F [:] \
            \\{print\\$2\\} | awk \\{print\\$1\\}`
          }

          serialno() {
          echo `wrapid | grep Hardware | awk \\{print\\$5\\}`
          }

          echo -e "BEGIN:VCARD\r"
          echo -e "VERSION:2.1\r"
          echo -e "N:`serialno`\r"
          echo -e "TEL:`ipaddr`\r"
          echo -e "URL:`hostname`\r"
          echo -e "END:VCARD\r"
        

This example will send the reply back as a vCard (contact card). Please note that you have to include all required vCard formatting by yourself. You can generate the wpk file simply giving the command tar czf ipquery.wpk wpkg.pif.

To use this example, send the file ipquery.wpk to the inbox of your Bluetooth phone. Check that you have Bluetooth enabled in the phone. Then, from the phone's inbox, send the file ipquery.wpk over Bluetooth to Access Server.


3.5.5.7. Management with USB Memory Dongle or Compact Flash Memory Card

When an USB memory dongle or Compact Flash memory card is inserted, Access Server automatically tries to mount it (using VFAT type). If the mount is successful, Access Server scans the root for *.wpk packets. If a packet is found, the WRAP Package daemon handles it. Optional reply packets are saved back to the root folder (unless otherwise stated in the %wpkg-reply tag).


3.5.6. FTP

If you enable the FTP server, users can use it to log in anonymously to the /tmp/obex directory with download access or as root with password buffy to the root directory with full access. The password and other settings can be changed on Access Server with the setup application or by editing the /etc/ftpd.conf file (see Section 2.4).

Note: Do not enable FTP because it is insecure. Use SSH (SCP or SFTP) instead. A commonly used client with a graphical user interface is, for example, WinSCP (http://winscp.net/).


3.5.7. Web Server

The integrated web server in Access Server supports HTTP/1.0 methods GET and POST, and has light user authentication capabilities. The content can be either static or dynamic - the WWW server is CGI/1.1 compatible.

The web server is always running and the content (http://wrap-ip-address/) is located in the /var/www/html/ directory in Access Server's file system.

The web server is configured to protect the WWW Setup interface with a username and password. The default username and password can be changed as instructed in Section 2.4. For further information about using the web server for your own applications, see the web examples in Section 6.3.1.


3.5.8. SNMP

A separate software update package is available from Bluegiga Techforum (http://www.bluegiga.com/techforum/). This update adds the Net-SNMP suite of applications to Access Server. The current Net-SNMP implementation for Access Server is limited and will be extended in the future. However, it can be used to poll the basic status of Access Server.

Configuration details can be found and altered in configuration file /etc/snmp/snmpd.conf, which is accessible as described in Section 2.4.

For more information about the Net-SNMP suite, see http://net-snmp.sourceforge.net/


3.5.9. OpenVPN

A separate software update package is available from Bluegiga Techforum (http://www.bluegiga.com/techforum/). This update adds the OpenVPN™, a full-featured SSL VPN solution, to Access Server.

For detailed instructions on using OpenVPN with Access Server, see Section 9.4.

For more information about the OpenVPN™, see http://openvpn.net/.


3.5.10. SSH

By default, users can use SSH to log in (or SCP and SFTP to transfer files) as user root with password buffy. The password can be changed on Access Server by using command passwd or with the setup application.


3.5.11. Telnet

If you enable telnet, users can log in over telnet as user root with password buffy. The password can be changed on Access Server using the command passwd or with the setup application.

Note: Do not enable telnet because it is insecure. Use SSH instead.


3.5.12. NTP

The ntpd service uses the standard Network Time Protocol (NTP) to keep Access Server system time automatically in sync using a random selection of eight public stratum 2 (NTP secondary) time servers. The service is also configured to answer NTP requests from other devices.

The NTP server configuration can be altered by editing its configuration file /etc/ntpd.conf.


3.6. Utilities

Access Server is basically a small Linux system. Whether logged in from the management console or with SSH, your shell session starts as the root user in the root directory. After that, you have the option to use most of the standard Linux utilities, briefly listed and described in Table 3-3. Most of the commands have a small built-in usage help that can be seen by executing the command with the -h or --help parameter.

Table 3-3. Access Server Utilities

ApplicationDescription
adduserThis command add user to the system.
arpingThis command pings hosts by ARP requests/replies.
awkPattern scanning and processing language.
b2b_class1WRAP baseband module control script (set basebands to class 1).
b2b_class2WRAP baseband module control script (set basebands to class 2).
b2b_class3WRAP baseband module control script (set basebands to shortest possible range).
basenameStrip directory and suffix from file names.
bashBourne-Again SHell.
btcliWRAP iWRAP Server Command Line Interface utility.
btproxyWRAP iWRAP Proxy for Access Servers (test revision).
bunzip2Decompress bzip2-compressed files.
bzcatDecompress bzip2-compressed files to stdout.
cardctlMonitor and control the state of PCMCIA sockets.
catConcatenate files and print on the standard output.
chatAutomated conversational script with a modem.
chgrpChange group ownership.
chkconfigUpdates and queries runlevel information for system services.
chmod Change file access permissions.
chownChange file owner and group.
chrootRun command or interactive shell with special root directory.
clearClear the terminal screen.
cmpCompare two files.
cpCopy files and directories.
cpioCopy files to and from archives.
crontabMaintain crontab files for individual users.
cutRemove sections from each line of files.
datePrint or set the system date and time. Notice that the date command does not store the date into the battery powered real time clock. Use the hwclock application instead.
ddConvert and copy a file.
deluserDelete a user from the system.
dfReport file system disk space usage.
dfuWRAP baseband module firmware upgrade tool.
dialupWRAP iWRAP helper application.
dirnameStrip non-directory suffix from file name.
dmesgPrints or controls the kernel ring buffer.
dpkgA medium-level package manager for (.deb) packages.
dpkg-debDebian package archive (.deb) manipulation tool.
duEstimate file space usage.
dump_cisRetrieves and parses the Card Information Structures for inserted PCMCIA devices, or optionally, parses CIS information from a file.
dunWRAP iWRAP helper application.
egrepPrint lines matching a pattern.
encode_keychangeProduce the KeyChange string for SNMPv3.
envRun a command in a modified environment.
exprEvaluate expressions.
falseDo nothing, unsuccessfully.
fgrepPrint lines matching pattern.
findSearch for files in a directory hierarchy.
freeDisplay the amount of free and used memory in the system.
ftpInternet file transfer program.
gdbserverRemote server for GDB debugger. Available in a separate software package.
gettyOpens a tty, prompts for a login name, then invokes /bin/login.
grepPrint lines matching a pattern.
gunzipExpand gzip compressed files.
gzipCompress files into gzip format.
headOutput the first part of files.
hexdumpA filter which displays the specified files, or the standard input, if no files are specified, in a user specified format.
hostidPrint out a unique 32-bit identifier for the machine (not yet implemented).
hostnameShow or set the system's host name.
hwclockQuery and set the hardware clock.
idPrint information for username or current user.
ide_infoIDE device information.
ifconfigConfigure a network interface.
ifportSelect the transceiver type for a network interface.
ifuserChecks to see if any of the listed hosts or network addresses are routed through the specified interface.
insmodLoads the specified kernel modules into the kernel.
ipTCP/IP interface configuration and routing utility.
iptables, ip6tablesIP packet filter administration.
killTerminate a program.
killall Kill processes by name.
lnMake links between files.
loggerMake entries into the system log.
loginSign on.
lsList directory contents.
lsmodList loaded modules.
md5sumCompute and check MD5 message digest.
mkdirMake directories.
mknodMake block or character special files.
mktempMake a temporary file name (unique).
modprobeHigh level handling of loadable modules.
moreFile perusal filter for crt viewing.
mountMount a file system.
mvMove (rename) files.
net-snmp-configNet-SNMP tool.
nslookupQueries the nameserver for IP address of given host.
ntpdNetwork Time Protocol NTP daemon.
obexbrowserThe WRAP obexbrowser. A command line OBEX client interface.
obexgetThe WRAP OBEX tool for retrieving a file from a remote device with ObjP/FTP support.
obexputThe WRAP OBEX tool for sending a file to a remote device with ObjP/FTP support.
pack_cisConvert a text description of a PCMCIA Card Information Structure (CIS) to its packed binary representation.
passwdUpdate a user's authentication token(s).
picocomMinimal dumb-terminal emulation program. Available in a separate software package.
pidofFind a process ID of a running program.
ping, ping6Send ICMP ECHO_REQUEST packets to network hosts.
psReport process status.
pwdPrint the name of the current/working directory.
rb, rx, rz, sb, sx, szXmodem, Ymodem, Zmodem file receive and send.
rdateGet and possibly set the system date and time from a remote HOST.
rebootReboot the system.
reniceAlter the priority of running processes.
resetResets the screen.
rmRemove files or directories.
rmdirRemove empty directories.
rmmodUnload loadable modules.
routeShow / manipulate the IP routing table.
scpSecure copy (remote file copy program).
scsi_infoSCSI device description tool.
sedA Stream EDitor.
setupThe WRAP Setup Application. See Section 2.4.
sftpSecure file transfer program.
sleepDelay for a specified amount of time.
snmp*Set of standard SNMP command line applications.
sortSort lines of text files.
ssh, sloginOpenSSH SSH client (remote login program).
ssh-keygenSSH authentication key generation, management and conversion.
straceUtility to trace system calls and signals. Available in a separate software package.
stringsDisplay printable strings in binary file.
sttyChange and print terminal line settings.
suRun a shell with substitute user and group IDs.
suloginSingle-user login.
supportinfoOutput collectively all the system status and configuration information.
syncFlush filesystem buffers.
tailOutput the last part of files.
tarTar archiving utility.
tcpdumpUtility for dumping traffic on a network. Available in a separate software package.
telnetUser interface to the TELNET protocol.
testCheck file types and compare values.
timeRun command and display its resource usage information when finished.
topProvides a view to processor activity in real time.
touchChange file timestamps.
trTranslate or delete characters.
tracerouteTrace the route that IP packets take on their way to the host.
trueDo nothing, successfully.
ttyPrint the file name of the terminal connected to standard input.
uartmodeWRAP Uartmode: Change the mode of the user serial port (DTE or DCE).
umountUnmount file systems.
unamePrint system information.
uniqRemove duplicate lines from sorted lines.
unzipList, test, and extract compressed files in a ZIP archive.
uptimeTell how long the system has been running.
usleepSleep some number of microseconds.
uudecodeDecode a file create by uuencode.
uuencodeEncode a binary file.
wcPrint the number of bytes, words, and lines in files.
viA text editor.
wgetA utility to retrieve files from the World Wide Web.
wrapfinderFinds other Access Servers in the network.
wrapidAccess Server identification program. Shows build and hardware configuration information.
whichShows the full path of (shell) commands.
whoamiPrints the user name associated with the current effective user id.
zcatExpand gzip compressed files to the standard output.
zcipZero Configuration Networking application.
xargsBuild and execute command lines from the standard input.

3.7. Real Time Clock

The system clock is read from the battery operated real time clock during boot. The time between the system time and the real time clock is automatically synchronized when the system is rebooted using the reboot command. Synchronizing can also be done using the hwclock --systohc --utc command. Give command hwclock --help for more information about the hwclock utility.


3.8. Time Zone

The default time zone in Access Server is UTC. You can change the timezone by replacing the file /etc/localtime with the correct file from your desktop Linux system (using your /etc/localtime or a desired zone from /usr/share/zoneinfo).


3.9. System Re-Install and Upgrade

Access Server can be re-installed with the latest software version. The latest software updates and instructions are available at http://www.bluegiga.com/techforum/.

Most of the software updates are delivered as a wpk file.

The easiest way to install the latest software version is:

  1. Start Access Server.

  2. Copy the