How to Run Linux on an ESP32

Поділитися
Вставка
  • Опубліковано 28 тра 2024
  • Can you run Linux on an ESP32? Until recently, you could just answer "no!" But, in fact, you can run Linux on a specific variant of the ESP32-S3 MCU! Based on this, Clem saw an opportunity to build his own Linux-powered SBC in the form factor of the Raspberry Pi 4 Compute Module.
    Along the way, he creates a CM4-style template, a simple command line flashing tool to make the process easier, and two iterations of his module (called Sudosom) that could be used whenever a real Raspberry Pi might be overkill, but a simple MCU just won't cut it for your project.
    Discuss the episode, find all resources for the project, and ask Clem questions on the element14 Community! bit.ly/46eU5Nq
    element14 Community discussion on using Linux on the ESP32-S3: bit.ly/3rNONtc
    Engage with the element14 presents team on the element14 Community - suggest builds, find project files, and see behind the scenes video: bit.ly/3tmdewv
    Visit the element14 Community for more great activities and free hardware: bit.ly/3q6YMpu
    Tech Spotlights: bit.ly/3qPrDhM
    RoadTest and Reviews: bit.ly/3pV5Bux
    Project14: bit.ly/31wbnJY
    #0:00 Welcome to element14 presents
    #0:22 Overview
    #2:31 The PCB in KiCAD
    #6:15 Assembly
    #8:10 Linux
    #10:25 Another Iteration??
    #15:12 Let's Demo!
    #17:09 Give Your Feedback
    #esp32 #esp32project #linux #raspberrypi #pcbdesign #pcbdesigning
  • Наука та технологія

КОМЕНТАРІ • 358

  • @MAYERMAKES
    @MAYERMAKES 7 місяців тому +59

    So are there any projects you would like to see built running linux on such a cheap tiny mcu? maybe we could make a linux version of the basic badge?

    • @matthewmcphail7703
      @matthewmcphail7703 7 місяців тому +6

      If using an esp32 you can probably add Nicer display to your 328 badge along with wifi and stuff

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      ​@@matthewmcphail7703probably..but these lcds have a special place in my heart.

    • @thesebi
      @thesebi 7 місяців тому +8

      How about a network print server for 3D printing?
      Maybe a lightweight alternative to Octoprint?

    • @Workshopshed
      @Workshopshed 7 місяців тому +6

      A light weight NAS, time server, VPN, Ad blocker

    • @Seu_Lunga
      @Seu_Lunga 7 місяців тому +1

      Pi hole!

  • @Stabby666
    @Stabby666 7 місяців тому +92

    If you do another board design I'd suggest adding an SDCard slot to host the /home and /usr dirs to install software, and possibly switch from UART to SPI for communication with the RP2040 as it will be much faster to send graphic commands across (UART has some overhead, and no clock pin, so can desync at high speeds - you could hit 40mhz or so over SPI).

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +4

      Good suggestions!

    • @hclchgm
      @hclchgm 7 місяців тому +1

      ​@@MAYERMAKES awesome project.

    • @alexlovett1991
      @alexlovett1991 7 місяців тому +3

      Literally came here to say the same thing but with emmc instead!

  • @andywest5773
    @andywest5773 7 місяців тому +43

    I usually choose microcontrollers specifically when I don't want an OS getting in my way... but this is giving me some interesting ideas. Nice!

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +2

      its kinda like a forbidden fruit..isn´t it.

    • @stylesoftware
      @stylesoftware 7 місяців тому

      Too true. My fav is still the esp32, amazing features, fully arduino-ized. If I have to use an OS, it has to be non-write; Fixing OS type problems.

    • @jovialcupid9687
      @jovialcupid9687 7 місяців тому +2

      U can always use built in os.. freertos

    • @RobertLeeAtYT
      @RobertLeeAtYT 7 місяців тому

      This fills a definite niche. The primary advantage of this project is now you have the robust Linux networking stack. Previously, your options would have been FreeRTOS+TCP, LWIP, uIP and similar. They all work, but they’re all very much limited and very compromised.

    • @aleph_one
      @aleph_one Місяць тому

      What problem with OS for mcu? It is not necessary to use OS like Linux. Simple OS (FreeRTOS, etc) for mcu very useful too.
      And maybe you don't know, but when you create new project for ESP32 in some IDE, your project will contain OS like FreeRTOS, and no matter will you use it`s fuctions or not.

  • @EducatedEngineer
    @EducatedEngineer 7 місяців тому +7

    This is absolutely amazing! It looks like a ton of fun. Fantastic work 🙌🏻

  • @nafisahmed6247
    @nafisahmed6247 7 місяців тому +50

    if USB starts working then it would mean a microcontroller can finally print on an inkjet or a laser printer instead of those thermal printers.

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +2

      😂among other things, but drivers also need to be ported

    • @bastiannenke9613
      @bastiannenke9613 7 місяців тому +7

      Since WiFi is working, I think you "only" need to port cups and the printer driver.

    • @zyeborm
      @zyeborm 7 місяців тому +3

      My god, of all the things you want to play with right out of the gate the hell of inkjet printers is what you pick? masochist.
      Lol it'd literally be easier to put a pen in a 3d printer and spit gcode at it 😂

    • @nafisahmed6247
      @nafisahmed6247 7 місяців тому +3

      @@zyeborm that's because you can't imagine how many requests I get from clients to integrate printers in the controllers I make for industrial purposes. Then I am forced to use a linux SBC to do just that.

    • @MAYERMAKES
      @MAYERMAKES 6 місяців тому

      ​@@nafisahmed6247that is actually a common request😮

  • @luciangpl
    @luciangpl 7 місяців тому +2

    Having Node-Red running on the ESP32 would be super cool!

  • @first-thoughtgiver-of-will2456
    @first-thoughtgiver-of-will2456 2 місяці тому +2

    this would be awesome to remote update a linux edge application, not to mention all the logging etc for light embedded applications thanks for sharing!!

    • @MAYERMAKES
      @MAYERMAKES 2 місяці тому

      thats agreat idea for an application!

  • @photocanonn
    @photocanonn 7 місяців тому +2

    mind-blowing work bro! amazing!

  • @GJSantis
    @GJSantis 20 днів тому +1

    Congrats mate! Great job!

  • @lukasheiligenbrunner2272
    @lukasheiligenbrunner2272 7 місяців тому +35

    You could port openwrt to run on an ESP32. This would be awesome.

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +3

      Someone could 😂 I'm not smart enough for that

    • @ccflan
      @ccflan 7 місяців тому +3

      ​@@MAYERMAKESif you can share me thr kernel config i might be able able to make xtensa as new build target for openwrt that wil run on initramfs, i would say instead someone could port nl80211 implementation for xtensa instead 😊maybe we can collaborate?

  • @ingenierocristian
    @ingenierocristian 5 місяців тому +2

    Absolute wonderful! I just can dream on installing an OS on my complex projects! Thanks a lot!

    • @MAYERMAKES
      @MAYERMAKES 5 місяців тому

      you are welcome.

    • @aleph_one
      @aleph_one Місяць тому

      For Esp32 you may use not only Linux. Simple OS like FreeRTOS very useful too.

  • @BBRR442
    @BBRR442 Місяць тому +1

    wow great work! Thanks for the share. I would of also liked to see the linux do some cool things with the rest of the module and carrier board but oh well maybe on the next video.

  • @DetrasDeUnaLente
    @DetrasDeUnaLente 7 місяців тому +4

    This is very cool, and I think it opens up a lot of exciting possibilities! I'd love to see a follow-up video showing how to do stuff like interfacing with the GPIO pins, communicating with other devices via I2C, and doing other traditional microcontroller stuff. I have a couple of questions as a starting point:
    1. Would it be possible to run a webserver like lighttpd of Apache on the board?
    2. Would applications that require critical timing (like driving WS2812B LEDs) fail miserably?

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +1

      Webservers and driving serisl leds work very good on esp32 without linux.
      Ots a very good choice for such applications.

  • @gaetanb6296
    @gaetanb6296 7 місяців тому +1

    Great discovery thank you!

  • @HPTRUE
    @HPTRUE 7 місяців тому +2

    Great video, very much fun it looks like 😊😊

  • @BDJones055
    @BDJones055 7 місяців тому +3

    Aw man this would be sick as a webserver with two or three stepper drivers. I'm building a miniature observatory for a small telescope and am using an ESP32 to control it all.

  • @fflecker
    @fflecker 6 днів тому

    Thanks a lot ! It was a matter of time. I waited for this. The next project I wish to see is the IDE using Java to program the ESP32.

    • @MAYERMAKES
      @MAYERMAKES 4 дні тому

      the chance of me using java is near absolute zero.

    • @fflecker
      @fflecker 4 дні тому

      @@MAYERMAKES Then we procceed with C and C++. It's alike. The guy construction the IDE will do it one in a while. Thanks for you fast reply.

  • @filipstojanovicmechanicale9265
    @filipstojanovicmechanicale9265 6 місяців тому +2

    Man..i love this! I would literally try to use this in my IOT projects, where I want to minimize power usage. Microcontroller running some RTOS with some library for Internet protocols is just to complicated to implement, in this case, a MCU that runs Linux would be extremely easier to implement, and power usage would still be in a extremely low ranges. Nice. I like open minded people with ideas like this

    • @MAYERMAKES
      @MAYERMAKES 6 місяців тому

      thanks, lets hope the projects takes of!

  • @Reza1984_
    @Reza1984_ 3 місяці тому +1

    Wonderful work!

  • @maximus6884
    @maximus6884 7 місяців тому +4

    Dude this is amazing

  • @jerrymagnin4248
    @jerrymagnin4248 7 місяців тому +5

    Very cool, and well explained!
    I was wondering - as you are able to connect to the ESP through SSH - if you can up/download files via SFTP commands?

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +3

      take a look at the demo at the end of the video. I connect vias SSH and download stuff from an ftp server via wget so sftp is not far fetched.

    • @jerrymagnin4248
      @jerrymagnin4248 7 місяців тому +2

      @@MAYERMAKES I saw. But if sftp is also supported that would eliminate the step of having to upload first the files to an external server, allowing a direct transfer through SSH connection.

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      that should be doable when you compile the kernel from scratch with Rudis script probably @@jerrymagnin4248

    • @dmitrik5496
      @dmitrik5496 4 дні тому

      @@jerrymagnin4248 you can just use scp instead if only need secure transfer of files withot interactivity, I feel it should be in that micro distro since they already have ssh

  • @goo3r
    @goo3r 7 місяців тому +4

    This is so awesome!

  • @azbesthu
    @azbesthu 7 місяців тому +2

    I just got some ESP32-S3 for doing web based wifi serial console for 3d printer usb port. Like MrDIY did with ESP8266, but without soldering to chips, but using the printers usb-serial port through the natíve usb port of ESP32-S3..

  • @joshmanpro7993
    @joshmanpro7993 7 місяців тому +3

    You have an awesome project but one thing I would love to see added to that project is the ability to have a SD card added. Yeah, there are a few ways to do that but having it built into the board design would be awesome.
    Also, would love to see if you could get the Linux system built for the ESP32 running on the Lilygo T-Deck.

    • @user-wx1ns5hf3h
      @user-wx1ns5hf3h 7 місяців тому +1

      On Linux build u can enable spi supporting on other pins when u compile binary. And enable mountable. Now, your esp32 can see any spi devices(if driver build-in on compilation), and sdcard too!
      But… Speed of running Linux wants to be better(although it’s just a microcontroller)
      Sorry for my English. I’m not native speaker

  • @theengineer9910
    @theengineer9910 7 місяців тому +4

    Really impressive. These Software wizards are the types who can get alot of performance out of little hardware.

    • @aleph_one
      @aleph_one Місяць тому

      Little hardware... Esp32 in times more powerful than some processors (80386, etc) in old computers.

  • @ko5t1k
    @ko5t1k 7 місяців тому +2

    Thank you for nice video. Do you have any idea about SD card on this board? I am sure that it will open much more options how it can be used

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      so far this is in the very early stages so att the moment all htat is working is what you see in the video + some utilities and mircopython.

  • @thomasherpoel3132
    @thomasherpoel3132 5 місяців тому +2

    For future revisions of your board, I advise looking into proper routing techniques for 4 layers boards. The routing you showed for the first revision wasn't really good, especially for a board with a RF module. Basically choose a good stackup, and think about returns paths for your signals.

    • @MAYERMAKES
      @MAYERMAKES 5 місяців тому +1

      there is for sure a lot to improve about routing, main consideration for now was to get it manufactured in time.

    • @thomasherpoel3132
      @thomasherpoel3132 5 місяців тому +1

      @@MAYERMAKES makes sense.
      On this topic, Robert Feranec published good interviews of Eric Bogatin and Rick Hartley on UA-cam that are a good introduction on the subject.

  • @Tarbard
    @Tarbard 7 місяців тому +10

    Very cool, I would like to see it used in a project.

  • @lostcellphone
    @lostcellphone 7 місяців тому +1

    Terrific job 👍

  • @mmendesrs
    @mmendesrs 7 місяців тому +6

    Exciting!

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +2

      indeed! imagine all the crazy stuff we could build now!

  • @deterdamel7380
    @deterdamel7380 7 місяців тому +1

    Very cool project!

  • @energymarketchile
    @energymarketchile 7 місяців тому +2

    What about a WiFi micro repeater, with pi-hole of possible?

  • @strings219
    @strings219 7 місяців тому +2

    Regards to GCC crashing assuming you are using a Ryzen with a lot of cores. If your make -j flags is the same output as nproc. You could be running into a OOM issue or race conditions. I recommend trying with j flag $(nproc) divided by two . this should minimize SMT use and help with RAM. If that doesn't work try a way more conservative -j flag number. And last case try with make -j 1 .

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +2

      Indeed its a ryzen 3950x, thanks for the tipps

  • @mx338
    @mx338 7 місяців тому +1

    I recently checked out what's in my new IKEA smart home controller and they also run Linux on a tiny STM32.

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      must be an stm32mp1 , they recently popped up on various embedded computing modules.

  • @IOTConnect
    @IOTConnect 7 місяців тому +1

    Can we add SD card support via spi, to expand the file system using overlay file system? It is possible in openwrt on TP link archer c5 router to use usb mass storage as overlay file system.

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +1

      its in the plans, certainly doable, just a lot of work

  • @somethingnonsense5389
    @somethingnonsense5389 7 місяців тому +2

    just thaught of this one: instead of uploading stuff to a webserver and then using wget, since the OS does ssh, you can use scp (or winscp if you are on windows) to move files to it directly.

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      yes scp is also an option, i wanted to show wegt to drive the point home that the internet connection works-

  • @unglaubichuberlieber8048
    @unglaubichuberlieber8048 4 місяці тому +1

    THANKS YOUR THANK YOU THANK YOU FOR YOUR GREAT PRESENTATION + MOST OF ALL
    THE GREAT INSPIRATION !!!
    NOCHMAL IMMER WEITER !!!

  • @mx338
    @mx338 7 місяців тому

    Getting the lighthttp web server running on this would be amazing.

  • @jameslamb4573
    @jameslamb4573 7 місяців тому +4

    Looking forward to seeing this go further. Does it Python yet?

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +2

      Micropython is working🎉

    • @movax20h
      @movax20h 6 місяців тому

      Normal Python probably not. On my amd64 machine, just starting interpreter of Python, it eats 11MB of memory. (Empty script that just loops, eats 8MB - less than interpreter, because you load few less modules).This ESP32-S3 has like 5MB of free RAM after booting (2MB out of 8MB is used by kernel, plus a bit by shell and libraries, and maybe a daemon or two).

  • @mustafabhadsorawala652
    @mustafabhadsorawala652 7 місяців тому

    Hey, nice video!
    What would be the drawbacks of using Linux on ESP32? Are we missing time critical things

    • @nathanmiddleton1478
      @nathanmiddleton1478 4 місяці тому +1

      The S3 varient is a pretty capable microcontroller. IIRC it has dual cores as well. Not to say it'll be running Plasma or Gnome but if you wanted to run simple daemons and that may need to be more than a couple hard-coded things, I think he said this in the beginning, you really couldn't beat something like this. Not that it would be realtime unlesss the load was considerably managed.

  • @barbiani
    @barbiani 7 місяців тому +3

    It would be nice to see it merged it with the monolinux project.

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      interesting, need to google that

  • @thilinamedia6910
    @thilinamedia6910 7 місяців тому +1

    Subscribed to see more..

  •  7 місяців тому +1

    Nice video, can we use sqlite for logging?

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      its all a question of software implementation

  • @tejonBiker
    @tejonBiker 7 місяців тому +1

    I never think about reporpuse the I/O Board of CM4, I think Is a nice idea, I think pseudo gpu rp2040 can be a nice adition but needs a ton of code to come true

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      Yes.. that project will haunt me for a while

  • @FinTra_
    @FinTra_ 7 місяців тому +2

    Curl, nginx and php, and c++ dev environment 😊

  • @x7682
    @x7682 4 місяці тому

    Nice video. The error you show for compiling means the spaces in you path to the directory are a problem. Rename the directory with spaces in its name. Also, if you have ssh you can copy files with scp.

  • @MassimilianoBariola
    @MassimilianoBariola 7 місяців тому +3

    this is absolutely awesome!
    I can see it as a local MQTT broker. Does it also handle ESP-NOW? (If not, I can just use a second ESP32 as bridge I guess)

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +1

      Sure you can flash anything on this that is esp32s3 comoat8ble.

  • @maximus6884
    @maximus6884 7 місяців тому +4

    Wow! I hope we can have a linux distribution to this. Wjere we can install apps via package manager.

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      That would be the ideal outcome

  • @SoundsLikeOdie
    @SoundsLikeOdie 7 місяців тому +2

    Novice question.
    Can existing packages like Node-red be ported into the device?
    Is there or will there be repositories?
    I assume Node-red would need more resources then the ESP can offer.
    This is the first video of yours I have watched. Great content.

    • @movax20h
      @movax20h 6 місяців тому +1

      I think Node-red will not work because of memory being way too small. You could compile it, but installation will probably not fit, plus there will be only about 5MB of free RAM to run anything. There are some other issues, but that would be the main one.

  • @abo1428
    @abo1428 7 місяців тому +7

    Just amazing! 😮 Great work! 👏🏻 I‘ll have some free time, I would consider to flash Linux on my ESPs too.
    Would love to see a second part of this video with working 2040 and HDMI and SATA❤

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      😂lets hope i get this working

    • @wurstelei1356
      @wurstelei1356 7 місяців тому +1

      @@MAYERMAKES SATA and HDMI is kinda overkill for a slow chip like that ESP32. Instead I would add a small display directly on the PCB to get something more unique than just another ESP. Maybe a MicroSD slot would be enough, as already suggested by other viewers. I am dreaming of a Pi-CAM-Plug on ESP.
      For real, I would buy such a thing if it is not too expensive.

    • @conorstewart2214
      @conorstewart2214 7 місяців тому

      ⁠@@wurstelei1356 you can already get images from a camera and stream it over wifi and it would probably work better without running Linux on it.

    • @wurstelei1356
      @wurstelei1356 7 місяців тому

      @@conorstewart2214 Sure thing, but I meant to detect certain colors or pattern without the need to stream it somewhere. Also the cam would just be an additional option like on the Pi.
      This Video was about Pi-Compatible form factors so a cam slot, Micro SD, USB and some GPIOs came to my mind.
      Anyway lets hope for some nice updates about this.

  • @joaquingutierrez3072
    @joaquingutierrez3072 10 днів тому

    Amazing! What is that PCB design software?

  • @CABohol
    @CABohol 7 місяців тому +1

    Interesting project 🥂

  • @olafschermann1592
    @olafschermann1592 5 місяців тому +1

    Awesome!

  • @platin2148
    @platin2148 7 місяців тому

    I guess one would need a abi using compiler? Because the default one will not compile correct elf’s i would guess.

  • @le9038
    @le9038 7 місяців тому +1

    If you were to run Xorg or Wayland on the ESP32, how much would it choke up trying to run a desktop?

    • @miko007
      @miko007 7 місяців тому +1

      xorg alone requires at minimum four times the memory the esp provides. wayland is just an api description. it is not a software you can actually run.

  • @cphil1509
    @cphil1509 7 місяців тому

    How could linux fit on that ESP, since its flash size only has a few megabytes.
    Or in other words: Is there a SDCard or other Flash module to expand the stock storage of the ESP, or is there a plan/way to do so?

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +2

      the linux kernel fits on the 8MB flash of the esp32-s3-n8r8, in the vide i use an esp32-s3-N16R8 but ionly the 8Mb are adressed in the firmware.
      of course there are plans for sd and usb storage expansions in the future.

  • @nuclearnyanboi
    @nuclearnyanboi 7 місяців тому +3

    omgomgomg I just realize your channel's name means Silicon 😅

  • @ergindemir7366
    @ergindemir7366 7 місяців тому +3

    Well what can you do with it? With 8mb psram your options are very limited. The only viable options are networking products like router, access point, repeater etc based on linux kernel.

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +1

      Well micropython already works, precompiled code csn be run. So usual automation /control tasks and network related stuff loke webservers come to mind. 😂

    • @ergindemir7366
      @ergindemir7366 7 місяців тому +3

      ​@@MAYERMAKES Another idea is to port sqlite server. Best to my knowledge sqlite does not work on freertos. It might be the worlds smallest sql server.

    • @miko007
      @miko007 7 місяців тому

      @@ergindemir7366sqlite is a file based database system. there is no such thing like a "sqlite server".

  • @vlad-n-ag
    @vlad-n-ag 6 місяців тому +1

    Great. It seems to me that such a board does not need a graphical interface. SSH access is sufficient. Application - easy integration of your devices into your home network and management using such convenient things as python, bash, etc.

    • @MAYERMAKES
      @MAYERMAKES 6 місяців тому

      Jep, works well without any graphics, but woukd be a cool addon.

  • @seanperez1210
    @seanperez1210 5 місяців тому

    Don’t the S3 ULP have a dual mode that alow the ULP to act like a state machine ( similar to PIO) ?

    • @MAYERMAKES
      @MAYERMAKES 5 місяців тому +1

      not in the same capacity and speed. the PIO is quite unique

  • @frankfilter
    @frankfilter 4 місяці тому

    High, very great, may be it's possible to add SD-Card and boot from SD-Card ?

    • @MAYERMAKES
      @MAYERMAKES 4 місяці тому

      possibly as storage, but boot happens from internal rom at this point

  • @marcello4258
    @marcello4258 7 місяців тому +1

    Sd card and have it as a very transportable backup / storage up to 1Tb would be probably id use it for ;-)

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +1

      doing basic file tasks in embedded systems might be a good application

  • @poisonouswhisper
    @poisonouswhisper 7 місяців тому +1

    I don't know if thats even possible but I would love to see nodejs run on it! 😍

  • @dineshvyas
    @dineshvyas 7 місяців тому +6

    This has potential to become a new RT linux for DIY CNC and robots. It needs a display to take input on output.

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      hehe, yep take a close gander on the v2 pcb.....

  • @jf4958
    @jf4958 7 місяців тому +1

    would love to see Home Assitant running on an esp32

  • @PaulSpades
    @PaulSpades 7 місяців тому

    ohhh, no. the esp32 s3 can now run php. and bash script. and perl. well, if they're compiled for the funky esspressif core architecture. what have you done?

  • @Seu_Lunga
    @Seu_Lunga 7 місяців тому +1

    I'm not good at listening, so I don't get if we need to use this board and solder an esp on it, or we can use some comercial dev kits found on stores?

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +1

      just to run linux you could also use an esp32-s3 devkit, but it has to be one with at least 8MB of PSRAM, but the binaries also need to fit that version. the board I made ia basically an application of the concept and putting it already a step forwards towards embedded computing in a popular form factor.

    • @Seu_Lunga
      @Seu_Lunga 7 місяців тому

      @@MAYERMAKES how do I check the psram of a board/devkit?

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +1

      The model number should inficate it. N = flash , R= ram . N16R8 = 16mb glash +8mb ram

  • @justinmcneice8238
    @justinmcneice8238 7 місяців тому

    Would use it for mav link and create an auto pilot I've got loads in mind

  • @alelondon23
    @alelondon23 7 місяців тому +1

    Brilliant! call it Missing Link.

  • @RohitKumar-ow2zt
    @RohitKumar-ow2zt 7 місяців тому +3

    Loved this video 😍😍.. I was looking how boot esp32 with Linux.. Thanks

  • @MrXRes
    @MrXRes 7 місяців тому +1

    Smart watch!

  • @somethingnonsense5389
    @somethingnonsense5389 7 місяців тому +1

    this actually would do nice as a DMX controller like an old lanbox LCE box

  • @kitesforfuture577
    @kitesforfuture577 5 місяців тому

    So you could use an ESP32-S3 to flash new firmware onto several other ESP32s that are connected via USB? I.e. use it as a fail-proof OTA-updater which itself does not update.

    • @MAYERMAKES
      @MAYERMAKES 5 місяців тому

      well I dont know if esptool.py is runnable on the eps32s3 but in theory yes, you might get better results with writing a dedicated flasher programm

  • @DmC944
    @DmC944 7 місяців тому

    8:25 That does not sound like a software issue ... more likely thermals or power supply...
    One thing might be using `make -j` with no arguments (that will attempt to build too many stuff concurrently) or too high of a value for your system (RAM, or core counts)?

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      all possible, I did not have the time to look more into that .but its a ryzen 3950x and it seems to try to do to much at once. so its worth trying that again with some arguments.

  • @sjoervanderploeg4340
    @sjoervanderploeg4340 4 місяці тому

    Can't you use a microSD card over SPI on Linux?

  • @TT-it9gg
    @TT-it9gg 7 місяців тому +2

    Excellent! Many new SoC are far behind on the software. The have no WiFi SSH...

  • @coolguy8709
    @coolguy8709 2 місяці тому

    Can you set up ps vita dock with that?

  • @acidutzu
    @acidutzu 7 місяців тому

    How about putting this Linux on the TTGO, or FabGL ESP32 board, that has VGA, SD card, PS/2 mouse and keyboard and audio out?

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      the fabGl board is not compatible, you need an esp32-s3-n8r8 to run linux

  • @aramgomezneri6490
    @aramgomezneri6490 7 місяців тому

    I would like to know if it is possible to put an ethernet port in this PCB project. Thanks a lot.

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      well if you add an ethernet bridge IC to the esp, but for that first the usb host modes should be implemented.

  • @D9ID9I
    @D9ID9I 7 місяців тому +1

    Would be fun to see klipper3d running on it

  • @FoxMccloud42
    @FoxMccloud42 7 місяців тому +1

    Would be funny to run the host version of klipper on it with another esp32 runnign the mcu part (esp-inception).

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +1

      nice idea, but maybe needs a custom Esp32-S3 implementation with more ram and bigger flash!

    • @reinholdu9909
      @reinholdu9909 7 місяців тому

      @@MAYERMAKES _ISSI_ has 32Mb Serial selfrefresh DRAM available ...should suffice ;) - *NO?*

    • @conorstewart2214
      @conorstewart2214 7 місяців тому

      @@reinholdu9909 32 Mb is only 4 MB, which is below the minimum requirements for running Linux, they say it needs at least 8 MB of PSRAM.

  • @cooper1056
    @cooper1056 3 місяці тому

    You did this yourself? Or you had a team ? Just curious about peoples workflow.

    • @clemensmayer9171
      @clemensmayer9171 3 місяці тому

      I did the Hardware shown in the video and the Flash script, the linux port was done by the other people mentioned in the video. btw. prpject is still running!

  • @der.Schtefan
    @der.Schtefan 7 місяців тому +3

    If ssh works, then scp would be much easier to copy files? Or even mounting the remote as ssh-fs directory?

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +1

      scp is there. i love how everyoen is pointing that out, but nobody notices how i want to show of my fancy new ftp server... ;-) i wanted to deliver unrefutable proof it is connected to the internet not just my local network..but yeah scp....

  • @johntilghman
    @johntilghman 7 місяців тому +3

    This is very cool. I wonder if it would run ROS for robots.

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      i dont know if ros has any architecture dependent components but with custom flash(for more space/ and ram it might be possible.

    • @jovialcupid9687
      @jovialcupid9687 7 місяців тому +1

      Ros in freertos (esp32 os) was ported as micro-ros
      So it will be pretty easy to use it

  • @Quizzer11
    @Quizzer11 7 місяців тому

    i am interested in running python /QT Software on a soc. but all socs are way to slow in booting. does anyone know an alternative to run python especially as an obd connected dashboard in the car.

    • @MAYERMAKES
      @MAYERMAKES 6 місяців тому

      you can directly run micropython on esp32, as long as the code does not use any python exclusive libs you cant rewrtite for upython it should do waht you need.

  • @sjoervanderploeg4340
    @sjoervanderploeg4340 4 місяці тому

    If your PC shuts off during compilation, you do not have a dependency problem... there is either something overheating or not getting enough power in your computer!

  • @edenrose2374
    @edenrose2374 7 місяців тому +1

    I hope to see this fleshed out more and used in interesting ways.
    I prefer a OS for increased functionality, debugging and memory management. I hope to see this keep moving forward with help from the greater community!

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      😂i do so to! Heeeeelp

    • @jovialcupid9687
      @jovialcupid9687 7 місяців тому +4

      Then... use OS that is already built in esp32? It's named freertos - memory menagment, tasks, cores and much more..
      Using Linux will only make it slower and harder to debug

    • @jovialcupid9687
      @jovialcupid9687 7 місяців тому

      If u will google it, always google it as "freertos esp32", because there is also vanilla freertos that was made only for one core

    • @conorstewart2214
      @conorstewart2214 7 місяців тому

      You can already do all the things you described without using Linux on it. You can debug an ESP32S3 over USB and they usually run freeRTOS anyway which lets you make tasks, interrupts, manage memory, etc.
      If you think you want an OS on a microcontroller for extra functionality, debugging and memory management then you don’t really know how to use an MCU, you are just trying to use it like a full computer.

  • @WeeSooKANG
    @WeeSooKANG 7 місяців тому

    ESP32-CAM board (using ESP32-S chip) has a microSD slot (supporting up to 4GB), FPC connector for camera, flash LED, and 8MB PSRAM. Can it also run Linux?

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      only if it uses the ESp32-s3.

  • @shmulikdermer4534
    @shmulikdermer4534 2 місяці тому

    Wow this is amazing
    can you run on this device node js and express???

    • @MAYERMAKES
      @MAYERMAKES 2 місяці тому +1

      if someone ports ist possibly

  • @philippw.147
    @philippw.147 7 місяців тому

    Is ReverseSSH working on that?
    Would be awesome 😁💯

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      Ssh works in both directions

  • @nimikh2
    @nimikh2 7 місяців тому +3

    Does it run binary files? Could you run doom on it? :)

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +3

      you can already run DOOM on ESP32. no linux required. of coiurse you can flash binaries to it.

  • @LAZARbq
    @LAZARbq 7 місяців тому +1

    klipper (3d printer) in esp32

  • @Canthus13
    @Canthus13 23 дні тому +1

    This works on an N8R8. Does it also work on the N16R8?

    • @MAYERMAKES
      @MAYERMAKES 19 днів тому

      yep actually the one in the video on V2 is a N16R8, but after the flashing it will adress it as if it just had 8MB flash. so there is no difference.

  • @mjp0815
    @mjp0815 3 місяці тому

    Run mosquito or node red?

  • @Megamannen
    @Megamannen 7 місяців тому +2

    You know that if you an SSH server on the board you can probably transfer files to the board with either scp or sftp

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      yeah, but that also requires those packages to be present. scp is, sftp is not.

  • @kisahinspiratif007
    @kisahinspiratif007 7 місяців тому

    Can all types of ESP32 be installed on Linux? and whether windows can also be installed on esp32

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      No so far only , s3 with min 8mb of psram.

    • @conorstewart2214
      @conorstewart2214 7 місяців тому

      You can’t just take any OS and put it on, it needs to be ported over. With windows that would require Microsoft to create a version for the ESP32 which just isn’t going to happen.
      The performance of an ESP32 doesn’t even compare to modern CPUs, it is just a microcontroller.

  • @syntax6537
    @syntax6537 7 місяців тому +2

    Linux and Doom can run on anything with a screen

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому +1

      😂technically the screen is not needed to run both.

  • @ichbinyannick
    @ichbinyannick 7 місяців тому +1

    Does it run k8s? :0 This would be the ultimate edge device!

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      Not yet...but maybe that would be possible one day

  • @Hukkinen
    @Hukkinen 4 місяці тому

    File server and mass storage device

  • @bald_engineer
    @bald_engineer 7 місяців тому +3

    Hey wait a minute. USB Host isn’t working? Forget it. Thumbs down. Unsubscribe.
    Kidding, of course. That is an awesome amount of work both on your part and the software side. I can see this becoming a good option (especially when prototyping) between a SBC and a Microcontroller running a RTOS.
    Great Job!

    • @MAYERMAKES
      @MAYERMAKES 7 місяців тому

      I jope the usb gets soon implemented , whrn that hapoens skies are no longer limits

    • @bald_engineer
      @bald_engineer 7 місяців тому +2

      @@MAYERMAKES With microcontrollers getting faster with more RAM and software engineers getting more clever, it is only a matter of time. Probably a short matter too.