MisterTea 5 hours ago

I had the same idea for a Plan 9 USB WiFi using an ESP32. You serve the wifi device as a ether(3) device which negates the need for janky side band config as the config is done over the same 9P interface. Never got around to it.

MomsAVoxell an hour ago

In the retro-computing world (Oric-1/Atmos) we are using the PicoW as a way to get our old machines on the Internet, not by implementing USB-CDC drivers on the old machines, but by having the PicoW imitate an old-school modem interface, albeit one that 'dials in' to a web site address instead of another modem ..

It's pretty cool, I have to say - especially for us old Oric folks, who never did quite get a full BBS ecosystem for these machines, unlike others. Its on like donkey kong now though, thanks to wonderful PicoW projects like this!

polpo 13 hours ago

Interesting that Gemini said it was infeasible. It should be aware that using a Pico W as a transparent ethernet bridge has been done several times over in open source projects, for example on BlueSCSI (emulating a Daynaport SCSI-Ethernet adapter) and PicoMEM and my own PicoGUS project (emulating an NE2000 Ethernet adapter).

  • vlovich123 5 hours ago

    I just did this test with Gemini Flash-Lite 3.1:

    > Can you use a raspberry pi pico W as a USB WiFi adapter

    > Yes, it is possible to use a Raspberry Pi Pico W as a USB Wi-Fi adapter, but it is a project that requires custom firmware and a clear understanding of your goals.

    Then goes off and lists the things you’ll need which at a cursory glance seems like good starting points.

  • dsign 2 hours ago

    My experience with questions to LLM is that they mimic reddit a lot: ask them an apparently simple thing that is not possible, and they will bend backwards to tell you it's possible and give you tons of convoluted possible solutions. Ask them a thing that is possible but complicated, and they will be overly dismissive. The good thing however is that between those two banks there's a wide river of utility...more often than not they'll at least mention things I haven't considered before.

  • byb 12 hours ago

    Exactly, bit banging an 8-bit bus isn't that different from pushing the data out of the USB port. It would be great to try an LLM trained on pre-1900 documents and ask it if powered flight is possible.

    Great work on PicoGUS.

  • tehlike 9 hours ago

    It's often good to approach what llm said as a guidance, and not as ground truth.

    You can ask follow up questions or point to potential feasibility and it will change its answer.

    • mrhottakes 3 hours ago

      "Guidance" that's often wrong and that will change if I ask a follow-up question? Wow where can I send my money??

    • Chu4eeno 3 hours ago

      I'm not sure even treating it as a guidance is the best approach, generally you should challenge it a lot (which is what CoT kind of emulates), you never know what it is confabulating and when it is correct.

    • bookofjoe 7 hours ago

      Yes, but. I asked Perplexity Pro the same fact question (sports) three days in a row after correcting its error the first day and having the correction acknowledged with a promise to get it right in the future. Same error on second day, same promise. Third day: correct. Perhaps it needs to be in the "Slow" classroom....

      • oarsinsync 6 hours ago

        I've never used Perplexity Pro, but I would expect the exact same outcome from Claude, as I don't have cross-session memory enabled.

        If you do have cross-session memory enabled, I agree this is not glowing performance. If you don't, then I think it's working exactly as intended.

        • bookofjoe 4 hours ago

          I just asked if cross-session memory is enabled on my account: it replied that it's still being rolled out.

      • functionmouse 7 hours ago

        perhaps we should stop personifying organized dirt

      • rvz 7 hours ago

        It is "grounded in reality" and changes its answer like the weather.

        • nekusar 6 hours ago

          No, Claude, etm are for "Entertainment purposes only", as listed in their TOS.

          You know, like the same for horoscopes and psychics.

      • SecretDreams 6 hours ago

        Perplexity still exists?

        I just got major Dotcom vibes

    • xd1936 6 hours ago

      stopcitingai.com. Been trying to say this as much as possible.

  • alexjurkiewicz 9 hours ago

    It was Gemini Flash, probably an even faster variant optimised for immediate response on search pages.

  • rvz 9 hours ago

    > Interesting that Gemini said it was infeasible.

    Unless there is a hardware limitation or the hardware does not support it, anything in software is possible.

    Gemini and all these other LLMs are designed to convince you that they have "awareness" which they do not have any of the sort. They are neither sentient nor do they have consciousness

    • whywhywhywhy 7 hours ago

      Something doesn’t have to be sentient or have consciousness to answer a technical question like that.

    • dTal 8 hours ago

      Bad take. Some things are feasible and some things are not, "anything is possible" is a useless framework. Example: go convert two smartphones to communicate p2p over their 4g radios - it's all software!

      LLM "awareness" is similarly irrelevant. They process information usefully, in a way grounded in reality, and that's that.

      • rvz 7 hours ago

        You seem to be all over the place, most of it by not reading the parent's comment. So let's break it all down.

        > Bad take. Some things are feasible and some things are not, "anything is possible" is a useless framework.

        It would help if you quoted the entire comment rather than removing the context and further giving a very bad example afterwards:

        > Example: go convert two smartphones to communicate p2p over their 4g radios - it's all software!

        Nice try. That is a hardware limitation in the 4G radio which is designed to connect to an operator mast. Even if you wanted to do it in software, the hardware does not support that P2P use-case which is what I already said.

        > LLM "awareness" is similarly irrelevant.

        Exactly. There is no such thing as awareness in LLMs.

        The parent comment I replied to believed that an element of awareness had to be present to give an answer because this was done "several times over" in open source projects. Which that is inaccurate in the context of LLM research.

        >> "It should be aware that using a Pico W as a transparent ethernet bridge has been done several times over in open source projects..."

        > They process information usefully, in a way grounded in reality, and that's that.

        Useful to those who know when it is either mostly correct or outright wrong.

        Clearly in this example, Gemini doesn't even know if its own answers are grounded in reality and consequently people using them are unable to determine if the results they bring are true or not and there are countless examples of that.

        So you know what you just said is not true.

        • ElectricalUnion 5 hours ago

          > That is a hardware limitation

          Sounds like a intentional firmware (aka: software) limitation to me?

          • 306bobby 4 hours ago

            If the hardware won't accept custom firmware without signed with a private key, I'd say that's hardware limitation

alnwlsn 3 hours ago

Buried the lede by calling this a "usb wifi adapter" and not "magic Ethernet adapter that you don't have to plug a cable into". This will come in handy for my systems that are normally air gapped or currently connected to something else, but sometimes I need to get another network connection on there for a few minutes. I don't always have a USB ethernet adapter on hand or enough cable, but I almost always have a Pico around.

Also I posted this comment using one. Speedtest says about 4 Mbps. Surprisingly usable for web browsing though. Very nice tool! I'll be keeping the .uf2 file around for sure.

xondono 4 hours ago

I’ve been looking for a good solution for doing the exact opposite, being able to connect stuff through USB in my bench, and see them pop up in my office desktop as if they were usb devices.

The closest I’ve gotten is using a raspberry pi in the workbench, but for some weird devices that’s sometimes not good enough.

  • EvanAnderson 3 hours ago

    In a Windows world I've used the hell out of these devices for licensing dongles on Windows virtual machines: https://www.silextechnology.com/connectivity-solutions/devic...

    They're much cheaper than the competing devices from Digi and they've been bulletproof for me. I've got some out there running >10 years.

    I've even done stupid stuff like hung a USB Ethernet adapter off of one and made it a NIC on my local PC to talk to another of the same unit hanging off that USB NIC (just to be cheeky-- not for actual use). Stacking things on top of other things is fun.

    My only complaint is I wish they did PoE. I use a cheap PoE splitter for that but it would be nice not to have to do that.

  • marysol5 3 hours ago

    I've used USB over Network in the past, worked well on Linux

1vuio0pswjnm7 2 hours ago

No Javascript

Peruse README and source code

   x=pico-usb-wifi
   tnftp -4o"|unzip -p /dev/stdin $x-main/README.adoc $x-main/src/*.c" \
   https://gitlab.com/baiyibai/$x/-/archive/main/$x-main.zip \
   |tr -cd '[ -~\n]' \
   |less
byb 15 hours ago

pico-usb-wifi is firmware for the Raspberry Pi Pico W that turns it into a driverless USB Wi-Fi adapter, enumerating as a USB CDC-NCM device.

  • fragmede 15 hours ago

    Hah! That's neat! So much fun stuff to be had with that particular bit of kit.

asc91 3 hours ago

I would like to ask the author, what do they mean when they say 'I spent 2 days and 1M claude code tokens' Did you completely vibe code this? or did you create a spec and asked claude to implement that? How many times did you need to course correct claude when it deviated if it did? How much of your own experience as working in WiFi industry was useful while building this project? And what would be different if you had worked on this project without that experience?

  • wpm an hour ago

    I've often thought that if I ever did get around to publishing any of the stuff I work on that I would probably also publish any AI usage verbatim. Like, the full logs of all of the chats, at least as a sign of "here was my thought process" and "here's how I convinced the text machine to give me the right text". That somehow feels more honest than "I made this thing, but actually I vibe coded this thing."

bhouston 8 hours ago

Interesting project.

In a similar but opposite vein, I am going on a vacation and I wanted to share the stupidly expensive internet in my room at night with the family so I am likely bringing a raspberry pi to have as a travel router attached to my Mac. In this case, I can use the RaspAP project: https://raspap.com/

This is slightly different in that I do want a NAT.

  • forinti 6 hours ago

    I like this little thing: https://openwrt.org/toh/gl.inet/gl-usb150

    You can use it as a repeater, so the whole family can just use the same network/password we use at home. And it is so small, you can run it from a power bank for hours.

    Unfortunately, they are not sold anymore.

  • Tepix 7 hours ago

    It's also slightly different because this project is for the Pi Pico.

    • bhouston 7 hours ago

      Yeah, given the through put on the Pico is just 4Mbps in this setup, it will not work as a travel router for the family.

palata 9 hours ago

> Average 4.75 Mbits/sec throughput

Isn't that slow for WiFi?

I mean it's an interesting learning experience, but isn't that strictly worse than pretty much any WiFi dongle?

  • tehlike 9 hours ago

    Yes, the guy clearly spent more of his time than it's worth - you can buy a wifi dongle for a few bucks on aliexpress.

    But that's exactly the point of such experience. It's a challenge, and the guy/gal nailed it.

    • bhouston 7 hours ago

      You can not buy wifi usb adapters that work with MacOS on MacBooks I believe. I could be wrong but I think none of them have driver support.

    • moffkalast 8 hours ago

      Well Claude nailed it, but they get credit for the idea.

      • tehlike 7 hours ago

        Yes, just yesterday I got codex to write me a home assistant plugin for reticulum lxmf. For the fun of it. It got things wrong, I got it to fix.

  • teaearlgraycold 9 hours ago

    The Pico is USB 1.1, so the upper bound is 12 Mb/s.

    • 15155 3 hours ago

      Totally pedantic deep dive: the Pico has a USB FS PHY (the numbered versions don't directly correlate to line rate, and FS was defined in 1.0) - the signaling rate is 12Mb/s, but it's impossible to achieve sustained transfers at this data rate under any circumstance:

      - USB FS has a 1ms frame limit (HS is 125µs)

      - UBS FS Bulk is thusly limited to ~19 transactions x 64 bytes maximum (HS is 512)

      - USB FS Isochronous can do 1023 byte transfers, but you can only fit one of those in a 1ms frame (resulting in a giant quantization hole in the packet)

      - Focusing on bulk only: the token packet, ACK handshake, inter-packet bus turnaround time minimums, framing bits, CRC bits, and periodic FS SOF packets mean that the actual theoretical maximum data rate is ~81% of the signaling rate

      - Bit stuffing optimality issues (required for clock recovery) eat an additional several percent on most data, up to ~17% on pathological data

      Therefore: ~9.5Mb/s is the best theoretical data rate that can be obtained with optimal host and device IP and an ideal application layer.

      Realistically, ~8Mb/s is the most one can expect on real hardware with an ideal application (and this is optimistically high in my experience.)

drop-volley 14 hours ago

Can you have the Pico operate as an access point? Would love to be able to use this to connect over wifi to a printer (printer in client mode), with the printer and macos talking directly over IP without needing to configure any other routing/forwarding on macos.

  • bdcravens 13 hours ago

    Wifi printer, where both your machine and the printer are connected to the same AP? yes

    If you'd rather just expose a USB printer to the network, a Pi Zero is a better fit.

    • drop-volley 8 hours ago

      No. The printer cannot connect to the wifi network that the macbook is connected to. I don't want to expose a USB printer to the network. I just want to allow the printer to connect to an AP created by the Macbook/PiZero/ESP32/insert_cheap_widget device and then allow the Macbook to connect to the printer's IP.

      • bdcravens 19 minutes ago

        That's what I meant by the Macbook and the printer connecting to the same AP. The Pico is the AP, and both your printer and the Macbook connect to it. (You could also use a cheap off the shelf travel router)

        What the Macbook can't do is have multiple wifi connections at the same time, so you'd have to disconnect from its primary network (which also rules out the Macbook serving as an AP that the printer connects to).

nicman23 13 hours ago

close enough, welcome back 56(0)k

vardump 11 hours ago

Thanks! Now I potentially have ~20 USB WiFi adapters I didn’t have yesterday.

Even better, no need to hassle with the WiFi settings on the target system.

In wrong hands, Pico W is actually a bit terrifying device, because it combines USB and wireless.

JSR_FDED 14 hours ago

Love the way the author labels each of his diagrams as “AI Slop”!

  • byb 13 hours ago

    It's one of the neat features of the AsciiDoc language. The user is able to change captions mid document, in this case :figure-caption:. AsciiDoc and Antora are things I've invested a lot of my time into

    https://baiyibai-antora.gitlab.io

  • MgB2 10 hours ago

    I'm kind of fascinated by the first diagram on the page. It sits so firmly in the uncanny valley for me and I can't put my finger on why. By itself every part looks ok and normal, but as a whole it just screams AI to me. I don't know if its the color choices or the composition or something else. It all just feels that little bit off.

    I mean, I know its AI, the page says so itself, no one is trying to hide it. But it also just gives me AI vibes on such a subliminal level that I can't figure out why.

    • Tepix 7 hours ago

      It's the amount of little icons and bold text. And then phrases like "No NAT, No Port-forwards"

      Also details like the light blue boxes being swapped.

    • kalleboo 7 hours ago

      To me there's something about the "AI Slop Font" where it instantly triggers that uncanny valley. I guess since it's kind of an average of a bunch of fonts so it's somehow familiar but also unfamiliar at the same time.

    • mhl47 7 hours ago

      Absolutely can relate. Thats why I would say: Do your own diagrams! At least the text and formatting.

      Where I do think it ads value is "AI slop 2". This is somehow even better comprehensible than an average photo.

  • Tepix 7 hours ago

    The pic "AI Slop 2. A Real World Situation" is great, the USB cable is connected to the wrong end of the Pico!

hellweaver666 11 hours ago

Oooooh, now I'm thinking... you could design a simple circuitboard that holds multiple picos (surface mounted) and uses the USB data pads on the back to pull all the USB ports out to an onboard USB hub basically allowing you to add a multitude of wifi adapters to a project in one USB cable. Would be great for War Driving!

andrewstuart 13 hours ago

Google Gemini is that naysayer senior developer who confidently tells you it can’t be done.

Claude is that easy to get along with smart hard working guy who just gets on with it and builds it double quick.

ChatGPT is the eager senior developer who says it can be done but can’t actually work it out and fluffs it.

  • lionkor 10 hours ago

    Actually, all of them are fallible, very incompetent machines that are good at writing text. They're not people, they don't have any qualities of people except the really bad ones, and they are absolutely miserable at reasoning.

    The only people I know who use Gemini are unemployed.

    The only people I know who use Claude vibe-code everything, often including their communication -- they probably let Claude kiss their kids goodnight.

    Everyone else uses ChatGPT, and the world is worse off for it.

    They are machines. "it" is the only acceptable pronoun, and personifying these machines adds emotion into the discussion and the use of the tool. They are not people. They do not behave like people. If you feel like they do, and you're e.g. autistic, that's entirely fair, so please take my word that they do not behave sufficiently like people in any way.

    Nothing they do mirrors the behavior of engineers. They instead mimic the language of engineers. I understand that this is all it takes in a lot of circles to gain respect, which is quite a sad state for those circles, but that doesn't mean its a universal experience.

    • type0 7 hours ago

      > Everyone else uses ChatGPT

      I'm actually tired that people put stupid questions in ChatGPT and then present in with a straight face as a source of truth. Sometimes it hallucinates completely, sometimes the conditions or regulation have changed and it gives false answers and no-one cares. Simple collaborations that was possible before now turn into unnecessary arguing. Some ChatGPT users aren't even aware that LLMs hallucinate, I just pointed it out recently and was accused of mansplaining and being a tinfoil hat.

      > Nothing they do mirrors ...

      "Mirror, mirror on the wall, who is the fairest of them all?"

  • mechazawa 11 hours ago

    Gemini writes pretty shitty code in my experience. We tried it out for a grand total of half a day at work before deciding it wasn't worth our time and switched back to Opus.

    ChatGPT writes like it's life depends on it and refuses to correct its own mistakes. It'll figure out a way to write 4k lines for something that could've been done in 500

  • mrhottakes 3 hours ago

    They're all actually a pile of numbers getting multiplied against each other to sometimes produce output that convinces some humans they're people.

  • puppymaster 11 hours ago

    DeepSeek will just wing it and tell you it's done only for you to find 1 major + 3 edge case bugs.

  • petesergeant 12 hours ago

    ChatGPT is very good at code-reviewing Claude’s work and finds the howlers in it fairly reliably

amelius 11 hours ago

How many Mbps?

  • smilespray 10 hours ago

    6

    • tonyhart7 10 hours ago

      not very a lot are they

      • InsideOutSanta 9 hours ago

        6 is all you need in all cases, depending on the unit.

        • 0x457 2 hours ago

          I think this is more of a "can you do this?" rather than something useful. Sure you can have Pico with this firmware around, but you can have much smaller and faster dongle instead.

          Pico is an amazing thing tho, so many weird firmwares that are useful in a pinch.

      • seba_dos1 6 hours ago

        More than enough for quite a lot of use cases.

      • tehlike 9 hours ago

        Yes, but why does it matter. People do all sorts of things for fun.

diego_moita 5 hours ago

I don't have any idea of what is the purpose of this.

Do you want to share an USB device across the WiFi?

If so, why not use the USB-IP protocol? It is already part of the Linux kernel, has implementation for Windows and doesn't require additional hardware.

throwwwll 10 hours ago

AI Slop.

  • xd1936 6 hours ago

    I like that the second image filename is slop_2.png. At least they're self-aware.

arcza 9 hours ago

[flagged]

  • nolok 8 hours ago

    Meta comment to your meta comment : this is a very personal opinion but I cannot stop myself from thinking less about your message (even though I agree with it), just because of that edgy wannabe way to go about naming Microsoft. You want to say Microsoft say that, you want to say Github say that but if you say a vaguely insulting name only to have to specify what you actually mean... It doesn't bring anything to the conversation, except lower the level, and if a company has flaws as big as Microsoft you don't need to resort to childish name calling to expose them. This is my personal opinion.

    • joejohnson 7 hours ago

      I thought it brought something to the conversation

    • devsda 6 hours ago

      > just because of that edgy wannabe way to go about naming Microsoft.

      I think it stopped being edgy and transitioned to a symbol of user frustration the moment their CEO tried to address the slop without acknowledging their customer pain.

      It is not much different from the micro$oft used here often.

    • techbrovanguard 8 hours ago

      won’t somebody please think of the billion dollar company?

      • nolok 8 hours ago

        This has nothing to do with the billion dollar company, and I have no lost love for Microsoft.

        It's about quality of discourse among us, and Microsoft has nothing to do with that.

        • gegtik 7 hours ago

          what do you think about Micro$haft WinBlowz

    • LearnYouALisp 7 hours ago

      It means GH is now full of slop and pointing out it's owned by Microsoft, for those who may not have known or LMS who did not until recently

ranger_danger 14 hours ago

> I spent two days of a long holiday weekend and about one million Claude Code tokens building this firmware.

GL26 12 hours ago

one million Claude Tokens (assuming you are on opus) = 5 USD = the very dongle you tried to replace. Add the cost of the rasberry pico, you'll have an easier time buying the wifi dongle. The project is cool thought to learn about networks, NAT, Proxys, ect...

  • byb 11 hours ago

    No, it's not really easier to buy a Wi-Fi dongle. My target device is the Spotify Car Thing and SuperBird doesn't have Wi-Fi components. My Claude Code Pro subscription was idle, so it cost me nothing. Also, according to an article from Tom's Hardware from two years ago, four million Picos have already shipped, so I've unlocked this ability for let's say 500,000 devices. Finally, my day job is in the Wi-Fi industry... this wasn't a learning exercise.

  • farfatched 10 hours ago

    The author's tone when they discuss the cost of the project is self-deprecating. They know it would have been simpler to just buy one.

    But also, the author has given the community a great gift, both directly (the blog post and the project!) and indirectly (the idea: what else can be implemented in similar ways).

  • Mashimo 8 hours ago

    Finally hacker news on .. Hacker News. No need for it to be economical cheap.

    • mschuster91 4 hours ago

      Is it truly hacking in the traditional sense if everything was done with AI?

      • dirasieb 2 hours ago

        is it truly hacking in the traditional sense if you don't use punch cards?

  • bdavbdav 11 hours ago

    It’s nice that it doesn’t need the WiFi stack or host side configuration though. This would be great for headless machines.

  • throwwwll 10 hours ago

    > The project is cool thought to learn about networks, NAT, Proxys, ect...

    The author learned nothing though...

    • teaearlgraycold 9 hours ago

      Eh maybe a few tidbits. But the world gained a new WiFi adapter!

  • lithiumii 12 hours ago

    except now we don't need to spend that $5

gavinsyancey 12 hours ago

You can do this by installing OpenWRT on the Pi and controlling it from the web interface.