* [9fans] usb9pfs: network booting without the network
@ 2025-02-10 21:35 David Boddie
2025-02-10 22:31 ` sirjofri
2025-02-10 22:43 ` Thaddeus Woskowiak
0 siblings, 2 replies; 11+ messages in thread
From: David Boddie @ 2025-02-10 21:35 UTC (permalink / raw)
To: 9fans
In Plan 9 adjacent territory, this talk came to my attention recently but
the video recording didn't appear until today, I think:
https://fosdem.org/2025/schedule/event/fosdem-2025-6103-usb9pfs-network-booting-without-the-network/
Doing 9p over USB is interesting, though I would have considered using an
existing device class instead of doing something 9p-specific.
It reminded me a bit of u-root.
David
------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/T18ad2d35a1754e48-M895ef4d4aa1c455aa295b6ce
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [9fans] usb9pfs: network booting without the network
2025-02-10 21:35 [9fans] usb9pfs: network booting without the network David Boddie
@ 2025-02-10 22:31 ` sirjofri
2025-02-10 22:43 ` Thaddeus Woskowiak
1 sibling, 0 replies; 11+ messages in thread
From: sirjofri @ 2025-02-10 22:31 UTC (permalink / raw)
To: 9fans
10.02.2025 23:16:07 David Boddie <david@boddie.org.uk>:
> Doing 9p over USB is interesting, though I would have considered using an
> existing device class instead of doing something 9p-specific.
Kinda related, when I was working on the 9front pinephone port, which has a serial connector on its phone jack, I thought it would be interesting to use this as a 9p interface. Imagine you could rcpu or rimport into the phone using that port.
Since most people nowadays probably use a USB-to-serial adapter, it's pretty similar from the experience.
sirjofri
------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/T18ad2d35a1754e48-M2a083ade094419c2f7924cda
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [9fans] usb9pfs: network booting without the network
2025-02-10 21:35 [9fans] usb9pfs: network booting without the network David Boddie
2025-02-10 22:31 ` sirjofri
@ 2025-02-10 22:43 ` Thaddeus Woskowiak
2025-02-10 23:18 ` sirjofri
1 sibling, 1 reply; 11+ messages in thread
From: Thaddeus Woskowiak @ 2025-02-10 22:43 UTC (permalink / raw)
To: 9fans
[-- Attachment #1: Type: text/plain, Size: 1866 bytes --]
This isn't the first time this idea has popped up.
There are plenty of microcontrollers with USB device support so why not run
a 9p server on the micro and let it serve it's hardware to a 9 machine
directly, alleviating the user from ever thinking about a driver - the
hardware is the driver. You could even embed a manual page that's just a
file pulled from flash.
Here an idea: Since Wi-Fi chips are a pain I figure why not use an ESP32 to
act as a software Wi-Fi dongle that serves itself as an ether(3) device
doing all the work in the ESP while 9p runs over USB. Instant driverless
Wi-Fi. You could even use them as an access point so there's lots of
potential. Limited to 150Mbps but I believe this is faster than what we
currently have with supported Wi-Fi chips, at least on 9front.
Another thought are USB microcontrollers with various peripherals which
could serve anything attached, uart(3), ether(3), spi bus, CAN, etc. Turn
off the shelf micros into driverless dongles or weird docking stations.
True distributed computing where even the hardware devices are little
servers.
On Mon, Feb 10, 2025, 5:16 PM David Boddie <david@boddie.org.uk> wrote:
> In Plan 9 adjacent territory, this talk came to my attention recently but
> the video recording didn't appear until today, I think:
>
> https://fosdem.org/2025/schedule/event/fosdem-2025-6103-usb9pfs-network-booting-without-the-network/
>
> Doing 9p over USB is interesting, though I would have considered using an
> existing device class instead of doing something 9p-specific.
>
> It reminded me a bit of u-root.
>
> David
>
------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/T18ad2d35a1754e48-M30dbc92bc6eb4c6675d4b64a
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
[-- Attachment #2: Type: text/html, Size: 3567 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [9fans] usb9pfs: network booting without the network
2025-02-10 22:43 ` Thaddeus Woskowiak
@ 2025-02-10 23:18 ` sirjofri
2025-02-11 10:45 ` Stuart Morrow
0 siblings, 1 reply; 11+ messages in thread
From: sirjofri @ 2025-02-10 23:18 UTC (permalink / raw)
To: 9fans
10.02.2025 23:46:48 Thaddeus Woskowiak <tswoskowiak@gmail.com>:
> This isn't the first time this idea has popped up.
>
> There are plenty of microcontrollers with USB device support so why not run a 9p server on the micro and let it serve it's hardware to a 9 machine directly, alleviating the user from ever thinking about a driver - the hardware is the driver. You could even embed a manual page that's just a file pulled from flash.
>
> Here an idea: Since Wi-Fi chips are a pain I figure why not use an ESP32 to act as a software Wi-Fi dongle that serves itself as an ether(3) device doing all the work in the ESP while 9p runs over USB. Instant driverless Wi-Fi. You could even use them as an access point so there's lots of potential. Limited to 150Mbps but I believe this is faster than what we currently have with supported Wi-Fi chips, at least on 9front.
>
> Another thought are USB microcontrollers with various peripherals which could serve anything attached, uart(3), ether(3), spi bus, CAN, etc. Turn off the shelf micros into driverless dongles or weird docking stations.
I especially also thought of some hardware factotum, a usb thumb drive which only serves a factotum as a filesystem and can do all the authentication and security stuff without ever leaving the device. We'd need to figure out how to store the secrets without leaving the doors open, but I like the idea. Bonus if you include some hardware button as a second factor.
I'd also like to investigate inferno more. I basically left it back in 2018/9 when I switched from 9legacy to 9front.
sirjofri
------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/T18ad2d35a1754e48-Mc5ae0a695e9aa59ddc2a953f
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [9fans] usb9pfs: network booting without the network
2025-02-10 23:18 ` sirjofri
@ 2025-02-11 10:45 ` Stuart Morrow
2025-02-11 11:04 ` Stuart Morrow
2025-02-11 22:14 ` david
0 siblings, 2 replies; 11+ messages in thread
From: Stuart Morrow @ 2025-02-11 10:45 UTC (permalink / raw)
To: 9fans
On Mon, 10 Feb 2025 at 23:46, sirjofri <sirjofri+ml-9fans@sirjofri.de> wrote:
> I especially also thought of some hardware factotum, a usb thumb drive
> which only serves a factotum as a filesystem and can do all the authentication
> and security stuff without ever leaving the device. We'd need to figure out
> how to store the secrets without leaving the doors open, but I like the idea.
> Bonus if you include some hardware button as a second factor.
This isn't the first time this idea has popped up:
https://inbox.vuxu.org/9fans/57be799e06e50bb191c61c752bd1d583@telus.net/
I've always thought auth-server-on-a-wristwatch would be a good use for the
Bluetooth stuff Richard Miller seemed to speak about as if he'd
actually written it.
> I'd also like to investigate inferno more. I basically left it back in 2018/9 when I
> switched from 9legacy to 9front.
They should have used it instead of Minix 3 for the Management Engine.
------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/T18ad2d35a1754e48-M020e7afbefc50947cbd2a9d8
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [9fans] usb9pfs: network booting without the network
2025-02-11 10:45 ` Stuart Morrow
@ 2025-02-11 11:04 ` Stuart Morrow
2025-02-11 22:14 ` david
1 sibling, 0 replies; 11+ messages in thread
From: Stuart Morrow @ 2025-02-11 11:04 UTC (permalink / raw)
To: 9fans
Oh yeah, the linux.pdf thing should have been Inferno, too.
"Portability" by emulation seems like cheating, but many Linux midwits
will eat it up and believe "Linux is portable / Linux is simple /
everything is a file" through sheer repetition like how many Americans
seem to believe they're a uniquely free country.
Basically, Inferno is conceptually so cool and I feel bad for never using it.
------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/T18ad2d35a1754e48-Mc6979ce4caf397875ab98f11
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [9fans] usb9pfs: network booting without the network
2025-02-11 10:45 ` Stuart Morrow
2025-02-11 11:04 ` Stuart Morrow
@ 2025-02-11 22:14 ` david
2025-02-11 22:49 ` Clout Tolstoy
1 sibling, 1 reply; 11+ messages in thread
From: david @ 2025-02-11 22:14 UTC (permalink / raw)
To: 9fans
[-- Attachment #1: Type: text/plain, Size: 772 bytes --]
You can probably use some flavour of Plan 9 on a Pi Zero variant to do the authentication stuff, if you're OK with running that on ARM cores attached to a media processor running a variant of ThreadX. Other similar form factor boards are available.
You could also run Inferno on a smaller system and potentially do something similar. I haven't looked at the Pi Pico port in a while. Maybe it could be persuaded to talk over the USB port instead of a UART. I'm looking at Pico 2-related boards and hope that I can figure out USB device support.
------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/T18ad2d35a1754e48-M6f6558d864e53747ab4b872d
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
[-- Attachment #2: Type: text/html, Size: 1293 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [9fans] usb9pfs: network booting without the network
2025-02-11 22:14 ` david
@ 2025-02-11 22:49 ` Clout Tolstoy
2025-02-12 15:50 ` Gorka Guardiola
0 siblings, 1 reply; 11+ messages in thread
From: Clout Tolstoy @ 2025-02-11 22:49 UTC (permalink / raw)
To: 9fans
[-- Attachment #1: Type: text/plain, Size: 1388 bytes --]
The pi zero has a USB hid gadget mode ( it can be used like a rubber ducky
for bad usb attacks). Not sure if there is a plan 9 driver for that
interface.
On Tue, Feb 11, 2025, 2:21 PM <david@boddie.org.uk> wrote:
> You can probably use some flavour of Plan 9 on a Pi Zero variant to do the
> authentication stuff, if you're OK with running that on ARM cores attached
> to a media processor running a variant of ThreadX. Other similar form
> factor boards are available.
> You could also run Inferno on a smaller system and potentially do
> something similar. I haven't looked at the Pi Pico port in a while. Maybe
> it could be persuaded to talk over the USB port instead of a UART. I'm
> looking at Pico 2-related boards and hope that I can figure out USB device
> support.
> *9fans <https://9fans.topicbox.com/latest>* / 9fans / see discussions
> <https://9fans.topicbox.com/groups/9fans> + participants
> <https://9fans.topicbox.com/groups/9fans/members> + delivery options
> <https://9fans.topicbox.com/groups/9fans/subscription> Permalink
> <https://9fans.topicbox.com/groups/9fans/T18ad2d35a1754e48-M6f6558d864e53747ab4b872d>
>
------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/T18ad2d35a1754e48-M740e08a28dacdc69a16d1ed9
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
[-- Attachment #2: Type: text/html, Size: 1817 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [9fans] usb9pfs: network booting without the network
2025-02-11 22:49 ` Clout Tolstoy
@ 2025-02-12 15:50 ` Gorka Guardiola
2025-02-12 15:53 ` Gorka Guardiola
0 siblings, 1 reply; 11+ messages in thread
From: Gorka Guardiola @ 2025-02-12 15:50 UTC (permalink / raw)
To: 9fans
[-- Attachment #1: Type: text/plain, Size: 1756 bytes --]
There is an standard called USB On The Go, OTG, supported by many phones
and the Raspberry Pi. This standard lets a USB port act as a device or a
host. In the RPi the power port supports OTG, but the last time I looked
there was no support in the Plan 9 driver.
On Wed, Feb 12, 2025, 04:30 Clout Tolstoy <tolstoyclout@gmail.com> wrote:
> The pi zero has a USB hid gadget mode ( it can be used like a rubber ducky
> for bad usb attacks). Not sure if there is a plan 9 driver for that
> interface.
>
> On Tue, Feb 11, 2025, 2:21 PM <david@boddie.org.uk> wrote:
>
>> You can probably use some flavour of Plan 9 on a Pi Zero variant to do
>> the authentication stuff, if you're OK with running that on ARM cores
>> attached to a media processor running a variant of ThreadX. Other similar
>> form factor boards are available.
>> You could also run Inferno on a smaller system and potentially do
>> something similar. I haven't looked at the Pi Pico port in a while. Maybe
>> it could be persuaded to talk over the USB port instead of a UART. I'm
>> looking at Pico 2-related boards and hope that I can figure out USB device
>> support.
>>
> *9fans <https://9fans.topicbox.com/latest>* / 9fans / see discussions
> <https://9fans.topicbox.com/groups/9fans> + participants
> <https://9fans.topicbox.com/groups/9fans/members> + delivery options
> <https://9fans.topicbox.com/groups/9fans/subscription> Permalink
> <https://9fans.topicbox.com/groups/9fans/T18ad2d35a1754e48-M740e08a28dacdc69a16d1ed9>
>
------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/T18ad2d35a1754e48-Me5ab28335e3b5c98659256d1
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
[-- Attachment #2: Type: text/html, Size: 2445 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [9fans] usb9pfs: network booting without the network
2025-02-12 15:50 ` Gorka Guardiola
@ 2025-02-12 15:53 ` Gorka Guardiola
2025-02-13 0:02 ` david
0 siblings, 1 reply; 11+ messages in thread
From: Gorka Guardiola @ 2025-02-12 15:53 UTC (permalink / raw)
To: 9fans
[-- Attachment #1: Type: text/plain, Size: 1929 bytes --]
Forgot the link: https://en.m.wikipedia.org/wiki/USB_On-The-Go
On Wed, Feb 12, 2025, 16:50 Gorka Guardiola <paurea@gmail.com> wrote:
> There is an standard called USB On The Go, OTG, supported by many phones
> and the Raspberry Pi. This standard lets a USB port act as a device or a
> host. In the RPi the power port supports OTG, but the last time I looked
> there was no support in the Plan 9 driver.
>
> On Wed, Feb 12, 2025, 04:30 Clout Tolstoy <tolstoyclout@gmail.com> wrote:
>
>> The pi zero has a USB hid gadget mode ( it can be used like a rubber
>> ducky for bad usb attacks). Not sure if there is a plan 9 driver for that
>> interface.
>>
>> On Tue, Feb 11, 2025, 2:21 PM <david@boddie.org.uk> wrote:
>>
>>> You can probably use some flavour of Plan 9 on a Pi Zero variant to do
>>> the authentication stuff, if you're OK with running that on ARM cores
>>> attached to a media processor running a variant of ThreadX. Other similar
>>> form factor boards are available.
>>> You could also run Inferno on a smaller system and potentially do
>>> something similar. I haven't looked at the Pi Pico port in a while. Maybe
>>> it could be persuaded to talk over the USB port instead of a UART. I'm
>>> looking at Pico 2-related boards and hope that I can figure out USB device
>>> support.
>>>
>> *9fans <https://9fans.topicbox.com/latest>* / 9fans / see discussions
>> <https://9fans.topicbox.com/groups/9fans> + participants
>> <https://9fans.topicbox.com/groups/9fans/members> + delivery options
>> <https://9fans.topicbox.com/groups/9fans/subscription> Permalink
>> <https://9fans.topicbox.com/groups/9fans/T18ad2d35a1754e48-M740e08a28dacdc69a16d1ed9>
>>
------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/T18ad2d35a1754e48-Mbc7eb0a9c8b0cc14517fff84
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
[-- Attachment #2: Type: text/html, Size: 2935 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [9fans] usb9pfs: network booting without the network
2025-02-12 15:53 ` Gorka Guardiola
@ 2025-02-13 0:02 ` david
0 siblings, 0 replies; 11+ messages in thread
From: david @ 2025-02-13 0:02 UTC (permalink / raw)
To: 9fans
[-- Attachment #1: Type: text/plain, Size: 555 bytes --]
I didn't get too far doing things with USB on the Pi. Inferno at least borrows code from 9pi to behave as a USB host, and it's fairly simple to get it to talk to devices.
I've done simple work to make Inferno behave as a USB device on a couple of systems. Hopefully I can make progress with the RP2350 processor in the Pico 2.
------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/T18ad2d35a1754e48-Ma7e2307278b3818bfae3acc5
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
[-- Attachment #2: Type: text/html, Size: 1076 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2025-02-13 0:07 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-02-10 21:35 [9fans] usb9pfs: network booting without the network David Boddie
2025-02-10 22:31 ` sirjofri
2025-02-10 22:43 ` Thaddeus Woskowiak
2025-02-10 23:18 ` sirjofri
2025-02-11 10:45 ` Stuart Morrow
2025-02-11 11:04 ` Stuart Morrow
2025-02-11 22:14 ` david
2025-02-11 22:49 ` Clout Tolstoy
2025-02-12 15:50 ` Gorka Guardiola
2025-02-12 15:53 ` Gorka Guardiola
2025-02-13 0:02 ` david
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).