I believe this has been discussed at some point, but there is a file-storage module that emulates a mass storage device:
http://www.linux-usb.org/gadget/file_storage.html

I don't see it included in the preview ASU package, but it should be trivial to build separately.

The issue (that I see, anyway) is that it requires exclusive access to the drive that it uses for the storage. I think the cleanest way to handle that would be to format a partition on the SD card with a suitable filesystem (Fat32). This would then be normally be mounted on the Neo, and used for storing media files and extra user data. When you want to connect to the PC to transfer songs or whatever, you run a utility that unmounts the drive from the linux side, switches off the USB ethernet gadget and switches on the file-storage gadget, with this device as its target. Then you can plug it into a PC and do whatever, and when you are done you simply use the utility to switch back to the previous configuration.

The downside to this method is that you wouldn't get access to the root filesystem, and Neo applications woudn't have access to the drive while it was being shared (so you couldn't play songs while you were downloading them). Also, it would probably be tricky to share PIM data this way, because you wouldn't want to turn off the dialer program :-D.

Cheers,
Matt

Bobby Martin wrote:

        I'm sure it's *possible* to make the neo behave like a mass
        storage device, and I would love to have
        software that does it so I can have some kind of communication
        with Windows machines that I don't
        have permission to install drivers & internet bridges on.  As
        far as I know that software doesn't exist today.



    Two ways to accomplish this:

    1. use gadget_storage on the neo/freerunner
    2. use usb-networking + samba on the neo/freerunner

    My vote goes for option #2, since this also allows us to continue
    to support ssh'ing to the phone, etc.

    ;
    --
    Jay Vaughan


My issue is that I want to be able to connect my neo to just about any Windows PC and at least transfer files. Connecting to the neo via usb from a Windows machine requires installing a driver on the Windows PC and setting up a network bridge on the Windows PC. These are things I'm often unable to do. (E.g.
at work, or especially on someone else's machine at work.)

Bluetooth is nice, but it's also true that many PCs don't have bluetooth. To me, the ideal solution would be to have an app on the neo that makes it pretend to be a mass storage device over USB, so standard USB connectors on almost any USB host (Mac, Windows PC, Linux PC, maybe some cameras, etc.) would recognize the neo as a source and destination for files. We should be able to configure which directories are exposed through the USB mass storage interface, and also perhaps configure how
much storage is reserved (so you don't fill up your rootfs).

Does such a USB mass storage interface simulation program exist out there as open source
somewhere, waiting to be ported?

Bobby

--
If it doesn't make you smile, you're doing something wrong.
------------------------------------------------------------------------

_______________________________________________
Openmoko community mailing list
[email protected]
http://lists.openmoko.org/mailman/listinfo/community


_______________________________________________
Openmoko community mailing list
[email protected]
http://lists.openmoko.org/mailman/listinfo/community

Reply via email to