La 2a MCU sull'UNO R3 può essere utilizzata per l'emulazione della tastiera?


9

A seguito di Qual è la seconda intestazione ICSP per in Arduino Uno R3? Mi chiedevo come questo potesse essere hackerato a nostro vantaggio.

Ad esempio, è possibile riscrivere quel firmware per far riconoscere l'ONU come input da mouse / tastiera? Questo potrebbe essere fatto dopo il processo del caricatore di avvio e lasciare intatto il processo di caricamento?

Dato l'IO limitato, sembra che le sue funzioni potrebbero essere limitate. Inoltre non ho idea di quanto codice sia disponibile lo spazio.


In aggiunta a questa domanda, sentiti libero di aggiungere altre idee a cui questo potrebbe essere usato mentre (per quanto possibile), lasciando intatto l'ambiente arduino. Cioè, cos'altro potrebbe essere violato per aumentarne la funzionalità?
Madivad,

Il flash è troppo piccolo per contenere più hack, ma il sito Web LUFA (collegato alla mia domanda) ha molti hack diversi che sono compatibili con il 16u2
TheDoctor

Troppo piccolo? 16kB sono molti flash. Sono sorpreso che non siano rimasti con l'8U2 come nell'originale (anche se potrebbero esserci problemi di disponibilità).
Ignacio Vazquez-Abrams,

Ho appena controllato Digi-Key e la differenza di prezzo tra 8U2 e 16U2 è di circa $ 0,01. A quel prezzo è un gioco da ragazzi, anche se non hai bisogno del flash extra.
Ignacio Vazquez-Abrams,

Questa domanda è nata da un progetto che ho visto su hackaday l'anno scorso, e un amico e io ne abbiamo discusso dentro e fuori da allora. Ho appena trovato questo (solo due settimane): hackaday.com/2014/03/16/…
Madivad

Risposte:


7

Sì, è possibile. usando LUFA, puoi masterizzare il nuovo firmware sul convertitore seriale. L'unico problema è che è necessario ri-masterizzare il convertitore USB-seriale per caricare un altro programma.

Informazioni: http://www.fourwalledcubicle.com/LUFA.php

Pagina specifica: http://mitchtech.net/arduino-usb-hid-keyboard/


Ci sono ulteriori informazioni sul firmware che esiste nel 2 ° mcu? Non sono stato in grado di trovare nulla al riguardo. Sono sicuro che qualcuno da qualche parte lo abbia hackerato in modo specifico. Personalmente, mi piacerebbe vedere il codice. L'enfasi (per me) lascerebbe in gran parte l'ambiente intatto per consentire futuri riflessi. Il che non credo sarebbe troppo difficile da incorporare dopo che non c'è nulla dall'IDE dopo il reset.
Madivad,

@Madivad è un semplice file assembly che converte i segnali USB in seriale. È necessario utilizzare AvrDude nudo per eseguire il flashing.
TheDoctor

da uno di quei link che ho trovato: arduino.cc/en/Hacking/DFUProgramming8U2 Ho cercato questo tipo di informazioni, ovviamente termini di ricerca errati :) Grazie per i collegamenti Doc.
Madivad,

3

Il secondo MCU è simile a quello utilizzato nel Leonardo, ma è più piccolo e meno capace ( ATmega16U2 vs ATmega32U4 ). È certamente possibile riprogrammarlo per fare ciò che ti piace, ma i suoi limiti significano che puoi avere meno "dispositivi" USB contemporaneamente.

Non ho esaminato il firmware esistente, ma dovrebbe certamente essere possibile aggiungere il proprio codice personalizzato in modo tale che possano coesistere sia la normale connessione seriale all'MCU principale sia il codice aggiuntivo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.