Arduino nunchuck non originale

Rientrato dalla pausa estivami ricollego subito all’ultimo articolo pubblicato parlando di Arduino nunchuck.

beginner kit nunchuck adattatore montato

Sai che sono contro le cose non originali perché credo nel diritto d’autore e sul sostegno delle aziende che investono in ricerca e sviluppo per fornirci prodotti sempre nuovi e innovativi, se non sosteniamo le aziende originali queste a lungo andare chiuderanno o non svilupperanno più nulla di innovativo per il tuo diletto.

E’ il caso del nunchuck largamente imitato come lo stesso arduino da ditte che copiano senza innovare e senza aggiungere nulla di nuovo e innovativo al prodotto.

Fatta questa premessa so che alcuni maker pur di risparmiare 10/15 euro sono disposti ad acquistare prodotti non originali come ha fatto Angelo che ha commentato uno dei miei articoli sul nunchuck chiedendomi come risolvere il problema da lui riscontrato di malfunzionamento dell’arduino nunchuck non originale.

Non possedendolo non mi è stato possibile aiutare Angelo, che armato di tanta pazienza ha trovato un interessante articolo sul nunchuck non originale ed ha voluto condividere la modifica al codice, che riporto di seguito.

Sketch arduino nunchuck

Angelo scrive:

Allora dopo tanto sbattimento e dopo tanto chiedere e cercare, smenbrato un nunchuck , ho scoperto, letto ,imparato, che il protocollo di comunicazione del nunchuck è i2c il quale specifica la modalità di accesso alla periferica (ovviamente per me è una scoperta ma per voi sara cosa risaputa :D) quindo 0 in scrittura e 1 in lettura.

per farla breve mentre nel nunchuck originale la esequenza di inizializzazione è:

[I2C Start] 0xA4 0×40 0×00 [I2C Stop]

in quelli di marca cinese diventa questa:

[I2C Start] 0xA4 0xF0 0×55 [I2C Stop]

Quindi ho modificato il codice:

\\stringhe nunchuck nintendo

Wire.beginTransmission(0×52);
Wire.send(0×40);
Wire.send(0×00);
Wire.endTransmission();

\\stringhe nunchuck farlocco

Wire.beginTransmission(0×52);
Wire.send(0xF0);
Wire.send(0×55);
Wire.endTransmission();
delay(1);
Wire.beginTransmission(0×52);
Wire.send(0xFB);
Wire.send(0×00);
Wire.endTransmission();

ovviamente e solo un pezzo.

Ciò implica che, ho trovato e incrociato varie info.

Ringrazio Angelo per aver voluto condividere il suo risultato e ti lascio il video che Angelo mi ha inviato in merito a questo argomento:

  • Questo sito ed i suoi contenuti è fornito "così com'è" e Mauro Alfieri non rilascia alcuna dichiarazione o garanzia di alcun tipo, esplicita o implicita, riguardo alla completezza, accuratezza, affidabilità, idoneità o disponibilità del sito o delle informazioni, prodotti, servizi o grafiche correlate contenute sul sito per qualsiasi scopo.
  • Ti chiedo di leggere e rispettare il regolamento del sito prima di utilizzarlo
  • Ti chiedo di leggere i Termini e Condizioni d'uso del sito prima di utilizzarlo
  • In qualità di Affiliato Amazon io ricevo un guadagno dagli acquisti idonei qualora siano presenti link al suddetto sito.

Permalink link a questo articolo: https://www.mauroalfieri.it/elettronica/arduino-nunchuck-non-originale.html

3 commenti

    • Angelo il 26 Luglio 2014 alle 00:59
    • Rispondi

    Caspita, visto solo adesso 😉

    • Angelo il 26 Luglio 2014 alle 01:30
    • Rispondi

    Vorrei precisare che solo il Nunchuk e cinese comprato da Game stop, l’arduino e originale. 😀

    1. Grazie 🙂

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.