Introducing USBKVM! A keyboard, screen and mouse that all fit in your the palm of your hand!
It's built around the MS2109 HDMI to USB capture chip and its I²C interface connected to an STM32 MCU that takes care of the keyboard and mouse emulation.
While the hardware is fully functional, firmware and software are in a proof-of-concept stage. Stay tuned…
MS9288C eval board, aka really cheap VGA to HDMI converter box has arrived and works as advertised. Pinout appears to be similar, though not identical to the MS9288A, for which I found several sources.
What's strange is that none of the VGA pins needed for EDID or legacy ID are connected, yet two laptops detected it as monitor.
But how? Are the 75 Ohm RGB termination resistors sufficient for detection?
@gsuberland These aren't connected either. The only pins connected are RGB, their respective grounds and HSync/VSync. They even were too cheap to connect the other two ground pins.
given all the complex requirements modern SoCs have for power rail sequencing, especially when DRAM is involved, I feel like vendors should put together some sort of standardised format for representing those sequencing requirements like they do with package pinout files. you could then have your EDA tool consume them by tying the data to specific nets in the design, figure out the intersection of requirements for shared rails, and enforce correctness via ERC rules.
There's also the LTC2977. As to be expected for an ex-LT part its somewhat pricey. They have configurable thresholds and timing setting for pretty much everything and the software tool to configure them is really useful, but also somewhat on the janky side.
A couple of shitposts on my timeline about the link protocol used by TI calculators reminded me about an oddity of it that I haven't seen elsewhere:
It's a two-wire (red, white, GND) open-drain interface. One might assume, that one wire's clock and the other one is data or that one's RX and the other one is TX. However, it's none of that:
To transmit a '1', the sender pulls the white line low, the receiver acknowledges this by pulling the red line low. The sender then releases the white line and the receiver finally releases the red line. For transmitting a '0', the sender starts with pulling the red wire low.
This has the nice property that it does bit-level handshaking and flow control and is self-clocking.
Despite these advantages, I've never seen such kind of protocol used anywhere else. If you have, let us know!
I've prepared a preliminary release of Dune 3D for everyone to make sure that they'll be able to package the upcoming 1.0 release without any bad surprises: https://github.com/dune3d/dune3d/releases/tag/v0.9.3
I was looking into Codec 2 for low bitrate telephony, and it turns out some researchers made their own decoder for it called Parametric WaveNet, which is a deep learning model that generates speech directly from the Codec 2 data stream.
listen to the Codec 2 samples, then the Parametric WaveNet samples. they're both the exact same encoder at 2400bps. the difference in quality and inteligibility is outstanding.