• 0 Posts
  • 20 Comments
Joined 4 months ago
cake
Cake day: March 8th, 2025

help-circle













  • But it doesn’t know that it exists. It just says that it does because it’s seen others saying that they exist. It’s a trillion-dollar autocomplete program.

    For example, if you take a common logic puzzle and change the parameters a little, LLMs will often recite a memorized solution to the wrong puzzle because they aren’t parameterizing the query correctly (mapping lion to predator, cabbage to vegetable, ignoring the instructions that the two cannot be put together in favor of the classic framing where the predator can be left with the vegetable).

    I can’t find the link right now, but a different redditor tried the problem with three inanimate objects that could obviously be left alone together and LLMs were still suggesting making return trips with items. They had no examples of a non-puzzle in their training data, so they just recited the solution to a puzzle because they can’t think.

    Note that I’ve been careful to say LLMs. I’m open to the idea that AGI/ASI may someday exist, but I’m quite confident that LLMs will not get there. At best, they might be used to offload conversation, like e.g. Dall-E is used to offload image generation from ChatGPT today.




    1. You’d presumably do it as 2.0, but I used 1.1 for the numbers just to demonstrate that you can definitely fit 8 controllers into a packet even if you go for unreasonable levels of backwards compatibility.
    2. Without a hub, I’m not aware of a way to exceed 8 axes per HID device (7 in Windows for some reason). Each Xbox controller has six, so even two controllers can’t be one device.
    3. As far as I can find, most USB 2 implementations can take up to 1000 packets per second per root hub, regardless of packet size. I was already assuming one controller poll per packet for the hub version, and that’s 125Hz per controller with all eight.
    4. You aren’t actually pressing buttons at 125Hz, no. However, if your input is barely too late for one 125Hz poll, you can get enough delay to be noticeable in fast-paced games. Most controllers and mice use 1kHz for this reason, with some even supporting up to 8kHz if your USB implementation supports it (which apparently is pretty common with xHCI, but Microsoft didn’t want to rely on that for obvious reasons).

  • Well, yeah, obviously it can be done. What’s the latency, though? A hub’s muxing alternates between packets from different devices, but even USB 1.1 has 64B packets, leaving 64b per controller if you report them all in one packet. That’s 15 digital buttons, 6b per axis, and 13b left over for routing.

    However, I can’t think of a way to get the computer to decode one 64B packet into eight separate HID polls without a custom driver. If you use a hub, you’re limited to 8kHz total by the spec, but many EHCI controllers limit that to 1kHz. 125Hz per player is not great.

    I can’t confirm that this is the reason or that there isn’t a different way around the restriction, but it seems likely from what I know of USB hubs.

    TL;DR: with a custom driver, you can report all controllers on all USB polls rather than each taking up a whole interval, giving you 8x the polling rate compared to an emulated hub with 8 standard HIDs.


  • The 8bitdo version is easier to implement because it’s one dongle per controller. The Xbox dongle supports eight controllers per dongle. This complicates things; I assume they didn’t want to emulate an eight-port USB hub on the dongle.

    You can use BT, but there’s a reason 8bitdo has a dongle as well: BT has worse latency, I assume due to protocol overhead.

    And at least Xbox controllers are cross-compatible. You can’t use a DS4 on a PS5, even if you’re playing a PS4 game.