Raspberry Pi Pico gets WiFi via an ESP01 and UART

Поделиться
HTML-код
  • Опубликовано: 14 июл 2024
  • There are loads of applications for a WiFi connected Pico, so lets learn how to make one! In this video we WiFi enable our Raspbery Pi Pico by combining it with an ESP01 over a UART interface.
    Part 2 builds on this to create a better communication mechanism, see • Raspberry Pi Pico: WiF... (especially if your getting unicode errors)
    ESP01 support URL for the Arduino IDE: arduino.esp8266.com/stable/pac...
    Comments always welcome.
  • НаукаНаука

Комментарии • 87

  • @paulgeare6035
    @paulgeare6035 3 года назад +2

    THANK YOU! Your video answers pretty much every question I had about how to integrate my Pico to become a REALLY useful IOT device.
    Terrific video. Great information, clear, concise delivery. Very professional. My mind is racing with all kinds of ideas now that you've demolished the wall between Pico and WWW.

  • @matteocassino3172
    @matteocassino3172 2 года назад +2

    The Maker Pi Pico breakout board is very feasible for this setup. Worked for me as well. Many thx for this excellent intro!

  • @Dygear
    @Dygear 3 года назад +1

    30 second hot take - Your voice is awesome and presentation style is already very, very good. Clean audio is a huge thing that most RUclipsr’s miss right out the gate but you’ve nailed it here. If you fix the color temperature issue, everything looks washed out and cold, you can easily make video that will stand up to the test of time. Already excellent, going to watch the rest of this now.

  • @eezees9306
    @eezees9306 2 года назад

    Thank you. Your presentation is very clear and well paced. I thought I had a problem with my ESP01 as I could not get it to blink with the initial test example. In fact the program was running but my module's inbuilt LED is not attached to the "LED_BUILTIN" pin. When I replaced all references to LED_BUILTIN with "1" it worked.

  • @martinlake000
    @martinlake000 3 года назад

    Great video, definitely could of used this a month back. I actually wrote a Reddit article on this exact same subject after figuring this out. Included code for a simple webserver in my post. But good to know I'm not the only one who was intrested in this solution ;)

  • @happyzax
    @happyzax Год назад

    Great video! I had the idea myself when the Pico came out and you brilliantly illustrated what I was thinking... thank you so much! Now that the Pico W is here there will probably be less interest in actually doing this... oh well... I still think it is a solid idea. I am working on an alternative approach to the MicroPython interface, though... basically build a Pico UF2 that supports the NETWORK library for a specific ESP+Firmware+Connection configuration...

  • @etiennesafa9710
    @etiennesafa9710 2 года назад

    That's such a GREAT video!! Thanks for your very clear and detailed explanation, as well as for the pace of the informations (often I find tutorials skip interesting stuff and tend to speed up the process in order to kepp being on the clock).
    All of this could be a good part of the answer I'm looking for regarding my project : I'd like to build a small, minimalist device with e-ink screen to send and display a message every now and then to my daughters :-)

  • @davidkempton2894
    @davidkempton2894 3 года назад +3

    Thanks for this. I got it working using one of the new Cytron breakout boards where there is actually a slot to plug in an ESP-01. It uses GP16 and GP17 for TX and RX. It seemed to work using the 3V3 from the Pico, but maybe I just got lucky...

    • @tinkertechtrove2910
      @tinkertechtrove2910  3 года назад +1

      Interesting, thanks for the info 👍 powering it from the Pico would be much more convenient

    • @alexdominguess
      @alexdominguess Год назад

      @@tinkertechtrove2910 Mine worked etting the 3.3v from pico too, however I have to connect the 3.3v after the pico start running, It does not work if it is already connected to the power when pico starts to runnig. Not sure why. I will try get the 3.3v from some pin after 1 sec pico is running by turning this pin to high.

  • @user-pq4lj9rh6w
    @user-pq4lj9rh6w Год назад

    A fine and Fun tutorial. Thanks !

  • @thomsip1990
    @thomsip1990 3 года назад +1

    Awesome, really helped me a lot. Thanks!

  • @cuttawayproductions3438
    @cuttawayproductions3438 3 года назад +3

    Great video, thank you!!

  • @redxtreme2598
    @redxtreme2598 2 года назад +1

    Super helpful! Thank you

  • @TalkingGIJoe
    @TalkingGIJoe 2 года назад

    go get 'em Tim!

  • @rungeon83
    @rungeon83 3 года назад

    Tim this has freaked me out! I bought 4 ESP-01s last week, and struggled to find decent help for pico. So instead I learned how to make my arduino uno work instead with blynk.
    I'm soooo happy you worked this out as I'm still a total newb with electronics! And I also prefer raspberry pi and pico over arduino as a preference, I love them both though.
    I did manage to make my ESP-01s module act as an "access point" aka AP, maybe you could work out how to make the pico work as a wifi extender though I think that might be a firm update on the ESP01s from my research so maybe a more advanced tut!
    Keep the videos going, I'm always excited to see when you post.

    • @tinkertechtrove2910
      @tinkertechtrove2910  3 года назад +1

      Glad your enjoying the uploads 🙂 good luck with your ESP01s. Making a WiFi extender would definitely be an interesting project, or maybe even a mesh network from several nodes spread around

    • @rungeon83
      @rungeon83 3 года назад +1

      @@tinkertechtrove2910 Worried you have something place inside my brain, maybe a pico relying information haha but also was thinking of a Mesh Network, considering I have 4 of them to play with (just £12!)
      Hey do you know in your video if you version is EPS01 or ESP01s? I don't really know the difference myself, I teach just software on youtube with Godot, I'm hoping to interface pico or arduino with it though for some entertaining situations

    • @rungeon83
      @rungeon83 3 года назад +1

      I'm really sorry Tim, I have just one last question, I LOVE that this channel so far is raspberry pi pico, I think it's gonna be huge and 100% the right direction to go. But will you feature Arduinos in the future? Even if it's only how to interface with a Pico in some way, it's exciting for me.

    • @tinkertechtrove2910
      @tinkertechtrove2910  3 года назад +1

      Of course, the Arduino is also an excellent board. I have used it with Grbl for DIY CnC projects, probably going to be doing some uploads around that at some point.

    • @tinkertechtrove2910
      @tinkertechtrove2910  3 года назад +1

      You may also want to check out ruclips.net/video/Wkk1aNWj6sQ/видео.html on interfacing Arduino and Pico boards 👍

  • @rungeon83
    @rungeon83 3 года назад +1

    Hey Tim, would you cover NRF24L01 the transmitter, I figure since you've did a mini series on the ESP01 ;) plus I've bought some haha.

  • @ZurDiestroShas
    @ZurDiestroShas 3 года назад +1

    pretty useful, thx!

  • @karlmatthias2698
    @karlmatthias2698 2 года назад +1

    Another solution that may be simpler would be to just run the native firmware from the ESP-01 and drive it from the Pico with AT commands. Just plug them together and write code on the Pico.

    • @alexdominguess
      @alexdominguess Год назад

      Do you know if we add a script to ESP01 like the example in the video, which I did, the original firmware is deleted? BCS I spent 2 days just trying to send an AT command to get the OK back but I had no success. That is why I tried the approach of the video. I tried to see some videos on how to install a firmware, but it seems very complicated.
      I think, when we add some script in the esp, the firmware stops working, BCS it only runs the script

    • @karlmatthias2698
      @karlmatthias2698 Год назад

      @@alexdominguess Yes it wipes it out. You will have to download again and reflash.

  • @sedatalizevit51
    @sedatalizevit51 3 года назад +1

    Nice video!!

  • @letrainavapeur
    @letrainavapeur 3 года назад +2

    For the Pico to be of any use it just needs WiFi built in. The ESP8266-01S is perfectly capable of running MQTT and transmitting sensor data on it's own

  • @PhG1961
    @PhG1961 3 года назад +2

    Awesome !!

  • @hughaskew6550
    @hughaskew6550 3 года назад +1

    Thanks! This would have been somewhat better if the camera had been zoomed in closer to the work bench.

  • @seanchallenge
    @seanchallenge 2 года назад +1

    Excellent

  • @ManVersusWilderness
    @ManVersusWilderness 3 года назад

    How would one convert that micropython code for the arduino IDE to upload to the pico?

  • @alexdominguess
    @alexdominguess Год назад

    thanks for the video. It shows how to send data to pico, but, do you also have any video that shows how to send data from pico to the ASP01?

  • @MaxMax-wy7bi
    @MaxMax-wy7bi 3 года назад +2

    Can you please do a Video how todo this but with the esp in AP mode?

  • @edwarddotson3626
    @edwarddotson3626 3 года назад +1

    Can this project be done with the Feather RP 2040?

  • @j3disweden89
    @j3disweden89 3 года назад

    Great video, but just one thought: Isn't it possible to run Micropython on ESP8266 now? So you don't need to use C to program the ESP01? Or is perhaps the storage space on the ESP too small?

  • @TheDarkelvenangel
    @TheDarkelvenangel 3 года назад +1

    I was just wondering I don't have a programmer for my esp-01 board is there a way to make one with the Pico?

    • @tinkertechtrove2910
      @tinkertechtrove2910  3 года назад

      That's probably possible, though I have not tried. You can use an Arduino as well, there are tutorials for that online

  • @bra1nsen
    @bra1nsen 2 года назад

    Could i connect multiple picos to one wifi module

  • @andresvivanco1758
    @andresvivanco1758 2 года назад

    So I'm trying this with a Pi 4, and plugging the programing stick with the esp8266 directly to the usb's of the Pi. The esp8266 give me a red light as soon as its plugged in and when running the blink program its gives me this error: the selected serial port serial utils serial.serialutil.serialtimeoutexception write timeout... I have a feeling I'm not doing something right here.... help please

  • @andrewbrooker2486
    @andrewbrooker2486 3 года назад

    Great video, well explained. I have a pico in my greenhouse with a Bosch temperature gauge connected to measure the temperate. I have added an HS06 bluetooth module so I can connect to it from an app on my phone. I would prefer to have wifi if possible. I have a 3 * battery pack powering the pico. Would it be possible to power the ESP01 by battery as well ?
    Thanks again
    Andy

    • @tinkertechtrove2910
      @tinkertechtrove2910  3 года назад

      So long as you use a voltage regulator, buck converter, or something else to make sure the voltage is 3.3v then it should be fine. I will be exploring ESP01 low power modes soon as well.

    • @andrewbrooker2486
      @andrewbrooker2486 3 года назад

      @@tinkertechtrove2910 Ok thanks Tim. I am new to electronics. The battery pack works well, tried using a usb power bank which turns off after a few seconds. I guess the pico is not drawing enough power. The bluetooth module only works when when pico is connected to my notebook. If I can get the EPS01 powered by battery I will be there ! Thanks again Tim.

  • @yes_man_lol
    @yes_man_lol 8 месяцев назад

    Does the link and coding apply to esp01s too?

  • @Kattoe
    @Kattoe 9 месяцев назад

    3:32 i was scared you were gonan tell me that i needed another component i dont have yet

  • @biswasbikas
    @biswasbikas 2 года назад

    You could use either ESP8266 or ESP32 instead

  • @aloissajo1763
    @aloissajo1763 2 года назад

    Can we do the same thing to pi zero rather then pico?

  • @electrohub9100
    @electrohub9100 3 года назад

    Can you please zoom this coading screen.

  • @yes_man_lol
    @yes_man_lol 8 месяцев назад

    Do you have all in micropython?

  • @lionelreesable
    @lionelreesable 3 года назад

    Hi, thank you for the informative video. I still have one problem relating to the decoding of
    the data stream. The line, print(rxData.decode('utf-8'), end=' ') returns a unicode error. Do you have a solution to this problem? Any help would be great. Best wishes.

    • @tinkertechtrove2910
      @tinkertechtrove2910  3 года назад +2

      Seems you have some data in the buffer (rxData) that can not be decoded using utf-8. You could try waiting a bit before reading data as the ESP-01 sends some binary on startup, or better yet check out part 2 for a much better way to do this ruclips.net/video/v_Tm_IgbRDc/видео.html

    • @lionelreesable
      @lionelreesable 3 года назад

      @@tinkertechtrove2910 Thanks. I love your video. These videos are extremely helpful. Best wishes.

  • @drkgld
    @drkgld 5 месяцев назад

    Only one problem. I'm not a Python user. Could someone please translate the Pico code to an Arduino IDE sketch?

  • @bullygram
    @bullygram 3 года назад +2

    Hey how about a video with nRF24

    • @rungeon83
      @rungeon83 3 года назад

      Damn I didn't see this comment, I just posted it myself, I'd LOVE to see this.

  • @greengenlk
    @greengenlk 2 года назад

    Explanation is great!. The video is too far away. Couldn't see the boards properly.

  • @gorannikolic5004
    @gorannikolic5004 3 года назад

    Do you know why I get an UnicodeDecodeError at line 12?

  • @davidsavitt4954
    @davidsavitt4954 2 года назад

    Is that quote of the day server still functioning?

  • @torfinnsrnes6232
    @torfinnsrnes6232 3 года назад +2

    Wouldnt it be easier to use an esp32?

    • @letrainavapeur
      @letrainavapeur 3 года назад +1

      Yep

    • @ericbwertz
      @ericbwertz 2 года назад

      Yes but the ESP8266 is smaller and cheaper, especially as an ESP-01, which is probably the cheapest ESP-Anything that you can buy that's not just a bare chip. I also suspect that the ESP32 uses more power also, although theoretically (with the right firmware), you'd get access to the latter's Bluetooth functionality also.
      The new ESP32-C3 is intended to be a new-and-improved replacement for the ESP8266 and has already started to be made incorporated into ESP01-compatible boards, so that's another potential path to Pico Wi-Fi happiness.
      And as of a few days ago, there's the Pico W which provides similar functionality, but may not be widely and reliably available for a few months.

  • @kshitijkumar9398
    @kshitijkumar9398 2 года назад

    Hi bro I want to add wifi to I don't have to use my pc for mining with pi...... please help me with code with it !

    • @ericbwertz
      @ericbwertz 2 года назад +1

      Trying to mine with an RP2040 is not useful, unless you want to be able to show your children in 10 years how you're just about to complete mining your first rupee's worth of BTC.

  • @edwardviviescasduran5789
    @edwardviviescasduran5789 3 года назад

    It didn't work for me, nothing appears on Thonny's console when I turn on the ESP-01 after programming it.

    • @lambert0259
      @lambert0259 3 года назад

      Make sure the TX of the ESP01 connects to the RX on the Pico and RX of the ESP01 connects to the TX on the Pico, if this dont work try another ESP01, you can also check the ESP01 is working as per the video above.

    • @frankjimenez9407
      @frankjimenez9407 3 года назад

      @@lambert0259 I tried this but I get lots of small squares filling up the shell screen. No characters. Any thoughts? Everything is plugged as it should (inc tx (esp) -> rx (pico) & rx (esp) -> tx (pico)

    • @lambert0259
      @lambert0259 3 года назад

      @@frankjimenez9407 the baud rate from the ESP01 is usually 115200 baud if the baud rate on the pico is set to anything else you will get garbage on the screen, hope this helps

    • @frankjimenez9407
      @frankjimenez9407 3 года назад

      @@lambert0259 yeah, I set the same baud rate. I tested it before using the esp01 usb adapter (like the video) and works as it should in the Arduino Serial Monitor. But when connected to Pico, I do not see anything but gibberish.

    • @lambert0259
      @lambert0259 3 года назад

      @@frankjimenez9407 if the ESP01 is working correctly( try it in the Arduino IDE monitor to confirm) the only other thing is try the other UART on the pico UART1 pins gp4(tx) and gp5(rx). these devices need quit a bit of power as indicated in the video. not enough power causes brownout, (reseting).

  • @jyvben1520
    @jyvben1520 Год назад

    sadly not using micropython/circuitpython with pio embedded.

  • @user-hy1ck3zj8w
    @user-hy1ck3zj8w 3 года назад

    it is not easy to use by connect to 8266-01 !

  • @kevjames9441
    @kevjames9441 2 года назад

    This is not really giving WiFi to the Pico, it's using the pico as a dumb terminal to the ESP01 which is running the code that does something over WiFi. Good presentation style, though

  • @Mr.Leeroy
    @Mr.Leeroy 3 года назад

    IMO, it's a bad idea to mix 2 languages in a tutorial on such basic topic. Probably confuses the hell out of noobs. If they are not the target audience, then it is much to simplistic.
    I'd stick with C for embedded programming, even for noob tutorials. Python is a niche thing here.

  • @jmgacousticmusic
    @jmgacousticmusic 2 года назад

    Not knocking the Pico, but don't know why you wouldn't just go for an esp32 if you want wifi in your project

  • @hstrinzel
    @hstrinzel 2 года назад

    WOW, that's DIFFICULT! I would rather use an ESP32 or a Raspberry Pi Zero W or something. That Pico by itself seems rather worthless without WIFI.