WiFi Control Your Micropython Project Using a Web Interface
Microcontrollers such as the ESP32 and Raspberry Pi Pico W have an inbuilt WiFi interface. This brings a very powerful communications system to your projects. Your code now has access to the full Internet and other devices can now interact with your project over the wireless signal.
In this tutorial I'll show you how to connect to WiFi using Micropython on a Raspberry Pi Pico. We'll pull data from a web based API and then build a web page interface to allow use to control our microcontroller project and pull data from it.
Make sure you check out the main project page on my website
bytesnbits.co....
GitHub repository
github.com/get...
Shorter Version
• Wi-Fi on the Raspberry...
0:00 Introduction
4:00 Connect to a Wi-Fi network
10:50 Get data from a web API
23:00 Creating a web server on the Pi Pico
32:00 Creating API end points - urls the Pico will serve
33:50 Building the web page for project control
39:00 Decoding the request data
44:00 Creating your own Wi-Fi network - Access point mode
Пікірлер: 78
Thanks for making this video and the ENTIRE series. Your work is greatly appreciated. 😊 Patrick from Bethesda, Maryland, USA
@BytesNBits
Ай бұрын
Glad you enjoy it!
Hands down, THE best tutorial I have ever come across.
@BytesNBits
Жыл бұрын
Thanks. Glad you found it useful.
Most excellent tutorial. I look forward to seeing and learning more. Thank you
@BytesNBits
Күн бұрын
Thanks.
Bob, Thanks for this fantastic series of tutorials on webserver for Pico.
@BytesNBits
Жыл бұрын
Thank you very much. I hope you've found them useful.
Awesome. 19:50: You can get the correct time every night or so (and at startup) - maybe from a button. I like clocks.
@BytesNBits
Жыл бұрын
Yes. Having the Internet opens up a lot of useful opportunities.
Thank you, I wish more you tubers can adopt your way of explaining. Well done to you sir!
@BytesNBits
4 ай бұрын
Happy to help
I’m glad I found this video and your channel. Your explanation really helped me. I’m looking forward to the follow up with REST! Also, looking to learn a simple way to pass variables via get or post that can then be used elsewhere in the code.
@BytesNBits
Жыл бұрын
Hi. Glad you found it useful. The REST API video should be out this weekend. It will cover data passing in both directions.
I liked the drawing animation in the beginning, very cool indeed.
@BytesNBits
Жыл бұрын
Thank you! Cheers!
This is excellent! Thank you for your teaching and explanations, this is just what I needed to help learn the Pi Pico W and Micropython!
@BytesNBits
Жыл бұрын
Glad it was helpful!
Bro!! A full video and posting a summary is such a great idea!! This is so awesome. Liked & Subscribed!!
@BytesNBits
Жыл бұрын
Thanks for the sub!
@MorrWorm8
Жыл бұрын
@@BytesNBits no problem, well deserved!
Fantastic work, you sir are a Grade 1 communicator.
@BytesNBits
Жыл бұрын
Thanks. Glad it helped.
Thank you for developing such a great video. I managed to connect my pico to router and as a AP with first try. Excellent support. Thanks.
@BytesNBits
7 ай бұрын
Glad it helped
This was a perfect beginner video ! You were very clear - Thank you !
@BytesNBits
7 ай бұрын
Glad it was helpful!
Very good explanation of each part of the program . Thank you !!
@BytesNBits
Жыл бұрын
Thanks. I hope you found it useful.
This excellent! I've studied micropython for a long time, and this the best tutorial that I have ever seen. Thank you very much sir for sharing this.
@BytesNBits
Жыл бұрын
Glad it was helpful!
@marktompkins3180
Жыл бұрын
I have an idea for a project for you on your channel. It would be for a timelock device (like for a bank, but for personal use). It would comprise a scheduler, a calender, a schedule, perhaps an mqtt interface, and an a hardware interlock for actuating door lock relays. If you consult, and are interested, please quote me. I've looked at iec61131 and openplc to do this, but it has to be designed properly, and tested. Having an open source program would create a community, and I think that such a project would be very popular. I have a garden that I must tend, haven't coded for years, and also have other building construction that I is higher priority.
Very well explained, thanks !
@BytesNBits
6 ай бұрын
Glad it was helpful!
By far the coolest nerd on KZread. Bro looks like a Chad and explains things like a Chad too 🫡
@BytesNBits
5 ай бұрын
Thanks... I think.
Thank you ... I am an absolute beginner when it comes to MicroPython ... your video is excellent. Instead of the Raspberry Pi Pico I am using an ESP8266 Node MCU and the Mu editor. The only change that I found necessary to adapt your code to my ESP8266 was to change the 3 to a 5 when reporting a successful connection ... for some reason wlan.status() returns a different set of numbers when using an ESP8266. I look forward to your future videos
@BytesNBits
Жыл бұрын
Glad it helped!
Loved your structured explanation!
@BytesNBits
7 ай бұрын
Glad you liked it!!
I watched this whole series today and learned a lot. Thank you for the videos! May i ask what editor you are using for the python code?
@BytesNBits
Жыл бұрын
Thanks for our comments. I use PyCharm for coding in Python. The community edition is free. I did make a setup video a while back as an intro to micropython.
Thank you!
Thanks for this excellent video. I will expand this to a mobile robot control. Currently controlling using RC PWM via Pico and I though I could expand to DIY telemetry if the processing power and signal is solid.
@BytesNBits
10 ай бұрын
Sounds great! Let me know how you get on.
dig the channel name!
@BytesNBits
10 ай бұрын
Thanks. I like it too!
Excellent video! I have an sensor and i want to display new values every 2 seconds. Could this be done without refresh the page? Something like ajax method. Pico return the date to javascript, and javascript change data via ellement id
@BytesNBits
10 ай бұрын
Yes. Create a read data API endpoint and use it to read the data every 2 seconds.
In terms of content, I am looking for a way to store the access data for the WLAN securely, i.e. not in a separate file as plain text. As the RP2040 does not have a CryptoChip, the integration of an external chip such as the ATECC608A would be a possibility. But to be honest, that's a bit too much for me without help...
@BytesNBits
8 ай бұрын
Sounds like an interesting project.
Excellent tutorial, thanks ! I have one query. How do you actually load the simpleled.html file to PicoPi from PyCharm ?
@BytesNBits
2 ай бұрын
If you right click on a file you'll get the option to Run 'Flash..... This will upload it to the Pi Pico.
Thanks!
@BytesNBits
2 ай бұрын
No problem! And thank you!
one of the best!
@BytesNBits
11 ай бұрын
thanks!
A very nice video, can I use ESP32 and Thonny to follow along with this tutorial?
@BytesNBits
11 ай бұрын
This video should work fine on the ESP32. Some of the later videos in the series will need adjusting as the ESP32 handles multiple cores and async processing differently to the Pi Pico.
In ap mode, did you need to turn off the sim on the phone?
@BytesNBits
3 ай бұрын
The sim shouldn't get in the way. You should see it as just another wifi network to connect to.
Thank You
@BytesNBits
Жыл бұрын
You're welcome
Stupid question: is there a way to program the pi pico w over wifi?
@BytesNBits
Жыл бұрын
Not such a stupid question. Not directly. You'd need some sort of base image running in the Pico that allows the files to be uploaded. I'm not sure if that exists yet for the Pico but it's not unfeasible. Have a search on Google.
@Amalokch
Жыл бұрын
@@BytesNBits Thanks for not calling it stupid 😀, I indeed did some google foo and found something called "OTA" (Over the air) update like JFrog, it seems is used for large companies when they need to updates hundreds of IoT devices (pi Pico w). Perhaps a future video about it?
Can it be controlled by any place in the world
@BytesNBits
Жыл бұрын
You'd need to expose your Pico through your router. By default your home router won't let external traffic onto your network - at least it shouldn't!!! You need to set up port forwarding to allow connections through your router to the Pico port 80 (HTTP port). Once you do that you can access the Pico on your home IP address (you'll find this in your router settings but note it can change over time unless you've got a static IP address).
@gaderishi
Жыл бұрын
@@BytesNBits thank you
That piece of code at 24:00 is not in your github.
@BytesNBits
Жыл бұрын
Hi. It's the simpleled.py file. The one on the GitHub repo is the final version. At 24 minutes we're just building up the code. Just comment out some of the url decoding bits. I hope this helps.
@tubeDude48
Жыл бұрын
@@BytesNBits - OK, got it!
@jimcraig5727
Жыл бұрын
Very well explained tutorial. Looking forward to more on the Pico. You took a several month break, hope that isn't the case after this one.
@BytesNBits
Жыл бұрын
@@jimcraig5727 Hi. Work got in the way as usual. Back on the electronics again. These projects take a bit more time to create.
@jimcraig5727
Жыл бұрын
@@BytesNBits I'm hoping you may expand this Pico WiFi tutorial to include a wifi manager. I'd like to be able to use my robot car projects on other networks without recoding each time. Your detailed, clear method of instruction would be beneficial.
please mention that pico w only supports 2.4 ghz speed or else you will destroy the brain of pico w users with only 5g wifi available LOL
@BytesNBits
9 ай бұрын
Thanks for the tip. I forget there are routers without 2.4GHz.