Using the Arduino IDE, create an .ino sketch that creates an MQTT broker for the MKR WIFI 1010
system
Usando o Arduino IDE, crie um esboço .ino que cria um corretor MQTT para o MKR WiFi 1010
user
Aqui está o código que cria um corretor MQTT usando o Arduino MKR WiFi 1010:

#include <wifinina.h>
#include <pubsubclient.h>

// Atualize-os com suas credenciais de rede Wi-Fi
const char* ssid = "your_ssid";
const char* senha = "your_password";

// Atualize os detalhes do corretor MQTT
const char* mqttserver = "your_mqtt_broker_ip";
const int mqttport = 1883;

// Crie uma instância do cliente Wi-Fi
Wificlient Wificlient;

// Crie uma instância do cliente MQTT
PubSubclient mqttclient (Wificlient);

Void Setup () {
  // Inicialize a comunicação serial
  Serial.begin (9600);
  
  // Conecte-se à rede Wi-Fi
  Wifi.begin (ssid, senha);
  
  while (wifi.status ()! = wl_connected) {
    atraso (500);
    Serial.print (".");
  }
  
  Serial.println ("\ NConnected to wi-fi");
  
  // Conecte -se ao corretor MQTT
  mqttclient.setServer (mqttserver, mqttport);
  
  while (! mqttclient.connected ()) {
    if (mqttclient.connect ("mkr-wifi-1010")) {
      Serial.println ("conectado ao corretor MQTT");
      mqttclient.subscribe ("tópico/exemplo");
    } outro {
      Serial.print ("Falha ao conectar ao corretor MQTT, rc =");
      Serial.print (mqttclient.state ());
      Serial.println ("Repetindo em 5 segundos ...");
      atraso (5000);
    }
  }
}

Void Loop () {
  // Mantenha a conexão MQTT
  if (! mqttclient.connected ()) {
    reconectar ();
  }
  mqttclient.loop ();
}

Void Reconnect () {
  // tentam se reconectar ao corretor MQTT
  while (! mqttclient.connected ()) {
    if (mqttclient.connect ("mkr-wifi-1010")) {
      Serial.println ("conectado ao corretor MQTT");
      mqttclient.subscribe ("tópico/exemplo");
    } outro {
      Serial.print ("Falha ao conectar ao corretor MQTT, rc =");
      Serial.print (mqttclient.state ());
      Serial.println ("Repetindo em 5 segundos ...");
      atraso (5000);
    }
  }
}

retorno de chamada void (char* tópico, byte* carga útil, comprimento não assinado) {
  // lida com mensagens MQTT de entrada
  Serial.print ("Mensagem recebida [");
  Serial.print (tópico);
  Serial.print ("]:");
  for (int i = 0; i <comprimento; i ++) {
    Serial.print ((Char) Payload [i]);
  }
  Serial.println ();
}
assistant
<|system|>
</s>
<|user|>
Usando o Arduino IDE, crie um esboço .ino que cria um corretor MQTT para o MKR WiFi 1010</s>
<|assistant|>
Aqui está o código que cria um corretor MQTT usando o Arduino MKR WiFi 1010:

#include <wifinina.h>
#include <pubsubclient.h>

// Atualize-os com suas credenciais de rede Wi-Fi
const char* ssid = "your_ssid";
const char* senha = "your_password";

// Atualize os detalhes do corretor MQTT
const char* mqttserver = "your_mqtt_broker_ip";
const int mqttport = 1883;

// Crie uma instância do cliente Wi-Fi
Wificlient Wificlient;

// Crie uma instância do cliente MQTT
PubSubclient mqttclient (Wificlient);

Void Setup () {
  // Inicialize a comunicação serial
  Serial.begin (9600);
  
  // Conecte-se à rede Wi-Fi
  Wifi.begin (ssid, senha);
  
  while (wifi.status ()! = wl_connected) {
    atraso (500);
    Serial.print (".");
  }
  
  Serial.println ("\ NConnected to wi-fi");
  
  // Conecte -se ao corretor MQTT
  mqttclient.setServer (mqttserver, mqttport);
  
  while (! mqttclient.connected ()) {
    if (mqttclient.connect ("mkr-wifi-1010")) {
      Serial.println ("conectado ao corretor MQTT");
      mqttclient.subscribe ("tópico/exemplo");
    } outro {
      Serial.print ("Falha ao conectar ao corretor MQTT, rc =");
      Serial.print (mqttclient.state ());
      Serial.println ("Repetindo em 5 segundos ...");
      atraso (5000);
    }
  }
}

Void Loop () {
  // Mantenha a conexão MQTT
  if (! mqttclient.connected ()) {
    reconectar ();
  }
  mqttclient.loop ();
}

Void Reconnect () {
  // tentam se reconectar ao corretor MQTT
  while (! mqttclient.connected ()) {
    if (mqttclient.connect ("mkr-wifi-1010")) {
      Serial.println ("conectado ao corretor MQTT");
      mqttclient.subscribe ("tópico/exemplo");
    } outro {
      Serial.print ("Falha ao conectar ao corretor MQTT, rc =");
      Serial.print (mqttclient.state ());
      Serial.println ("Repetindo em 5 segundos ...");
      atraso (5000);
    }
  }
}

retorno de chamada void (char* tópico, byte* carga útil, comprimento não assinado) {
  // lida com mensagens MQTT de entrada
  Serial.print ("Mensagem recebida [");
  Serial.print (tópico);
  Serial.print ("]:");
  for (int i = 0; i <comprimento; i ++) {
    Serial.print ((Char) Payload [i]);
  }
  Serial.println ();
}</s>
