Mám dojem, že Oto ovladač s modrým displejem je zatím nejlepší, co jsem kdy vymyslel na ovládání lokomotiv přes Loconet. Ale protože mám stále nové nápady, tak se s nimi chci podělit. Ovladač Oto s červeným displejem už nebudu vyrábět, protože má vysoký odběr, nad 12 mA a to mi připadá dost, protože Oto s modrým displejem bere celkově jen asi 5-6 mA, protože modré LED berou na stejnou svítivost zhruba polovičku proudu a to se dá ještě zregulovat na polovičku ubráním svítivosti.
Jako první mne napadlo udělat přístup do EEPROM přes programátor CV, teda přesněji přes slot 124, který se na programování CV používá u Loconetu. Tím se získá naprostá kontrola nad vlastnostmi ovladače Oto. Má to výhodu v tom, že to není jinak přístupné, než jen přes slot 124 a teda to splňuje požadavek na nemožnost změny pro děti a „nenechavé“ při běžném provozu.
Je teda možné změnit ID číslo, adresu, záložní adresu, svit displeje a všechny funkce, včetně rychlosti a směru pro první zasunutí do Loconetu. Toto u starších ovladačů nebylo možné.
Popis jednotlivých CV v ovladači Oto:
0/ Epr As Eram Byte At 0 'nedoporucuje se pouzivat 1, 2/ Bf(2) As Eram Byte At 1 'adresa ovladace 3, 4/ Id(2) As Eram Byte At 3 '2x kontrolne cislo ID 5/ Dirf As Eram Byte At 5 'stav funkcí DIRF + smer jizdy 6/ F9 As Eram Byte At 6 'stav funkci F9-F12 na loko 7/ F13 As Eram Byte At 7 'stav funkci F13-F20 na loko 8/ F21 As Eram Byte At 8 'stav funkci F21-F28 na loko 9/ Disp As Eram Byte At 9 'nenulove je stav Dispatch 10, 11/ Zal(2) As Eram Byte At 10 'zaloha adresa 12/ Jas As Eram Byte At 12 'jas displeje 13/ Blo As Eram Byte At 13 'zakaz hodin 14/ Snd As Eram Byte At 14 'funkce SND 15/ Spd As Eram Byte At 15 'ukazovatko do pole Spdu 16/ Lock As Eram Byte At 16 'zamek zapisu do EEPROM 17/ Adrv As Eram Byte At 17 'adresa tohoto obvodu 18/ Adrn As Eram Byte At 18 'adresa tohoto obvodu 19/ Emap(31) As Eram Byte At 19 'mapovani funkci 20…275 Spdu(255) As Eram Byte At 50 'tabulka rychlosti
Protože pracujeme se surovými daty, je nutné si nastudovat, co můžete a co nemůžete do EEPROM zapsat. Například dodržovat Loconet formát při zápisu adresy a ID čísla, teda nepoužívat bit.7, který je vyhrazený pro Opcode a jeho použitím si koledujete o průšvih.
Popis jednotlivých CV:
CV na adrese 0 se nedoporučuje používat, tak to respektuji.
CV 1 a 2 určují adresu Oto ve formátu Loconet, teda (Bf(1) x 128) + Bf(2), je dekadicky adresa. Tato adresa může být od 1 až do 16383, ale jsou tam omezení, pro servisní a programátorské služby.
CV 3 a 4 je číslo ID, které zabezpečuje ochranu před ukradnutím adresy.
Taky tady se používá Loconet formát a některé hodnoty jsou zakázané.
CV 5 obsahuje funkce F0 až F4 a taky směr jízdy. bit.0 až bit4, bit.5 je směr jízdy, kdy 1 je směr dopředu
CV 6 obsahuje funkce F9 až F12, bit.0 až bit3
CV 7 obsahuje funkce F13 až F20, bit.0 až bit7v
CV 8 obsahuje funkce F21 až F28, bit.0 až bit7v
CV 9 při nenulové hodnotě vyvolá stav Dispatch
CV 10 a 11 je záloha adresy ovladače, která se použije při nechtěné ztrátě adresy
CV 12 řídí svit displeje od 30 do 140 hodnoty
CV 13 při nenulové hodnotě zakazuje zobrazení interních hodin
CV 14 obsahuje funkce SND od F5 do F8, bit.0 až bit3
CV 15 sleduje zápis hodnoty rychlosti do EEPROM, neměnit !!
CV 16 zámek zápisu do EEPROM při nenulové hodnotě, uvolni se čtením
CV 17 LOW adresa tohoto ovladače pro OPS programování, zatím nepoužívat
CV 18 HIGH adresa tohoto ovladače pro OPS programování, zatím nepoužívat
CV 19 … 49 mapování funkcí
CV 50 … 305 pole pro ukládání rychlosti, teda celkem 255 x 100 000 = 25 miliónu zápisu, to by mělo opravdu chvíli vydržet.
To jsou všechny CV použité na provoz ovladače Oto.
Práce s CV a obslužný program:
Na práci CV používám program JMRI, který má jednu obrovskou vyhodu, že se dají hodnoty uložit a teda se dá ku nim vrátit a opravovat a nastavovat.
Cesta je DekoderPro > Nástroje > Programátory > Servisní režim programátoru > NMRA > Raw CVs 1-1024 > Tabulka CV. Pokud otevřete Tabulku CV, tak se objeví přehled CV od CV1 do CV1024.
Tady je poměrně velký problém posun adres, kdy neexistuje adresa „0“ a začíná se na „1“. Takže adresa CV 1 je vlastně „0“ !! Proto jsou všechny adresy posunuté o tu jednu pozici.
Mapování funkcí:
Protože máme plný přístup do EEPROM, tak tam můžeme velmi snadno změnit přiřazení funkcí ku klávese, to se jmenuje mapování funkcí. Jsou na to vyhrazeny pozice v EEPROM od 19 do 48. To je celkem 29 pozic, -1 na posun 0-1, takže celkem 28 funkcí. Taky tady je problém posunutí adres CV, kdy CV0 je v JMRI na pozici 1. Je to proto, ze index na pozice bitu je od 0 do 7 a v skutečnosti se v programu pracuje s 1 až 8.
Mapování probíhá tak, ze pozice 20 je přiřazena CV0 a zápisem jiné hodnoty se bude ovládat příslušná funkce. Pokud tam zapíšeme hodnotu 5, tak stlačením klávesy 0 budeme aktivovat funkci F5.
Takže pořadí v EEPROM odpovídá jednotlivým CV a zápisem jiné hodnoty od 1 do 28 do jednotlivých pozic, se bude ovládat to CV, které číslo tam bude zapsané.
Pozice 20 v EEPROM je CV0 a základní hodnota je 1
Pozice 21 v EEPROM je CV1 a základní hodnota je 2
Pozice 22 v EEPROM je CV2 a základní hodnota je 3
A tak dále, až do pozice …
Pozice 47 v EEPROM je CV27 a základní hodnota je 28
Pozice 48 v EEPROM je CV28 a základní hodnota je 29
Základní hodnota je vlastně taky mapování, ale v továrním nastavení, kdy fungují funkce normálně.
Za největší výhodu tohoto řešení považuji možnost upgrade a opravu hodnot v EEPROM na hodnoty potřebné k provozu. Teda budu posílat CV nastavené na adresu 3 a ID s hodnotou dekadicky 1921. ( 0Fh, 01h), které si následně upravíte podle potřeby. Je celkem vhodné si vyplnit tabulku „Záznam evidence“ a tu si následně uložit pro pozdější porovnání nebo opravy.
Přikládám HEX a EEP soubor zabalené v Oto_led.rar, Adresa 3, ID 1921 a popisky k vytlačení a nalepení.
K tomuto článku nebol doposiaľ priradený žiadny komentár!