frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

FSD helped save my father's life during a heart attack

https://twitter.com/JJackBrandt/status/2019852423980875794
1•blacktulip•2m ago•0 comments

Show HN: Writtte – Draft and publish articles without reformatting, anywhere

https://writtte.xyz
1•lasgawe•4m ago•0 comments

Portuguese icon (FROM A CAN) makes a simple meal (Canned Fish Files) [video]

https://www.youtube.com/watch?v=e9FUdOfp8ME
1•zeristor•6m ago•0 comments

Brookhaven Lab's RHIC Concludes 25-Year Run with Final Collisions

https://www.hpcwire.com/off-the-wire/brookhaven-labs-rhic-concludes-25-year-run-with-final-collis...
1•gnufx•8m ago•0 comments

Transcribe your aunts post cards with Gemini 3 Pro

https://leserli.ch/ocr/
1•nielstron•12m ago•0 comments

.72% Variance Lance

1•mav5431•13m ago•0 comments

ReKindle – web-based operating system designed specifically for E-ink devices

https://rekindle.ink
1•JSLegendDev•14m ago•0 comments

Encrypt It

https://encryptitalready.org/
1•u1hcw9nx•14m ago•1 comments

NextMatch – 5-minute video speed dating to reduce ghosting

https://nextmatchdating.netlify.app/
1•Halinani8•15m ago•1 comments

Personalizing esketamine treatment in TRD and TRBD

https://www.frontiersin.org/articles/10.3389/fpsyt.2025.1736114
1•PaulHoule•17m ago•0 comments

SpaceKit.xyz – a browser‑native VM for decentralized compute

https://spacekit.xyz
1•astorrivera•17m ago•1 comments

NotebookLM: The AI that only learns from you

https://byandrev.dev/en/blog/what-is-notebooklm
1•byandrev•18m ago•1 comments

Show HN: An open-source starter kit for developing with Postgres and ClickHouse

https://github.com/ClickHouse/postgres-clickhouse-stack
1•saisrirampur•18m ago•0 comments

Game Boy Advance d-pad capacitor measurements

https://gekkio.fi/blog/2026/game-boy-advance-d-pad-capacitor-measurements/
1•todsacerdoti•18m ago•0 comments

South Korean crypto firm accidentally sends $44B in bitcoins to users

https://www.reuters.com/world/asia-pacific/crypto-firm-accidentally-sends-44-billion-bitcoins-use...
2•layer8•19m ago•0 comments

Apache Poison Fountain

https://gist.github.com/jwakely/a511a5cab5eb36d088ecd1659fcee1d5
1•atomic128•21m ago•2 comments

Web.whatsapp.com appears to be having issues syncing and sending messages

http://web.whatsapp.com
1•sabujp•22m ago•2 comments

Google in Your Terminal

https://gogcli.sh/
1•johlo•23m ago•0 comments

Shannon: Claude Code for Pen Testing: #1 on Github today

https://github.com/KeygraphHQ/shannon
1•hendler•23m ago•0 comments

Anthropic: Latest Claude model finds more than 500 vulnerabilities

https://www.scworld.com/news/anthropic-latest-claude-model-finds-more-than-500-vulnerabilities
2•Bender•28m ago•0 comments

Brooklyn cemetery plans human composting option, stirring interest and debate

https://www.cbsnews.com/newyork/news/brooklyn-green-wood-cemetery-human-composting/
1•geox•28m ago•0 comments

Why the 'Strivers' Are Right

https://greyenlightenment.com/2026/02/03/the-strivers-were-right-all-along/
1•paulpauper•29m ago•0 comments

Brain Dumps as a Literary Form

https://davegriffith.substack.com/p/brain-dumps-as-a-literary-form
1•gmays•30m ago•0 comments

Agentic Coding and the Problem of Oracles

https://epkconsulting.substack.com/p/agentic-coding-and-the-problem-of
1•qingsworkshop•30m ago•0 comments

Malicious packages for dYdX cryptocurrency exchange empties user wallets

https://arstechnica.com/security/2026/02/malicious-packages-for-dydx-cryptocurrency-exchange-empt...
1•Bender•30m ago•0 comments

Show HN: I built a <400ms latency voice agent that runs on a 4gb vram GTX 1650"

https://github.com/pheonix-delta/axiom-voice-agent
1•shubham-coder•31m ago•0 comments

Penisgate erupts at Olympics; scandal exposes risks of bulking your bulge

https://arstechnica.com/health/2026/02/penisgate-erupts-at-olympics-scandal-exposes-risks-of-bulk...
4•Bender•31m ago•0 comments

Arcan Explained: A browser for different webs

https://arcan-fe.com/2026/01/26/arcan-explained-a-browser-for-different-webs/
1•fanf2•33m ago•0 comments

What did we learn from the AI Village in 2025?

https://theaidigest.org/village/blog/what-we-learned-2025
1•mrkO99•33m ago•0 comments

An open replacement for the IBM 3174 Establishment Controller

https://github.com/lowobservable/oec
2•bri3d•36m ago•0 comments
Open in hackernews

Clavier: An FPGA-based mechanical keyboard with USB hub and comms interfaces

https://github.com/lsartory/Clavier
106•zdw•4mo ago

Comments

random_duck•4mo ago
Very cool project.
MadnessASAP•4mo ago
As somebody who regularly tinkers, debugs, and programs microcontrollers at my desk. I just realized how handy having UART/SPI/I2C headers right there would be. Obviously I already have them like right there but to have them right there there would be great.
nine_k•4mo ago
How about the risk of frying the MCU?
MadnessASAP•4mo ago
Risk? Ain't no risk to it, it's an established fact! What's a good electronics hobby without an assortment of dead MCUs, melted wires, and exploded probe tips?
xnzakg•4mo ago
You can always put some extra protection on the external interfaces. Won't make it impossible to fry if you really do something stupid but would reduce the risk significantly.
RainyDayTmrw•4mo ago
After a few dumb accidents involving header pins, I've come to the conclusion that exposed male header pins on my desk are a hazard.
wtallis•4mo ago
I've learned to be wary, too. Most desktop motherboard these days have several fan headers just above the memory slots. They also frequently use DIMM slots that only have one latching lever, usually at the top of the slot near the fan headers. So when you're trying to remove a memory module, if you use slightly too much force and your finger keeps moving after the latch opens up all the way, you get a deep puncture wound.

The headers on the keyboard look like they'd be easier to hit accidentally, but probably not with enough force to cause a serious injury. I'd still prefer having some covers over them.

Gracana•4mo ago
I would perhaps put pin receptacles / sockets there instead.
userbinator•4mo ago
Shrouded headers are also available.
snitty•4mo ago
The FPGA is a Lattice LFE5U-25F, about $20

https://www.digikey.com/en/products/detail/lattice-semicondu...

crote•4mo ago
Or about $5 on LCSC.
greenbit•4mo ago
Thank you for surfacing that info, was wondering if I seriously had to go start opening files to find out.

Btw, that's a 256 pin BGA part, grandad's Weller cannot help.

tremon•4mo ago
Curious why they didn't use the LFE5U-12F, I can't imagine this project maxing out even the smallest modern FPGA.
rowanG077•4mo ago
Even better. The LFE5U-12F is just a 25F in terms of resources you can full utilize it with nextpnr. I expect lattice didn't find it economical to have a truly separate production process for it.
FridgeSeal•4mo ago
Is the benefit of the FPGA here that you can program the whole stack? Like a kind of super-charged QMK based board?
pedro_caetano•4mo ago
Well the project description seems to hint at to their motivation:

> 1000 Hz polling rate

> No multiplexing, no ghosting

> FPGA-based, VHDL only, no ALU

It looks like a pure HW 'described' keyboard with no running software meaning it is fully parallel (plus some serialization when reaching the USB device/interface).

So arguably on top of true parallelism the only ceiling for the latency of the whole thing will be the clock period configured in the design and the physics and electrical behaviour of the switches themselves + circuitry.

Probably someone who enjoys working close to hardware and wants to optimize performance.

crote•4mo ago
Most MCU-based keyboards have a 1000Hz polling rate - and some mainstream gamer-focused keyboards are even going for 8000Hz these days.

Getting rid of multiplexing is a result of having a high number of IO pins: an MCU like the STM32F429BE also has enough pin for direct-attach switches. Ghosting hasn't been an issue for ages, even with a traditional keyboard matrix it's just a matter of adding per-key diodes.

In theory it has a sliiightly lower latency than an MCU-based keyboard using the same USB interface, but I doubt the difference is big enough to even be measurable in real-world scenarios. We're talking about, at most, a few thousand cycles of an MCU running at a few hundred megahertz - and that's only relevant when you press the key right before a polling request arrives. That's the difference between an average input latency of 0.500 ms and 0.505 ms. Meanwhile on the output side, your fancy 480Hz monitor is only showing one frame every 2.1 milliseconds...

pedro_caetano•4mo ago
The optimization here is somewhat theoretically specially when you take into account the USB bottleneck as well as real-world Human reaction times and Perception.

But it appears from the project description that the author's motivation was indeed performance (irrespective of merit). A neat VHDL + HW project nevertheless.

tremon•4mo ago
In that light, it's odd that they specify a polling rate at all, since they use direct-attached key pins linked to an 48MHz clock. There is no grid/matrix sensing period, which is usually what is meant by polling rate. And the claimed value of 1kHz is doubly weird since the debouncing logic uses a period of 5ms, which means they can at most mimic a 200Hz polling rate:

  entity Debouncer is
    generic (
      FILTER_DURATION: delay_length := 5 ms
    );
edit: looked up what the typical bounce time is for a keyboard switch, and 5ms seems to be pretty standard. It's also the default that QMK uses. It seems quite excessive to me, I'd have expected bouncing times to be closer to tens of microseconds than multiple milliseconds.
crote•4mo ago
Because you can? It looks like a great project for getting started with nontrivial FPGA design.

Programming-wise I'd say full FPGA is less useful than QMK. Doing a direct 1:1 mapping from key inputs to USB HID report isn't too bad to do in an FPGA, but dynamic behavior like macros, layers, leader keys, mod tap, auto shift, and so on are significantly easier to implement in a regular programming language. If you want flexibility you're basically forced to have your FPGA run a soft core, so at that point why not go for a regular MCU?

In theory you could make an argument for lower latency, but that doesn't really apply when you're limited by USB 2's 1000Hz polling rate while some off-the-shelf MCU-based keyboards use USB 3 for 8000Hz polling.

privatelypublic•4mo ago
Yea. Fun, but not optimal for a product. 1000Hz is already comically faster than any human muscle reaction.
wtallis•4mo ago
With regards to latency: reaction time is the wrong thing to compare against, since input latency can be noticeable even when it is much smaller than a human's reaction time. And wanting to have your keyboard latency be no worse than 1ms can make sense given that it's only one of many components of the total input latency of a computer. Reducing mouse or keyboard latency from 8ms (125Hz) to 1ms (1000Hz) is pretty much the low-hanging fruit; it's not as cheap or easy to squeeze 7ms out of the other parts of the chain.
ginko•4mo ago
I think the main motivation was the ability to assign each key to a separate pin (fpgas can have lots) so no multiplexing is needed.
analog8374•4mo ago
Designed in OPENSCAD!

So you can do openscad (its weird language) or you can do python and use the STL lib.

Which do you like better?

willis936•4mo ago
After making one medium complexity design in openscad over the course of weeks I am pretty confident in saying there is no use case for openscad that isn't better served by freecad.
sebazzz•4mo ago
Basically, only variable adapable designs are suited for OpenSCAD - because those can be trivially regenerated in web applications.
exasperaited•4mo ago
I came to the conclusion that if I need to do that -- webapp-regenerated, parametric variable stuff -- I would either hook up headless FreeCAD in containers (which is now potentially a bit easier, because the work Ondsel did is open source), or set up replicad, e.g. https://replicad.xyz/docs/examples/gridfinity

OpenSCAD is simply not worth the pain unless you're using it to demonstrate abstract geometry.

Build123D or CadQuery could well be viable, though IMO both have slightly frustrating dependencies. But since they can both load STEP files then customisations can be applied to designs built mostly elsewhere.

c0wb0yc0d3r•4mo ago
I'm curious as to why it doesn't have USB 3.0 ports. Do they take too much power? Too much space?
crote•4mo ago
USB 3 is significantly more complicated to implement, and the hub chips are quite a bit more expensive. Hardware-wise it would've become by far the hardest part of this board.

USB 2, on the other hand, is fairly trivial. You almost have to try to get it wrong - especially when you are not concerned about certification.

userbinator•4mo ago
PS/2 is far more trivial and low-latency than USB.
snitty•4mo ago
I'll remember that next time I'm developing an FPGA keyboard for my Gateway computer.
userbinator•4mo ago
Many of the latest gaming mobos still have PS/2 exactly because of the low latency.
bojle•4mo ago
Going by the task at hand, registering keystrokes pressed by a human, USB 3 is also not quite needed.
astrange•4mo ago
If you think about it, it's not really mechanical if it has an FPGA. It should be made of gears or something.
vardump•4mo ago
I wonder if something mechanical could ever talk even USB 1.1 at 12 Mbps. Perhaps if it was small enough...?
EvanAnderson•4mo ago
If you're not familiar with how teletype machines worked you might enjoy it. There were early units that were purely electromechanical. It's really cool.

Usagi Electric did a nice video if that's your kind of thing: https://youtube.com/watch?v=sSiVYgot9SI

I think the video does a nice job of showing the mechanical components that encode the keypresses and generate the 45.5 baud serial output. The printing side isn't given quite as much coverage but you do get to see close-up views of it in operation.

deepsquirrelnet•4mo ago
This seems like a great place for a Cypress (Infineon) PSOC. A while back, I interfaced one to a linear CCD and it was a great experience. They also have USB HID support on chip.
robinsonb5•4mo ago
I used a PSOC (4) for a project once, and while the chip itself was awesome the software was so bad that attempting to use the next version of the software "bricked" the devboard I was using. (Something to do with the new serial bootloader being a different size. "Bricked" in quotes, because with the right kind of expensive programming cable it could have been resurrected - but the whole point of the devboard in question was that it was cheap and self-contained, not needing an external programmer.)