Doel:€250.00
Donaties:€50.00

Per saldo:€-200.00

Steun ons nu!

Laatst bijgewerkt
op 03-01-2024

Vacature: secretaris bestuur
Algemeen

De stichting

Recente berichten

Piko NS 2015 stroomafname probleem door meino
Vandaag om 18:57:31
Bauarbeiten im gange door ruudns
Vandaag om 18:50:26
MARDEC, de Multifunctionele ARduino dcc DECoder. door NTeering
Vandaag om 18:39:49
Mijn eerste H0-modeltreinbaan in aanbouw door aad52
Vandaag om 17:40:42
HSM D1715 door vpeters1984
Vandaag om 17:34:25
Beekdaelen in H0 door Stieven76
Vandaag om 17:17:41
Punt- en hartstukken door FritsT
Vandaag om 17:11:38
Al mijn goede ideeën... door Monobrachius
Vandaag om 17:10:33
Gebruik je Arduino zonder te "programmeren" ;) door Rsd1000
Vandaag om 17:07:59
Welke Vallejo kleur voor drijfstangen van een DB stoomlocomotief? door Ronald69
Vandaag om 17:04:52
Toon hier je nieuwe (model-) spooraanwinst(en)... door Ronald69
Vandaag om 16:54:22
Ombouw/Pimpen Bolle neuzen door bollen neus
Vandaag om 15:58:15
US diorama in H0 door VAM65
Vandaag om 15:22:05
Hengelo in 1981-1982, maar dan anders: Kassenberg in N door spoorijzer
Vandaag om 15:08:30
Kleine Baan in H0 (≤ 0.5m²) door Jack Black (NS1220)
Vandaag om 15:06:14
U-vorm beperkte ruimte (H0 C-rails) door Jelmer
Vandaag om 14:58:04
Onlangs gespot - gefotografeerd, de links door Jeroen Water
Vandaag om 14:33:00
N spur scenery elementen maken van gips of klei? door Dave.......
Vandaag om 14:30:06
De overeenkomst tussen een Ovaalramer en een Motorpost. door RK
Vandaag om 14:28:54
Onlangs gespot - gefotografeerd, de foto's door mass am see
Vandaag om 14:18:46
BMB-Module: “Corfe Castle Station” door Hans van de Burgt
Vandaag om 14:07:52
welk jaar ging Marklin OVP voor wagons van blauw naar wit door Railman
Vandaag om 13:40:42
GSS Jubileumbaantje (0e / 0n30) door MacArthur
Vandaag om 12:55:30
NTM P1 in Schaal-1 door MaraNCS
Vandaag om 11:39:38
Rio Grande Southern - Lizard Head Pass door Hans GJ
Vandaag om 11:30:20
Variaties op Station Zetten Andelst in HO door Duikeend
Vandaag om 10:54:40
De IJmuider spoorlijn - korte geschiedenis en plaatjes door Vislijn
Vandaag om 10:42:29
Internationale Spoor 0 en 1 dagen in Gießen, 23 en 24 maart, 2024 door bernhard67
Vandaag om 08:42:53
De Hondsrugbaan door mass am see
Vandaag om 08:15:11
Pfarrerwinkel bahn door Jelmer
Vandaag om 08:00:19
  

Auteur Topic: MARDEC, de Multifunctionele ARduino dcc DECoder.  (gelezen 347994 keer)

Goosie

  • Offline Offline
  • Berichten: 161
    • www.henkdegans.nl
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #90 Gepost op: 06 maart 2016, 17:25:40 »
Als ik van de week tijd heb, zal ik eens even een MARDEC II opbouwen en aan de pijnbank met de DR5000 hangen.
Ik ben heel benieuwd! Ik heb software versie 1.1.1. in de DR5000, het zou mooi zijn als jij een oudere versie hebt, en het eerst daarmee test!
Met vriendelijke groet,

Henk de Gans

Servé

  • Team encyclopedie
  • Offline Offline
  • Berichten: 1748
  • Niks kan tippen aan een E1700
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #91 Gepost op: 06 maart 2016, 17:27:50 »
Ik zou het niet weten, ik heb hem net terug van reparatie en heb hem nog niet opgestart.
Vriendelijke groet, Servé.

FransS

  • Offline Offline
  • Berichten: 115
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #92 Gepost op: 06 maart 2016, 18:29:44 »
Nog even een weetje.
Ik heb mijn eerste 12 servo's werkend onder de baan en het was als ik het goed heb nog een open vraag hoe lang de lengte van de signaaldraad tussen servo en arduino kan zijn zonder storing e.d.
Antwoord: minimaal 2 meter. Dat is bij mij de grootste lengte en het werkt.
Op de club ben ik dinsdagavond aan het stoeien geweest met de DR5000 en ik vind het een prachtige centrale. Dus ik dacht direct...die moet ik hebben ;D
Maar gelet op de vorige berichten wacht ik het even met spanning af.
Ik heb er niet zoveel verstand van om me een oordeel  aan te meten laat staan met oplossingen te komen.

Frans
Op de klei rijden ook treinen

Goosie

  • Offline Offline
  • Berichten: 161
    • www.henkdegans.nl
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #93 Gepost op: 07 maart 2016, 10:29:22 »
Op de club ben ik dinsdagavond aan het stoeien geweest met de DR5000 en ik vind het een prachtige centrale. Dus ik dacht direct...die moet ik hebben ;D
Maar gelet op de vorige berichten wacht ik het even met spanning af.
Ik heb er niet zoveel verstand van om me een oordeel  aan te meten laat staan met oplossingen te komen.

Frans
Hallo Frans,

Ik zou hem gewoon lekker gaan bestellen! De Dr5000 is gewoon een prachtig product, ik ben er nog steeds erg blij mee! Maar je kunt niet verwachten dat een nieuw modern product gelijk met alle door diverse makers geproduceerde randapparatuur werkt. Vraag maar aan Bill Gates, die heeft daar ook last van  ::) Het is ook nog helemaal niet duidelijk waar (aan welke kant!) het probleem(pje) precies zit. Daarom ben ik ook benieuwd of mijn ervaringen door andere DR5000 gebruikers gedeeld worden. Maar door kennis en ervaring en enthousiasme met elkaar te delen, gaat ook dit uiteindelijk gewoon werken.
Met vriendelijke groet,

Henk de Gans

Karst Drenth

  • Offline Offline
  • Berichten: 10227
  • NS blauw, groen, rood, bruin, grijs en standgroen
    • Plan U op Sleutelspoor
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #94 Gepost op: 07 maart 2016, 10:38:12 »
(y) prima instelling Henk !

Het gaat vast allemaal werken ;)


Grtzz,

Karst

FransS

  • Offline Offline
  • Berichten: 115
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #95 Gepost op: 07 maart 2016, 18:14:24 »
Mmmm........... breng me aan het wankelen. Ik ben nog 15 wissels boven op die 12 die al werken aan het maken en de DR5000 moet goed samen werken met de Arduino.
Zonder gein, dat ding komt er maar ik moet toch noodgedwongen de oplossingen afwachten, want ze zijn uitverkocht.
Ook ik ben er van overtuigd dat het gaat werken Karst.
 

Frans
Op de klei rijden ook treinen

Servé

  • Team encyclopedie
  • Offline Offline
  • Berichten: 1748
  • Niks kan tippen aan een E1700
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #96 Gepost op: 07 maart 2016, 20:31:36 »
Op het eerste gezicht krijg ik inderdaad de MARDEC niet werkend met de DR5000.

Zou iemand dat DCC-snifferprogramma (.zip of .ino) van Ruud de Boer even willen plaatsen? (Of mailen, zie profiel voor e-mail) De downloadlink (deze) wil bij mij helaas niet werken...
Vriendelijke groet, Servé.

Goosie

  • Offline Offline
  • Berichten: 161
    • www.henkdegans.nl
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #97 Gepost op: 07 maart 2016, 21:58:25 »
Op het eerste gezicht krijg ik inderdaad de MARDEC niet werkend met de DR5000.

Zou iemand dat DCC-snifferprogramma (.zip of .ino) van Ruud de Boer even willen plaatsen? (Of mailen, zie profiel voor e-mail) De downloadlink (deze) wil bij mij helaas niet werken...
welke software versie heb jij in de DR5000 Serve?
Met vriendelijke groet,

Henk de Gans

Servé

  • Team encyclopedie
  • Offline Offline
  • Berichten: 1748
  • Niks kan tippen aan een E1700
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #98 Gepost op: 07 maart 2016, 22:18:19 »
V1.1.1

Net even de DCC_sniffer erin geladen, welke inderdaad perfect werkt. Helaas heb ik de MARDEC nog niet werkend gekregen. Ik zal proberen morgen wat dieper in de code te graven.
Vriendelijke groet, Servé.

NTeering

  • Offline Offline
  • Berichten: 1024
    • ARduino Controlled MOdel RAilway
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #99 Gepost op: 08 maart 2016, 00:32:53 »
@Servé

1) Ruud heeft kennelijk nog steeds downloadproblemen, maar je hebt het kennelijk toch gevonden.
2) Die sniffer doet bij mij dus helemaal niks noppes nada. ???  Geen idee waarom. Maar m'n servo's draaien wel ;D
3) V1.1.1 is geloof ik ook de versie Henk. Die doet het dus niet met de MARDEC.
    Heb je nog een andere centrale om mee te testen?

@Karst
Dat stukje code komt bijna letterlijk uit het voorbeeld van Mynabay.

void BasicAccDecoderPacket_Handler(int address, boolean activate, byte data)
{
        // Convert NMRA packet address format to human address
    address -= 1;
    address *= 4;
    address += 1;
    address += (data & 0x06) >> 1;
   
    boolean enable = (data & 0x01) ? 1 : 0;
   
    for(int i=0; i<(int)(sizeof(gAddresses)/sizeof(gAddresses[0])); i++)
    {
        if( address == gAddresses[i].address )
        {
            Serial.print("Basic addr: ");
            Serial.print(address,DEC);
            Serial.print("   activate: ");
            Serial.println(enable,DEC);
           
            if( enable )
            {
                gAddresses[i].output = 1;
                gAddresses[i].onMilli = millis();
                gAddresses[i].offMilli = 0;
            }else{
                gAddresses[i].output = 0;
                gAddresses[i].onMilli = 0;
                gAddresses[i].offMilli = millis();
            }
        }
    }
   
}

Ik heb er de originele  output aan toegevoegd.

Resultaat met twee servo's op adres 4 en 5.

MARDEC II, the Multifunctional ARduino dcc DECoder
USB version 2.0

Normal mode of MARDEC #1
For configuration mode use address 8
For saving all settings use address 7

Servo 0 on pin 3 and address 4 set to 105 degrees
Servo 0 on pin 4 and address 5 set to 110 degrees
Basic addr: 4   activate: 0
Basic addr: 4   activate: 0
Basic addr: 4   activate: 0
Basic addr: 4   activate: 0
Basic addr: 4   activate: 0
Basic addr: 4   activate: 0
Basic addr: 4   activate: 1
Reset now disabled (komt uit MARDEC)
Basic addr: 4   activate: 1
Basic addr: 4   activate: 1
Basic addr: 4   activate: 1
Basic addr: 4   activate: 1
Basic addr: 4   activate: 1
Servo 0 on pin 3 and address 4 set to 72 degrees
Basic addr: 5   activate: 0
Basic addr: 5   activate: 0
Basic addr: 5   activate: 0
Basic addr: 5   activate: 0
Basic addr: 5   activate: 0
Basic addr: 5   activate: 0
Basic addr: 5   activate: 0
Basic addr: 5   activate: 0
Basic addr: 5   activate: 0
Basic addr: 5   activate: 1
Basic addr: 5   activate: 1
Basic addr: 5   activate: 1
Basic addr: 5   activate: 1
Basic addr: 5   activate: 1
Basic addr: 5   activate: 1
Servo 0 on pin 4 and address 5 set to 69 degrees
Basic addr: 4   activate: 0
Basic addr: 4   activate: 0
Basic addr: 4   activate: 0
Basic addr: 4   activate: 0
Basic addr: 4   activate: 0
Basic addr: 4   activate: 0
Basic addr: 4   activate: 0
Basic addr: 4   activate: 0
Servo 0 on pin 3 and address 4 set to 105 degrees

Zolang ik de toets van  m'n handregelaar (Daisy II) ingedrukt houdt wordt er output gegenereerd. Maar niet onbeperkt, na zo'n 60 regels stopt hij ermee.

@Henk,
Ik zal je dinsdag deze debug versie mailen. Dan kun je het ook proberen.

Mvg
Nico

Servé

  • Team encyclopedie
  • Offline Offline
  • Berichten: 1748
  • Niks kan tippen aan een E1700
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #100 Gepost op: 08 maart 2016, 08:02:04 »
@Nico,

Ik heb nog een MultiMaus liggen, daar ga ik vanavond mee testen.
Vriendelijke groet, Servé.

Karst Drenth

  • Offline Offline
  • Berichten: 10227
  • NS blauw, groen, rood, bruin, grijs en standgroen
    • Plan U op Sleutelspoor
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #101 Gepost op: 08 maart 2016, 08:09:19 »
Hoi,

Ik zou de logging als volgt wijzigen:

boolean enable = (data & 0x01) ? 1 : 0;
   
    for(int i=0; i<(int)(sizeof(gAddresses)/sizeof(gAddresses[0])); i++)
    {
        Serial.print("Basic addr: ");
        Serial.print(address,DEC);
        Serial.print("   activate: ");
        Serial.println(enable,DEC);

        if( address == gAddresses[i].address )
        {
            if( enable )
            {
                gAddresses[i].output = 1;
                gAddresses[i].onMilli = millis();
                gAddresses[i].offMilli = 0;
            }else{
                gAddresses[i].output = 0;
                gAddresses[i].onMilli = 0;
                gAddresses[i].offMilli = millis();
            }
        }
    }
   
}

Dan kun je zien welke adressen er binnen komen, en ben je niet afhankelijk van een adres match ;)

Grtzz,

Karst

NTeering

  • Offline Offline
  • Berichten: 1024
    • ARduino Controlled MOdel RAilway
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #102 Gepost op: 08 maart 2016, 08:49:17 »
Die wijziging had ik later ook bedacht.
Heb Henk de gewijzigde versie gestuurd.
Bij mij zie ik dan alle adressen voorbij komen die ik indruk op de handregelaar.

Servé

  • Team encyclopedie
  • Offline Offline
  • Berichten: 1748
  • Niks kan tippen aan een E1700
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #103 Gepost op: 08 maart 2016, 16:22:47 »
Met de MultiMaus werkte het meteen goed.

Maar... Bij mij werkt de DR5000 nu wel met de MARDEC. Wat heb ik veranderd? Helemaal niks... Als eerste wilde ik de debug-regels van Karst toevoegen, maar dat ging niet zo 123. De sketch zit zo vol dat het programma-geheugen tot de nok toe vol zat. 1 serial-print was al te veel ;D Dus ergens anders wat ge-comment. Toen kon ik zien dat het DCC-dignaal inderdaad goed gedecodeerd wordt en dat de adressen goed waren. De uitgangen werkten echter niet. Vervolgens de originele MARDEC-code er weer in gezet, en toen werkte het opeens wel fatsoenlijk ???

Uiteindelijk de MultiMaus aan de DR5000 gehangen en daarmee getest. Op een gegeven moment had ik waarschijnlijk wat te vaak op knopjes gedrukt, want de MultiMaus reageerde niet meer en verscheen er "ERR 13" :-\
Even op de STOP en daarna op de GO knop drukken loste het op.

Sindsdien heeft het goed gewerkt, dus ik heb eigenlijk geen idee wat het geweest is...
« Laatst bewerkt op: 08 maart 2016, 16:24:49 door Servé »
Vriendelijke groet, Servé.

NTeering

  • Offline Offline
  • Berichten: 1024
    • ARduino Controlled MOdel RAilway
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #104 Gepost op: 08 maart 2016, 17:03:32 »
Het moet niet gekker worden !

Inderdaad zit de Mardec tot de laatste byte vol. Wellicht heb je het verkeerde commented waardoor de uitgangen het eerst niet deden. Voor Henk heb ik gewoon wat helptekst commented, dat kan nooit kwaad.

Valt er naar jouw idee nog wat te tunen aan de Mynabay library?
/
// NMRA DCC Definitions
//
    // Microsecond 0 & 1 timings
#define    kONE_Min         52
#define    kONE_Max         64

#define    kZERO_Min        90
#define    kZERO_Max        10000

    // Minimum preamble length
#define    kPREAMBLE_MIN    10