Neanch'io (ho letto il thread).
L'unico suggerimento che mi viene da dare è quello di utilizzare le piazzole ICSP, saldarci 6 pin, prendere un programmatore esterno e provare a riscriverci sopra il bootloader ufficiale della Leonardo/Micro. E vedere se così viene gestita dall'IDE di Arduino. Altrimenti, se anche così non va, scrivere gli sketch via ICSP bypassando il bootloader.
Ho provato con un altro pc.. ora riesco a caricare anche se a volte mi compare lo stesso errore interessante la questione della condizione if.. non ho però ben capito, vale la pena inserirlo nel mio sketch? Il fatto è che a volte va e altr no pur lasciando sempre connesso il chip. Mmmh
Di sicuro il delay(1000) all'inizio ti protegge da problemi con il bootloader e la "if (Serial)" ti assicura che la porta seriale/USB sia veramente aperta prima di leggerci/scriverci
Piano piano sto facendo passi avanti, ora mi sono bloccato alla lettura dei valori dal DHT11 e dal Moisture Sensor... collegandoli correttamente infatti, e scrivendo un esempio di codice trovato nelle loro librerie, mi esce come risultato "Read Fail"..
Quale potrebbe essere il problema?
Allego codice:
/*
Connection:
1.DHT11 & Free Life v1.0 board
S --- Digital Pin9
VCC --- VCC
GND --- GND
2.Moisture Sensor(Humidity) & Free Life v1.0 board
1S --- Analog Pin2
2GND --- GND
3VCC --- VCC
*/
#include <AutoWatering.h>
#include <DHT.h>
#define MaxTemprature 40 //The Maximum Value of the Temperature
#define Sensor 1
#define Carbon 0
AutoWatering flower;
int temperature;
int moisture_dat;
int humidity;
void setup()
{
flower.Initialization();//Initialization for the watering kit
Serial.begin(115200);//Buad Rate is set as 115200bps
}
void loop()
{
//Obtain the Temperasture from DHT11 Sensor
temperature = flower.getTemperature();
Serial.print("Temperature is:" );
Serial.println(temperature);
//Obtain the Humidity from DHT11 Sensor
humidity = flower.getHumidity();
Serial.print("Humidity is:" );
Serial.println(humidity);
//Obtain the Soil Moisture from the Moisture Sensor
moisture_dat = flower.MoistureSensor();
Serial.print("Soil Moisture is:" );
Serial.println(moisture_dat);
Serial.println();
Serial.println();
delay(1500);
}
Mah ... essendo le loro librerie suppongo affidabili, il dubbio è su un errato collegamento ...
In compenso, vedo dall'esempio che hai riportato, che stai ignorando sia il mio che il suggerimento di Leo ... difatti non vedo né un delay() iniziale nel setup(), nel l'uso della if(Serial) ... poi non venire a chiedere aiuto se un giorno hai problemi e non riesci più a caricare i programmi ... ]
Si scusami Guglielmo, ti ho caricato direttamente il loro codice senza le mie (nostre) modifiche per fartelo vedere in originale. Cosa faccio ti inoltro una foto dei collegamenti? Ogni due per tre ci sono problemi..
Sono stato via per lavoro, mi scuso per non aver dato più notizie.. il problema però persiste, allego dunque una immagine della sola board con i due sensori attaccati! Serve altro?
ardumaker:
Piano piano sto facendo passi avanti, ora mi sono bloccato alla lettura dei valori dal DHT11 e dal Moisture Sensor... collegandoli correttamente infatti, e scrivendo un esempio di codice trovato nelle loro librerie, mi esce come risultato "Read Fail"..
Dato che i collegamenti mi sembrano corretti ... puoi riportare ESATTAMENTE cosa vedi sul monitor seriale ? Va bene anche unp ScreenPrint così si legge tutto ...
Non capisco ...
... guardando il tuo loop() vedo :
void loop()
{
//Obtain the Temperasture from DHT11 Sensor
temperature = flower.getTemperature();
Serial.print("Temperature is:" );
Serial.println(temperature);
//Obtain the Humidity from DHT11 Sensor
humidity = flower.getHumidity();
Serial.print("Humidity is:" );
Serial.println(humidity);
//Obtain the Soil Moisture from the Moisture Sensor
moisture_dat = flower.MoistureSensor();
Serial.print("Soil Moisture is:" );
Serial.println(moisture_dat);
Serial.println();
Serial.println();
delay(1500);
}
... quindi, a parte i valori, che possono esserci o può esserci il "fail", le Serial.print() che ci sono in quel loop le DEVE eseguire e quindi si DEVONO vedere "Temperature is:" seguito da qualche cosa, "Humidity is:" seguito da qualche altra cosa, "Soil Moisture is:" seguito da qualche altra cosa ancora ... sicuro di stare usando lo stesso programma ???