zephyr
TinyGo
Our great sponsors
zephyr | TinyGo | |
---|---|---|
57 | 95 | |
9,526 | 14,439 | |
2.8% | 1.5% | |
10.0 | 9.4 | |
3 days ago | 1 day ago | |
C | Go | |
Apache License 2.0 | GNU General Public License v3.0 or later |
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.
zephyr
-
Ask HN: Anyone Waiting on BT Auracast?
Hey folks. Anyone out there waiting for BT Auracast? It was announced June 2022, and immediately struck me as must have.
I lost my earbuds, but it seems ridiculous to get a replacement without Auracast, seems like surely if I'm going to make a decent sized purchase like that it needs to support group playing. I want to tune into the radios of other people on the metro or on the bus, want to be able to watch a movie on the plane with someone.
Auracast was announced in June 2022. Anyone else out there struggling with expectations here? I'm really hoping the product announcement season that's right around the corner had a good number of Auracast announcements.
Side note, a ton of it is over my head but it's been so so fun tuning in every once and again to see how Zephyr's Bluetooth Audio work is going. Just wild now much has gone into this! https://github.com/zephyrproject-rtos/zephyr/commits/main/subsys/bluetooth/audio
-
VisionFive 2 ROM addresses for Zephyr RTOS
I am working on adding support for VisionFive 2 in Zephyr RTOS. I have created a device tree by referencing the starfive linux, patches of hifive_unmatched FU740 SoC and patches of BeagleV Starlight.
-
Adding support for visionfive2 in zephyr rtos
We are unsure on how to proceed further with this error. We have opened a github discussion regarding the same issue.
- Zephyr (small footprint realtime OS) supported boards
-
Learning to write device drivers using C/C++ in Zephyr OS
Then there are samples. Look through it for anything useful. RC522 uses SPI, so getting that to work would be a good first step.
-
Building with cmake can't find cross-compile objcopy
Hey, I've been trying to build an app with cmake+ninja instead of west to integrate it into a larger build system and everything works correctly except for the final stage where it uses `/usr/bin/llvm-objcopy` instead of the `${CROSS_COMPILE}` one it tries to find here.
-
Arduino Joins Zephyr Project
Zephyr has a lot of good points, but I really wish it didn't use Kconfig. Getting a working config seems to be mostly a matter of copying an already working example. It might be okay for hardware side of things, but it's a really bad at software/feature dependency.
Set https://docs.zephyrproject.org/latest/build/kconfig/tips.htm... and the issue: https://github.com/zephyrproject-rtos/zephyr/issues/52575. And don't even get me started on trying anything to group options together.
- Zephyr 3.4 is out!
-
PlatformIO and Zephyr is a bad idea
In this thread u/ikravets explained that there hasn't been much demand for Zephyr, which is why they aren't doing anything with it, and in this pull request Zephyr decided to no longer recommend PlatformIO in their documentation.
-
Zephyr RTOS RAM Tracing
The answer is always in the source: https://github.com/zephyrproject-rtos/zephyr/blob/bdaac354f4cb0ad91d952c2f6941c16240d84da2/subsys/tracing/tracing_backend_ram.c
TinyGo
- Gokrazy – Go Appliances
-
A "Tiny" APISIX Plugin
Reading through the documentation, you will understand why this plugin is called "tiny," i.e., the SDK uses the TinyGo compiler instead of the official Go compiler. You can read more about why this is the case on the SDK\'s overview page, but the TLDR version is that the Go compiler can only produce Wasm binaries that run in the browser.
-
What's Zig got that C, Rust and Go don't have? [video]
Not only you can fit Go into a kernel, there is at least two products that do so.
TamaGo, used to write the firmware used in USB armory.
https://www.withsecure.com/en/solutions/innovative-security-...
TinyGo, which even has official Arduino and ARM support, and is sponsored by Google
Ah but that isn't proper Go! Well neither is the C code that is allowed to be used in typical kernel code, almost nothing from ISO C standard library is available, and usually plenty of compiler specific language extensions are used instead.
-
Show HN: A new stdlib for Golang focusing on platform native support
Reminds me of https://tinygo.org/ - a project that brings Golang to embedded devices, browser (wasm) contexts. Do you converge or diverge from that project?
- TinyGo release 0.29 is out
-
Pico with C
You should also consider TinyGo. It can compile Go for the Pico, and is starting to get good device support.
-
Rust 1.71.0
Thankfully some folks completly ignored whatever the rest of the world thinks system programming is all about and created:
- TinyGo (https://tinygo.org/), which is acknowledged by people in the industry[0][1]
- TamaGo unikernel on USB Armory secure key (https://www.withsecure.com/de/solutions/innovative-security-...)
And then there is the question if writing compilers, assemblers, linkers is systems programming or not.
[0]-https://www.cnx-software.com/2019/08/28/tinygo-go-compiler-f...
[1]-https://twitter.com/ArmSoftwareDev/status/131680481331796787...
-
When would you (not) recommend Go over Rust?
Have you seen TinyGo? In the case of embedded system I would probably still chose C over Rust if the system didn't support dynamic memory allocation, and most embedded systems do not.
-
“C is quirky, flawed, and an enormous success” – Dennis Ritchie
>I really hate how for microcontrollers the only two choices are either C++ or Micropython
There's TinyGo as well. https://tinygo.org/
-
WebAssembly System Interface (WASI) with sockets for Go
Gist link fixed, thanks. Compared to TinyGo, Go with GOOS=wasip1 will probably generate larger artifacts (at least, for now). This is because it bundles the entire Go runtime. The benefit is that it fully supports goroutine scheduling and non-blocking I/O. TinyGo (I believe) still uses a custom asyncify pass and does not support non-blocking I/O nor basic WASI networking (e.g. https://github.com/tinygo-org/tinygo/pull/2748 never landed, but GOOS=wasip1 supports it).
What are some alternatives?
FreeRTOS-Kernel - FreeRTOS kernel files only, submoduled into https://github.com/FreeRTOS/FreeRTOS and various other repos.
MicroPython - MicroPython - a lean and efficient Python implementation for microcontrollers and constrained systems
mbed-os - Arm Mbed OS is a platform operating system designed for the internet of things
go - The Go programming language
RIOT - RIOT - The friendly OS for IoT
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
nuttx - Apache NuttX is a mature, real-time embedded operating system (RTOS)
micropython-ulab - a numpy-like fast vector module for micropython, circuitpython, and their derivatives
wasm-micro-runtime - WebAssembly Micro Runtime (WAMR)
awesome-micropython - A curated list of awesome MicroPython libraries, frameworks, software and resources.
mongoose-os - Mongoose OS - an IoT Firmware Development Framework. Supported microcontrollers: ESP32, ESP8266, CC3220, CC3200, STM32F4, STM32L4, STM32F7. Amazon AWS IoT, Microsoft Azure, Google IoT Core integrated. Code in C or JavaScript.
PlatformIO - Your Gateway to Embedded Software Development Excellence :alien: