Arduino_connexion_MySQL

Bonjour à tous,

Je suis actuellement sur un projet pour mon école, et j’ai acheté une carte Arduino_wifi_rev_2 pour envoyer des données sur une base de donnée MySQL exécutée sur un PC sous Windows 10. J’utilise la librairie MySQL_connector_arduino disponible depuis l’IDE Arduino. J’ai fait beaucoup de recherches sur le sujet et lu le manuel qui est joint à la bibliothèque.

Le problème est que je n’arrive pas à me connecter à la base de donnée avec la commande “conn.connect(server_addr, 3306, user, password)” de la librairie MySQL, en revanche j’arrive bien à me connecter au réseau wifi (qui est mon téléphone malheureusement) et envoyer des ping entre l’arduino et PC, il peuvent donc se parler.
La base de donnée MySQL est bien créée et des utilisateurs ayant tous les droits aussi. J’ai créé un utilisateur qui peut communiquer avec tout le monde (‘tom1’@’%’). Malgrès quand je lance le programme Arduino le moniteur série reste toujours bloqué sur “connecting…” avant de m’afficher “connection failed” bien plus tard

Voici le code que j’utilise :

#include <SPI.h>
#include <WiFiNINA.h>
#include <MySQL_Connection.h>
#include <MySQL_Cursor.h>

byte mac_addr[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };

IPAddress server_addr(172,10,20,3);  // IP of the MySQL *server* here
char user[] = "tom1";              // MySQL user login username
char password[] = "ideas1";        // MySQL user login password

// WiFi card example
char ssid[] = "iPhone";    // your SSID
char pass[] = "mdpsecret";       // your SSID Password

WiFiClient client;
MySQL_Connection conn((Client *)&client);

void setup() {
  Serial.begin(115200);
  while (!Serial); // wait for serial port to connect

  // Begin WiFi section
  int status = WiFi.begin(ssid, pass);
  if ( status != WL_CONNECTED) {
    Serial.println("Couldn't get a wifi connection");
    while(true);
  }
  // print out info about the connection:
  else {
    Serial.println("Connected to network");
    IPAddress ip = WiFi.localIP();
    Serial.print("My IP address is: ");
    Serial.println(ip);
  }
  // End WiFi section

  Serial.println("Connecting...");
  if (conn.connect(server_addr, 3306, user, password)) {
    delay(1000);
  }
  else
    Serial.println("Connection failed.");
  conn.close();
}

void loop() {
}

Je vous remercie pour votre éventuelle aide et vous souhaite une bonne journée ! :slight_smile:

Thomas

connect_wifi_MySQL.ino (1.24 KB)

Salut toom13,

J’ai le même problème que toi,
ça m’interresse aussi si quelqu’un à une solution

:slight_smile: