Salve a tutti ho bisogno del vostro aiuto non riesco ad uscirne. Ho un Arduino MEGA con esp8860, ho collegato tutto, provato il test di blynk ed è funzionante mi riporta l'ip e mi dice ready.
Ora se vado ad associare un semplice led su pin 13 o 12 non mi succede nulla. Nell'app la scheda risulta connessa. Dove sbaglio? mi riuscite a dare qualche indicazione?
Grazie
Aggiornamento: se utilizzo il Pin 1 e associo un pulsante mi funziona il led su scheda si accende e sis spegne, ma solo quello, provo a metter un led, un rele ma non succede nulla..
Con questo codice mi funziona la connessione e il pin D1
#define BLYNK_PRINT Serial
#include <ESP8266_Lib.h>
#include <BlynkSimpleShieldEsp8266.h>
// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "ilmiotoken";
// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "lamiarete";
char pass[] = "lamiapassowrd";
// Hardware Serial on Mega, Leonardo, Micro...
#define EspSerial Serial1
// or Software Serial on Uno, Nano...
//#include <SoftwareSerial.h>
//SoftwareSerial EspSerial(2, 3); // RX, TX
// Your ESP8266 baud rate:
#define ESP8266_BAUD 115200
ESP8266 wifi(&EspSerial);
void setup()
{
// Debug console
Serial.begin(9600);
// Set ESP8266 baud rate
EspSerial.begin(ESP8266_BAUD);
delay(10);
Blynk.begin(auth, wifi, ssid, pass);
// You can also specify server:
//Blynk.begin(auth, wifi, ssid, pass, "blynk-cloud.com", 8442);
//Blynk.begin(auth, wifi, ssid, pass, IPAddress(192,168,1,100), 8442);
}
void loop()
{
Blynk.run();
// You can inject your own code or combine it with other sketches.
// Check other examples on how to communicate with Blynk. Remember
// to avoid delay() function!
}
Il discorso è che con blynk non c'è codice e quelle righe di programma sono uguali per tutti in tutto il mondo, me compreso. Mi era successa una cosa del genere non il mio ESP e se mi ricordo come ho risolto te lo dico.
e infatti...credo ci siano soltanto da inserire librerie diverse se si utilizzano widget particolari... Specifico che le porte funzionano tutte come da test effettuato.
andrewa980:
Ora se vado ad associare un semplice led su pin 13 o 12 non mi succede nulla. Nell'app la scheda risulta connessa. Dove sbaglio? mi riuscite a dare qualche indicazione?
Ciao, guardando il codice che hai postato non vedo alcun led dichiarato sul pin 12 o 13 quindi come pensi che possa funzionare??
Tu hai postato uno degli esempi di Blink come ti ha già detto @steve-cr, se devi accendere un led devi dichiarare in quale pin è collegato..
"Now let’s take a look at the example sketch for a Wemos D1 Mini Pro. Notice there are three key components that you will need to include:
char auth[] = ""; Specific to your project (Blynk App).
char ssid[] = ""; Specific to the network that we are connecting to (network name). You can "hotspot" from your phone also.
char pass[] = ""; Specific to the network we are connecting to (password)."
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "";
// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "";
char pass[] = "";
int LED = D8; // Define LED as an Integer (whole numbers) and pin D8 on Wemos D1 Mini Pro
void setup()
{
// Debug console
Serial.begin(115200);
pinMode(LED, OUTPUT); //Set the LED (D8) as an output
Blynk.begin(auth, ssid, pass);
}
void loop()
{
Blynk.run();
}
// This function will be called every time button Widget
// in Blynk app writes values to the Virtual Pin V3
BLYNK_WRITE(V3) {
int pinValue = param.asInt(); // Assigning incoming value from pin V3 to a variable
if (pinValue == 1) {
digitalWrite(LED, HIGH); // Turn LED on.
} else {
digitalWrite(LED, LOW); // Turn LED off.
}
}
Scusate allora non c'ho capito molto ero convinto che non servisse implementare codice per ogni pin.
In ogni caso ho provato in tutti i modi, risponde solo il D1
andrewa980:
Scusate allora non c'ho capito molto ero convinto che non servisse implementare codice per ogni pin.
In ogni caso ho provato in tutti i modi, risponde solo il D1
ovvio che se vuoi accendere un led collegato al pin "X", prima devi definire il pin come OUTPUT nel setup, con l'istruzione pinMode("X",OUTPUT)
e poi quando vuoi accenderlo devi usare la digitalWrite("X",HIGH) questo vale per tutte le uscite digitali che vuoi usare
infatti mi sembrava ovvio, ma non avevo capito, il problema è che pur inserendo il codice non succede nulla. Ora mi viene un dubbio sulla configurazione della scheda e arduino.
La scheda è una ATMEGA2560 con integrato ESP6288.
Su arduino ho selezionato la scheda Arduino/Genuino Mega or Mega 2560, mentre sul Blynk Builder seleziono Arduino Mega 2560 come board e come connection ESO8266 Wifi Shield
"ATMEGA2560 con integrato ESP6288"? Quale sarebbe esattamente? Link?
Non è che per caso è una WeMos Mega (che non ho, quindi non so dire con precisione, io ho le WeMos D1) per cui non solo suppongo che dovresti usare le sue librerie ma soprattutto nell'IDE dovresti selezionare la WeMos Mega, dopo averla installata?
scusa ma dove sta scritto che ha un esp8860 o esp6288 integrato?
This is the new 2016 version of our Mega 2560 board that is fully compatible with the Arduino Mega 2560. It utilizes a genuine Atmel ATmega2560 microcontroller and the inexpensive CH340G USB-UART interface.
This board continues our commitment to uncompromising quality using the best components and excellent design layout, whilst providing a stable low cost solution. It uses the CH340G to lower the cost without losing functionality or quality.
The board is built using high-quality components with great attention to detail in the design to provide a stable solution whilst keeping the price lower.
Connectivity
Connectivity to to the computer is provided through the common microUSB connector (universally used by most phones, including Android smartphones).
Power characteristics
The board can be powered by the same MicroUSB port or a DC Barrel jack connector. An onboard low voltage regulator (LDO) can reliably regulate input voltages of 6V to 12V. Recommend 7V-9V.
The output current for 5V is approximately 800mA and 180mA for 3.3V. Do note the higher the input voltage the lower the output current.
Correggetemi se dico una boiata, io gli esp li ho usati sempre standalone..
mi pare che l'OP non abbia chiaro che Blynk parla con l'ESP, ma poi l'ESP deve parlare con il MEGA2560, quindi c'è da scrivere tutta la parte di comunicazione tra ESP e MEGA, oltre alla parte tra ESP e Blynk.
Quote from: doppiozero Fri Jun 22 2018 18:22:13 GMT+0200 (ora legale Europa occidentale)
Correggetemi se dico una boiata, io gli esp li ho usati sempre standalone..
mi pare che l'OP non abbia chiaro che Blynk parla con l'ESP, ma poi l'ESP deve parlare con il MEGA2560, quindi c'è da scrivere tutta la parte di comunicazione tra ESP e MEGA, oltre alla parte tra ESP e Blynk.
O no?
no, la usi come la wemos d1, cioè selezioni la board corretta e usando le librerie corrette scrivi lo sketch usando l'IDE arduino
non mi torna.. la wemos la programmi si dall'IDE di arduino, ma controlli esclusivamente i suoi pin. Quella postata da sukko è una MEGA + ESP. Come comunicano mega ed esp tra loro? c'è una libreria apposita? come controllo i pin della mega attraverso l'esp?
Ma infatti non ho capito quell'esempio, fa vedere come configurare l'esp sull'IDE e poi lo sketch è per la mega
Comunque in quel thread fanno lo stesso discorso, esp e mega devono comunicare tra loro e la comunicazione la si abilita con il dip switch. O meglio, non la si abilita, si collegano fisicamente seriale dell'esp con seriale 3 della mega. Poi il codice è da scrivere per entrambi