21 comments

  • sillywalk3 days ago
    Interesting.<p><a href="https:&#x2F;&#x2F;micropythonos.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;micropythonos.com&#x2F;</a><p><a href="https:&#x2F;&#x2F;github.com&#x2F;MicroPythonOS&#x2F;MicroPythonOS" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;MicroPythonOS&#x2F;MicroPythonOS</a><p><a href="https:&#x2F;&#x2F;fosdem.org&#x2F;2026&#x2F;schedule&#x2F;event&#x2F;9GGXNF-micropythonos-best-of-android-now-on-mcus&#x2F;" rel="nofollow">https:&#x2F;&#x2F;fosdem.org&#x2F;2026&#x2F;schedule&#x2F;event&#x2F;9GGXNF-micropythonos-...</a>
    • larodi16 hours ago
      Indeed much better resource than this ads ridden page…
      • vee-kay23 minutes ago
        Say goodbye to most ads with Brave or Vivaldi, with adblockers enabled (EasyList, EasyPrivacy, ADB+, Fanboy&#x27;s Annoyances List).<p>I prefer viewing the text-only version of this HN site, it loads fast and clean with no ads: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;</a>
      • FergusArgyll9 hours ago
        <a href="https:&#x2F;&#x2F;chromewebstore.google.com&#x2F;detail&#x2F;ublock-origin-lite&#x2F;ddkjiahejlhfcafbddmgiahcphecmpfh" rel="nofollow">https:&#x2F;&#x2F;chromewebstore.google.com&#x2F;detail&#x2F;ublock-origin-lite&#x2F;...</a>
  • pjmlp21 minutes ago
    While cool, it certainly won&#x27;t be delivering Android-like performance, due to the lack of JIT and AOT compiler, coupled with PGO metadata, shared via the PlayStore across devices.
  • 12_throw_away11 hours ago
    So, am I right in assuming that ESP32, being simple and slow, isn&#x27;t going to have cache lines or anything, and would just need 1-2 cycles to access its RAM? In which case a pointer-chasing dynamic language like python wouldn&#x27;t have all of the typical performance penalties from constant cache misses?<p>EDIT: upon further research, I think the above assumptions are more or less all wrong, starting with the &quot;simple&quot; part. To start with, they&#x27;re Harvard-architecture-ish with separate memory pathways - and caches - for data and instructions, so off the bat they have more heterogeneity than your modern general purpose CPUs. Also there seems to be a very wide variety of memory mappings, buses, and caching systems within ESP32 &quot;family&quot;. [1]<p>[1] <a href="https:&#x2F;&#x2F;developer.espressif.com&#x2F;blog&#x2F;2024&#x2F;08&#x2F;esp32-memory-map-101&#x2F;" rel="nofollow">https:&#x2F;&#x2F;developer.espressif.com&#x2F;blog&#x2F;2024&#x2F;08&#x2F;esp32-memory-ma...</a>
    • pjmlp16 minutes ago
      ESP32 is still much better than this,<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Amstrad_PC1512" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Amstrad_PC1512</a><p>Which was my introduction to PCs, playing Defender of the Crown at the school computer club.
  • sgt42 minutes ago
    Really cool. How can this be fast? I&#x27;d have thought that Python (even MicroPython) would just be unsuitable for certain things like the graphics and animations, at the very least.
    • sgt23 minutes ago
      Later realized it&#x27;s because it uses lvgl under the hood.
  • wiradikusuma1 hour ago
    Python code and resource-constraint device don&#x27;t seem like a good combo in terms of performance. Is it just for prototyping?
    • pjmlp19 minutes ago
      Only in the same sense as interpreted BASIC in 8 bit home computers, with their 64 KB RAM, single digit MHz, tape loading.<p>Good for prototyping and introduction to programming, then you had to switch to Assembly for anything meaningful.<p>Here, you might switch to Assembly like in those days, or maybe C, C++, Rust, Zig, whatever.
  • iberator11 hours ago
    Micro python is the last hope for Python. Python simplicity got destroyed by a bunch of new wave of programmers who packed a lot of new useless features into it in the past 10 yrars. Now it&#x27;s NOT easy and small language as it used to be...<p>Feature creep is an awful side effect. I would love to have language having just few add-ons per decade so I can grasp it all
    • mastermage9 minutes ago
      I still do not understand how Python won out over lua. Which is imho the superior scripting language just constrained by a smaller userbase. Lua is like embeddable in what 500 KiB. While python takes its about 200 to 300 MiB
    • pjmlp14 minutes ago
      I know Python since version 1.6, it was never simple, people that don&#x27;t read the reference manuals are the ones that think that is a BASIC like language in complexity, when in reality it has always been more into Common Lisp &#x2F; C++ kind of sense.
    • wewewedxfgdf9 hours ago
      &gt;&gt; &quot;the last hope for Python&quot;<p>Python is in the top 3 programming languages in the world.
      • wiseowise9 hours ago
        Being lingua franca of AI and scripting world isn&#x27;t enough for GP.
    • VK-pro9 hours ago
      This is kind of a strange take to me given that Python is quickly becoming the default for many projects that 1) are not indexing for speed&#x2F;efficiency and 2) is not on the web (and sometimes this only applies for frontend). There are plenty of cases where that statement is incorrect but I think you get my point.<p>I think I read a title on HN that was literally titled “Why Python Won” in late 2025.
    • InitEnabler11 hours ago
      Which useless features?
      • nikitau9 hours ago
        Amazing. We have actually gone full circle reactionary on the typing debate where duck typing is considered the &quot;traditional&quot; way by some.
      • shakna6 hours ago
        Walrus operator, match. They&#x27;re just syntax sugar, but expand the vocabulary for little benefit.
      • iberator9 hours ago
        All of them. Starting with syntax changes or type hints.... (Python should be always and only be duck typed forever as designed by God itself (it&#x27;s creator).
        • wiseowise9 hours ago
          &gt; Python should be always and only be duck typed forever as designed by God itself (it&#x27;s creator).<p>Isn&#x27;t Guido the one who came up with type hints spec and made the reference implementation (Mypy)?
      • vpribish9 hours ago
        async is the big one. it was half-baked
        • halfcat4 hours ago
          Yeah, async Python is one of the top 2 things that I just get pissed off when I think about it too much. Along with Lin-Manuel Miranda not being involved with Moana 2.
  • shawnz15 hours ago
    Wow, these preassembled ESP32 plus touchscreen boards are extremely cheap, and there are tons of them in all kinds of different form factors on Amazon. I didn&#x27;t realize this kind of thing was so plentiful, this seems like a great way to bootstrap many kinds of electronics&#x2F;IoT projects
    • frogperson12 hours ago
      Yeah ESP32 is an awesome rabbit hole. An esp32-c6, cheap yellow display, and a 3d printer and you can build some really interesting things.
    • brcmthrowaway13 hours ago
      Any commercial products using ESP?
      • saidinesh512 hours ago
        Just look for ESP32 CYD - CYD stands for cheap yellow display. There are a lot of variants.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;witnessmenow&#x2F;ESP32-Cheap-Yellow-Display?tab=readme-ov-file" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;witnessmenow&#x2F;ESP32-Cheap-Yellow-Display?t...</a> . I bought mine for about $12 and it&#x27;s been quite fun tinkering with it.
      • bri3d9 hours ago
        <a href="https:&#x2F;&#x2F;templates.blakadder.com&#x2F;esp32.html" rel="nofollow">https:&#x2F;&#x2F;templates.blakadder.com&#x2F;esp32.html</a><p>Here’s a list of just a few. They’re insanely popular not only because they’re just good to use, but also because they’re one of the cheaper FCC approved modules you can buy, which takes a lot of the pain out of bringing a product to market.
      • slmkbh10 hours ago
        A lot of Shelly devices use ESP chips: <a href="https:&#x2F;&#x2F;www.shelly.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.shelly.com&#x2F;</a> - And they are hackable!
      • bdavbdav13 hours ago
        I think there are plenty using espressif chips. One of my robot vacuums (possibly the Neato?) certainly appeared to be.
      • shawnz10 hours ago
        AFAIK my humidifier uses an ESP32 chip.
      • MallocVoidstar9 hours ago
        Yes, many. As a random example, see: <a href="https:&#x2F;&#x2F;www.servethehome.com&#x2F;ubiquiti-flex-mini-2-5g-review-ubiquiti-does-a-cheap-5-port-2-5gbe-switch&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.servethehome.com&#x2F;ubiquiti-flex-mini-2-5g-review-...</a><p>The last image on the page shows various chips in the switch, the top left is an ESP32.
  • cbdevidal17 hours ago
    Love me some MicroPython. Building a product line of small farm security devices that use uPy and MQTT.
    • pluralmonad6 hours ago
      Would you mind elaborating on what you mean by small farm security device?
      • cbdevidal5 hours ago
        First product is called SecureCoop, that either opens the coop door or monitors another coop opener, then sends phone notifications if there are issues. Door didn&#x27;t open on time, door is stuck, etc.<p>Next product will be battery security cameras trained on predator models (raccoon, fox, snake). Then the next one will be an electric fence monitor. All solar powered.<p>Basically going for back yard security for small hobby farms.<p>Biggest hurdle has been that I only knew 5% of what I needed to know to do this. Haha. Many mistakes. But now am close to visiting the FCC lab for SDoC verification, and then I can legally sell.<p>Thanks for asking!
  • jonjacky2 days ago
    Previously on HN: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=45525804">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=45525804</a>
  • sgt1 hour ago
    Would it be possible to slap this on top of FreeRTOS?
  • bvan14 hours ago
    Looks better than any Python GUI framework I’ve seen..
    • sintezcs13 hours ago
      It uses LVGL <a href="https:&#x2F;&#x2F;github.com&#x2F;lvgl&#x2F;lvgl" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;lvgl&#x2F;lvgl</a>
      • sgt41 minutes ago
        Oh that explains why it&#x27;s fast!
    • skeledrew12 hours ago
      I reckon you&#x27;ve never seen flet.<p><a href="https:&#x2F;&#x2F;flet.dev" rel="nofollow">https:&#x2F;&#x2F;flet.dev</a>
      • PyWoody12 hours ago
        That looks interesting. I had not heard of flet.<p>How do you like it? How easy is it to work withe the layout controls?
        • skeledrew12 hours ago
          It&#x27;s a mixed bag, as it&#x27;s still not stable (esp as very recently declarative support was added in what was likely a mostly-rewrite). But when it works, it works great (I&#x27;ve only tried on Linux and Android).
    • ErroneousBosh14 hours ago
      Can we port it to Intel, I wonder...?
  • delijati16 hours ago
    how does it compare to <a href="https:&#x2F;&#x2F;github.com&#x2F;wasp-os&#x2F;wasp-os" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;wasp-os&#x2F;wasp-os</a>?
  • skeledrew12 hours ago
    Interesting. Would want to see this going on actual Android. Especially since I have a few Python GUI projects going which I intend to use on Android (but currently using flet).<p><a href="https:&#x2F;&#x2F;flet.dev" rel="nofollow">https:&#x2F;&#x2F;flet.dev</a>
    • bri3d9 hours ago
      It’s LVGL based, if the GUI and widgets are what you wanted you could use that on Android, although if you have access to native Android this actually doesn’t seem like the best approach to me.
      • skeledrew5 hours ago
        The primary goal I&#x27;ve been seeking for a while now (and which so far only flet has reasonably fulfilled) is the ability to dynamically create GUIs. Like I created a REPL app which works similar to the regular Python REPL, but also if the code entered at the prompt returns a control&#x2F;component, it shows that control with full functionality. No need to compile anything, esp on another device. And it&#x27;s a standalone app, not a frontend to a server or even a web view.
  • te000615 hours ago
    Does it run on the CYD? <a href="https:&#x2F;&#x2F;github.com&#x2F;witnessmenow&#x2F;ESP32-Cheap-Yellow-Display" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;witnessmenow&#x2F;ESP32-Cheap-Yellow-Display</a>
    • stavros5 hours ago
      No, it says my ESP32 is not supported. I&#x27;d love to get it to run there, though.
  • MomsAVoxell15 hours ago
    I would love to have this, but Lua not Python.
    • shakna6 hours ago
      I wonder how hard to port this to eLua would be? The bigger problem is probably packing.<p>Pip can work fine with MicroPython. LuaRocks can be a pain, even on desktop.
    • moffkalast15 hours ago
      Mathematicians don&#x27;t build GUIs, and nobody else can stand starting their arrays with 1.
      • pjmlp12 minutes ago
        Plenty of languages use either 1 as base or flexible array indexes.
      • dlcarrier15 hours ago
        Lua also let&#x27;s you start arrays at 3.
        • zimpenfish14 hours ago
          As does Perl with `$[`[0][1]<p>[0] &quot;This variable stores the index of the first element in an array, and of the first character in a substring.&quot;<p>[1] With the caveat: &#x27;As of Perl v5.30.0, or under &quot;use v5.16&quot;, or &quot;no feature &quot;array_base&quot;&quot;, $[ no longer has any effect&quot;&#x27;
      • ErroneousBosh14 hours ago
        You can start your arrays in Lua at 0. Conventionally you don&#x27;t, but you can.
  • amelius13 hours ago
    Does it support the threading module?
  • westurner16 hours ago
    Will MicroPythonOS also work with CircuitPython?<p>CircuitPython docs &gt; Differences from MicroPython: <a href="https:&#x2F;&#x2F;docs.circuitpython.org&#x2F;en&#x2F;latest&#x2F;README.html#differences-from-micropython" rel="nofollow">https:&#x2F;&#x2F;docs.circuitpython.org&#x2F;en&#x2F;latest&#x2F;README.html#differe...</a><p>Also, there&#x27;s pipkin: <a href="https:&#x2F;&#x2F;github.com&#x2F;aivarannamaa&#x2F;pipkin#pipkin" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;aivarannamaa&#x2F;pipkin#pipkin</a> :<p>&gt; <i>Tool for managing distribution packages for MicroPython and CircuitPython on target devices or in a local directory.</i><p>&gt; <i>Supports mip- and upip-compatible packages, and regular pip-compatible packages</i><p>Hopefully - for 3 types of packages - pipkin supports GPG signatures, PyPI&#x27;s TUF, and&#x2F;or sigstore attestations like pip?<p>Just checked; pip doesn&#x27;t support checking PEP740 attestations yet either?<p>pipkin: <a href="https:&#x2F;&#x2F;github.com&#x2F;aivarannamaa&#x2F;pipkin" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;aivarannamaa&#x2F;pipkin</a><p>trailofbits&#x2F;pip-plugin-pep740: <a href="https:&#x2F;&#x2F;github.com&#x2F;trailofbits&#x2F;pip-plugin-pep740" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;trailofbits&#x2F;pip-plugin-pep740</a>
  • hkt13 hours ago
    I&#x27;d use it. I&#x27;d be curious to see how close to daily driving it is for stuff like calls, SMS, and email. Something not driven by a giant data mining company would be splendid.
  • ConanRus9 hours ago
    [dead]
  • hulitu2 days ago
    &gt; Android-like user experience<p>so crap. No inovation those days.
    • rpdillon10 hours ago
      I really wish people would stop trying to innovate with user interfaces. In a comment below you criticize this UI because it doesn&#x27;t have delimited interface elements. I agree that non-delimited user interface is really bad, but I attribute that mostly to Microsoft&#x27;s flat design innovation, which I didn&#x27;t like at the time, and I still wish I hadn&#x27;t had so much influence.<p>As for invisible scroll bars, again we agree. But I think that was Apple. I&#x27;m sure somebody will correct me if it wasn&#x27;t.
    • nunobrito10 hours ago
      That &quot;Android-like&quot; is based on LVGL which is a brilliant GUI framework for ESP32 (not invented for this project) when you consider the low capacities of the hardware and how efficiently it pulls the animations.<p>If Android had such GUI, it would be a heck lot faster and drink less energy.
    • b00ty4breakfast12 hours ago
      MIT lisenced; feel free to fork it if your feeling especially filial
    • functionmouse17 hours ago
      What would you have wanted to see?
      • hulitu13 hours ago
        At the first look: clear delimitation of UI elements, usable scrollbars.
    • squarefoot13 hours ago
      It&#x27;s FOSS, so you can use it primarily for output with real switches and knobs for input. But then just using plain LVGL would probably be more practical.
    • Melonai15 hours ago
      I mean I kind of get your frustration, but I don&#x27;t think innovating the user interface is not really the goal of this project, the opposite actually, it&#x27;s moreso trying to provide a well-known user interface to devices where that was previously hard, so the goal is to be similar.<p>I would like to see some fresh ideas in UI though, everything is the same nowadays... :(