Plky o JMRI

Co se nikam nevešlo, neni pro to téma apod.

Moderátoři: milan ferdián, Michal Dalecký, Jarda H.

Re: Plky o JMRI

Příspěvekod belgarat » pon 20 led, 2020 9:38 am

@radeksindy

Je mozne, ze pracujes s LocoNetem a prenasis do DCC veci co zde neplati ? LocoNet je obousmerny, tedy dekoder muze skutecne potvrzovat, zatimco u plain DCC dekoder NEodpovida, leda pres Railcom, coz je extremne vzacne - a maximalne ma ACK na potvrzovani programovani CV na prog vystupu centraly, coz se v beznem rezimu neuplatni.

* Ze centrala vraci "last known" jsem tu uz psal: schvalne jsem rocomysi nastavil ruzne stavy na ruzne accessory DCC adresy, abych mohl zkouset jak si "vymysli".
* Ze u DOSUD nepovelovanych adres vraci NanoX nejakou default hodnotu jsem tu UZ psal.
* Ze centrala MA odpovedet podle XPressNet specifikace asi nevis (pokud tu specifikaci dodrzuje)
* Ze NanoX si skutence pamatuje "posledni" stavy vsech 255 prvnich vyhybek .... to asi dokazat nemuzu, ale Fuldovi, ktery se v NanoX implementacne "hrabal" bych verit mohl
* Ze DR5000 si take pamatuje (dost dlouho) povelovane adresy mi muzes, ale nemusis verit. Ostatne 256 true/false je jenom nejakych 32 byte, to se vleze i do maleho PICu.

A jaký je rozdíl proti chování v situaci, když tam dekodér je.

Kdyz dekoder nema ZADNOU moznost jak se centrale ozvat a potvrdit (DCC to neumozuje, prislusne obvody fyzicky neexistuji) - jak se asi tak muze zmenit chovani centraly :) ? To jako mam vazne zkouset :))) ? Pro Tvou utechu jsem pripojil k centrale NanoX koleje a na nich lokomotivu, takze "nejakou zatez", velmi prekvapive jsou vysledky totozne.

Na dotaz o stavu dekodéru by ti centrála v případě nedostupnosti odpověděla nečím co má v paměti (co ale nedorazilo), ale to přeci není totéž, co je tam ve skutečnosti.

A uz se zase "tocis" v necem co je uplne mimo diskusi -- je hezke, ze vyzadujes odpoved realneho stavu dekoderu, ale takova vec proste neni u DCC dekoderu implementovana. Pravda, nezkousel jsem zkonfigurovat S88 vstupy, tak aby zacinaly ne od 65, ale 00 (pokud to jde), jestli by takove odezvy na nizkych adresach hlasila centrala jako Turnout feedback, nebo Sensor feedback.

Mozna zmenim nazor, az mi dekodery zacnou "nedoslychat" a ignorovat pokyny z centraly; ale prekvapive se mi to vubec nedeje, takze starosti o rozdil "odezva centraly" vs. "odezva dekoderu" pokladam za nesmyslnou komplikaci - vyjma POCATECNIHO stavu, ktery jsem uz rozebiral v predchozich postech. Je mozne ze bych to resil na modulovem kolejisti s desitkami propoju na "hlavnim" rozvodu DCC, nebo s ruznymi boostry/repeatery.

Jinymi slovy - zmenis zadani, a nasledne dojdes ke sporu na zaklade Tebou pridaneho (zbytecneho) prvku.
TT ep. IVa-b; analog + NanoX, DR5000. Pseudoprogramator, pindac nesmyslu
http://modelwiki.klfree.net
belgarat
 
Příspěvky: 2370
Registrován: čtv 27 pro, 2012 9:36 pm
Bydliště: Hřebeč u Kladna

Re: Plky o JMRI

Příspěvekod sidlo » pon 20 led, 2020 9:48 am

To co poslal @belgarat je jenom potvrzení centrály, že příkaz XpressNet byl přeposlán do DCC. Navíc v případě XpressNet centrála vrací "asi stav" sousední výhybky. Navíc si to centrála nepamatuje. Navíc ovladač může poslat sérii příkazů a není zaručeno že je cetrála zpracuje a odpoví ve stejném pořadí. Navíc lehce dojde k chybě race condition. Navíc se do hry může zamotat další ovladač. Navíc jiná rozhraní např. LocoNet se chovají odlišně. Navíc v rámci jednoho protokolu (např. LocoNet) se výrobci (např. Digitrax×Uhlenbrock) chovají odlišně...

Myslet si, že prostým poslechem sběrnice získám pravdivý obraz stavu kolejiště je blbost. Ale nikomu nebráním ať se o to pokusí.

Pokud se JMRI chová jednosměrně v případě návěstidel ovládaných výhybkami tak je to zodpovědná cesta. Chtít něco jiného http://diskuze.modely.biz/viewtopic.php?f=26&t=8153&start=165#p267248 je hazard. Ale nikomu nebráním ať se na to spolehne.
Uživatelský avatar
sidlo
 
Příspěvky: 3599
Registrován: ned 27 dub, 2014 7:32 am

Re: Plky o JMRI

Příspěvekod radeksindy » pon 20 led, 2020 10:09 am

LocoNet je obousmerny, tedy dekoder muze skutecne potvrzovat

Předesílám, že řeč není o dekodérech v lokomotivách, to je věc jiná. Jde o příslušenství.

Sice Lenz systém nepoužívám, ale už jsem ho viděl a chvíli jsem ho doma také měl. Takže vím, že mi dekodéry v případě potřeby odpověděly přes RS. Otázka zní, co mi tedy odpoví centrála, když tam žádný dekodér není nebo neumí odpovědět. Jaký je rozdíl v chování, když poptám zpětnou vazbu u reálně zapojeného dekodéru a u neexistujícícho dekodéru. O to mi tď jde.
radeksindy
 
Příspěvky: 2514
Registrován: stř 25 dub, 2007 12:50 pm

Re: Plky o JMRI

Příspěvekod belgarat » pon 20 led, 2020 10:15 am

To co poslal @belgarat je jenom potvrzení centrály, že příkaz XpressNet byl přeposlán do DCC

To co @belgarat posilal (tedy prikaz prikazove stanici, 0x42 atd....) ehm ;) domnival jsem se ze neni vubec urcen k odesilani na DCC sbernici - muzes mi najit NMRA packet, ktery by tomu odpovidal ? Nechtel jsi rict "odpoved GEN-LI na odeslani pozadavku do Xpressnet" ? To je mozne, a momentalne nemam jak overit, ze odpovedni packet bezi i na samotne sbernici XPressNet.

Protoze ale tezko budu vyrabet vlastni interefejs nahrazujici GEN-LI, potazmo XpressNet/LAN protokol, musim si vystacit s tim, co je videt na USB (ethernetu).

Navíc si to centrála nepamatuje

To je zvlastni, ze ty 2 centraly co tu mam si pamatuji posledni nastaveni "vyhybek" 5, 6, 100, 190, 200, 220 pres 20 minut ... velmi pozoruhodne. Kontroloval jsem kabel od PC, a nemuzu najit zadne skryte zarizeni, ktere by konzistentne odpovedi.

Navíc v případě XpressNet centrála vrací "asi stav" sousední výhybky. Navíc ovladač může poslat sérii příkazů a není zaručeno že je cetrála zpracuje a odpoví ve stejném pořadí. Navíc lehce dojde k chybě race condition. Navíc se do hry může zamotat další ovladač.

Tady, obavam se, smesujes neschopnost programatoru JMRI s vlastni technologii. Race condition ve smyslu preusporadani povelu muze nastat vzdy; bohuzel implementace JMRI je proste blba. Je logicke, ze mam-li blokovou odezvu, tak se musim trochu starat o odchozi prikazy, a heuristicky je parovat s odpovedmi. Moznosti je vic, nejjednodussi je rict "to nejde". Pravdou je, ze implemntace v JMRI je tak hloupa, ze nepotrebuje pro race condition zadny dalsi ovladac, vystaci si sama - proto se zavedl time-out mezi povely :)))

O implementaci (konkretne) XpressNet v JMRI trochu neco vim, v kodu uz jsem se hrabal ...
Naposledy upravil belgarat dne pon 20 led, 2020 10:21 am, celkově upraveno 1
TT ep. IVa-b; analog + NanoX, DR5000. Pseudoprogramator, pindac nesmyslu
http://modelwiki.klfree.net
belgarat
 
Příspěvky: 2370
Registrován: čtv 27 pro, 2012 9:36 pm
Bydliště: Hřebeč u Kladna

Re: Plky o JMRI

Příspěvekod belgarat » pon 20 led, 2020 10:17 am

radeksindy píše:Sice Lenz systém nepoužívám, ale už jsem ho viděl a chvíli jsem ho doma také měl. Takže vím, že mi dekodéry v případě potřeby odpověděly přes RS. Otázka zní, co mi tedy odpoví centrála, když tam žádný dekodér není nebo neumí odpovědět. Jaký je rozdíl v chování, když poptám zpětnou vazbu u reálně zapojeného dekodéru a u neexistujícícho dekodéru. O to mi tď jde.


Mlcky jsi predpokladal, ze u NanoX pouzivam zpetnou sbernici, kterou centrala vubec nema, nebo ze RS pouzivam u DR5000 (ktera ji ma). Nepouzivam a nehodlam pouzit ani v jednom pripade. Pro slusnou spolehlivost by melo bohate stacit ze nekdo (=centrala) akumukuje a je schopna rozesilat informace o znamych stavech narizenych (jakymkoliv) ovladacem.


(edited)
TT ep. IVa-b; analog + NanoX, DR5000. Pseudoprogramator, pindac nesmyslu
http://modelwiki.klfree.net
belgarat
 
Příspěvky: 2370
Registrován: čtv 27 pro, 2012 9:36 pm
Bydliště: Hřebeč u Kladna

Re: Plky o JMRI

Příspěvekod sidlo » pon 20 led, 2020 10:29 am

belgarat píše:Tady, obavam se, smesujes neschopnost programatoru JMRI s ...

Už po několikáté se ptám, proč nevzít jiný systém, které uvedené nedostatky nemá. Nabídka je přeci bohatá. Trvat na používání něčeho, o čemž jsem přesvědčen že má závažné chyby, v případě že existují desítky alternativ nadává smysl.
Uživatelský avatar
sidlo
 
Příspěvky: 3599
Registrován: ned 27 dub, 2014 7:32 am

Re: Plky o JMRI

Příspěvekod belgarat » pon 20 led, 2020 10:31 am

@sidlo

Podotykam, ze o skutecne "race condition" se da bavit tehdy a jen tehdy, kdyz v urcitem casovem intervalu pred a po olamziku, kdy SW odesle pokyn do centraly zaroven totez accessory (resp. tentyz blok accessory info response) poveluje i dalsi ovladac. Protoze se (u mne) nejedna o realny feedback (pouze odezvu elektroniky centraly) je casove okno povel-response velmi kratke; sance ze se sejde PC s lidskym operatorem (mys, tablet), ... je pomerne mala. Dale, pokud SW pocita "odezvy" a paruje je se svymi prikazy, muze v drtive vetsine zbylych situaci - vyjma ztraty packetu - detekovat MOZNOU race condition, a muze se treba opakovane doptat na skutecny stav.
Neni to 100%, ale kolejiste neni velka zeleznice, ani atomova elektrarna; 99.9% spolehlivost je vic, nez umozuje binec na kolejich.

Zbyek 'race conditions' pripada na vrub hloupe implementaci ridiciho software, bohuzel.
TT ep. IVa-b; analog + NanoX, DR5000. Pseudoprogramator, pindac nesmyslu
http://modelwiki.klfree.net
belgarat
 
Příspěvky: 2370
Registrován: čtv 27 pro, 2012 9:36 pm
Bydliště: Hřebeč u Kladna

Re: Plky o JMRI

Příspěvekod radeksindy » pon 20 led, 2020 10:42 am

To co poslal @belgarat je jenom potvrzení centrály, že příkaz XpressNet byl přeposlán do DCC.

Pokud je to tak, tak si mně uklidnil. Takže všechno je v normálu. 8)
radeksindy
 
Příspěvky: 2514
Registrován: stř 25 dub, 2007 12:50 pm

Re: Plky o JMRI

Příspěvekod belgarat » pon 20 led, 2020 4:48 pm

Panove, jste si opravdu, ale opravdu jisti, ze skutecne rozumite tomu jak PC komunikuje s centralou po XPressNet (at uz GEN-LI, nebo LAN) ? Protoze ty vase hardwarove 'race conditions' apod mi moc nesedi s pozadavky z XpressNet 3.6 (3.0) na to, aby centrala odpovedela na "Accessory Information Request" jeste ve stejnem casovem slotu.

Pokud ovladate DR5000 z PC nejakym LocoNet/LAN tak se nedivim ;) O LocoNetu a nesparovanych asynchronnich zpravach toho bylo popsano az az...
TT ep. IVa-b; analog + NanoX, DR5000. Pseudoprogramator, pindac nesmyslu
http://modelwiki.klfree.net
belgarat
 
Příspěvky: 2370
Registrován: čtv 27 pro, 2012 9:36 pm
Bydliště: Hřebeč u Kladna

Re: Plky o JMRI

Příspěvekod belgarat » pon 20 led, 2020 7:49 pm

Tak jsem zkusil vytvorit panel v Layout Editoru (JMRI 4.17.4), abych si ho mohl prohlidnout na webu treba v tabletu... Nechal jsem standardne tluste cary (CSD AZD-71), tedy asi 10px. Na obrazovce to vypada slusne.
Jake je moje prekvapeni kdyz jsou na webu videt takove uzounke osklive carky. A jak take ne, kdyz se podivam na data, ktere dostava kreslici Javascript standardni tloustku 2 a 4 ... odkudpak je bere ? Nebude to tim, ze v XML ktere JMRI zapisuje jsou udaje pro tloustku car 2x ? Jednou spatne, jednou spravne ? A ze by si toho za tak dlooouhou dobu nikdo nevsiml, nebo to nevadilo ...

Tohle uz asi jako uzivatel neopravim, vypada to, ze JMRI po sobe poradne neumi precist co zapisuje; mozna ze je cteni (taky) tak trochu zduplikovane, to se pak spatne udrzuje. Edit: naivni pokus prepsat v XML vadne hodnoty na opticky spravne taky selhal: buh vi proc to porad kresli cary tluste 2px namisto 10 ... (a v XML co jde do prohlizece je prekvapive stale 2px, ackoliv na disku uz je davno 10, a je restartovano, jak jinak)

Zbytek WWW (tabulky vyhybek, senzoru - vsude kde jsem neco vyplnil) hazi HTTP 500, v logu serveru nic ..., to bude asi taky nejake dobre uzivatelske vylepseni, ktere ja hlupak aplikacni programator nedokazu patricne ocenit. Prazdne tabulky jsou super, rikaji ze zadna data nemaji - a bez erroru !
TT ep. IVa-b; analog + NanoX, DR5000. Pseudoprogramator, pindac nesmyslu
http://modelwiki.klfree.net
belgarat
 
Příspěvky: 2370
Registrován: čtv 27 pro, 2012 9:36 pm
Bydliště: Hřebeč u Kladna

Re: Plky o JMRI

Příspěvekod sidlo » úte 21 led, 2020 5:44 am

Je lepší používat produkční verzi a ne vývojovou.
Web server neumí dekorace. Je to mezi požadavky na dodělání, otázka je kdy se tak stane. Všichni přispěvovatelé do projektu to dělají ve svém volném čase.
Prohlížeč nedodržuje tloušťky čar, ale upravuje je podle zmenšení/zvětšení strany. Bylo by špatně kdyby to tak nedělal.

Pokud má uživatel s JMRI vážné problémy, tak doporučuji přejít na jiný SW. Nabídka je bohatá.
Uživatelský avatar
sidlo
 
Příspěvky: 3599
Registrován: ned 27 dub, 2014 7:32 am

Re: Plky o JMRI

Příspěvekod belgarat » úte 21 led, 2020 7:39 am

Ja ale nehovorim o dekoracich. Hovorim o atributu, ktery se do prohlizece prenasi, a ktery dokonce kreslici kod pouziva k nastaveni tloustky cary na canvasu - jo, dival jsem se do kodu. Akorat, holt, se to uvnitr JMRI, v Jave, nacte a zpracuje blbe, a do prohlizece se poslou vadna data.
Kód: Vybrat vše
    $gCtx = canvas.getContext("2d");
...
    var $width = $gPanel.sidetrackwidth;
    if ($widget.mainline == "yes") {
        $width = $gPanel.mainlinetrackwidth;
    }
...
    if (typeof $width != "undefined") {
        $gCtx.lineWidth = $width;
    }

Podobna trefa vedle, jako ze si centraly pamatuji tak 10 vyhybek pro pseudo-ohlas, ze ?

Tohle tema jsou "Plky". Castecne je to uz blog, ktery ma za ucel popsat SKUTECNY stav JMRI - a to nejsem nijak narocny uzivatel. Nehazim spinu, dokumentuji to, co nekteri vydavaji za pouzitelny software k modelarskemu uziti. Zevnitr i zvenku, a jini jim to "zerou".

Potrebuji zadat do dialogu "user name". V Layout Editoru super prekvapeni: rozbalovaci seznam, vyber. Ocenil bych editovatelne pole, abych naklepal zacatek a dovybral z nekolika malo (ocenite, mate-li par desitek moznosti), ale na mistni pomery SUPER. V Control Panel Editoru ... zajimave, vybira se tim, ze se z uplne jineho okna PRETAHNE mysi text, obrazek, ... do dialogu, ale musite vedet kam jej pustit. Ono se to obcas pouziva i jinde, ale ta pomocna vyberova okna pak nemizi, takze si ty nalezene obrazky muzete tahat i na dalsi prvky.
No a u editace OBloku se musi 'user name' vypsat (nebo nakopirovat jako text). Nesplest, jinak konec, znova. Samozrejme cely text z radku se smaze, nejde opravit jen prekleple pismenko.

To, ze nekdo ve volnem case dela 20 let jednu hloupost za druhou bohuzel neznamena, ze kvantita preroste ve kvalitu.

Edit: hele -- v produkcni verzi 4.18 je to lepsi, na webu jsou dekorace (zarazedla) ! Ale ty cary jsou tenky porad...
web.png
web.png (9.86 KiB) Zobrazeno 4027 krát
TT ep. IVa-b; analog + NanoX, DR5000. Pseudoprogramator, pindac nesmyslu
http://modelwiki.klfree.net
belgarat
 
Příspěvky: 2370
Registrován: čtv 27 pro, 2012 9:36 pm
Bydliště: Hřebeč u Kladna

Re: Plky o JMRI

Příspěvekod sidlo » úte 21 led, 2020 7:52 am

Nikdo nic neříká o špíně, nikdo nic neříká o bezchybnosti.

Je mi nepochopitelná trvající snaha používat něco co mi prokazatelně nevyhovuje, když nabídka jiný produktů je opravdu široká.
Uživatelský avatar
sidlo
 
Příspěvky: 3599
Registrován: ned 27 dub, 2014 7:32 am

Re: Plky o JMRI

Příspěvekod belgarat » úte 21 led, 2020 8:09 am

Ale Sidlo to neni o tom, ze JMRI _nema_ funkce, ktere ja nebo ostatni potrebuji (rekl bych ze treba ovladaci panel na dotykaci neni tak premrsteny pozadavek). Ber to jako doplnek Tvych tutorialu, ktere ukazuji, ze JMRI muzes Pythonem vlastorucne doprogramovat tak, aby bylo - pro uzivatele - pouzitelne.

Edit: nez se zeptas - tyhle posty ukazuji, cim musi obycejny uzivatel projit, NEZ si jmri doprogramuje...
TT ep. IVa-b; analog + NanoX, DR5000. Pseudoprogramator, pindac nesmyslu
http://modelwiki.klfree.net
belgarat
 
Příspěvky: 2370
Registrován: čtv 27 pro, 2012 9:36 pm
Bydliště: Hřebeč u Kladna

Re: Plky o JMRI

Příspěvekod belgarat » ned 26 led, 2020 9:07 pm

Kviz pro ty, co umi programovat v Jave:

https://github.com/JMRI/JMRI/blob/maste ... .java#L130

* vsechny metody se mohou volat z UI vlakna
* setOwnState se vola z vlakna vyhrazeneho pro prijem XpressNet

spocitejte "race conditions" a potencialni mista, kde se muze cist jina hodnota promennych _knownState, nez naposledy zapsana...

Poznamka: to, ze se race neprojevi neznamena ze tam neni. Staci vice jader v pocitaci...
TT ep. IVa-b; analog + NanoX, DR5000. Pseudoprogramator, pindac nesmyslu
http://modelwiki.klfree.net
belgarat
 
Příspěvky: 2370
Registrován: čtv 27 pro, 2012 9:36 pm
Bydliště: Hřebeč u Kladna

PředchozíDalší

Zpět na Nezařazeno (off topic)

Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 3 návštevníků