Usb Host shield + mega2560

buongiorno,
ho un problema con la mia scheda mega 2560 r3 e usb host shield.
Utilizzando la libreria USB_Host_Shield_2.0 e caricando lo sketch USBHIDBootKbd il monitor seriale mi restituisce "start" ma se collego una tastiera Usb non funziona e rimane in start.

ho provato nelle varie sezioni e ho controllato le saldature da fare sullo shield ma l 'unico dubbio che mi rimane è la compatibilità dello shield con arduino mega 2560
avete qualche suggerimento?
questo è il mio primo post spero di non fare casino e chiedo scusa se ho sbagliato sezione.

grazie
andrea

Cortesemente, come prima cosa, leggi attentamente il REGOLAMENTO della sezione Italiana del forum, (prestando molta attenzione al punto 15), dopo di che, come da suddetto regolamento, fai la tua presentazione NELL'APPOSITA DISCUSSIONE spiegando bene quali esperienze hai in elettronica e programmazione, affinché noi possiamo conoscere la tua esperienza ed esprimerci con termini adeguati.

Grazie, igor

P.S.: Ti ricordo che, purtroppo, fino a quando non sarà fatta la presentazione nell’apposita discussione, nel rispetto del succitato regolamento nessuno ti risponderà (eventuali risposte verrebbero temporaneamente nascoste), quindi ti consiglio di farla al più presto. :wink:

fatto
grazie :smiling_face:

QUALE host shield ? ... ormai sul mercato ce ne sono svariati, metti sempre un link così che possiamo capire di quale prodotto esattamnete parli :wink:

Comunque ... normalmente gli USB Host Shield comunicano con i bus SPI (e quello originale Arduino aveva un grave bug di progettazione per cui, una volta montato, monopolizzava il bus SPI - maggiori dettagli QUI) e, sulla MEGA, i pin del bus SPI NON coincidono con quelli della UNO per cui il colloquio con tali shield avviene tramite il connettore ICSP (quello a 6 pin) che deve quindi garantire un buon contatto.

Poi la MEGA impone che il pin 53 (SS), anche se non usato, venga messo come OUTPUT ad HIGH.

Insomma, usando la MEGA, occorre fare un po' attenzione ai vari pin che si usano perché la disposizione è differente.

Guglielmo

grazie per la risposta,
l'host shield è il seguente [https://amzn.eu/d/9WPrA5f]

ho fatto una prova impostando il pin 53 come OUTPUT in HIGH nel void setup

void setup()
{
  Serial.begin( 9600 );
 pinMode(53,OUTPUT);
digitalWrite(53,HIGH);

e ha dato segni di vita!!
per alcuni secondi la tastiera ha comunicato(prima come sempre restituisce start e poi alla pressione di un tasto della tastiera collegata ha restituito la lettera )

poi il restituisce solo start

Andrea

Stai provando con gli esempi che sono a corredo della libreria o con un tuo programma? Perché sarebbe bene verificare il funzionamento del tutto con gli esempi a corredo ... :roll_eyes:

Guglielmo

si,
sto usando gli esempi delle libreria USB_Host_Shield_2.0
USBHIDBootKbd

:thinking: ... allora non saprei ... se tutto è collegato correttamente, il pin 53 impostato, il pin SS della scheda esattamente indicato ... dovrebbe andare :roll_eyes:

Guglielmo

il pin SS della scheda esattamente indicato... cosa intendi?

il pin 53 lho impostato high

Andrea

Ogni cosa che lavora sul bus SPI, oltre ai pin del bus (MISO, MOSI, e SCK) ha un pin univoco dedicato che serve ad abilitare e disabilitare il modulo ... questo pin è normalmente indicato come SS o CS ... ma vedo che quella libreria ha i pin già definiti internamente (file avrpins.h) e non occorre passare quale pin si usa come SS/CS ... :roll_eyes:

Tu stai usando altre cose o hai solo quello shield collegato?

Guglielmo

si sto usando solo uno shield.

ho anche provato un altra scheda mega con un altro usb shield ma hanno tutti la stessa malattia.
Andrea

Altro thread in pochi giorni con problemi con la Mega.
@andruz85, domanda anche per te, ma hai una MEGA originale o clone ? Perché a volte i cloni non sono sempre "affidabili" .

ciao

è un elegoo

ELEGOO Mega R3 Board... https://www.amazon.it/dp/B06XRJNB27?ref=ppx_pop_mob_ap_share

ne consigliate una migliore con stessi ingressi/uscite?

andrea

Ma devi per forza usare una tastiera USB? ... perché ci sono librerie per leggere, usando alcuni pin, ma senza usare shield, le ottime vecchie tastiere PS2 :slight_smile:

Guglielmo

P.S.: ad esempio QUESTA

Il file PS2Keyboard/utility/int_pins.h indica i possibili pin per ogni tipo di scheda supportata ... e, dalla 2.4:

Support Teensy 3.0, Arduino Due, Arduino Leonardo & other boards

... ovvero, praticamente la maggior parte.

Guglielmo

lho già realizzata e funziona bene con ps2 ma volevo passare a usb

... e complicarti inutilmente la vita, usare un sacco di risorse, una scheda aggiuntiva e appesantire il codice :roll_eyes:

Guglielmo

non deve fare molto e usb mi farebbe comodo

ciao,
ho provato anche con un arduino originale...niente

insoluto…alla fine ho restituito la scheda usb host shield per disperazione… ho notato solo che i punti sulla scheda a 3,3 volt salivano a 3,5 v….
sono tornato al progetto con tastiera ps2…