Previous Topic

Next Topic

Book Contents

Book Index

Setup Guide

Prerequisites

Installing Operating System Level Drivers

To recognize your DECT controller the Operating System of your hardware platform needs an appropriate driver.

For Windows

If you are using Windows on the hardware platform for your DECT controller, manually install the driver found in the /runtime/osgi/bin/tools/dect/win.usb.driver/usb-dect-serial.inf using Windows Device Manager. Note that you need to have the DECT controller plugged to your hardware in order to install the driver.

For Windows 8 and Windows 10, you will have to install the driver after disabling driver signature enforcement.

For Linux

If you are using Linux on the hardware platform for your DECT controller, you only need support for CDC ACM devices, which is normally included in the Linux kernel, so you do not need to install any drivers.

Starting the Native Remote API Component

To be able to connect to and communicate with a DECT controller (Base Station) plugged to a Gateway the Native Remote API Component should be running on this Gateway.

Using the Peripheral Module

If the DECT Module is installed on the same physical device (plug computer or similar) in which the DECT controller is plugged, you can use the Peripheral Module for automated launch of the Native Remote API Component when the DECT controller is plugged. Similarly, the Peripheral Module automatically terminates the operation of the Native Remote API Component when the DECT controller is unplugged.

Manually

If you do not want to use the Peripheral Module or the DECT controller is plugged to a Gateway different from the one running the DECT Module you will need to start the Native Remote API Component manually. If you want to manage multiple Base Stations from a single platform running the DECT module you will need to start a Native Remote API Component for every Base Station and configure it to connect to the respective serial port used by the controller.

#!/bin/sh

LD_LIBRARY_PATH="$LIBRARY_PATH:`pwd`"

export LD_LIBRARY_PATH

./tcpjsonrpc -port 6666 -com 0 -usb -loglevel 4

The Native Remote API Component requires the DECT DSPG API, which is provided by the library libcmbs.so (for Linux) or cmbs.dll (for Windows).

You can check if the process for the Native Remote API Component (which appears as "tcpjsonrpc") has started successfully.

On Windows execute the command taskmgr.exe to open the Task Manager.

On Linux execute the command ps -a | grep tcpjsonrpc to display a list of running processes.

Installation

Automated Installation

The installation of the DECT Module can be performed through execution of a Kit Manager installation script. The DECT Module provides two such scripts located in the bin/pscripts folder:

DECT DA Support: installs the DECT Module along with additional bundles providing integration with the Functional Item Manager(FIM).

To install the DECT Module using one of the scripts above execute the console command from the kitman command group

kitman.install "<script name>"

where <script name> is the name of the script to be installed. The kitman command group is exported by the Util Kit Manager Bundle. You may also write your own install scripts for easier installation (and start) of a certain set of bundles. The required bundles for the DECT Module are listed in the Manual Installation section.

Manual Installation

If you want to install the DECT Module without using one of the provided Kit Manager installation scripts follow the steps below:

  1. Install the Peripheral Module (if you want to benefit from its automatic driver configuration feature).
  2. Install the DA Module (if you want to operate with the DECT network through the abstraction layer provided by Device Access).
  3. Install the Working with web console (if you need a user friendly web interface and the Web Console has not been installed, for example, by the script for installation of the FIM Module). This is done as part of the installation of the FIM Module if you are using for this purpose the "Functional Item Management Web Admin" script found in the fim.web.txt file.
  4. From the DECT Module install and start the bundles as follows:
    1. com.prosyst.mbs.dect.driver.api.jar bundle
    2. com.prosyst.mbs.dect.jsonrpc.client.jar bundle
    3. com.prosyst.mbs.dect.driver.cmbs-natives.linux_x86_generic.jar bundle - if you are using a 32 bit Linux operating system. This is fragment bundle and only needs to be installed without starting it.
    4. com.prosyst.mbs.dect.driver.cmbs-natives.linux_x86_64_generic.jar bundle - if you are using a 64 bit Linux operating system. This is fragment bundle and only needs to be installed without starting it.
    5. com.prosyst.mbs.dect.driver.cmbs-natives.win_x86.jar bundle - if you are using a 32 bit Windows operating system. This is fragment bundle and only needs to be installed without starting it.
    6. com.prosyst.mbs.dect.driver.cmbs-natives.win_x86_64.jar bundle - if you are using a 64 bit Windows operating system. This is fragment bundle and only needs to be installed without starting it.
    7. com.prosyst.mbs.dect.driver.cmbs.jar bundle
    8. com.prosyst.mbs.dect.driver.core.jar bundle
    9. com.prosyst.mbs.dect.driver.commands.jar bundle
    10. com.prosyst.mbs.dect.da.items.api.jar bundle
    11. com.prosyst.mbs.dect.da.hdm.api.jar bundle
    12. com.prosyst.mbs.dect.da.hdm.adapter.jar bundle

To install and start a bundle execute the console command from the fw command group:

install -s <bundle_name>.jar

Configuration

To be able to connect to and communicate with a DECT controller (Base Station) plugged to a Gateway you need to have your DECT module properly configured, that is, to provide the host and port on which the Native Remote API Component (which connects to the DECT controller) is listening for TCP connection requests. The DECT Driver Bundle registers for this purpose a Managed Service Factory with name DECT Configuration and FPID dect.driver.pid To connect to a controller plugged to the Gateway create one configuration from this Managed Service Factory. Its properties should be populated as described in the table below.

If the Native Remote API component and the OSGi Runtime are running on the same physical device (computer), and you are using the Peripheral Module, after plugging the DECT controller to the hardware, the DECT Driver Bundle is automatically configured and you can proceed with setting up your DECT home network. In this case the default values of the configuration properties server.address and server.port are used.

If you are not using the Peripheral Module you can use console commands, or the Web Console to manually configure DECT Module. For this purpose proceed with the steps below:

  1. Plug the DECT Controller in a USB port on the hardware running the Native Remote API component.
  2. Check which serial port the DECT Controller is using. The name of a serial port in Windows is COM# and in Linux - ttyACM# where # is the number of the serial port. The procedure for determining the serial port used varies for the different operating systems and their variations.
  3. Populate the com.port property of the configuration DECT USB Driver Configuration (with PID mbs.dect.usb.pid) with the name of the serial port.
  4. Popilate the usb.uid property of the configuration DECT USB Driver Configuration (with PID mbs.dect.usb.pid) with some string, for example, usb.dect.1.

    If the Native Remote API component and the OSGi Runtime are running on different physical devices (computers), you can use console commands, or the Web Console to manually configure DECT Module. For this purpose proceed with the steps below:

  5. Create a new Managed Service Factory DECT Configuration (with FPID dect.driver.pid).
  6. In the respective configuration of the Managed Service Factory DECT Configuration populate the controllerId property with some string.
  7. Check the host and port name of the hardware on which the Native Remote API component is listening for requests from the DECT module.
  8. In the respective configuration of the Managed Service Factory DECT Configuration populate the server.address property with the hostname and the server.port with the port name from point 3.

For the DECT module to be properly configured it is necessary to have the DECT controller plugged in the hardware on which the Native Remote API Component is running.

System Properties

The DECT module uses the following system properties which define how the module operate.

Property

Type

Default Value

Description

mbs.dect.driver.debug

boolean

false

If set to true, the debug level messages in dect.driver bundle will be stored through the Log Service.

mbs.dect.driver.console

boolean

false

If set to true, the log information messages in dect.driver bundle will be printed in the runtime console.

mbs.dect.driver.pingTimeout

integer

60

Specifies the interval of pings between DECT driver and RPC server

mbs.dect.adapter.debug

boolean

false

If set to true, the debug level messages in dect.adapter bundle will be stored through the Log Service.

mbs.dect.adapter.console

boolean

false

If set to true, the log information messages in dect.adapter bundle will be printed in the runtime console.

For information on how to set them, refer to Changing Settings.

Configuration Properties

Name

PID

Property

Type

Default Value

Description

Controller ID

dect.driver.pid

controllerId

String

-

Controller Id to distinguish one controller from another.

Server Address

dect.driver.pid

server.address

String

localhost

Defines the server address where the DECT Remote API Component is running.

Server Port

dect.driver.pid

server.port

int

6666

Defines the server port on which the DECT Remote API Component is listening for TCP connection requests.

Server Timeout

dect.driver.pid

serverTimeout

int

20

Defines the timeout in seconds for blocking operations when waiting for response from the server.

Link Establishment Timeout

dect.driver.pid

dect.driver.pid

int

30

Defines the timeout in seconds to wait when establishing a link between the DECT base and a device.

 

Link Close Timeout

dect.driver.pid

linkCloseTimeout

int

60

Defines the timeout in seconds after which if there are no active transfers the link between the DECT base and the device will be closed.

 

Response Timeout

dect.driver.pid

rspTimeout

int

20000

Defines the time in milliseconds to wait for response from the server when executing blocking operations.

 

Wake Up Timeout

dect.driver.pid

wakeUpTimeout

int

30000

Defines the time in milliseconds for waiting for a device to wake up or to respond that it is in range.

 

Device Message Timeout

dect.driver.pid

messageTimeout

int

60

Defines the timeout in seconds while waiting for a data message from a device

 

Enable Ping

dect.driver.pid

ping

boolean

true

If true the DECT driver pings the RPC server on a regular interval specified by the mbs.dect.driver.pingTimeout system property. When the mbs.dect.driver.pingTimeout property is missing, the interval is set to 60 seconds.

Serial Port

dect.driver.pid

com.port

String

-

The serial port used by the plugged DECT controller.

Device UID

dect.driver.pid

usb.uid

String

-

The unique device ID of the plugged DECT controller.

For more information on how to change System Properties or Configuration Properties, please consult the System Properties & Configurations section.

Troubleshooting

No troubleshooting information is available for this module.