User Tools

Site Tools


intellibox-basic-en

IntelliBox Basic, II and USB-LocoNet Interface

ContentCommand StationsUhlenbrock

  • IntelliBox | IntelliBox Basic, Intellibox II and USB-LocoNet Interface (ULNI)



Product Overview

The IntelliBox Basic, II and USB-LocoNet Interface support the LocoNet protocol over USB.

IB-II USB-LocoNet
Interface 63120
IB-Basic IB-Com
ibii.jpgib.jpgibcom.jpg
See also USB-LocoNet-Interface


Introduction

  • Programming of locomotive decoders is not conform to the freely available documentation LocoNet Personal Edition.
  • There is no publicly available documentation for the advanced programming protocol used by Uhlenbrock.

Since revision 2118 Rocrail supports the Uhlenbrock LocoNet Interface (ULNI) with software flow control.

:!: Install the interface driver first! :!:

  • Under Windows, the driver for the interface (USBtoUARTBridge) supplied with the unit must be installed before connecting to the computer.
  • Under MacOS the driver from the manufacturer Silicon Labs must be downloaded and installed (see below).
  • Common Linux distributions already include the driver, so it does not need to be installed.
  • For more information on the interface, see Hardware interface at the bottom of this page.

In order to display loco velocity changes by means of the IB throttles correctly in Rocview option Allow zero throttleID has to be activated.


Setting up Rocrail

From the menu File → Rocrail properties… is selected and in the following dialogue tab Controller is selected. If the Intellibox should be the only command station other command stations possibly listed have to be deleted first. Afterwards from the drop down field New the command station loconet is selected and subsequently added by pressing Add. The command station NEW - loconet is highlighted and Properties is pressed. The dialogue LocoNet Interface opens:


Interface


On tab Interface the ID NEW is overwritten by an appropriate name, e. g. IB in the example. The computer interface determined beforehand is entered into the field Device, e. g. com1 in the example. The baud rate is selected according to the one of the device (standard: 115200). The Type has to be ULNI.

Device

Rocrail determine under Windows the available serial ports currently only to Com10.
If the LocoNet Com port in the dropdown list "device" is missing, the actually assigned com port must be read up in the Windows system control and be entered manually into the field "device".


Options


Set the CS Type: intellibox or ibcom for functions support > 8.
On tab Options there are no adjustments available for the IB. The options tab is only for Digitrax.

Note:
For the IBCom, the IB-Basic and the IB II, the value "ibcom" in the options-dialog has to be set. Otherwise, programming of decoders in Rocrail will not work (Programming Track).


Details


Switch Time

The Switch Time should be set to the maximum switch time of the IB (see also the description of Switch acknowledge below).

Slot Purge Time

Locomotives not in use will be purged from the refresh cycle after a time specified in the Intellibox (default two minutes). The value entered into the field Slot Purge time on tab Details should be equal or slightly lower than the purge time of the Intellibox, e.g. 110 seconds.

Note: If the Slot Purge time is set to zero, the IB is supposed not to purge! This will lead to unpredictable situations: Rocrail will not check with the IB if the known slot is purged.

Very small purge time values will cause unnecessary traffic for checking the slots.
Locos that were controlled by Rocrail and were afterwards parked remain active if the option Slot Ping is active. If such a loco is selected on the Intellibox a warning will be shown telling the loco is already under control.

Slot Ping

The option Slot Ping can be used to inhibit purging by pinging the slot right before it would be purged.

Wait for slot data

This value can be increased step by step up to max. 128 if the following error occurs:

Could not get slot for loco addr=xx

Default Rocrail will read up to 16 packets until it give up waiting for a free slot.

Echo timeout

The default time is 100 x 10ms to wait for the echo of a command.
Under some conditions, this may be too short and can be gradually increased to a maximum of 1000 x 10ms.

Check switch acknowledge

The option "Check switch acknowledge" can be enabled to prevent sending a switch command to the IB while it is busy executing a previous switch command.

Note: If Check switch acknowledge is enabled the Switch Time (see above) has to be set to exactly the maximum switch time value of the IB.
Moreover, minimum and maximum switch times of the IB should be set to identical values, e.g. 200 or 250 milliseconds both.
Genearally this option can and should be disabled.

Retries/Sleep

Number of attempts to set the switch and receive an acknowledgement plus pause between retries.
It is recommended to set the sleep time to higher values (250ms maximum).

Slotserver

The Slot Server must be disabled! This will conflict with the IB and could lead to a Rocrail server crash.

Query address

The standard query address for getting the current sensor state is 1017.
For Uhlenbrock sensor modules this must be set to 1016.


Addressing and Timing

See Addressing and Timing on how to address accessory decoders and how to set up switch and route switch times etc.


Hardware interface

Windows

The installation is carried out as described in the operating instructions enclosed with the unit.
:!: Important: First install the driver, then connect the unit to the computer via USB! The driver can also be found on the Uhlenbrock homepage or may be downloaded directly from the manufacturer Silicon Labs (Silabs): https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers.

Afterwards determine under which com port the device is addressed using the Windows device manager. Often it is listed as com3:.


Debian Linux

Under Debian, the interface is recognised as CP2102/CP2109 UART Bridge Controller [CP210x family]. To check, start the computer without the device plugged in. After the computer has started, connect the device via USB and open a terminal.

The command

 $ lsusb

executed in the terminal results in the following output (example):

Bus 007 Device 004: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP2102/CP2109 UART Bridge Controller [CP210x family]

More detailed information is provided by

 $ sudo dmesg|grep usb*

Debian 10 recognises the interface and assigns it to the device /dev/ttyUSBx. In this example /dev/ttyUSB0 (last line of the output):

usb 7-2: New USB device found, idVendor=10c4, idProduct=ea60, bcdDevice= 1.00
usb 7-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 7-2: Product: CP2102 USB to UART Bridge Controller
usb 7-2: Manufacturer: Silicon Labs
usb 7-2: SerialNumber: 0001
usb 7-2: cp210x converter now attached to ttyUSB0

With other distributions the interface identifier could be different, e.g. /dev/ttyAMAx, so for example /dev/ttyAMA0.

:!: Note that the interface is usually assigned to the dialout group.

$ ls -l /dev/ttyUSB*
crw-rw---- 1 root dialout 188, 0 Apr 11 00:01 /dev/ttyUSB0

Users who want to use the interface must be added to the dialout group. See Serial device user access (Linux).


Mac OS X

The Mac OS X needs to install an extra driver for this interface which can be downloaded from Silicon Labs:
https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers

After reboot the Uhlenbrock interface is recognized as:

ls -l /dev/tty*
crw-rw-rw-  1 root  wheel    9,   2  8 Aug 20:57 /dev/tty.SLAB_USBtoUART


USB-LocoNet-Interface 63 120

If this adapter is used with an older Intellibox or TwinCenter (devices without USB connection) it may be necessary to register the adapter by once calling the menu of the command station
Basic SettingsLocoNet Prog.Art.-Nr.: <63120>Modul adr: <1>LNCV: 0= 1 and confirm these values.
Values in angle brackets <> have to be entered as shown.


Special Options

IB Basic SO14

Maximum Switch time; default setting is 5 secs. Using the OpenDCC signaldecoder and loconet, set the value to 0 to get a sufficient fast response of the signal patterns.


Reset the device

This step is only needed if the device has been reprogrammed.

With the LocoNet type ULNI the factory settings of the interface must be used:

LNCV 2 = 4 115200 Baudrate
LNCV 4 = 0 LocoNet Direct Mode OFF

uso-menu.jpguso-dlg.jpg


:!: LocoNet direct mode has to be switched off!
Since the software handshake itself requires part of the bandwidth available the highest possible baud rate (115200) should be used in order not to slow down communication speed.


Known issues

Throttle speed is ignored

In order to display loco velocity changes by means of the IB throttles correctly in Rocview option Allow zero throttleID has to be activated.

Unknown LocoNet Messages

Unexpected in LocoNet communication as is published in the LocoNet Personal Edition 1.0 are following:

undocumented message: start=0xF8
undocumented message: start=0xFC
undocumented message: start=0xF6
undocumented message: start=0xF2
undocumented message: start=0x93

0xF* OPCodes are undefined.
0x9* OPCodes are undefined; Related to the S88-LocoNet interface.

Refreshing packets DCC/MM

The IB-Com does NOT refresh the loco commands on the track in case of mixed DCC and Motorola type of decoders.
This will result in a loco stop after a bad contact, depending of decoder manufacturer, and not starting for a long time until a slot ping is issued by Rocrail.
This problem cannot be solved without some advice from the manufacturer Uhlenbrock. Some undocumented LocoNet commands seems to solve this behaviour.

intellibox-basic-en.txt · Last modified: 2021/04/13 16:57 by besra