I currently purchased a Arduino UNO Wifi, but I am having some difficulty getting the Wifi capability run and running.
From the Arduino.org site it describes the need download and use the ciao library and core for wifi communication;
I am a little confused because it also states that the UNO wifi also comes with the core already integrated into the firmware, but when I try and use the ciao library, it give me the error; #error CPU not yet supported.
Doing some digging around the arduino.org forums it seems as though this is a common problem where the developers have not fully supported wifi communication on the board,
Being relatively new to wireless communication I am a little concerned that the UNO wifi might not be the best platform to learn and communicate to a wide variety of networks.
Essentially I was just wondering if anyone has had similar issues with the UNO WiFi board or even better any success stories and advice with using the board.
Yep, there was some updating of the libraries required to ensure compatibility with the Uno Wi-Fi, however, there’s some fixes and success with getting it up and running on the second page of the thread.
The Uno will work well and you can always bypass the libraries and access the ESP8266 directly, however, it’s not something to be undertaken if you’re new to wireless communication/microcontrollers.
If you’re looking for something to get started with the IoT-sphere, I’d suggest taking a look at the Particle Photon.
Worth noting that the Uno Wifi is a “Developer Edition” product which means they are still working on it. While most things will work out of the box, there will be some workarounds here and there.
It would be best to do a dive on those forum topics, and or engage the developer community if you find something new.
I had the same confusion when I got the “Developer Edition”. It turns out that:
It starts / has its own AP. If you scan available Wifi networks from your laptop / PC, you should see an access point named “Arduino-Uno-WiFi-xxxxxx”. You can connect to that AP and then configure the Uni Wifi DevEd by pointing your browser to http://192.168.240.1 … from which you can then have the Uno Wifi connect to your “real” AP ( your home / work Wifi AP ).
All of this I just found out today via:
( jump to the section named “Connecting to WiFi network” )
… after banging my head over the weekend trying to use the Uno Wifi libraries / etc.
Yep, same problem. I purchased an Arduino Uno WiFi some time ago, and I’ve never been able to connect it to a wifi network in the usual manner.
Mine’s marked Developer Edition; it’s not specifically what I ordered, but perhaps that’s all that was available at the time?
The usual sample libraries fail, and the few ‘Developer Edition’ specific libraries I’ve recently found and tried also fail.
I can SOMETIMES get the board to work in AP mode, where it serves up a local host page. But even from there I can’t make it connect to wifi.
I want to avoid all this malarkey - just a simple connection to my local wifi network to post some data. What am I missing?
I didn’t research the board enough before I purchased it, so I was kind of in the same boat. I also wanted to simply post data from the arduino to a local server. It was very frustrating finding out how people have managed to get their WiFi to work, but all the forum posts with fixes were at arduino.org (which redirects to arduino.cc) - so the solution has not been available.
I ended up installing an MQTT broker (Mosquitto) on a Pi (which was required for the project anyway), and entering the credentials for that in the Uno Wifi config page. Then I built the MQTT request in a sketch and published the data to the MQTT server. You can find a good example of this in the Examples > Arduino Uno WiFi Dev Ed Library > MqttPub (make sure you have Arduino Uno WiFi Dev Ed Library added to the library of course!)
From there I then installed Paho MQTT (for Python) on the Pi and used that to listen for newly published MQTT messages. When a message is received, you can then do what you want with it - be it save it to an SQL database, or send it off to another local/external server, service, or whatever you want to do.
It was not my original plan, but hey - it works