Hacker News

Latest

whohas – Command-line utility for cross-distro, cross-repository package search

2026-05-01 @ 15:01:08Points: 26Comments: 4

GhostBox – disposable little machines from the Global Free Tier.

2026-05-01 @ 14:52:07Points: 91Comments: 50

Sally McKee, who coined the term "the Memory Wall", has died

2026-05-01 @ 14:45:47Points: 22Comments: 4

Running Adobe's 1991 PostScript Interpreter in the Browser

2026-05-01 @ 11:58:11Points: 73Comments: 15

A Letter from Dijkstra on APL

2026-05-01 @ 11:42:12Points: 25Comments: 19

Apple accidentally left Claude.md files Apple Support app

2026-05-01 @ 11:08:32Points: 293Comments: 209

Your Website Is Not for You

2026-05-01 @ 11:08:20Points: 188Comments: 122

Show HN: Perfect Bluetooth MIDI for Windows

2026-05-01 @ 09:52:15Points: 78Comments: 19

I bought a Roland FP-90X piano partly because it had Bluetooth MIDI. On my Windows 11 PC, pairing succeeded, but my DAW couldn't see the keyboard, and notes I sent from the PC never made the piano sing. After a regrettable number of evenings, I'd separated this into three independent bugs stacked on top of each other.

The first one is the famous one: Windows only natively exposes BLE-MIDI through the WinRT API, which almost no DAW polls. So even when pairing succeeds, MIDI apps still don't see the device. The usual workaround is MIDIberry + loopMIDI, but I couldn't get that combination to work reliably in my case, and I wanted a single-app solution. The new Windows MIDI Services stack ships with a feature called loopback endpoints: anything written to one comes out the other, and any winmm/WinRT/WMS app sees them as normal MIDI ports. So the app does WinRT BLE-MIDI in, WMS loopback out. That solved direction one, piano to PC.

Direction two, PC to piano, still didn't work. NoteOn writes were getting ATT-acked, but the piano stayed silent. I tried both write modes (some BLE-MIDI firmware silently drops one or the other), poked the proprietary ISSC characteristic. Every variant ATT-acked, every variant produced silence. So the bytes were reaching the piano. Something above the GATT layer was discarding them.

After ruling out pairing, encryption, write-mode, and proprietary characteristics, the only obvious lever left was the MIDI channel itself. The FP-90X has a panel setting called Transmit Channel, default 1. Yet it turns out the FP-90X actually receives on channel 4 (and it can't be changed). Notes I sent on channel 1 were being GATT-acked and silently dropped at the synth engine because they weren't on the channel the engine was listening to. Zero feedback at any layer. The fix had to live up at the application layer, so I added a Detect button that plays N test notes ascending on each channel from 1 to 16: you count the notes you actually hear, and that number is the receive channel. Saved per BLE MAC, about 75 seconds, done forever per piano.

Tech stack: .NET 10, Avalonia for the UI (the BLE/MIDI side is Windows-only but the UI layer is portable), Microsoft.Windows.Devices.Midi2 packages for WMS, Windows.Devices.Midi (WinRT) directly for BLE rather than relying on Korg's older WinMM driver. MIT, single self-contained ~21 MB exe, no installer, no telemetry, no account.

I built it for myself and use it with my FP-90X to play through a few apps and Web MIDI sites. Pete from the Microsoft Windows MIDI Services team commented positively on the BLE integration when I shared it on r/synthesizers (https://www.reddit.com/r/synthesizers/comments/1szvuiq/comme...).

Site (with screenshots): https://mayerwin.github.io/Perfect-Bluetooth-MIDI-For-Window...

Source: https://github.com/mayerwin/Perfect-Bluetooth-MIDI-For-Windo...

Long-form technical writeup with the full debugging story: https://dev.to/mayerwin/why-your-bluetooth-midi-keyboard-sil...

Personally tested with my FP-90X only. The BLE side is generic, so other keyboards (WIDI Master, CME, Yamaha MD-BT01, Korg microKey Air, ROLI Seaboard, etc.) should work, but I haven't confirmed individually. Device test reports, issues, and PRs very welcome.

Advanced Quantization Algorithm for LLMs

2026-05-01 @ 09:10:02Points: 56Comments: 10

Show HN: WhatCable, a tiny menu bar app for inspecting USB-C cables

2026-05-01 @ 08:43:45Points: 270Comments: 101

WhatCable sits in your menu bar and reads the cable data your Mac already has access to. Plug in a cable and it tells you in plain English what it can actually do: charging wattage, data speed, display support, Thunderbolt, etc.

Built in Swift/SwiftUI. Open source, free, no tracking.

GitHub: https://github.com/darrylmorley/whatcable

Grok 4.3

2026-05-01 @ 08:29:31Points: 266Comments: 366

Our agent found a bug with WireGuard in Google Kubernetes Engine

2026-05-01 @ 08:14:07Points: 52Comments: 29

OpenWarp

2026-05-01 @ 02:10:46Points: 153Comments: 115

CPanel and WHM Authentication Bypass – CVE-2026-41940

2026-04-30 @ 22:48:51Points: 135Comments: 50

Can I disable all data collection from my vehicle?

2026-04-30 @ 20:27:22Points: 685Comments: 292

I built a Game Boy emulator in F#

2026-04-30 @ 17:14:21Points: 318Comments: 72

For Linux kernel vulnerabilities, there is no heads-up to distributions

2026-04-30 @ 16:43:47Points: 571Comments: 483

Copy Fail - https://news.ycombinator.com/item?id=47952181 - April 2026 (466 comments)

How Mark Klein told the EFF about Room 641A [book excerpt]

2026-04-30 @ 16:41:00Points: 672Comments: 228

Shai-Hulud Themed Malware Found in the PyTorch Lightning AI Training Library

2026-04-30 @ 16:09:26Points: 436Comments: 161

Claude Code refuses requests or charges extra if your commits mention "OpenClaw"

2026-04-30 @ 14:36:58Points: 1258Comments: 686

How an oil refinery works

2026-04-30 @ 13:54:20Points: 493Comments: 167

If I could make my own GitHub

2026-04-30 @ 13:38:38Points: 92Comments: 112

Opus 4.7 knows the real Kelsey

2026-04-29 @ 17:09:03Points: 410Comments: 229

Roboticist-Turned-Teacher Built a Life-Size Replica of Eniac

2026-04-29 @ 13:28:47Points: 51Comments: 10

New copy of earliest poem in English, written 1,3k years ago, discovered in Rome

2026-04-29 @ 11:35:40Points: 158Comments: 94

Maladaptive Frugality

2026-04-29 @ 00:50:15Points: 161Comments: 171

New mechanical panoramic film camera from Jeff Bridges

2026-04-28 @ 16:49:12Points: 191Comments: 90

Auto Polo

2026-04-28 @ 15:51:37Points: 95Comments: 24

Softmax, can you derive the Jacobian? And should you care?

2026-04-27 @ 20:38:22Points: 89Comments: 32

You can beat the binary search

2026-04-27 @ 17:52:12Points: 346Comments: 155

Archives

2026

2025

2024

2023

2022