5 ms·
MicroPython and the European Space Agency
- metafex 11y agoDoes someone know about what SPARC processors they are talking about? I thought (at least for long-range missions) RAD-hardened PowerPC processors where the way to go.
- jack12 11y agoCould be LEON, which is still closely associated with the ESA: http://en.wikipedia.org/wiki/LEON http://en.wikipedia.org/wiki/LEON
- deutronium 11y agoTheres a nice explanation here on why they chose them - http://space.stackexchange.com/questions/729/why-did-the-esa-choose-sparc-for-leon http://space.stackexchange.com/questions/729/why-did-the-esa...
- metafex 11y agoThe linked material in the answer is also higly interesting, including details about the RAD-hardening. As the decision was made in 1991 to use the SPARC architecture, it makes sense that they continued the development of their architecture. It is also good to see that there seems to be VHDL code available to tinker with the core in FPGAs. Thank you for the link :)
- kristoffer 11y agoThe ERC32 + LEON (SPARCv7/8) range of rad hard microprocessors developed under contract from ESA. Non fault tolerant versions of LEON are available as open source VHDL. See www.gaisler.com. Radhard PowerPC are thing of the past I think. No development since the BAE RAD750?
- S4M 11y agoNaive question: wouldn't lua or scheme be more suitable than python to be embedded in microcontrollers?
- tdicola 11y agoThere really isn't a best or better choice, everything has pros and cons. MicroPython is really nice in that you can write a C (or even inline assembly) extension to the language easily and get access to the low level hardware. It's very similar to writing a C extension with CPython.
- frik 11y agoI too wonder why ESA and NASA have chosen Python over JavaScript or Lua? The later has been especially design from the ground up for that task. It probably has to do with that their engineers already know Python and Python has a C API too.
- rpcope1 11y agoI feel like regardless of how ubiquitous Javascript is, it's honestly an awful choice for embedded applications (no, most embedded applications don't sport some racecar ARM A7/A8/A9/A15, and shouldn't if it's not absolutely necessary); there are excellent reasons C still dominates here, and would likely be replaced with something like Rust instead of JS. Manual memory management is usually a huge plus on lots of embedded platforms, static typing is really important here, and most of the code is rather low level. These concerns are really sort of exacerbated on stuff going up into space, as the chips tend to be lower density designs, and simpler. Forth is an excellent choice here, and Lua if whatever you're running on can spare some extra CPU cycles. I guess it will be interesting to see how things pan out with MicroPython. I would imagine if you could do anything to improve on what exists today for embedded, it would be to push things like verifiable systems harder, kind of what like Margaret Hamilton was pushing with USL[1]. [1] - http://en.wikipedia.org/wiki/Universal_Systems_Language http://en.wikipedia.org/wiki/Universal_Systems_Language
- ZoFreX 11y ago
- cdnsteve 11y agoNASA has been using Python for awhile apparently too: https://www.python.org/about/success/usa/ https://www.python.org/about/success/usa/ Great news for the Python community.
- carbon12 11y agoFrom that link it seems that Python is used at NASA exclusively in ground-based systems. In contrast, the MicroPython+ESA collaboration is supposedly also looking at using the language in "payloads", ie things that go into space.
- izacus 11y agoPython is actually widely used in scientific community, guys working on data analysis from CERN LHC are heavily relying on Python + NumPy + SciPy for their work as well. It's easy to learn and makes data analysis really easy with "batteries included" approach (and costs way less than often problematic and buggy MatLab on Linux).
- jansenvt 11y agoPANDAS really is a great thing
- DonHopkins 11y agoIf MicroPython is the opposite of Monty Python, then is the European Space Agency the opposite of the Holy Grail?
- hitlin37 11y agoOne of the reason why python is easy to get going is extensive documentation, especially at python.org.