this post was submitted on 09 Apr 2024
38 points (100.0% liked)
Self Hosted - Self-hosting your services.
11447 readers
14 users here now
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules
- No harassment
- crossposts from c/Open Source & c/docker & related may be allowed, depending on context
- Video Promoting is allowed if is within the topic.
- No spamming.
- Stay friendly.
- Follow the lemmy.ml instance rules.
- Tag your post. (Read under)
Important
Beginning of January 1st 2024 this rule WILL be enforced. Posts that are not tagged will be warned and if not fixed within 24h then removed!
- Lemmy doesn't have tags yet, so mark it with [Question], [Help], [Project], [Other], [Promoting] or other you may think is appropriate.
Cross-posting
- !everything_git@lemmy.ml is allowed!
- !docker@lemmy.ml is allowed!
- !portainer@lemmy.ml is allowed!
- !fediverse@lemmy.ml is allowed if topic has to do with selfhosting.
- !selfhosted@lemmy.ml is allowed!
If you see a rule-breaker please DM the mods!
founded 3 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
This is the firmware I've been working on. Basically I wrote it because at the time (early 2023) there wasn't a "good" keyboard firmware like QMK or ZMK for the CH32V305. Now it supports keyboards, joysticks, and a rudimentary pointing device made out of a PS2-style analogue stick.
https://gitlab.com/hakfoo1/ch32v-keyboard/-/tree/fightstick?ref_type=heads
That branch has the mapping I used. Note this firmware has a keyboard-centric assumption that switches are wired as a matrix (between two sense lines), even if that matrix is 1x24, rather than just grounding a sense line individually.
The stick portion was one of those "Pandora Box" devices that was built into a cabinet and pre-wired to a crappy Android TV box.
I bought it because I figured it was probably cheaper than cutting a decent looking cabinet and buying the buttons off AliExpress. That also meant it came with a predefined cable harness to fit the Android box. In the hopes of making it tidy, and reversible, I ordered a little throwaway PCB that accepted the existing 40-pin plug and bridged it to a nanoCH32V305 breakout board. Of course, I made a design mistake, so the PCB had bodge wires, so not much was saved.
If you're starting from scratch, you could direct-wire to the MCU breakout board.