Ik ben een enthousiaste maker van stuurtjes voor een race simulator en heb al een aantal stuurtjes gemaakt dmv arduino's met knoppen, rotary encoders en potmeters. Dit is eigenlijk altijd wel goed gegaan en met voorbeeld sketches en gezond verstand kom ik een heel eind.
Nu heb ik een nieuwe wheel-base (Fanatec CSW V1) Deze maakt gebruik van een "hand shake" tussen stuur en wheel-base. Als deze "handshake" niet aanwezig is doet de force feedback van de base het niet. Dus heb ik niks aan mijn DIY stuurjes. Deze "handshake" heb ik al gesimuleerd dmv een teensy met een gevonden sketch.
Aangezien de menu instellingen ook via het stuurtje gaan wil ik commando's gaan sturen via de serial monitor. De sketch heb ik. alleen bij het aansluiten van de level shifter op de Nano loop ik klem. Mede omdat de beschrijving mij niet geheel duidelijk is.
Het begeleidend schrijven is het volgende:
Important: If anyone is attempting this! Arduino uno runs and outputs 5V. the CSW wheelbase SPI lines are using 3.3V. you might damage the wheelbase (mostly the MISO line) without a level shifter. I have an arduino Uno connected to the CSW wheelbase, through a level shifter.
Also, the code might not work without a level shifter - as the arduino might not recognize the 3.3V from the wheelbase as HIGH. (although it should, over 3V).
in order to get this working, you need the CS line connected to digital pin 2 on the arduino uno*, at least until I will change the interrupt routine (to use pin 10, the actual CS line)
arduino D2 to CS on wheelbase*
arduino D13 (SCK) to SCK on wheelbase*
arduino D12 (MISO) to MISO on wheelbase*
arduino D11 (MOSI) to MOSI on wheelbase*
arduino Gnd to Gnd on wheelbase
If you're using an actual level shifter (as you should), you will need to connect both 5V from arduino and 3.3V from wheelbase to the level shifter.
=through a level shifter!
good luck!
Mijn tekening met de aansluitingen (zoals ik denk) is:
Het is me niet bekend wat er misgaat, want daar heb je niets over verteld.
Vastlopen betekent dat je niet verder komt, maar verder zegt het mij niets.
Daarom zou het goed zijn als je meer vertelt over wat er wel en wat er niet gebeurt, want hier op het forum kunnen we dat echt niet zien.
Ik zie wel een verschil tussen jouw Fritzing! en de beschrijving.
Je hebt alle pinnen verbonden volgens de beschrijving.
In de beschrijving staat ook dat je zowel de 5 volt van de Arduino, als de 3.3 volt van je stuur met de levelshifter moet verbinden.
Er staat niet in dat je de 3.3 volt uitgang van je Arduino met de 3.3 volt uitgang van je stuur moet verbinden.
Maar volgens je Fritzing! heb je dat wel gedaan.
Je moet nooit 3 voedingen met elkaar verbinden, alleen de GNDs.
Wanneer je ook de voedingen zoals die 3.3 volt met elkaar verbind, dan gaat de ene voeding proberen de andere te regelen en andersom.
En dat kan nooit goed gaan.
Maar of daar de oorzaak van de problemen in zit weet ik niet.
Natuurlijk had je allang uitgezocht dat MOSI staat voor Master Out, Slave In en MISO dus voor Master In , Slave Out.
Dan moet je alleen wel weten wie de master is en wie de slave, en daar in je programma op de juiste manier mee omgaan (want dat stuur van je had het voor zichzelf al bepaald).
Twee masters die door mekaar gaan lopen kletsen gaat niet goed, en 2 slaves die alleen maar staan te luisteren schiet ook niet op.