HackerTrans
TopNewTrendsCommentsPastAskShowJobs

hailruda

no profile record

comments

hailruda
·bulan lalu·discuss
I find getting stuff up on the rM2 screen a hassle.

The challenge comes from the way the e-paper works. To turn a pixel from white to black (or vice versa) it needs multiple actual frames. The pixel data must also be packed in a specific format. Instructions for how many frames a single operation requires are coded in a wbf[0] file, which comes included with the OEM firmware.

The most commonly used approach is hooking into xochitl, since it handles all of the user facing stuff like the notebooks but also the actual drawing. This is somewhat brittle and tends to break with software updates, because all of the actual function addresses have to be updated as well.

I was excited to find waved[1], a C++ library that allowed to drive the display directly using a sane API. Although it's not been updated for quite a while it still works and you can compile and run it yourself.

Since I was interested in driving the display myself, I tried to rewriting waved in Zig. It works - I can now get pixels up on the screen. Unfortunately the code is a mess and its only redeeming quality (stemming from being written in Zig) is that I can cross compile a statically linked binary that 'just werks' using just the Zig toolchain as the only dependency. For debugging purposes, I also implemented a SDL emulator for the display. [2]

While writing this, I stumbled upon a recent Rust implementation of the same ideas. Nice. [3]

Since the xochitl display implementation is the most optimized, that's probably the reason why it's being used most commonly*, even though it might be 'ugly'.

* Citation needed

[0] https://gitlab.com/zephray/glider#understanding-waveform

[1] https://github.com/matteodelabre/waved

[2] https://github.com/jakubvf/dazed

[3] https://github.com/yobert/swtcon
hailruda
·2 bulan yang lalu·discuss
I’m curious, what was their reaction? :)
hailruda
·2 bulan yang lalu·discuss
User name doesn’t checkout.

Any technical reason for such a strong opinion?
hailruda
·tahun lalu·discuss
I’d appreciate a writeup! I’d like to implement this myself, maybe add reminders.
hailruda
·tahun lalu·discuss
I get your point and I agree.
hailruda
·tahun lalu·discuss
>without the hassle of creating new notes or organizing folders

Have you missed this part?
hailruda
·tahun lalu·discuss
NFC tags can be scanned using a phone. An app on the phone can then detect the action and act accordingly. The phone can differentiate between different tags.

I use an NFC tag to lock the house using Home Assistant.
hailruda
·2 tahun yang lalu·discuss
So if I understand correctly, this should be comparable to what Tailscale is doing?
hailruda
·2 tahun yang lalu·discuss
After watching the video, I think this is an exciting experiment to see if there exist better ways to control PCs without a mouse and just a keyboard. The standard of today being keyboard shortcuts.
hailruda
·2 tahun yang lalu·discuss
How does it compare to Zig? Does it inherit C macros?
hailruda
·2 tahun yang lalu·discuss
Chosing Discord was a deliberate choice. I remember when Serenity was using IRC as the only communication channel and immediately after setting up a new Discord server the community gravitated towards it. Infact, the number of community members sky rocketed.

The fact is, Discord as a platform is more accessible compared to IRC.
hailruda
·2 tahun yang lalu·discuss
I can relate to this. Could you point me to any resources about keto diets?