Jindra Fučík

Modul USB rozhraní zpětného hlášení typu HSI88

USB module of feedback interface type HSI88

Při mém hraní si s různými počítačovými rozhraními pro provoz DCC kolejiště pokaždé narážím na velice nekomfortní a nepraktická řešení rozhraní komunikujících po sériové lince a pouze zmodernizovaná "přilepením" převodníku USB<->Sériový port. Tato řešení považuji za morálně velice zastaralá. Docela mne zaráží, když výrobce použije převodník FTDI za cenu 2x větší, než je cena zbytku zařízení. Také manipulace s různými verzemi ovladačů je celkem nekomfortní a nepraktická.
Jako mentální cvičení jsem si vytvořil jednoduché rozhraní založené na protokolu HSI-88 firmy Littfinski DatenTechnik (LDT).
Toto rozhraní umožňuje připojení až tří větví modulů zpětného hlášení S88 firmy Märklin. K rozhraní lze připojit celkem až 31 modulů (Standardní velikost modulu je 16 vstupů) a sledovat tak až 496 vstupů zpětného hlášení. Moduly lze libovolně rozložit mezi jednotlivé větve, takže lze připojit všech 31 modulů na jednu větev a nebo připojit na dvě větve po deseti a na třetí jedenáct modulů.
Jednotlivé větve jsou označené jako "Levá" (Left), "Prostřední" (Middle) a "Pravá" (Right).
I'm usually finding still same constructions of computer interfaces for DCC train layouts. Interfaces using old fashion non comfortable solutions based on serial line communication only upgraded by sticking USB<->Serial converter. I understand this solution as old fashion. Especially I'm surprised by using FTDI converters; they are more expensive than rest of device. Also manipulation with various vendor depend proprietary drivers is non comfortable and non practical.
I created, as a mental training, simple interface based on HSI-88 protocol by Littfinski DatenTechnik (LDT).
This interface allow to connect up to 3 lines of feedback modules S88 designed by Märklin. It is possible to connect up to 31 modules (default size of module is 16 inputs) and watch up to 496 feedback inputs. Modules can be chosen to those 3 lines. Then it is possible to connect one line with 31 modules; or connect ten modules to two lines and eleven to last line.
Lines are marked as "Left", "Middle" and "Right".

all in one .zip
Připojení rozhraní je velice jednoduché, rozhraní vyžaduje napájení 9-18V stejnosměrné (DC), nebo 8-16V střídavé (AC). Napájení se připojuje do šroubovacích svorek. Napájecí zdroj musí být schopen dodat dostatek proudu pro napájení všech použitých modulů, to je zhruba 1500mA při plném osazení.

Dále připojíme moduly S88. Na rozložení celkem nezáleží, platí několik drobných pravidel, která slouží ke zefektivnění práce.
  • Rozhraní předpokládá, že moduly jsou 16 vstupové, v našich podmínkách jsou však mnohem populárnější moduly s 8 vstupy. V takovém případě jsou dva osmivstupové moduly považovány za jeden šestnáctivstupový.
  • Rozhraní vyhodnocuje větve paralelně, takže pokud dáme 30 modulů na jednu větev, bude vyhodnocování 3x pomalejší, než pokud dáme na každou větev 10 modulů.
Poslední konektor slouží pro připojení USB.

Při zapojování a zapínání nejprve připojte všechny moduly S88 na správná místa. Rozhraní modulů není navrženo pro připojování pod napětím. Následně připojíme napájení a až jako poslední připojíme USB. Při zapínání nejprve zapneme napájení a až poté připojíme USB kabel, jako poslední spustíme ovládací software v počítači.

Při prvním zapojení do počítače který používá MS Windows budete požádání o driver. Ten najdete na konci stránky v sekci ke stažení. Ostatní operační systémy nevyžadují žádný další ovladač a rozhraní rozeznají automaticky.

Na zařízení jsou tři LED diody. První označená jako Pwr signalizuje napájení. Druhá označená jako USB signalizuje připojení k počítači a rozsvítí se po správném zavedení ovladače. Třetí označená S88 se rozsvítí když ovládací program provede inicializaci a začne komunikovat s moduly S88.
Interconnection of interface is really simple; interface requires separate powering 9-18V DC or 8-16V AC. Power is connected to screw terminal. Power source must be able to drive all connected modules, it mean approx 1500mA when equipped by all modules.

Next connectors are for S88 feedback modules. In a principle it does not matter what order you will use. Here are only two recommendations for helping you to done work more effective.
  • Interface assumes all modules have 16 inputs; here are more common modules with 8 inputs. In that case two of eight-inputs modules are understand as one sixteen inputs
  • Interface read lines in parallel; it means, that if you will connect 30 modules to one line, enumeration will be 3x slower than you will connect 10 modules per line.
Last connector is for USB connection.

During connection and starting of interface you should first mount and connect all S88 modules to right positions. S88 interface is not designed for hot-plug. Next connect power and last step is connecting of USB. During starting up you should first start power voltage, then connect USB cable and last step is start up software in computer.

During first connection to MS Windows you will be asked for driver. The driver can be found at the bottom of page in download section. All other operating systems will recognize interface as generic communication port and will not ask you for any driver.

On interface is three LED diodes. First, marked as Pwr, mean, that device is powered. Second, marked as USB, mean, that USB communication is up and driver is loaded. Third, marked as S88, will light on when software will initiate S88 and start to communicate with modules.

Připojení

Connection

Mnoho lidí dělá chyby v připojení rozhraní. Připojení napájení a připojení USB není komplikované a nemá cenu jej popisovat, Chyby vznikají v připojení modulů S88.
Následující obrázek ukazuje modul S88 pro 16 vstupů. U nás se nepoužívají, ale norma je považuje za základní. Další obrázek ukazuje dvě varianty modulů pro 8 vstupů. Jedná se o varianty s detektory a bez detektorů. Takto zapojená dvojice je ze strany rozhraní HSI považována za jeden modul se šestnácti vstupy.
Many people make many mistakes during connecting of interface. Connection of power and connection of USB is not that big problem and is no necessary to describe it. People doing mistakes during connecting S88 modules.
Following picture presents module S88 with 16 inputs. This type of module is not common in CZ, but definition understands it as basic size of module. Next picture presents two of modules S88 with 8 inputs. It is variants with and without detectors. Two modules connected like this is understand by HSI interface as one 16 inputs module.

16 vstupový modul S88 | one 16 inputs S88 module

dvojice 8 vstupových modulů S88 | two 8 inputs S88 modules
Často dochází k chybám v orientaci modulů. Respektive v chápání co je začátek a co je konec. Na následujícím obrázku je vyznačená dvojice tranzistorů, která znamená výstup z modulů. Tedy tu stranu která se připojuje směrem do rozhraní. Opačná strana se označuje jako vstup a připojují se do ní další moduly v řadě.
Druhý důležitý krok je počítání modulů. Rozhraní čísluje každou větev samostatně, modul nejblíže k rozhraní má tedy pořadové číslo 1. Pokud používáme 8 vstupové moduly, pak modul nejblíže k rozhraní má pořadové číslo 1 a realizuje vstupy 1-8, následující (8 vstupový) modul má také pořadové číslo 1 a realizuje vstupy 9-16. Další modul dostane pořadové číslo 2 a tak dále.
Users also doing mistakes with orientation of module, or rather with understanding what mean input and what output. On following figure is marked pair of transistors, which mean output from modules. It mean the side connected to the interface. Opposite side is marked as input and is used for connection of next modules in chain.
Second important step is counting of modules. Interface numbers every line with independent numbers. The module near to interface have order number 1. Once it is 8 inputs module, then module nearby interface have order number 1 and inputs 1-8. Next module (again 8 inputs) have also order number 1 and inputs 9-16. Next modules have order number 2 etc.

Software

Software

Následující obrázky ukazují, jak zařízení připojit například v prostředí Train Controller.
V menu si zvolíme položku "Setup digital system"
Following figures show, how to connect devices for example into Train Controller environment.
In menu chose "Setup digital system"
Stiskneme tlačítko "Add" Press the "Add" button
V nabídce zvolte Littfinsky - LDT HSI-88 In selection chose Littfinsky - LDT HSI-88
Vyberte adresu virtuálního sériového portu, který systém přidělil při prvním zapojení Select address of virtual serial port, given by operating system during first plug in
Postupně stiskněte tlačítka "OK" až dostanete znovu základní stav.

Dále si na příkladu ukážeme jak vytvořit senzor, který reprezentuje jeden vstup.
Vytvoříme si jednoduchý senzor
Using all "OK" buttons will return to base situation.

Next example shows, how to create simple sensor, representing one input.
Create simple sensor
Dvojklikem si zobrazíme vlastnosti, vybereme HSI digitální systém. Pozor - v nabídce jsou tři - pro každou větev jeden. Dále zvolíme adresu modulu (pořadové číslo) a pořadí vstupu na modulu. Double click to show properties, chose digital system. Careful - we have three in menu - for every line one. Next step is chose address of module (order number) and number of input on module.
V systému Rocrail zařízení funguje celkem bez problémů, jen je potřeba nezapomenout vypnout sledování CTS a zařízení nastavit jako typ RS-232 In Rocrail system interface working fine. Do not forget to disable CTS checking and configure interface as RS-232 type.
Vzhledem k tomu, že rozhraní podléhá registraci na www.usb.org, není úplně jednoduché zveřejňovat zdrojové kódy a hex soubory pro procesor. Proto pokud máte zájem, kontaktujte N-Šopík a požádejte o výrobu nebo zaslání. Because interface is under registration at www.usb.org, it is not that easy to present source codes and hex files for processor. Then if you are interested in it, please contact N-Shop and ask for manufacturing or send.
Trochu jsem inovoval schema. Pokusil jsem se vyřešit několik drobných problémů.
- při odpojení a znovu připojení USB se rozhraní správně neresetovalo, to je nyní opraveno
- protože bylo nutné nejprve zapojovat napájení, nebylo možné nechávat zařízení zapojené v USB neustále. Současná verze umožňuje nechávat zapojené USB i v případě, že není zapojené napájení. (Bez napájení však nekomunikují moduly S88)

Tuto verzi jsem zatím neotestoval.
I little updatet the schematics. I tryed to solve few known problems.
- when you disconnect and again connect USB, the interface was not reconnected correctly - it is now solved.
- because it was necesarry to conect first power and then USB, it was not possible to keep interface connected in USB all time. Following version allow to keep it in USB also when power is not connected. (Without power S88 modules not communicate)

I not tested this version yet.

all in one .zip

USB_HSI.inf USB_HSI_inf.zip