frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

Open in hackernews

Writing a basic Linux device driver when you know nothing about Linux drivers

https://crescentro.se/posts/writing-drivers/
141•sbt567•3d ago

Comments

ianlevesque•4h ago
It’s a userspace USB HID driver in rust, which is honestly more interesting/applicable to me than a kernel driver, which is what I thought it meant from the title.
ahartmetz•4h ago
> I also thought I’d message the vendor and ask them if they could share any specifications or docs regarding their protocol. To my surprise, Nanoleaf tech support responded to me within 4 hours, with a full description of the protocol that’s used both by the Desk Dock as well as their RGB strips.

How cool is that? Too many vendors still think that they have valuable intellectual property in such relative trivialities. And that handing out the specs freely helps their competitors more than themselves.

starkrights•3h ago
I had the same reaction. Nano leaf is extremely cool for that.
baby_souffle•1h ago
This has to put them in the top 0.01% of companies that make consumer electronics.

I can think of only a few companies that bother to publish any details... And most of them are focused on industrial customers where it isn't unreasonable to need certain protocol details for integration or even just compliance with certain regulatory systems.

Maybe things are changing?

I have noticed that some of the LED light controllers you see on AliExpress are leaning in to open firmware standards. 5 years ago, you bought the controller and had to flash your own firmware. Now, there's an option at checkout to select an open source firmware. Some even have a USB port built in for flashing!

Teknoman117•1h ago
I almost had that experience with one of the popular PC liquid cooling hardware vendors around 10 years ago.

I emailed them saying I'd be interested in developing drivers for their hardware for Linux as I was a happy customer and was immediately put in touch with one of the managers and their engineering team.

Made quite a bit of progress before the whole thing was shut down because one of their component vendors threatened them saying it'd be a breach of their contract with them.

Apparently that vendor sold a "datacenter" (non consumer) version of that hardware for which they charged a hefty license fee for the management software (which was Linux compatible).

Jokes on them, someone reverse engineered the whole thing with a USB analyzer years later and published it XD. (not me)

jonnypotty•3h ago
Thanks for this. Good read and also kinda inspiring.
dabedee•3h ago
I really enjoyed the way this post was written, i.e. it includes the code, how it was run, the false paths, etc. You almost get to live through the author's journey and how he figured out just enough to get something working.
kblissett•3h ago
I enjoyed this post, but I'm eager to hear what the next step would be for a real "production" userspace driver. Are these typically just daemons that are configured to run at start up? And then some configuration GUI communicates with it over a socket or something?
shreddit•2h ago
> Let’s run it again to make sure it was not a fluke!

I understood that reference

0xbadcafebee•2h ago
I want to run FreeBSD on my laptop, but they don't have a [complete] driver for my wifi card. I've thought about diving into AI coding-assistant agents just to see if I could use one to finish throwing together a working driver... but figuring out the AI agents is frictiony enough that I'm leaving it be. (I'm not a VSCode user)
LorenDB•1h ago
The author should probably have implemented support in OpenRGB instead to better benefit others, but this is cool nonetheless.
fracus•1h ago
I wish this was done in C so I didn't have to learn Rust. But maybe it is time to learn Rust.

QEMU: Define policy forbidding use of AI code generators

https://github.com/qemu/qemu/commit/3d40db0efc22520fa6c399cf73960dced423b048
81•todsacerdoti•49m ago•29 comments

A new pyramid-like shape always lands the same side up

https://www.quantamagazine.org/a-new-pyramid-like-shape-always-lands-the-same-side-up-20250625/
226•robinhouston•4h ago•59 comments

-2000 Lines of code

https://www.folklore.org/Negative_2000_Lines_Of_Code.html
157•xeonmc•4h ago•59 comments

The Hollow Men of Hims

https://www.alexkesin.com/p/the-hollow-men-of-hims
31•quadrin•1h ago•12 comments

Gemini CLI

https://blog.google/technology/developers/introducing-gemini-cli-open-source-ai-agent/
901•sync•11h ago•514 comments

A new PNG spec

https://www.programmax.net/articles/png-is-back/
450•bluedel•1d ago•451 comments

What Problems to Solve (1966)

http://genius.cat-v.org/richard-feynman/writtings/letters/problems
285•jxmorris12•7h ago•37 comments

The Offline Club

https://www.theoffline-club.com
66•esher•4h ago•28 comments

OpenAI charges by the minute, so speed up your audio

https://george.mand.is/2025/06/openai-charges-by-the-minute-so-make-the-minutes-shorter/
415•georgemandis•10h ago•118 comments

Libxml2's "no security embargoes" policy

https://lwn.net/SubscriberLink/1025971/73f269ad3695186d/
108•jwilk•4h ago•66 comments

Getting ready to issue IP address certificates

https://community.letsencrypt.org/t/getting-ready-to-issue-ip-address-certificates/238777
202•Bogdanp•7h ago•114 comments

Build and Host AI-Powered Apps with Claude – No Deployment Needed

https://www.anthropic.com/news/claude-powered-artifacts
157•davidbarker•7h ago•62 comments

Writing a basic Linux device driver when you know nothing about Linux drivers

https://crescentro.se/posts/writing-drivers/
141•sbt567•3d ago•12 comments

LM Studio is now an MCP Host

https://lmstudio.ai/blog/lmstudio-v0.3.17
138•yags•6h ago•55 comments

Better Auth, by a self-taught Ethiopian dev, raises $5M from Peak XV, YC

https://techcrunch.com/2025/06/25/this-self-taught-ethiopian-dev-built-an-authentication-tool-and-got-into-yc/
40•bundie•6h ago•21 comments

Deep Research as a Swim Coach

https://suthakamal.substack.com/p/swimming-with-an-ai-coach
15•suthakamal•2d ago•3 comments

Iroh: A library to establish direct connection between peers

https://github.com/n0-computer/iroh
129•gasull•7h ago•34 comments

Ambient Garden

https://ambient.garden
8•fipar•2d ago•1 comments

Building a Monostable Tetrahedron

https://arxiv.org/abs/2506.19244
27•robinhouston•4h ago•2 comments

CUDA Ray Tracing 2x Faster Than RTX: My CUDA Ray Tracing Journey

https://karimsayedre.github.io/RTIOW.html
17•ibobev•2h ago•2 comments

FurtherAI (YC W24) Is Hiring for Software and AI Roles

https://www.ycombinator.com/companies/furtherai/jobs
1•sgondala_ycapp•7h ago

America’s incarceration rate is in decline

https://www.theatlantic.com/ideas/archive/2025/06/prisoner-populations-are-plummeting/683310/
71•paulpauper•7h ago•140 comments

Interstellar Flight: Perspectives and Patience

https://www.centauri-dreams.org/2025/06/25/interstellar-flight-perspectives-and-patience/
50•JPLeRouzic•7h ago•84 comments

Web Embeddable Common Lisp

https://turtleware.eu/static/paste/wecl-test-gl/main.html
93•todsacerdoti•8h ago•30 comments

Games run faster on SteamOS than Windows 11, Ars testing finds

https://arstechnica.com/gaming/2025/06/games-run-faster-on-steamos-than-windows-11-ars-testing-finds/
163•_JamesA_•4h ago•41 comments

Bot or human? Creating an invisible Turing test for the internet

https://research.roundtable.ai/proof-of-human/
87•timshell•9h ago•114 comments

LLM Hallucinations in Practical Code Generation

https://dl.acm.org/doi/10.1145/3728894
37•appwiz•2d ago•4 comments

Is Lovable getting monetization wrong?

https://getlago.substack.com/p/lovable-makes-60m-in-6-monthsbut
97•FinnLobsien•10h ago•59 comments

IBM's Dmitry Krotov wants to crack the 'physics' of memory

https://research.ibm.com/blog/dmitry-krotov-ai-physics
9•bookofjoe•1h ago•0 comments

Primitive Kolmogorov complexity is computable

https://lewish.io/posts/primitive-kolmogorov-complexity-is-computable
16•1ewish•2d ago•4 comments