I have a few Pi Pico W and XIAO (ESP32C3) examples in Go (for use with TinyGo) that might be helpful. Pico W: https://github.com/9nut/picow_9p_fs XIAO: https://github.com/9nut/xiao_9p_fs
All the heavy lifting for 9P serving is done by the srv9p package here https://github.com/9fans/go I showed the example toyfs in the XIAO repo to a few people at the last IWP9, but I had not cleaned it up for public release until today (after I saw your email); so thanks for the reminder :) On Mon, Aug 10, 2026 at 11:11 AM rsykora via 9fans <[email protected]> wrote: > > Dear list, > > > I have been contemplating using a 9p protocol as a means of > providing access to some real-time measurements. Namely, I > have a set of devices that measure electric currents at > various places of our laboratory. Those devices speak over > serial line, and are physically attached over USB to a USB > hub connected to a Raspberry Pi 3. At the moment the Pi runs > Void linux. I thought I would create a synthetic filesystem > on the Pi with various devices appearing as folders, and > would serve this filesystem over network with 9p protocol. > However, I found out that > > -- There is no support for 9p in my void linux kernel, > CONFIG_NET_9P_TCP is disabled, so I either have to recompile > the kernel, or use a user-space utility, or use a different > operating system. > > -- As far as user-space utilities go, I found only some > >10y-old programs that invariably failed for me (both > servers and clients). Possibly I can compile plan9port on > the Pi (and install plan9port on other linux clients) to provide > 9pfuse. If I was successful with that, this would allow me > to mount the 'measurement data' on linuxes, but, eventually, > a client program should also run on MS Windows... > > I spent hours talking with (free) google AI to find some > nice solution, but has not managed to converge. At this > moment on the Pi I have neither a reliable 9p server [AI > built some from the ground up, but plan9port 9pfuse does not > speak to it without issues], nor means of serving it locally > on the Pi, nor means of mounting it over the network. > > Perhaps 9p is not the right tool for the job. Still it would > nicely seperate the individual tasks and make the filesystem > the interface. > > AI suggested to use sshfs instead of 9p (and serve an > in-memory filesystem in a cacheless way [the data are > constantly changing] and atomic change of the files). > Alternatively, AI suggested setting up a web server and > build the communication based on json. > > Can somebody here perhaps have something to say about such a > task? Have you built a similar system before and can you > share experience? > > Thank you for any comments! > > > Best regards > Ruda > ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T14e2df9c5f8b4cfd-Ma62feff3a44f64c8a11f70e2 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
