Jindra Fučík

LN-host programově definovaná pseudo centrála

LN-host software defined pseudo command station


LN host without case

Myšlenka

Toto zařízení vzniklo tak nějak mimochodem. Chtěl jsem si vyzkoušet reakci některých ovladačů na různé zprávy z centrály. Pak se mne také jednou Pavel ptal, jak to má udělat, aby si nastavil adresu ve FREDu a nemusel k tomu roztahovat centrálu a další propriety. A pak jsem zjistil ještě spousty dalších možností využití. Převážně zaměřených na to, že k počítači mohu přímo připojit ovladač. Například pro použití se zařízením typu DCC++, DCC-EX, nebo podobných. Prostě situace, kdy se hodí, aby se počítač tvářil jako centrála pro nějaký z LocoNet kompatibilních ovladačů.

Schéma

Zase úplně jednoduché schéma. Původní myšlenka byla jen destička na pokusy. Vlastně jsem přepoužil zapojení z běžného LN-bufferu. Jen jsem potřeboval trochu upravit napájení a vytvořit zakončení. Proto jsem jednoduše přidal modul DC-DC Boost step up converter. Čímž jsem získal +12V pro napájení ovladačů a pro zakončení sběrnice. Zachoval jsem oblíbený "velký" rezistor proti přetíření. Jeho hodnota je poměrně velká. To je proto, že USB port není schopen dodávat moc velké proudy a není možné připojovat více než jeden ovladač. Vzhledem k tomu, že jsem nechtěl zařízením trávit moc času, použil jsem levný integrovaný převodník USB-Serial CH340C a procesor se dvěma sériovými porty PIC16F18015.

Background

This device was created "somehow" and "by the way". I was interested in reaction of some throttles to some variants of commands from command station. And time ago Pavel asked me, how it is possible to configure FRED throttle without unpacking all command station and other devices. And then I found other more possibilities. Mainly focusing to direct connection of throttle to computer. For example to use with devices like DCC++, DCC-EX, or similar. It mean situations, when it is handy computer acting as command station for some of LocoNet compatible throttle.

Schematic

As usual, very basic schematic. Original idea was testing board only. In reality I was recycled schematic of usual LN-buffer. I only little modified power source and added termination. I simply added DC-DC Boost step up converter module. Then I have +12V for powering throttles and for network termination. I preserved "big" short protection resistor. It have relatively big value. That is because USB port is not capable to deliver big current and device is designed to conect one throttle only. Because I do not want to spend lot of time with design, I used cheap integrated USB-Serial converter CH340C and processor with two serial ports PIC16F18015.


LCD LN box

Software

Software je to oč tu běží. Vlastně tu máme dva programy. První je méně zajímavý a je to program v procesoru rozhraní. To je běžný program pro LocoNet rozhraní známý jako LN-buffer. Tato verze je upravená jen v tom, že dodržuje časování pro "Master", tedy pro centrálu. Jinak nic zvláštního.

Mnohem zábavnější je program pro počítač. Já jsem si vytvořil program v jazyce Free Pascal, nicméně lze použít snad jakýkoli programovací jazyk. Program, který jsem vytvořil je velice jednoduchý, tváří se jako centrála, která obsluhuje právě dva sloty. První slot má aktivní ovládací prvky a představuje slot určený pro "dispatch". Tedy pokud připojíme ovladač, který si požádá o adresu lokomotivy pomocí "dispatch get", pak dostane právě tu, která je nastavená v prvním slotu. Pokud ovladač začne rovnou ovládat lokomotivu, která je vybraná pro první slot, zase se použije tento slot. V případě, že ovladač začne ovládat jinou lokomotivu, její adresa se přiřadí a používá v druhém slotu. Druhý slot má všechny prvky zašedlé a jen zobrazuje, co ovladač ovládá. To je šikovné, pokud máte ovladač bez displeje a nevíte jakou lokomotivu má přiřazenou, pak s největší pravděpodobností její adresu uvidíte ve druhém slotu. Ve spodní části okna se vypisují všechny informace, které procházejí na sběrnici. V mnoha případech je jejich význam rozepsán.

Pochopitelně je možné si vytvořit úplně jiný program, nebo třeba připojení k ovládacímu programu pro řízení některé z centrál zmíněných nahoře. Rozhraní se chová jako sériový port a komunikuje rychlostí 57600 BPS.

Software

Software is, what this project is about. In reality we have two programs here. First one is less important firmware in processor. That is usual program for LocoNet interface well known as LN-buffer. This version is just modified to keep "Master" timing. It mean timing for command station. Nothing else is interesting here.

more funny is PC software. I created my one using Free Pascal programming language, but it is possible to use any other programming language. Program, I was created, is very simple. It acts as command station with two slots. First slot have active control elements and is meant for "dispatch". It mean, when we will connect throttle that will ask for locomotive address using "dispatch get" command. Then it vill receive address stored in first slot. In case throttle will start controlling locomotive selected in first slot, this slot is used again. In case that throttle will start controlling any other locomotive, that address is added and controlled in second slot. Second slot have all controls grayed out and only displays, what throttle trying to control. That is handy, when you have throttle without display and you do not know, what locomotive address have attached. Then in big probability you will see this address in second slot. In bottom part of window are displayed all messages coming through network. In many cases with detailed meaning.

Of course you can create different program, or for example create connection to control program for command stations listed above. Device is acting as serial port with speed 57600 BPS.

Controll software

Krabička

Krabičku navrhl a vytisknul Pavel.

Box

As usual, Pavel created and printed nice box.

Bottom view
In box view
In opened box view



Download: Schema Gerber Hex Exe

LocoNet je registrovaná ochranná známka Digitrax