Saturday, February 5, 2011

RF System developer guide


System operation
The system consists of radio hand terminals, which are used to communicate wireless with the host system via a receiver device using a very efficient communications protocol. The host system can be just a PC or a more complex computer system.

The application software runs by the host system, the handheld appears to it like a wireless keyboard/display/scanner. This eliminates the need for programming the handheld units, thus making software development and updating extremely easy and allowing software to be flexible in application.

Starting transaction

The user starts a transaction by using the Hand terminal keyboard to make an entry, or by reading a barcode. the hand terminal sends 3 times between 1 second

How many hand terminals can be used in same system?

In theory, up to 65536 hand terminals can communicate with the host. But in practice, it depends a lot on the radio traffic. In theory, one transaction takes max of 300 ms on the air when using in RF600 system.

In the RF650 system the backend software can receive 21 transactions per second if the backend system is multithreaded and the response time is quick enough (<50ms).

Host application
The backend software can be executed in which ever computer and operating system in use. The RF-family hand terminals are not equipment and/or operating system dependent.After the hand terminal begins the transaction by sending a data, it always waits for a response from the backend software. The user can not operate with the hand terminal before the response is received.

 Host application security

1. Always use different channel than the other system uses. The co-operation with the other systems operator has to be made so that there are no same channels used in both systems. Also it is strongly recommended that the consecutive channels are not used.

2. Do not set the backend software so that it can communicate with the unauthorized hand terminals. The backend system has to keep a log of the hand terminals commID which have right to access the system. If the unauthorized hand terminal is trying to communicate with the server, the queries has to be rejected and NO information to the hand held has to be transmited.
In the backend system, the DataArrived –event at the PLServer event handler should always first authorize the hand terminal before the requests are transmitted any further.

3. Even if the hand terminal is authorized, User login and password authorization scheme has to be used to confirm that the user of the hand terminal has access to the backend software

Radio link security

The system developer has to estimate the importance of the secured radio pathway. Often the transferred information is not so confidential that data encryption is really needed.

The RF600 –devices are operated with 434MHz radio.

The RF600 hand terminals include a data encryption -feature. The data is encrypted by using a 24-bit encryption key. The same encryption key has to be entered in both hand terminal and the base station in order them to get work together.

The RF650 Bluetooth radio is secure enough to transfer confidential data

Checklist for good quality backend software developing

  • Keep response times as fast as possible
  • Ignore the requests from unidentified hand terminals
  • Always answer to requests (except those from the unidentified hand terminals)
  • Validate the data from the hand terminal and responce to that
  • Develop application as multithread type.
  • Do not resend the UI-control if the hand terminal has it already.
  • Use a different radio channel than in adjacent companies.
  • Estimate the number of base stations needed. If the operating area of the hand terminals can not be covered with one base station, the number of base stations needs to be increased. Also the base stations have to be connected to the LAN with the Device server.
 

Single thread application


Multi threaded application


The multithreaded application is recommended to use if there are several hand terminals in the system and the use of them is intensive.


Drivers

The driver software preprocesses the data from the hand terminals. The base station has already checked the CRC and the origin of the data before relaying it to the software driver.
Functions of the driver:
• Relays the data to the application
• Resends the data
• Blocks similar consecutive messages to the application.
• In a multiple base station system driver sends the response from the host thru the best received signal strength base station.

PLServer

Nordic ID provides the driver for the Windows environment. The PLServer is a Windows ActiveX control (PLServer.ocx), which controls the data communication between the base station and the HOST application.





The PLServer makes HOST system software development easy by doing all the dirty work for you. All you have to do is to figure out the entry points and how to use them.

Drivers for non-windows environment
If the backend software is executed in the non-windows environments (UNIX, Linux, AS400) the driver software must be developed to the environment

it is possible to create a backend system where the business logic is executed in non-windows environment e.g. AS400 or UNIX. In this case the PLServer runs in the windows-based computer and communicates in a network with an actual backend system.



 
The advantage of this procedure is that there is no need for developing drivers to the non-windows operating system. So the actual application developing time is faster.






Building development environment

System requirements
System requirements for the application developing:
• RF-family hand terminal (RF600 or RF650)
• RF600 Base Station / Bluetooth dongle (RF650)
• PC with Windows OS (W2k or XP)
• Serial port connection for the RF600 Base Station
• Visual Studio .NET 2003 or later (optional)
• ”RF-Family host programming tutorial” CD
• RF-family hand terminal (RF600 or RF650)
• RF600 base station or Bluetooth dongle (RF650)
• Windows PC (w2k or XP)
• Physical Serial port (RS232) for the RF600 base station
• Visual Studio .NET 2003 or later (optional)
• ”RF-Family host programming tutorial” CD


Sample program installation

Insert “RF-Family host programming tutorial” CD in to the disk drive and wait until setup starts up.
Default directory for the sample-files:
Program files à NordicID à RF-family à Samples
The example software can be launched at:
Startà Programsà NordicIDà RF-familyàSamples
Setup  registers   the PLServer automatically.

Installing hardware

the hand terminal and base station to install the hardware.

Test your hardware

1. Start ”Hello world” application from StartàProgramsàNordicIDàRF-familyàSamples
2. Select correct COM port for the RF600 base station.
3. Press OK- or any F-key from the hand terminal.
4. “Hello World” text should appear in to the hand terminal screen.
5. “Hello World” text disappears when pressing any key from the hand terminal.






 
Possible reasons for failure:
• No batteries in the hand terminal
• No serial cable connected between the base station and the PC COM port.
• No power in the base station
• The Base station and the hand terminal are in different channel
• The base station has been connected to wrong COM port
• The COM port is already used by another device.



No comments:

Post a Comment