Pessoal, estou tentando realizar uma conexão com a lib. em questão. Ao tentar se conectar não obtenho nenhum retorno de log no serial monitor. 

Alguém já conseguiu realizar esta conexão? Estou utilizando o Ethernet Wiznet W5100.

#include <Ethernet.h>
#include <MySQL_Connection.h>

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

IPAddress server_addr(xxx,xxx,x,xx);

char user[] = "root"; 
char password[] = ""; 

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

void setup() {
Serial.begin(9600);
while (!Serial);
Ethernet.begin(mac_addr);
Serial.println("Connecting...");
if (conn.connect(server_addr, 3306, user, password)) {
delay(1000);
}
else
Serial.println("Connection failed.");
conn.close();
}

void loop() {
}

Exibições: 1239

As respostas para este tópico estão encerradas.

Respostas a este tópico

Olá Michele,

Creio que as variáveis user[] e password[] estejam propositalmente erradas certo?

Assim como o IPAddress server_addr();

Estou vendo que não tem nada dentro do void loop() para o acesso ao bando de dados.

Poderia nos postar o que aparece no monitor serial?

Que tal usar o exemplo do próprio site oficial do Arduino?

http://forum.arduino.cc/index.php?topic=266119.0

Boa sorte!

  'Eiju

MySQL por padrão é usuário root sem senha.

IPAddress server_addr tem que colocar o ip do servidor de banco de dados.

Olá Amanda,

Sim, o password eu deixei em "branco".

O IPAddress server_addr() esta sendo informando, como o BD é local, informei o IP corretamente. 

Obrigada!

Michele

Olá Celso,

Não, estão corretas. Na verdade o password eu deixei em "branco" e o user esta de acordo com o BD.

O IPAddress server_addr() esta sendo informando, como o BD é local, informei o IP corretamente. 

Estou seguindo o manual em anexo. Acredito que o exemplo do manual esteja mais atualizado do que o exemplo que mencionou.

No Monitor Serial ele mostra Connecting...e nada mais.

Pelo manual, compreendi que ele deveria retornar um log, mas tbm não tenho certeza se estou fazendo de forma correta.

Agradeço o contato!

Michele

Anexos

Poderia ser permissão? Permissão para acessarem o banco de fora do localhost.

GRANT ALL ON *.* TO 'root'@'192.168.0.2' IDENTIFIED BY 'suasenha';

'192.168.0.2' seria o IP do arduino.... 'sua senha' a senha do root. Se colocar % no lugar do IP o root poderá acessar de qualquer máquina. *.* seria permissão para todas as bases de dados.

Olá Michele,

Dei uma olhada no manual, achei bem completo.

Parece que você deveria receber um texto indicando a versão do banco de dados e mensagem de conexão realizada com sucesso.

Vou experimentar aqui.

Mas enquanto isso, por favor, se estiver usando o mysql no windows, verifique se o firewall não está barrando o mysql de servir requisições externas. Isso acontece muito.

Grande abraço,

  'Eiju

Olá Celso,

Sim, o manual é ótimo.

Sim, exatamente, mas esse retorno não ocorre rs

http://prntscr.com/ekwt8s

Ok, agradeço toda a atenção!

Desativei o Firewall, mas nenhum sucesso.

Abraço.

É provável que seu Arduino não consiga pegar o IP automaticamente através do DHCP.

Portanto, poderia testar o seguinte?

Trocar a linha:
Ethernet.begin(mac_addr);

Por estas linhas:
IPAddress myIp(192, 168, 1, 20); // endereco IP
IPAddress myDns(192, 168, 111, 1); // servidor de nomes na internet
IPAddress gateway(192, 168, 111, 1); // roteador
IPAddress subnet(255, 255, 255, 0); // mascara de rede
Ethernet.begin(mac_addr, myIp, myDns, gateway, subnet); // initializa a rede

Boa sorte,
'Eiju

Olá Michele,

Já tive problemas em acesso remoto. Lembro-me que no MySQL não conseguia de forma alguma acessar como root de outras máquinas. Logo tive de criar no servidor um outro usuário (na criação deste usuário é necessário dar as permissões que deseja) logo com este usuário eu conseguia acessar tranquilamente! 

Resumindo, tente criar um usuário e acessar partindo do mesmo!

Acredito que não conseguia porque por padrão vem configurado assim. Basta rodar aquele código que postei mais acima para liberar o acesso.

Olá, 

Realizei as permissões como sugeriu mas ainda não tive nenhum retorno do log no Arduino.

Obrigada mesmo assim. 

Olha estou utilizando a um tempão esta LIB e funciona perfeitamente, acredito que seja permissão do seu servidor.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço