Raspberry Pi Pico VS ESP32 S2 speed comparison benchmark using CircuitPython

Поделиться
HTML-код
  • Опубликовано: 14 июн 2022
  • Raspberry Pi Pico VS ESP32 S2 speed comparison benchmark using CircuitPython
    Which board is faster?
    🛒 ESP32 S2: educ8s.tv/part/esp32s2
    🛒 Raspberry Pi Pico: educ8s.tv/part/RaspberryPiPico
    🛒 Display: educ8s.tv/part/7735
    🛒 USB Meter: educ8s.tv/part/UsbDoctorOLED
    💻 Code: educ8s.tv/raspberry-pi-pico-v...
    Join this channel to get access to perks:
    / @educ8s
    #circuitpython #educ8stv #raspberrypi
    In this video I am going to do a speed comparison between the Raspberry Pi Pico and the ESP32 S2 board, two of the most powerful and inexpensive boards for makers.
    Before running the computation speed benchmark, I have developed, let’s take a quick look at the most basic specs of each board to get a sense of what to expect.
    The Raspberry Pico board features two 32-bit Arm Cortex M0+ cores operating at 133Mhz. It also offers 264KBs of RAM memory and 2MB of Flash memory and it costs at the time of this recording around $7.
    The Lilygo ESP32 S2 Board on the other hand features a single-core 32-bit LX7 microcontroller operating at 240MHz. It also offers 320KBs of RAM memory and 4MBs of Flash memory. Its price today is around $8.
    So, based on the specifications, we can conclude that the ESP32 S2 is faster than the Raspberry Pi Pico in single-core workloads. How much faster is the question? We can't know without running a benchmark, because the boards employ processors with different architectures. Based on the operating frequencies of each board, we can estimate that the ESP32 S2 single core performance will be roughly 80% faster than the Raspberry Pi Pico's single core performance. Is this correct?
  • НаукаНаука

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

  • @seebaastian
    @seebaastian 2 года назад +145

    nice video, but I'm not quite sure if python is the best language to compare the power that lies behind some architecture.

    • @svenprigann2631
      @svenprigann2631 2 года назад +22

      That's what I thought. It's like comparing athletic performance of two runners by only letting them walk on their hands.

    • @talk2azs
      @talk2azs 2 года назад +5

      Micropython is VERY slow on the Pico. This is why I use c as my language of choice. I am using bothe cores I'm my projects. In my case I need seemless integration in my projects. Any stalls in my main code will cause visual flickering problems. The second core solves my issues.

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

      Yea you never know what assembly python will be unrolled into. Sometimes it can be quite baffling unrolling a command to 30 -300 operations when C would do it in one or two

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

      A better approach would be just to use advertised IPC x Clock (instructions per clock) to get instructions per second

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

      It’s worth taking a look at the generated code sometimes to get a sense of just how much slower python must run than native code. Python is much easier to understand though, but I have found it’s performance to be very poor on these boards. Just the libraries and the micropython kernel quickly eat up that 2-4mb of flash. Like really quickly.

  • @Educ8s
    @Educ8s  2 года назад +15

    I hope you took away lots from this video. Let me know below!
    PS. Do you like quiz games? Check my popular FREE Android quiz game here: bit.ly/QuizOfKnowledge

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

      You can overclock the pi pico to 250mhz

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

      Can still get the pico for $4 from official distributors.

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

      Ok, first thing - progress bar is delayed calculations and on the slower machine doing more delay, what is incorrect. If you don't believe simply do progress bar on the half screen size and check time difference. You should only calculate timestamps in calculation time and the second thing: To be honestly you should calculate PI 2 times, on the RPI paralelly on the two cores, and on the ESP one after one - that wouldbe show really how fast they are. It is not? Cheers

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

      I will try to do a parallel computer of Pi in the future. In this video I just test single core performance. Thanks for the tips!

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

      Great vid!

  • @rocketgirl3366
    @rocketgirl3366 2 года назад +27

    They have to estimate Pi, and the ESP32 took 3.14 seconds to do it... That's a sign

  • @hikingpete
    @hikingpete 2 года назад +94

    Where the RP2040 really shines is with complicated I/O. Rather than bit-banging your protocols on the main core, you can use drivers for the PIO cores to manage the low-level details, and work mostly with filled buffers at your application level. The second core is useful in much the same way - offload a complicated process with sensitive timing, leaving your core application logic untroubled by such things. Also, reports are that it overclocks very nicely. All that said, I still love the ESP32 for some workloads.

    • @Gameplayer55055
      @Gameplayer55055 2 года назад +9

      esp has wifi and Bluetooth, it is very handy feature. for projects that don't require internet connection i use good old arduino nano

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

      If the ESP32-S2 is implemented with a DMA for niche protocols, I don't think the pico's PIO is a straightforward victory. Then again, I'm not too familiar with the ESP's DMA implementation either, so this might be a straight victory for the pico. But for conventional protocols like I2C or SPI, DMA with the ESP32 and DMA or PIO with the pico should be fairly equal. Though I would give extra points to the ESP because its larger ram means it can have a larger buffer.
      It does seem the pico has a lot more performance left on the table if python isn't used here. I'm curious how it would fair if this test is done on C. Even with Python, deleting the code drawing that progress bar will make the gap between the two smaller.

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

      @@cybermechid9181 that stupid miner/covid/??? related chip crisis kills me. even microcontrollers became more expensive. i remember pico started from 2$. hopefully i have some bought before
      esp8266 radio can be turned off in settings. tho pico has more pins, better to use it if no wifi required

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

      @@Gameplayer55055 Coward.

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

      Just a question: Would it be possible to use the pi with a gpio expander to deal with both i2s audio and a full 107key keyboard setup by dividing the operations between the cores? Could probably benefit using a C-language for that comapred to the rather sluggish circuitPython code that usually runs on these dev board.

  • @KimasM
    @KimasM 2 года назад +17

    One small thing that I noticed right away is LED on ESP32 compared to Pico. The other side is CH304 chip it's only useful for development but not for actual project so it also uses some current. So if you thinking about project specific current you would emit all those before mesuring. Pico has integraded USB support so it doesn't need to use USB to TTL. So if thinking about actual project you would only use ESP32 module itself not entire dev board. This would give fair comparison between two. Plus WIFI/BT should also be sure to be fully disabled.

  • @MrZANE42
    @MrZANE42 2 года назад +28

    Have you verified that the LCD updating doesn't effect the test result. My suggestion would be to remove the progressbar and just write test running at start of test

    • @Educ8s
      @Educ8s  2 года назад +26

      Yes you are right, the LCD updating is included in the time needed to run the script. I included it on purpose in order the test not to be pure mathematical, to be closer to real life which usually needs driving an updating a display. Thanks for comment.

  • @AndreasHammerschmidt
    @AndreasHammerschmidt 2 года назад +14

    There is a huge difference in power consumption among different ESP32 boards. The CH340 oder CP2102 bridges sometimes consume more than the ESP32 itself (especially if you do battery powered applications where the ESP32 consumption can be as low as 0,0025 mA).
    If you want to compare power consumption you should disable radio and reduce the core speed to about 120 MHz which will bring the ESP32 power consumption below 10 mA.

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

      Thanks for the very useful information!

  • @gregclare
    @gregclare 2 года назад +9

    Nice simple comparison video. Quite informative, although for me the choice of which microcontroller to use in a project generally comes down to the peripheral’s required (eg. Is wireless needed etc.), and also the number of GPIOs I need, and whether I need low power standby (for battery powered), etc. i.e. Given the speed of most cheap MCU’s today, it’s now pretty rare that speed is a deciding factor.

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

      agreed.. Im a big fan of the esp boards, have like 11 of those around the house and in these few years i've been interested in mcu's clock speed has not been a limit so far .. For me it's been mostly connectivity (pins, and ofc wifi) , avilable space (kb's) , physical dimensions, IDE support (dont like the arduino ide and like to use VSCode for all my coding), documentation and specially good pinout maps... However this was a fun video and all, but i feel that benchmarking should be done with C

  • @PeetHobby
    @PeetHobby Год назад +7

    Second thread is very powerful, can run second task that normally would slow down your code significant on the second core, and it's easy to use in the code. For example, you can run TFT driver on the second core, or serial communication, etc. So your program runs full speed, that can be huge difference in many cases.

  • @mixmashandtinker3266
    @mixmashandtinker3266 2 года назад +6

    Very nice and informative video.
    Would be interesting to see a bare metal programmed comparison. ie. the boards using assembly and not the high(ish) level libraries and functions.

  • @e_neko
    @e_neko 2 года назад +13

    Was the WIFI radio disabled in your ESP32 sketch? At least for ESP8266 the difference in power use with active WIFI is significant, even when it is not in use.

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

    brilliant. always love your videos 👍

  • @avejst
    @avejst 2 года назад +4

    Great video as always 👍
    Thanks for sharing your expirence with all of us:-)

  • @zipp4everyone263
    @zipp4everyone263 2 года назад +4

    This is quite a nice test but its a bit lacking imo. It would be nice to see two tests running on each device. Since the esp32 can only handle 1 instance at the time (without some fancy asyncronus work), the pi might be a better choice depending on how you can utilize the extra core.
    Still really intresting, thank you for the video!
    Also, is it possible to do a calculation on the probable compute strength (flops) and compare it to energy draw? Would be really interesting to see any internal latency meassurements as well.
    Also, doesnt the rp2040 lack a floating point unit compared to the ESP32-s2?

  • @mig2008pt
    @mig2008pt 2 года назад +6

    Regarding power consumption, the led on the ESP32 can be desoldered as it is adding to the total wattage without doing nothing to the performance outcome of his test, also, don’t know if the radios are disabled, witch also adds to the total power consumption.

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

      I will try that as well. Thanks!

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

    Great video, exactly what I wanted to know. Thanks.

  • @EletronicaeTecnologia
    @EletronicaeTecnologia Год назад +1

    Muito bom o vídeo. Parabéns.

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

    Nice touch to include a watt-hour figure (even in the form of time-domain), thank you.

  • @osmanpasha_diy
    @osmanpasha_diy 2 года назад +10

    You can't run python application to measure hardware performance. The implementation of python runtime very much affects the speed of execution and for each MCU the implementation details differ a lot. So you might be measuring the quality of python implementation, not hardware performance.

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

      I agree with what you said. My point of doing the test is not to test the processors, but if someone is using CircuitPython to build his project to know which board is faster running CircuitPython. I think it is useful to know.

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

      Actually, if he would use pure c++, the esp32 would be also faster.

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

      @@iliasalaur but by how much? Can Pico's second core close the gap? How well does ESP32 handle IO operations compared to Pico's PIO implementation? This test is the first thing most people will see and it will give them the wrong idea about the potential use cases and performance metrics of these boards. Also I would imagine Pico would win with a proper multithreaded version of this algorithm (maybe even single core when running at 250MHz).

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

      @@artifank2747 man, pico's max clock frequency is 133MHz, while esp32's max clock frequency is 240MHz. That means that it will run faster in all cases.

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

      @@artifank2747 and btw, esp32 has 2 performance cores and 1 ulp core.

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

    Thanks for doing this. It was really interesting

  • @MattDawson01
    @MattDawson01 2 года назад +7

    I've seen people say you can o/c the pico to 436Mhz. You could probably safely run it at 266Mhz and you'd be at same speed as ESP32.

    • @adamw.8579
      @adamw.8579 2 года назад +1

      But 2 cores if you know how to use it. Even under Arduino for beginners is multicore library for using Pico second core. Micro Python is also handy for quick developing.

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

      Just started running the Picomite (Pico with MMBASIC) at 378MHz. Seems solid and no significant temperature rise 👍😎

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

    Good info. Thanks. I would like to same test adding the esp32-s3

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

    It would be nice to do a long test and include the 2nd core of the pico.
    It would like to see if having 2 cores makes up for the slower proformance and if the power differences.

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

      Yes, I will try to do it in a future video, but in C, since CircuitPython does not yet support the two cores of the Pico

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

    Damn nice job, thanks!

  • @iblocstudios5563
    @iblocstudios5563 Год назад +3

    the rp2040 is around 0.70$ - 0.80$ and can be overclocked it has less IO if i remember correctly but has 2 cores, is pretty fast and cheap

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

    A great video, thank you.

  • @TT-it9gg
    @TT-it9gg 2 года назад +3

    Very nice!
    I ran simple calculations and CoreMark on Pico and ESP32, the result is similar.
    The fastest one so far is 912Mhz Teensy 4 especially on 64bit floating point calculation. The K210 600Mhz is good for 64bit integer.

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

      The pico can be overclocked to 250mhz and be se to with -O3 flag

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

      Cool! Thanks for sharing. I will try it!

  • @petros.petros
    @petros.petros 2 года назад +1

    ωραίος! - nice video!

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

    Could be the USB converter responsible of 15-18mA of power consumption in the ESP32 board?

  • @az09letters92
    @az09letters92 2 года назад +7

    Next comparison: hammer vs screwdriver. ESP32 has its uses, but so does RPi Pico. Pico is unbeatable, when you need a ton of cycle exact IO, thanks to its PIO. Try to output DVI signal on an ESP32, not going to be able to do it. But Pico can do it just fine.
    Horses for courses. Both are absolutely great uCs and have their niches. You might end up using BOTH of them in the same project!

    • @jaedson-barbosa
      @jaedson-barbosa 2 года назад

      There's nothing ESP32 can't do.

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

      @@jaedson-barbosa VGA with zero CPU usage, and PWM at 200 MHz please. Working fine on the Pico, but would like to move it to a ESP32. Can it do it?

    • @jaedson-barbosa
      @jaedson-barbosa 2 года назад

      @@dazzer_ you know the PWM frequency is configurable, don't you?

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

      @@jaedson-barbosa Yes, I do, but that wasn't the question.

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

      @@dazzer_ I'm pretty knowledgable on the esp32, and it can't do either of the things you ask.

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

    Very nice comparisons you made, comparing boards and libraries (CircuitPy vs Arduino, for example).

  • @mr.anonymous298
    @mr.anonymous298 7 месяцев назад

    Very informative video 😊

  • @dragonfly-7
    @dragonfly-7 2 месяца назад

    Excellent video ! Did you consider to rerun the test with an RPi Pico W ? I'm not sure if the wireless option has an impact on the result though. Furthermore: Would it make sense to try to make use of the 2nd core by introducing threads (AFAIK the 2nd core is not used in Python code by default) ?

  • @EdFrench_uk
    @EdFrench_uk 2 года назад +7

    It would be interesting to see how the esp32 did with it's clock slowed - it should reduce the power consumption.

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

      I'd expect the current is proportional to the number of instructions per second, so they should be very close power wise per instruction. In either case, when you are talking about 10's of milliamps for operation, the problem is the same for either platform - long term use with battery power.
      What is more interesting to me is the low power mode and the current drain under low power mode to judge which to use for battery based applications.

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

      The ESP32 S2 does also have a low-power core. I've used it on the older esp32 and it's very handy for battery-based applications

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

      @@EdFrench_uk Thanks Ed. I've been wondering which route to take esp32 or pico and this video nudged me towards the esp32. I will chase up the low power modes on both and see which one to use. I will be using these in a camper running off the house batteries, so although I have plenty of power, leaving it on for months while parked will kill the house batteries and I know, at some point, I will forget to switch it all off, so utilising low power mode will ensure the batteries stay good.

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

      @@BenMitro worth posting your ideas on the esp32 reddit first. The ULP is hard even for very simple tasks! Often just waking the main cpu when a pin changes is enough tho'

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

    Your esp32s2 devboard has a led driven with ~10mA. Might want to remove that before doing low power work.

  • @etmax1
    @etmax1 Год назад +2

    The processor chip on the pico actually has no Flash, and the Flash device is a serial Flash. This means that the chip has to load code chunks less than 264k and run them then swap them out for new code bits. This is an issue only on larger programs of course, but if you set aside large buffers for USB or WiFi processing then you could see a considerable performance hit. My guess is that the pico is between 80% slower and maybe as much as 1000% slower depending on the application, with smaller applications being favoured. It would be nice to have someone test this with a test suite designed to specifically disadvantage the pico's architecture.

    • @Educ8s
      @Educ8s  Год назад +1

      Interesting info. Thanks for sharing!

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

    Was the WIFI module turned off on the ESP during the current consumption test?

  • @desmond-hawkins
    @desmond-hawkins Год назад +1

    This is a good approximation and the results are kind of expected, but it would be good to see the same test running natively instead of through CircuitPython, and without intermediate progress being sent to the display. You're spending time updating the screen and the execution benchmark is skewed by potential differences in the way the two boards communicate with the display. There's no good way to tell what these differences are here. Ideally you'd have them boot, start a timer, run the benchmark, stop the timer, and only use the display to show the results at the end.

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

    Which is faster, my tractor or my car?
    My tractor, of course!
    Application = Plough a field.
    If anyone tells you one of these is simply faster than the other, move on. They are likely just a fanboy with no experience of other platforms.

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

    I bought the ESP32-S3 as I couldn't find any S2.
    Awesome Video thanks :) I need single core power.

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

    ty

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

    Hi Nick! Thanks for the comparison! Do you like the new S2 more than the original ESP32?

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

      S2 is lower consumption with 1 core instead of 2.

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

    👏👏👏

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

    I use both at the same time in a special application. The esp32 manage the network and the raspi manage the analog signals and the business logic. We have two separated teams of developers, one for each uc.

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

    Nice work 👏👏

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

    Can you run a simple OC on the Pico? Out of the box it seems to be underclocked, with tons of headroom.

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

    To make it fair, on the Pico, what happens if you set the CPU frequency to 250Mhz? machine.freq(250000000)

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

      Can I do that on CyrcuitPython?

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

    This benchmark is great idea for tiny boards.

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

    Now there is a pico W with wifi but still ESP32 boards can accomodate an external antenna, which makes them much more useful in many cases.

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

    It's a great video. Can you make a video about the serial communication between Raspberry pi pico and Matlab, or could you help me by showing me how I could do it?

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

    How did the pico perform at max overclock (280 MHz)? Default is 125.

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

    First of all great video. Both are great boards. Let's not forget esp brought wifi to the makers. The pico has a few aces in its sleve like Hardware Divivide and can be overclocked to 266Mhz super easy. Division on micros without dedicated hardware is very , very taxing on performance. If you could try and use the Hardware Divide, and bump up the speed a bit on the pico, it will smoke the esp in this specific case. :)
    What you did with the pico is like driving a Ferrari in 1st gear : no dual core, no hardware divide, no overclock :)

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

      Thanks for the info. It is very interesting, I would love to try it.

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

      Salut din România

  • @AbbasA-gg1fp
    @AbbasA-gg1fp Год назад

    Thank you

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

    I wonder what result you get if you compare to the ESP32-C3 RISC V board. According to my experience, the C3 @160MHz is twice as fast as a Pico that is overclocked to 240MHz. Of course, only single core used.

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

      Same with the esp32 board, it can also be overclocked to 240MHz, and has a second core

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

      @@iliasalaur That's true, but if you run Pico and ESP32 S2 both at 240MHz, Pico is faster as RISC M0+ is more efficient than LX7. On the other hand, if you compare single cores only, ESP32 C3 RISC V core clocked @160MHz is faster than a Pico @240MHz. That's what I see at least, but not benchmarked under lab conditions...
      Comparing single vs dual core uC is a difficult one I don't dare, because too many other dependencies like SW quality, thermal power capability, RAM and Flash channel bandwidth, mem paging ect. have large influence on result.

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

      @@deehigh3359 actually, we shouldn't compare pico and esp32. Both of them are designed for different reasons. First for simplicity of interacting, second for developing iot stuff. So, that's it

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

    hi, can I connect raspberry pi pico with stm32 black pill? Is it possible?

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

    Do you have video comparing esp32 and esp32-s3??

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

    LILYGO® TTGO T-CAN485 ESP32 CAN Modbus rtu RS-485 Supports TF Card WIFI Bluetooth Wireless is a great project board. thanks. great video.😎

  • @fluffykitties9020
    @fluffykitties9020 4 месяца назад

    At 3:08 it seems like the ESP32 knew you were testing it and was live on camera, so it wanted to flex. LOL.
    It gave you the time of 3.14, the same as the pi result :)

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

    Not sure it makes a lot of sense to compare on that task, and inside CircuitPython... except if you plan to use it with CircuitPython.
    I think the Pico has no floating point math and is using library to do the math... and that might not be the case for the ESP32S2 so on some mathematical activities.
    I think the size of the community, the documentation, the support, ... are big factor for the maker community.
    Price and availability are also important.

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

    Pi Pico is $4 and it is a fixed price. It also has its unique PIO (4 PIO cores for each CPU core), which is a game changer for many applications. It however lacks WiFi/BT capabilities.

    • @gg-gn3re
      @gg-gn3re 2 года назад +1

      ESP32 S2 is also $2-$4, he probably got it from some resale shop in his country that doubles the price. (which is very common)

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

      You can get rp2040 board for 3$ weact rp2040 , doesn't have buck boost converter but high quality board. S2 with psram for 4$ wemos s2 mini

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

    This is a great comparison. I prefer a non fruit powered device.

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

    I recently ordered a esp32s3 board. Circuitpython still doesn't have multithreading support though 😔

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

      The ESP32 S3 is beast. I have to develop a dual-core benchmark to make a comparison with the Pi Pico when we get multithreading support.

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

      Be a man, use C

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

    Could the script be modified to use 1 core on the pico for the calculation and the other to drive the display? how would that change?

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

      Yes, but unfortunately not with CircuitPython. I have to rewrite the test in C.

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

    thonny ide (uses an interpreter) made my pico run 10x slower than my nano, idk it’s useless to have 8x times 2cores more processing power and be 10x slower than a poor nano. I’ve just switched to arduino ide and it now runs about 500 times faster but there is another problem. compilation takes several minutes makes it very difficult to debug.

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

    I’ve been playing with both. I think the ESP32 is the best option! Try to find a Pico W for less than the ESP32. Try to find a basic Pico for under the same price of the ESP32. Cost and functionality; the ESP32 wins! 🎉

  • @fikajlo
    @fikajlo 3 месяца назад

    I hope you understand you can disable the wifi and Bluetooth modules on the esp32 to make it use much less power

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

    On the esp is a LED lightning. That costs the 10 percent 😀

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

    I heard the ESP 32 devkit v1 has 2 cores not sure tho...
    I would love to see the comparison if it's true.
    Love your video❤️

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

      Yes, the ESP32 v1 is dual core but it features two cores of an earlier LX6 architecture. The new ESP32 S3 is dual core with the newest LX7 architecture but the cores should have identical performance with the ESP32 S2.

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

    The comments on a RUclips video are actually helpful and informative. Imagine that!

  • @Cristian-yj4gk
    @Cristian-yj4gk 2 года назад

    My guess, before watching your benchmark run is that it would be the ARM RPi board who wins. Compiler should be better, and the Python runtime should be more optimized for an arch that is mainstream these days

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

      That's a good point!

  • @mlsh-azerty
    @mlsh-azerty Год назад +2

    well not really
    pico have two core so we can do
    133hz*2=266 and is bigger than the esp
    so on multi tasking pico is faster in theory
    python is monocore so probably not the best choice (maybe cirquitpython is mulricore ?)

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

    Any project using WIFI or Bluetooth the S2 is the only option and anything using complex fast IO the PICO would be the better option. People need to learn to match the device to their problem. Also you need to make sure you turn off the WIFI/Bluetooth radio on the S2 when testing. By default these use a lot of power even when not being used unless explicitly turned off.

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

      The 2040 chip on the Pico is available as a component and has been used on other implementations including WiFi and Bluetooth boards.

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

    You should compare these to a Teeny 4.1. Single core, but at 600 Mhz, which can be overclocked. Much more powerful, with a lot more I/O. I would use C libraries for the comparison however.

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

      Yes, Teensy is a beast. I would love to test it!

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

    Long live ESP32!
    Kicking ass while chewing gum.

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

    ESP32 also has Bluetooth, in addition to the WiFi.

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

    something interesting might be to overlock the pi and see what performance it can achieve

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

      I have tried to overclock pico, and it works fine up to 250mhz. Yes, it gets slightly warm but 2x processing speed is noticeable.

  • @cristianalejandroayontzint6018

    Is there anyway to do this same benchmark using both cores instead of one from the RPi?

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

      Yes, I will try that soon but on Arduino since CircuitPython does not support multicore applications yet.

  • @djjmsimon
    @djjmsimon 2 года назад +4

    Did you disable the WiFi during the power test?

    • @Educ8s
      @Educ8s  2 года назад +4

      No, but I didn't enable it either. I thought it would be off by default. I have to look more into it. Thanks for pointing it out!

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

      @@Educ8s The S2 WIFI radio needs to be explicitly disabled or it draws power even when not in use.

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

    ESP32 (not S2) is same architecture as ESP32S2, but has two computing cores, so 2x speed vs S2 and 2x cheaper price vs PI.
    Also You forgot to mention about 8Mhz low power core on both ESP32 and ESP32S2, so computing power is even higher :)

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

    This was great.. a good honest appraisal of both boards.. the esp 32 is what I will use.. But not for what you think.. I like the wifi connection.. It makes for easier use in some of my projects..

  • @fsmaia
    @fsmaia Год назад +1

    ESP32 is growing faster and it's getting cheaper. I would use esp32.

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

    Thanks for an interesting video. Isn't the IO-processor of the Pico the most prominent difference if comparing them? I would guess that makes stuff possible on the Pico which would still be impossible (much harder) using ESP32.

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

      Exactly my thought, the IO processor on the PICO is a game changer for complex IO.

  • @elektron2kim666
    @elektron2kim666 2 месяца назад

    I hate libraries and it was much faster to write a bit of code in MMBasic to begin with. I can focus on the tasks, hardware and the modules for things. I bought some ESP32 stuff anyway and it's the same SPI, I2C, Serial, Display and whatnot protocols with more wireless functionality on the ESP32 side. Low power and no heat is a major factor sometimes. They can easily communicate together, so just do you.

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

    Another invention of the bicycle

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

    The benchmark itself is quite limited. It's certainly shows some specific aspects of relative performance, but there needs to be a broader set of tests.

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

    У ESP32 тоже два ядра, первое обслуживает модули WiFi и BLE. Это ядро так же можно задействовать в работе. Вопрос только в распараллеливании вычислительной задачи.

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

    3:07 it took 3.14 seconds on the ESP ;D

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

    Also compare ESP32 with DUE

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

      ESP32 is waaaay faster than almost everything. Except Teensy 4.0

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

    Could you try the same running c++?

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

      Yes I would love to try it.

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

    you can operate up to 240MHz with the pico so in that case it could be as fast as ESP32 in my opinion

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

    do you have the ESP32 S3?

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

      I don't have one, but since the ESP32-S3 has two cores, which are exactly the same as the the core of the S2, I think they have exaclty the same performance. I will get one to test it though. Cheers!

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

    Why waste 2 of the 3 cores on esp?

  • @hi-technobarrio6096
    @hi-technobarrio6096 10 месяцев назад

    The question is how efficient and durable the two devices and compared, ESP32 is erratic, especially triggering its interrupt. I think most of us notice that :)

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

    Whoa.... A benchmark but in Python? Not only is Python slow but the runtime for the language is probably compiled a bit different for each platform. I think straight C or C++ would be a better indicator.

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

    ESP-32WROWER-B - my board.

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

    Interesting and thanks but I think it is a little lopsided as the Pi Pico has two cores and you only used one.

    • @Educ8s
      @Educ8s  Год назад +1

      Yes, I only used one core of the pico because CircuitPython does not support multi-core programming. I plan to do the same test on Arduino and use both cores of the Pico, so stay tuned.

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

    The non s version of the esp32 are nominally more expensive and feature 2 cores

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

      Yes, but of an earlier architecture, LX6 vs LX7 of the ESP32 S2.

  • @joveaaron-real
    @joveaaron-real 2 года назад

    Great video! Are you Spanish?

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

      Thanks! I am Greek.

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

    Run pi calculation one's on each pico core and twice on esp32, then compare.

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

      Sure, I would love to do that.

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

    The ESP32 S2 takes approximately Pi seconds or 3.14 seconds and the Raspberry Pi takes approximately 2 Pi seconds or 6.4 seconds. Interesting. and a bargain price for both.