Yun Wifi

Arduino specifieke Software
Berichten: 7
Geregistreerd: 06 Nov 2017, 09:59

Yun Wifi

Berichtdoor rudit » 06 Nov 2017, 10:34

Hoi,
Een probleem met de yun, geen enkele schets van WIWi bibliotheek werkt.
Nog thans zit ik op com 9 ( serieel ) en via luci zie ik alle verbindingen van wan en lan.
pswds zijn ok en bridge is ook included. netwerk is wpa2.
Iemand een idee ?

Advertisement

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: Yun Wifi

Berichtdoor Koepel » 06 Nov 2017, 14:04

Hallo, welkom op dit forum.

Wat is de WIWi bibliotheek ? Kun je daar een link naartoe geven ?
Bedoel je de Wifi bibliotheek ? Werkt die tegenwoordig op een Yún ? Dan heb ik iets gemist.
Wat je gebruik je als voorbeeld ? Heb je de introductie van de Yún gelezen ? https://www.arduino.cc/en/Guide/ArduinoYun.

Zie het als twee afzonderderlijke dingen. De wifi/linux/OpenWRT module en het Arduino gedeelte is een Arduino Leonardo. Daartussen is de "Bridge". Hou de communicatie over de "Bridge" zo minimaal mogelijk.

Voor de Arduino Leonardo, gebruik dan altijd een USB kabel om een sketch te uploaden. Via wifi is niet betrouwbaar.

De OpenWRT kun je via wifi bereiken met putty. Dat is een Telnet met SSH.

Wanneer een sketch niet werkt, kun je dan aangeven wat er niet goed werkt ?

Het is een tijdje geleden dat ik met de Yún werkte. Voor internet dingen en linux ben ik overgestapt op een Raspberry Pi.
Dat kun jij misschien ook doen. De Yún blijft altijd voor problemen zorgen. Serieus, de enige taak van de Arduino Yún lijkt te zijn om problemen te verzoorzaken. De Raspberry Pi is heel leerzaam en leuk om te gebruiken en is goedkoper.

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: Yun Wifi

Berichtdoor nicoverduin » 06 Nov 2017, 14:25

Op het internationale forum (Nederlands : https://forum.arduino.cc/index.php?board=77.0) zit jantje. Die zit zeer regelmatig te prutsen met de Yun. Mogelijk kan hij je verder helpen.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 7
Geregistreerd: 06 Nov 2017, 09:59

Re: Yun Wifi2

Berichtdoor rudit » 06 Nov 2017, 17:59

Oeps, moest WiFi bib zijn.
Ik krijg gewoon geen verbinding met seriele monitor of console.
Bridge start wel op maar krijg niets terug.
Een voorbeeld is connectWPA2 in het sketch book.
Er komt niets van.
Vandaag trouwens ondekt dat indien je #include <Process.h> gebruikt
meerdere oude sketches wel lopen buiten de WiFi voorbeelden dan.
De bedoeling is dat ik gemeten waarden in een sql database steek, maar eerst in de basics duik
en dat valt allemaal wel mee, buiten Wlan gedoe.
R

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: Yun Wifi

Berichtdoor Koepel » 06 Nov 2017, 18:04

Wil je de seriële monitor en de console via wifi doen ? Dat werkt al net zo gammel als het uploaden van een sketch via wifi.
Gebruik een USB kabel voor het uploaden van je sketch en voor de seriële monitor.

Voor een terminal naar OpenWRT, gebruik dan putty.

Ik begrijp niet helemaal wat je bedoelt, kun je de sketch laten zien ?
Wat is "connectWPA2" ? Is dat een voorbeeld dat ergens bij zit ?

Berichten: 7
Geregistreerd: 06 Nov 2017, 09:59

Re: Yun Wifi

Berichtdoor rudit » 06 Nov 2017, 18:23

Yep,
gewoon WiFi info ophalen
zie sketch
/*

This example connects to an unencrypted Wifi network.
Then it prints the MAC address of the Wifi shield,
the IP address obtained, and other network details.

Circuit:
* WiFi shield attached

created 13 July 2010
by dlf (Metodo2 srl)
modified 31 May 2012
by Tom Igoe
*/
#include <SPI.h>
#include <WiFi.h>

char ssid[] = "yourNetwork"; // your network SSID (name)
char pass[] = "secretPassword"; // your network password
int status = WL_IDLE_STATUS; // the Wifi radio's status

void setup() {
//Initialize serial and wait for port to open:
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for native USB port only
}

// check for the presence of the shield:
if (WiFi.status() == WL_NO_SHIELD) {
Serial.println("WiFi shield not present");
// don't continue:
while (true);
}

String fv = WiFi.firmwareVersion();
if (fv != "1.1.0") {
Serial.println("Please upgrade the firmware");
}

// attempt to connect to Wifi network:
while (status != WL_CONNECTED) {
Serial.print("Attempting to connect to WPA SSID: ");
Serial.println(ssid);
// Connect to WPA/WPA2 network:
status = WiFi.begin(ssid, pass);

// wait 10 seconds for connection:
delay(10000);
}

// you're connected now, so print out the data:
Serial.print("You're connected to the network");
printCurrentNet();
printWifiData();

}

void loop() {
// check the network connection once every 10 seconds:
delay(10000);
printCurrentNet();
}

void printWifiData() {
// print your WiFi shield's IP address:
IPAddress ip = WiFi.localIP();
Serial.print("IP Address: ");
Serial.println(ip);
Serial.println(ip);

// print your MAC address:
byte mac[6];
WiFi.macAddress(mac);
Serial.print("MAC address: ");
Serial.print(mac[5], HEX);
Serial.print(":");
Serial.print(mac[4], HEX);
Serial.print(":");
Serial.print(mac[3], HEX);
Serial.print(":");
Serial.print(mac[2], HEX);
Serial.print(":");
Serial.print(mac[1], HEX);
Serial.print(":");
Serial.println(mac[0], HEX);

}

void printCurrentNet() {
// print the SSID of the network you're attached to:
Serial.print("SSID: ");
Serial.println(WiFi.SSID());

// print the MAC address of the router you're attached to:
byte bssid[6];
WiFi.BSSID(bssid);
Serial.print("BSSID: ");
Serial.print(bssid[5], HEX);
Serial.print(":");
Serial.print(bssid[4], HEX);
Serial.print(":");
Serial.print(bssid[3], HEX);
Serial.print(":");
Serial.print(bssid[2], HEX);
Serial.print(":");
Serial.print(bssid[1], HEX);
Serial.print(":");
Serial.println(bssid[0], HEX);

// print the received signal strength:
long rssi = WiFi.RSSI();
Serial.print("signal strength (RSSI):");
Serial.println(rssi);

// print the encryption type:
byte encryption = WiFi.encryptionType();
Serial.print("Encryption Type:");
Serial.println(encryption, HEX);
Serial.println();
}
/////het is uiteindelijk de bedoeling van onafhangkelijke ( van ethernet , maar wel via wifi) temperatuursmetingen van een nieuwe verwarmingsketel te verkrijgen.
/////delta T van verwarming in en out te registreren op een sql database. Verder kamers te controleren op hun ideale temperatuur tezamen met info verkregen
///// database. Dat moet zeker lukken binnen een week.
R

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: Yun Wifi

Berichtdoor Koepel » 06 Nov 2017, 18:44

Wat heeft de Wifi library of de SPI library met de Yún te maken ?
Aan het begin staat: "WiFi shield attached", waar is je wifi shield ?

Kijk nog eens naar de introductie https://www.arduino.cc/en/Guide/ArduinoYun
Dit zijn de functies: https://www.arduino.cc/en/Reference/YunBridgeLibrary

De Arduino Yún is een Arduino Leonardo en een wifi/linux/OpenWRT module, met daartussen de "Bridge".

Wil je die sketch op het Arduino Leonardo gedeelte laten draaien ? Je zult toch echt de "Bridge" moeten gebruiken.

Je kunt bijvoorbeeld via de "Bridge" een linux commando naar de wifi/linux/OpenWRT module sturen. Dan krijg je zo iets: https://www.arduino.cc/en/Tutorial/WiFiStatus.

P.S.: Ik schrijf "Bridge" hier vaak tussen dubbele aanhalingstekens. Want iedere keer als ik "Bridge" zie dan krijg ik koude rillingen. In de wifi/linux/OpenWRT module draait een Python script voor de communicatie over de "Bridge". Er is weinig voor nodig om dat script 100% van de cpu tijd te laten gebruiken.
Laatst gewijzigd door Koepel op 06 Nov 2017, 18:55, in totaal 1 keer gewijzigd.

Berichten: 7
Geregistreerd: 06 Nov 2017, 09:59

Re: Yun Wifi

Berichtdoor rudit » 06 Nov 2017, 18:51

Zoals de sketch er nu uitziet :
Hier is niets fout mee volgens mij. Bridge included etc...
Ik ga geen ander Arduino bord kopen voor iets dat de yun zeker moet kunnen.
grtz
R
/*

This example connects to an encrypted Wifi network.
Then it prints the MAC address of the Wifi shield,
the IP address obtained, and other network details.

Circuit:
* WiFi shield attached

created 13 July 2010
by dlf (Metodo2 srl)
modified 31 May 2012
by Tom Igoe
*/
#include <SPI.h>
#include <WiFi.h>
#include <Bridge.h>
#include <Process.h>


char ssid[] = "-------"; // your network SSID (name)
char pass[] = "-------"; // your network password
int status = WL_IDLE_STATUS; // the Wifi radio's status

void setup() {
SerialUSB.begin(9600); // initialize serial communication
while (!SerialUSB); // do nothing until the serial monitor is opened

SerialUSB.println("Starting bridge...\n");
pinMode(13, OUTPUT);
digitalWrite(13, LOW);
Bridge.begin(); // make contact with the linux processor
digitalWrite(13, HIGH); // Led on pin 13 turns on when the bridge is ready

delay(2000); // wait 2 seconds


// check for the presence of the shield:

if (WiFi.status() == WL_NO_SHIELD) {
SerialUSB.println("WiFi shield not present");
// don't continue:
while (true);
}

String fv = WiFi.firmwareVersion();
if (fv != "1.1.0") {
SerialUSB.println("Please upgrade the firmware");
}

// attempt to connect to Wifi network:
while (status != WL_CONNECTED) {
SerialUSB.print("Attempting to connect to WPA SSID: ");
SerialUSB.println(ssid);
// Connect to WPA/WPA2 network:
status = WiFi.begin(ssid, pass);

// wait 10 seconds for connection:
delay(10000);
}

// you're connected now, so print out the data:
SerialUSB.print("You're connected to the network");
printCurrentNet();
printWifiData();

}

void loop() {
Process WifiCheck;
// check the network connection once every 10 seconds:
delay(10000);
printCurrentNet();
}

void printWifiData() {
// print your WiFi shield's IP address:
IPAddress ip = WiFi.localIP();
SerialUSB.print("IP Address: ");
SerialUSB.println(ip);
SerialUSB.println(ip);

// print your MAC address:
//byte mac[6];
//WiFi.macAddress(mac);
//Serial.print("MAC address: ");
//Serial.print(mac[5], HEX);
//.print(":");
//.print(mac[4], HEX);
//Serial.print(":");
//.print(mac[3], HEX);
//Serial.print(":");
//Serial.print(mac[2], HEX);
//.print(":");
//Serial.print(mac[1], HEX);
//Serial.print(":");
//Serial.println(mac[0], HEX);

}

void printCurrentNet() {
// print the SSID of the network you're attached to:
SerialUSB.print("SSID: ");
SerialUSB.println(WiFi.SSID());

// print the MAC address of the router you're attached to:
//byte bssid[6];
//WiFi.BSSID(bssid);
//Serial.print("BSSID: ");
//Serial.print(bssid[5], HEX);
//Serial.print(":");
//Serial.print(bssid[4], HEX);
//Serial.print(":");
//////Serial.print(bssid[3], HEX);
//Serial.print(":");
//Serial.print(bssid[2], HEX);
//Serial.print(":");
//Serial.print(bssid[1], HEX);
//Serial.print(":");
//Serial.println(bssid[0], HEX);

// print the received signal strength:
//long rssi = WiFi.RSSI();
//Serial.print("signal strength (RSSI):");
//Serial.println(rssi);

// print the encryption type:
//byte encryption = WiFi.encryptionType();
//Serial.print("Encryption Type:");
//Serial.println(encryption, HEX);
//Serial.println();
}

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: Yun Wifi

Berichtdoor Koepel » 06 Nov 2017, 19:00

Je hebt nu de code voor een wifi shield via SPI gemengd met code voor de Yún.
Dit is een wifi shield: https://store.arduino.cc/arduino-wifi-shield.
Dat kun je op een Arduino board prikken, en dan kun je de wifi library gebruiken.

Jij hebt een Arduino Yún.
De Arduino Yún is een Arduino Leonardo en een wifi/linux/OpenWRT module, met daartussen de "Bridge".

Kijk nog eens naar de introductie: https://www.arduino.cc/en/Guide/ArduinoYun
Kijk nog eens naar de functies: https://www.arduino.cc/en/Reference/YunBridgeLibrary

Berichten: 7
Geregistreerd: 06 Nov 2017, 09:59

Re: Yun Wifi

Berichtdoor rudit » 06 Nov 2017, 19:35

Dat doe ik.
Thx voor wegwijzer.
R

Volgende

Terug naar Arduino software

Wie is er online?

Gebruikers in dit forum: esapekox en 17 gasten