BeneluxSpoor.net forum

Vraag en antwoord => Digitaal => Topic gestart door: Jeroen Vreeken op 28 October 2024, 22:06:41

Titel: DCCext en CV commandos
Bericht door: Jeroen Vreeken op 28 October 2024, 22:06:41
Ik ben bezig met het zelf bouwen van een decoder voor seinen.
DCCext is hiervoor een heel mooie uitbreiding op de NMRA standaard, en het zetten van aspecten werkt inmiddels goed.
Maar ik blijf met een vraag zitten wat betreft CVs en kan dit nog nergens terug vinden.

Het originel NMRA commando voor extended accessories was dit:
10AA-AAAA 0AAA-0AA1 000XXXXX
En DCCext vervangt dat door dit:
10AA-AAAA 0AAA-0AA1 DDDD-DDDD

Dit is in de NMRA spec (S-9.2.1) het commando voor CVs:
10AA-AAAA 0AAA-0AA1 (1110-CCVV VVVV-VVVV DDDD-DDDD)

Met de NMRA spec kun je dus het verschil tussen de commandos herkennen aan de drie bitten van de derde byte (000 vs 111). Maar doordat die drie bitten nu onderdeel zijn geworden van het aspect kan dat niet meer.

Het enige wat nu nog kan is het herkennen van een CV commando op basis van lengte (3 vs 5).

Is dat een goede interpretatie en is dit hoe andere accessoires werken? Of mis ik nog ergens iets in de specs?
Titel: Re: DCCext en CV commandos
Bericht door: bask185 op 28 October 2024, 22:17:40
Ik weet niet met welke chip je werkt? Maar als je een arduino achtige heb, kan je o.a. de mmrwa library gebruiken. Hij is wel groot en apart opgesteld, maar hij is wel functioneel dus... if it works..

Ik zou hier kijken voor de informatie die je zoekt. Vroeger hadden ze maar 5 bits gepland en drie bits werden maar weggegooid for no good reason. Dus ipv 32 aspecten kunnen we nu 256 aspecten gebruiken. Ik heb het zelf werkend voor zowel centrale als decoder.
https://normen.railcommunity.de/RCN-213.pdf (https://normen.railcommunity.de/RCN-213.pdf)

Ik heb ook een open source spoel/sein decoder, lijkt wat op een DR4018. Daarin heb ik al menig seinbeelden verwerkt en je kan ze ook zelf toevoegen..
https://github.com/bask185/Train-Science-DIY/tree/master/SOFTWARE_SOURCE/DECODERS/OSSD (https://github.com/bask185/Train-Science-DIY/tree/master/SOFTWARE_SOURCE/DECODERS/OSSD)

Maar bouw en codeer vooral zelf ook wat, dat is natuurlijk leuk om te doen. (y)

Mvg,

Bas
Titel: Re: DCCext en CV commandos
Bericht door: Jeroen Vreeken op 28 October 2024, 23:03:06
Ik zie dat je de NMRA library gebruikt, en die doet de 'lengte truuk' om de verschillende commandos te herkennen. Maar er staat ook commentaar over 5 vs 8 bits bij waaruit blijkt dat de auteurs ook niet helemaal wisten wat ze met extended acccessories aan moesten. Blijkbaar ben ik niet de enige die rond de extended accessoires een gebrek aan specificaties ervaart.

Ik gebruik zelf overigens de atmega328p (arduino nano) voor de sein decoder.
De dcc code werkt zowel op de atmega328 als de attiny85 (misschien ook attiny25, maar nog niet getest) en is gewoon in C geschreven.

Zowel van de arduino omgeving als de nmra lib ben ik niet zo'n fan, en zelf schrijven is leuker.
https://github.com/JeroenVreeken/dcc_decoder (https://github.com/JeroenVreeken/dcc_decoder)

Titel: Re: DCCext en CV commandos
Bericht door: bask185 op 28 October 2024, 23:17:19
Ik gebruik hoofdzakelijk de arduino-cli versie  (y). Mooi makkelijk in VSCode, compileren, bootloaderen, uploaden, monitor openen etc. IDE's hebben mijn voorkeur zelden.

Citaat
(misschien ook attiny25, maar nog niet getest)
Als die kleiner dan 2k compileert en werkt voor een 85 dan moet die ook gewoon werken op een 25  :D

Bas
Titel: Re: DCCext en CV commandos
Bericht door: AP3737 op 29 October 2024, 08:49:30
Ik heb zelf mijn DCC decoding gemaakt uitgaande van OpenDCC. Daarin werd al de pakket lengte gebruikt voor het decoderen van berichtjes. De NMRA Library is ook begonnen met OpenDCC als basis, dus kent dat trucje ook.

@Jeroen: ja, zelf schrijven is leuk, want je leert daar veel van :-)

Groet, Aiko