'class RTC_DS1307' has no member named 'begin'

9six4:
E' quello che sto facendo ]:smiley: Adesso ti dico... :smiley:

scusa, era solo per darti un suggerimento, non dubito che te la cavi da solo, ci mancherebbe :slight_smile: ma alle volte uno segue una sua idea fissa e non pensa alle cose più sceme, mentre io che sono scemo non so pensare ad altro, ecco il perché dei mei suggerimenti del zzz :smiley:

No Michele mi hai frainteso, il diavoletto l'ho messo perchè stavo facendo una furbata per aggirare il problema, non ti fare problemi figurati, anzi, hai ragione, a volte sono le cavolate a creare i problemi più grossi.
Comunque, tornando al problema fatto... e... COMPILA!!! XD
Mistero da 100 punti! Perchè su una pagina compila e una no??? Stessa posizione, stesso IDE, stesse librerie, tutto identico, uno va e uno no! Misteroooooo!

Fammi capire, tu hai fatto una copia SOLO di alcune parti dell'esempio? Se è così penso che tu abbia solo omesso di copiare una qualche riga fondamentale.
L'esempio quindi è molto più complesso del tuo sketch, se ho ben capito, se compila lui questa è la conferma che manca semplicemente qualcosa. Prova a recuperare tutti i riferimenti al DS1307 oppure, sempre con la prova dello scemo (che sarei sempre io), riparti dall'esempio ed elimina una cosa per volta facendo sempre la verifica, è da squilibrati ma si arriva di sicuro ad un punto certo :slight_smile:

Non è che l'include della RTClib vada dopo quello della Wire, visto che la prima dipende dalla seconda?

@ Michele, ho provato,tra l'altro poi ho cancellato tutto ciò che non mi serviva fino a che il secondo codice è divendato identico al primo. Uno compila, l'altro no! Mistero! :~

@dancol90, ho provato, niente da fare, non compila neanche nello stesso ordine.

9six4:
@ Michele, ho provato,tra l'altro poi ho cancellato tutto ciò che non mi serviva fino a che il secondo codice è divendato identico al primo. Uno compila, l'altro no! Mistero! :~

Scusami, o non capisco o mi sono spiegato una mrd :disappointed_relieved:
Io avrei fatto così: parto dall'esempio funzionante e ne elimino un pezzo alla volta, e per ogni pezzo eliminato faccio la compilazione, se la compilazione è ok tolgo un altro pezzo e ripeto la compilazione; se invece la compilazione mi dà errore so che quel pezzo devo lasciarlo, almeno temporaneamente nello sketch.
Alla fine arrivo ad uno sketch dimagrito ma funzionante.
Ora siccome l'esempio non ha tutte le lib e lo shield tuoi, dovresti partire dall'esempio completo, aggiungere subito shield e lib tue e fare una compilazione, perché se già ti dà errore c'è un conflitto, se non te ne dà invece procedi come detto.
La facciamo questa prova? o hai già fatto proprio così e non ho capito niente io?

Michele è proprio quello che ho fatto :slight_smile:
Sono partito dall'esempio funzionante ed ho tolto man mano le parti che non mi servivano verificando ogni volta che compilasse. Una volta tolto tutto ciò che non mi serviva ho iniziato ad aggiungere le parti del mio codice che mi servivano, controllando sempre che compilasse. Alla fine ho ottenuto che i due codici fossero completamente identici! Uno compilava uno no, ed il perchè proprio non lo capisco.

9six4:
Michele è proprio quello che ho fatto :slight_smile:
Sono partito dall'esempio funzionante ed ho tolto man mano le parti che non mi servivano verificando ogni volta che compilasse. Una volta tolto tutto ciò che non mi serviva ho iniziato ad aggiungere le parti del mio codice che mi servivano, controllando sempre che compilasse. Alla fine ho ottenuto che i due codici fossero completamente identici! Uno compilava uno no, ed il perchè proprio non lo capisco.

Beh, identici no.... altrimenti ti basterebe cancellare quello che non compila ed usare quello che compila no? :wink:

@9six4: ho provato a compilare il tuo sketch, e anche a me da il tuo stesso errore. Mi è bastato cambiare questo:

#include "RTClib.h"
#include <SD.h>
#include <Wire.h>
#include <SoftwareSerial.h>
#include <Adafruit_Thermal.h>
#include <LiquidCrystal.h>

in questo:

#include <SD.h>
#include <Wire.h>
#include "RTClib.h"
#include <SoftwareSerial.h>
#include <Adafruit_Thermal.h>
#include <LiquidCrystal.h>

che è in definitiva quello che ti dicevo qualche post sopra, e compila senza problemi.

@dancol90 +100 punti per te!!! Funziona! Però onestamente avevo già provato ad invertire l'ordine come mi avevi detto ma non compilava. Che sia perché forse non avevo salvato o non ero uscito e rientrato dal programma?

9six4:
@dancol90 +100 punti per te!!! Funziona! Però onestamente avevo già provato ad invertire l'ordine come mi avevi detto ma non compilava. Che sia perché forse non avevo salvato o non ero uscito e rientrato dal programma?

Forse avevi cambiato qualcos'altro che ti creava altri problemi...comunque tutto 'sto casino è colpa della libreria che è fatta un po' coi piedi :~
Aprendo il file RTCLib.h si nota infatti che non hanno messo l'"#include <Arduino.h>". Per questo infatti se veniva inclusa per prima nello sketch non trovava alcun riferimento a tutte le funzioni di Arduino,
generando un sfilza di errori infinita :stuck_out_tongue_closed_eyes:

@ 9six4: allora hai barato :disappointed_relieved: dancol te l'ha detto già da ieri che dovevi invertire la posizione degli include e te ne ha santamente spiegato i motivi; diamo per scontato che le cose le provi :sweat_smile: beh l'importante è che tu abbia risolto....

Se vogliamo dirla tutta, nel mio reply #4 ti avevo già detto di controllare se la lib era compatibile con l'IDE che stavi usando.

dancol90:
comunque tutto 'sto casino è colpa della libreria che è fatta un po' coi piedi :~
Aprendo il file RTCLib.h si nota infatti che non hanno messo l'"#include <Arduino.h>". Per questo infatti se veniva inclusa per prima nello sketch non trovava alcun riferimento a tutte le funzioni di Arduino,
generando un sfilza di errori infinita :stuck_out_tongue_closed_eyes:

No, mi spiace: non puoi dire che la lib è fatta male solo perché non ha l'include necessario per funzionare con l'ultima versione di Arduino IDE. Non essere aggiornata non vuol dire essere scritta male.

leo72:
Se vogliamo dirla tutta, nel mio reply #4 ti avevo già detto di controllare se la lib era compatibile con l'IDE che stavi usando.

dancol90:
comunque tutto 'sto casino è colpa della libreria che è fatta un po' coi piedi :~
Aprendo il file RTCLib.h si nota infatti che non hanno messo l'"#include <Arduino.h>". Per questo infatti se veniva inclusa per prima nello sketch non trovava alcun riferimento a tutte le funzioni di Arduino,
generando un sfilza di errori infinita :stuck_out_tongue_closed_eyes:

No, mi spiace: non puoi dire che la lib è fatta male solo perché non ha l'include necessario per funzionare con l'ultima versione di Arduino IDE. Non essere aggiornata non vuol dire essere scritta male.

Nono non è che non è aggiornata...manca proprio l'include a qualsiasi versione delle lib arduino, sia "Arduino.h" che "WProgram.h" !! :stuck_out_tongue:

Vale comunque il discorso di Leo; magari la lib è universale e non specifica per Arduino o più semplicemente l'autore, conoscendo la problematica della differenza tra le versioni di IDE, lascia all'utente il compito di mettere l'include che gli serve, o ancora, sapendo che in genere si usa con altre lib, l'avrà omessa pensando che l'include sarebbe stato inserito in qualche altra lib.
Oppure, più semplicemente ancora, se l'è scordato perché lui l'ha scritta usando sempre qualche altra lib che l'include lo aveva.
OK, ma levata questa cosa, che tu hai risolto semplicemente spostando di posizione il richamo, che altri elementi hai per dire che la lib è fatta male? Dà problemi, non funziona, si blocca o cosa?
E' questo che cercava di dirti Leo. :wink:

Scusate è vero, forse ho esagerato! :blush:
L'ho usata qualche volta, e per funzionare funziona (anche se ogni tanto qualche storia l'ha fatta, ma potrebbe essere stato il mio rtc ad avere problemi)...mi sono solo lasciato trasportare...
Scusate ancora :~

Ma figurati, qui nessuno deve chiedere niente a nessuno, era solo una semplice puntualizzazione, a favore di chi ha scritto quella lib, operazione tutt'altro che banale, e Leo è uno che sa che vuol dire scrivere una lib, tutto qui. :slight_smile:

Si infatti, me ne sono reso conto in un secondo momento. Sto scrivendo anch'io delle lib per un mio progetto, ed è vero, non è così scontato, soprattutto se si vuole seguire le linee guida :slight_smile:

+1 ad entrambi

classi, sono classi non librerie :cold_sweat: