moddable
embedded-hal
Our great sponsors
moddable | embedded-hal | |
---|---|---|
12 | 11 | |
1,269 | 1,775 | |
1.9% | 4.5% | |
9.8 | 8.7 | |
1 day ago | 3 days ago | |
C | Rust | |
- | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
moddable
-
Is there a safe and robust interpreter/scripting language? Or should I write it myself?
Your project might be a good candidate for the Moddable SDK: https://github.com/Moddable-OpenSource/moddable In particular the "mods" feature that allows sandboxed user scripts.
- Moddable Embedded JavaScript SDK 3.5.0
-
The Story of Mel, a Real Programmer
> meaning that to deploy those apps requires embedding an entire web browser into every app
It doesn't require it, that's just what they choose, and it has little to do with the language. (Besides, if you actually observe them—and ignore what they tell you about liking JS—then it's clear that most of them hate their preferred language.) Languages and the bindings that a particular runtime exposes are orthogonal. You can have GTK apps written in JS, for example, or you can write a program in JS that compiles into a binary that runs on a microcontroller[2].
This is much more of a problem with the culture of Electron and the adjacent NPM ecosystem than it is anything else. Conflating the source of these problems is a great way to tank any would-be activism meant to solve them.
1. <https://en.wikipedia.org/wiki/GNOME_Shell>
2. <https://github.com/Moddable-OpenSource/moddable/blob/public/...>
- Moddable SDK: Embedded ECMAscript engine supports RasPi, littlefs file system
-
Microvium Is Small
I experimented with Moddable some time ago and also contributed a module for Linux. It's written in C and I found the code quite readable, and the entire architecture good too. It's almost ES6 complete too.
https://github.com/Moddable-OpenSource/moddable
https://www.moddable.com/
-
Pikascript: An ultra-lightweight Python engine that can run in 4Kb of RAM
There's JavaScript/ECMAScript via Moddable's XS engine: https://github.com/Moddable-OpenSource/moddable
"A typical microcontroller used with the Moddable SDK has about 45 KB of free memory, 1 MB of Flash ROM, and runs at 80 MHz. The Moddable SDK uses many different techniques, both at build time and at run time, to work efficiently on these devices."
- Moddable JavaScript SDK for Raspberry Pi Pico
-
Why is MicroPython a thing
You think that’s bad. How about JavaScript for embedded https://github.com/Moddable-OpenSource/moddable
- Running TypeScript on ESP8266/ESP32 Devices
- Why doesn’t V8 fit on my microcontroller?
embedded-hal
-
Announcing the new async-hal! Featuring embedded IO traits and new interrupt-based executor
What is the difference between this and https://github.com/rust-embedded/embedded-hal/tree/master/embedded-hal-async?
-
Introducing async-hal! A hardware abstraction layer for embedded devices with futures
Maybe worth mentioning if you (or someone else) hasn't seen it before, the embedded-wg is also working on an async version of the embedded-hal traits, embedded-hal-async.
-
Microsoft is rewriting core Windows libraries in Rust
In that case you want to keep most of the unsafe in the HAL crate, and expose an interface as safe as possible. To give you an idea, is it since 2018 that a "generic" DMA safe implementation is in discussion https://github.com/rust-embedded/embedded-hal/issues/37
-
Stop Comparing Rust to Old C++
Does something like embedded hal exist in the C/C++ world? ( https://github.com/rust-embedded/embedded-hal )
-
not entirely new to rust, but very new to rust+arduino,.... eli5 the differences between these projects?
worth mentioning also is embedded-hal but my understanding is this has absolutely nothing to do with arduino, so despite being embedded probably not what I want.
-
Google announce secure Rust-based OS for embedded system
The ecosystem is great and growing, It really benefits from a language-standard embedded HAL which makes writing cross-platform drivers a cinch - e.g., you can write a bit-banged MDIO driver and use it on anything that has a timer and a two IO pins, from a Zynq Ultrascale to an arduino. Sure, this is possible in C - but Rust really benefits from a less fragmented ecosystem here.
-
Want to volunteer for your projects
Have you thought about writing/contributing to embedded-hal compatible crates (a sensor module driver for example)? It's always good to contribute to an eco system.
-
STM32F4 Embedded Rust at the HAL: GPIO Button Controlled Blinking
📝 At the time of writing this post, it came to my attention that there is an additional HAL that targets STM32 device families (the stm32-hal). From what I figure, right now there seem to be two approaches for developing HALs. The first approach is trait driven so to speak where the embedded-hal is used as a foundation. The second approach is more application-driven and provides a high-level API that targets several families of a device. However, this exists only for the stm32 through the stm32-hal. Right now, the first approach is what I found to be more widespread as it covers different microcontrollers and what this post is based on.
-
Why doesn’t V8 fit on my microcontroller?
I can write a library for an OLED device that is driven by an platform agnostic I2C device that will run on any microcontroller that implements the necessary abstractions.
The `embedded-hal` (https://github.com/rust-embedded/embedded-hal) are these abstractions that allow this to happen
-
Hands-On: The RISC-V ESP32-C3 Will Be Your New ESP8266
Yes but there needs to be appropriate libraries available such as HAL. Well it doesn't have to but it makes my life as a beginner in both much easier. But its probably matter of time because i predict that this chip will be very popular in Rust embedded.
What are some alternatives?
quickjs-esp32 - QuickJS port for ESP32
Espruino - The Espruino JavaScript interpreter - Official Repo
microzig - Unified abstraction layer and HAL for several microcontrollers
circuitpython - CircuitPython - a Python implementation for teaching coding with microcontrollers
bl602-hal - Hardware Abstract Layer for BL602 RISC-V WiFi + BLE SoC in embedded Rust
PikaPython - An ultra-lightweight Python interpreter that runs with only 4KB of RAM, zero dependencies. It is ready to use out of the box without any configuration required and easy to extend with C. Similar project: MicroPython, JerryScript.
nesper - Program the ESP32 with Nim! Wrappers around ESP-IDF API's.
phpdesktop - Develop desktop GUI applications using PHP, HTML5, JavaScript and SQLite
esp8266-quickjs - An attempt on getting QuickJS working on ESP8266 hardware
microvium - A compact, embeddable scripting engine for applications and microcontrollers for executing programs written in a subset of the JavaScript language.
embassy - Modern embedded framework, using Rust and async.