Dion Dokter
banner
diondokter.nl
Dion Dokter
@diondokter.nl
Embedded tech lead at Tweede golf. I love programming in Rust.

Also at: @diondokter@fosstodon.org

Netherlands
Hmmm, not sure!
Maybe check this toggle?
October 30, 2025 at 3:44 PM
This is the setup it's gonna be:
October 8, 2025 at 8:01 PM
When device-driver starts generating C code, which version of C should it be?

Well, it's not gonna C89 lol!

(Alt in thread)
September 26, 2025 at 8:29 PM
Cool! Happy with the playground result.

Love how instant compilation is :D
I've probably committed crimes against the web with my HTML/CSS skills, but it works :)

diondokter.github.io/device-drive...

The home page is super mega WIP, but that wait can until other more important stuff is done.
September 19, 2025 at 9:20 PM
Alright, now using webpack and the Monaco (=vscode) editor :)
Still more to do, but the general shape is there now :)
September 14, 2025 at 3:53 PM
This was surprisingly easy to get running!

Seems like I can make a device-driver playground pretty easily and serve it as a static website.

Too bad my website-making skills are subpar. But, hopefully that won't get in the way too much :P
September 13, 2025 at 8:26 PM
Love it!
August 24, 2025 at 4:01 PM
Here's an example of a register definition. This ends up generating a nice Rust api to interact with the register.

I'm also using the triple slash comments as doc comments that get forwarded to the generated Rust code.
August 19, 2025 at 8:21 AM
You don't want to reach warp 10. The captain and the pilot might just procreate with each other
August 3, 2025 at 7:25 PM
What the hell are merged globals! And why is it breaking the debug info! 😡
July 22, 2025 at 12:48 PM
Some experimentation later and a new function in the Write macro:
July 11, 2025 at 1:28 PM
Gonna be a busy weekend building a new fence. This stuff is heavy!
July 9, 2025 at 5:05 PM
Heatwave came to end with a big storm! Glad I had the cats inside.

Toilet also overflowed, so guess who can go cleaning 🙃

I'm also soaked because I had to go out and unclog two drains...
July 2, 2025 at 4:07 PM
So for example, this register has multiple things wrong with it. And now we get all of the errors at the same time instead of one by one. The errors are also reported using miette, so they're extra nice!
July 2, 2025 at 2:59 PM
Ugh, UI testing is hard and tedious

#rustlang #device-driver
June 20, 2025 at 3:24 PM
Started adding KDL input to device-driver. I'm taking the opportunity to revamp the error reporting based on miette.
I'm also making it so it doesn't stop on the first error, but keeps going.

Preview!
June 15, 2025 at 2:48 PM
In other news, apparently my solar inverter has a modbus interface available over wifi!
June 8, 2025 at 2:40 PM
To prove how much like XML KDL is, here's a quick translation chatgpt was able to do. Except for the comments used as description, the rest is the same.

KDL has a notable feature of 'anonymous' properties. This XML has had to give them a name.
May 31, 2025 at 5:00 PM
Hmmm yes, KDL vs YAML, same information
May 31, 2025 at 1:08 PM
This is the most 'inbetween' I think I can make it. No more config keyword, but you would have the 'fields' node in the register
May 30, 2025 at 8:23 PM
Same, but with the syntax highlighting you'd see in e.g. vscode
May 30, 2025 at 8:18 PM
Little nesting but you have to use the 'config' keyword in many places?

or

more nesting?

Which one do you prefer? I need some bikeshedding :P
May 30, 2025 at 7:56 PM
Sweet, Askama PR is merged!

Pretty happy with the result. It's also net -900 LOC, which is always nice to see.
May 24, 2025 at 1:48 PM
Is (jinja-like) templating perfect?

Well no. It can get pretty messy. But it's messy in a structured way I guess.
I think this is easier to touch by a newcomer than the current quote and syn backend.
May 22, 2025 at 12:24 PM
🐝
May 20, 2025 at 12:09 PM