Eccomi di nuovo e dato che non riesco ad editare i post precedenti
iniziamo da qui!
Per prima cosa una foto del display RRD SMARTCONTROLLER e del mio bellissimo ed ordinato adattatore
:
Spiegherò cosa serve per il corretto funzionamento per punti.
Ho preso come riferimento il Marlin Firmware ma si può ottenere lo stesso risultato anche con gli altri andando ad editare i files corrispondenti a quelli qui mostrati.
Punto1: L'ADATTATORE
Uno dei problemi principali che non mi facevano funzionare il tutto!
L'adattatore che permette di interfacciare la RADDS con lo Smart LCD è simile a questo: [
www.thingiverse.com] e [
github.com]
che come detto nel post sopra è per il fratello maggiore, il REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER.
Tale adattatore però, ho scoperto con un po' di ricerca e di aiuti,
ha bisogno di altri collegamenti fisici dato che il nostro display testuale comunica a 4 bit attraverso i pin:
LCD_PINS_D4 (presente anche sul FullGLCD)
LCD_PINS_D5
LCD_PINS_D6
LCD_PINS_D7
più i classici LCD_PINS_RS e LCD_PINS_ENABLE
Su tutti i pin si può mettere in serie una resistenza da 1K che ci permette di avere cavi leggermente più lunghi e segnali più stabili.
Punto2: IL FIRMWARE
Dopo molte sperimentazioni e richieste su forum vari mi sembra di aver capito che l'accoppiata RADDS + RRD Character LCD non sia prevista.
Si possono usare diversi metodi per aggiungere le funzionalità che ci servono ma io ho optato per questa:
aggiungere al file pins_RADDS.h (situato sotto Marlin-bugfix-2.0.x\Marlin\src\pins) i riferimenti corretti al display + lettore SD:
#elif ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
// The REPRAP_DISCOUNT_CONTROLLER requires
// an adapter such as [
www.thingiverse.com]
// PLUS the pins LCD5 LCD6 LCD7
#define LCD_PINS_RS 42
#define LCD_PINS_ENABLE 43
#define LCD_PINS_D4 44
#define LCD_PINS_D5 45
#define LCD_PINS_D6 46
#define LCD_PINS_D7 47
#define BEEPER_PIN 41
#define BTN_EN1 50
#define BTN_EN2 52
#define BTN_ENC 48
da inserire subito prima la sezione #elif ENABLED(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER) che configura invece il display grafico.
La scheda SD risulta già funzionante perché è definita correttamente in questa sezione, poco sopra la nostra modifica:
//
// Misc. Functions
//
#define SDSS 4
#define SD_DETECT_PIN 14
Ora basterà definire il display nella sezione corretta del
configuration.h:
//============================= LCD and SD support ============================
#define SDSUPPORT //abilitare se si vuole usare il lettore SD card
#define REVERSE_ENCODER_DIRECTION // per la direzione dei movimenti quando si ruota il pomello a lato del display
e soprattutto:
//======================== LCD / Controller Selection =========================
//======================== (Character-based LCDs) =========================
#define REPRAP_DISCOUNT_SMART_CONTROLLER // facendo attenzione a disabilitare tutti gli altri display disponibili
punto3: Fatto! COLLEGARE IL TUTTO
Fino a che qualcuno non inserisce questa possibilità sui configuratori online o all'interno dei vari file che definiscono i pins dovremo fare questo procedimento ogni volta che si aggiorna/si cambia firmware.
Spero di essere stato utile a qualcuno e di non aver fatto errori! :-)
P.S. Grazie mille a G.Danese per l'aiuto che mi ha fornito sul gruppo FB di MK4Duo.