zephyr
zig
Our great sponsors
zephyr | zig | |
---|---|---|
57 | 812 | |
9,526 | 30,295 | |
2.8% | 4.1% | |
10.0 | 10.0 | |
3 days ago | 1 day ago | |
C | Zig | |
Apache License 2.0 | MIT License |
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
zig
-
How to Write a PHP Extension with Zig?
When writing code in a scripting language, sometimes you need that extra bit of performance (or maybe an async feature from Zig).
-
Bun - The One Tool for All Your JavaScript/Typescript Project's Needs?
NodeJS is by no means a slow runtime, it wouldn’t be so popular if it was. But compared to Bun, it’s slow. Bun was built from the ground up with speed in mind, using both JavascriptCore and Zig. The Bun team spent an enormous amount of time and energy trying to make Bun fast, including lots of profiling, benchmarking, and optimizations.
-
Bun 1.1
ntdll.dll!RtlUserThreadStart()
There are valid reasons to use APIs from NTDLL. Where I disagree with zig#1840 is the idea that it is always better to use NTDLL versions of API. Every other software ecosystem uses the standard Win32 APIs and diverging from that without a good reason seems like a good way to have unexpected behavior. One concrete example is most users and programmers expect Windows to redirect some file system paths when running on WOW64. But this is implemented in Kernel32, not ntdll.
- Zig, Rust, and Other Languages
-
Nanos – A Unikernel
Zig also has an IRC channel on libera (#zig) that is moderated by Andrew Kelley.[1]
- Ask HN: What Underrated Open Source Project Deserves More Recognition?
-
Top Paying Programming Technologies 2024
1. ZIG - $103,611
-
MicroZig: Unified abstraction layer and HAL for Zig on several microcontrollers
ESP32 and STM32 support is very welcome!
I have been following https://github.com/ziglang/zig/issues/5467 for a while and progress seemed to have slowed significantly
-
Asynchronous Clean-Up (in Rust)
I have never used it directly, take what I say with a grain of salt.
As far as I know at least part of the idea was to eliminate the function coloring problem by letting the compiler do some nifty compile-time deductions. This had some issues (I don't know if this is still planned, it seems like the kind of thing that should not work in practice). Additionally, there were all sorts of hard technical issues with LLVM, debugging, etc.
I recommend checking the issue tracker, eg. https://github.com/ziglang/zig/issues/6025
I personally don't understand the domain well enough at all, but honestly, I feel like (if possible) Zig should try to double down on its allocator approach.
Instead of trying to use some compile-time deduction magic explicitly pass around an "async runtime/executor" struct which you explicitly have to interact with. Why not?
-
Show HN: Tokamak – A Dependency Injection-Centric Server-Side Framework for Zig
Yes, fundamentally. In Rust if you take a parameter of generic type T without any bounds, you cannot call anything on it except for things which are defined for all types. If you specify bounds, only things required by the bounds can be called (+ the ones for all types). Another difference is where you get an error when you try pass something which doesn't adhere to a certain trait. In Rust you will get an error at the call site, not at the place of use (except if you don't specify any bounds).
Zig is doing just fine without any trait mechanism and it simplifies the language a lot but it does come up from time to time. The usual solution is to just get type information via @typeInfo and error out if the type is something you're not expecting [0]. Not everybody is happy about it though [1] because, among other things, it makes it more difficult to discover what the required type actually is.
[0] https://github.com/ziglang/zig/blob/b3aed4e2c8b4d48b8b12f606...
What are some alternatives?
FreeRTOS-Kernel - FreeRTOS kernel files only, submoduled into https://github.com/FreeRTOS/FreeRTOS and various other repos.
Nim - Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).
mbed-os - Arm Mbed OS is a platform operating system designed for the internet of things
Odin - Odin Programming Language
RIOT - RIOT - The friendly OS for IoT
v - Simple, fast, safe, compiled language for developing maintainable software. Compiles itself in <1s with zero library dependencies. Supports automatic C => V translation. https://vlang.io
nuttx - Apache NuttX is a mature, real-time embedded operating system (RTOS)
rust - Empowering everyone to build reliable and efficient software.
wasm-micro-runtime - WebAssembly Micro Runtime (WAMR)
go - The Go programming language
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.
ssr-proxy-js - A Server-Side Rendering Proxy focused on customization and flexibility!