Hacking USB Loader - Multidisk USB devices

1000Faces

Member
Newcomer
Joined
Jun 10, 2018
Messages
8
Trophies
0
XP
46
Country
United Kingdom
In his example, it "ejects" itself from the host that it's plugged into while you transfer files, and "reinitialises" afterward.. My plan is to have the Pi act as a bridge to other filesystems. There wouldn't be an actual FAT32 partition anywhere, except in the Pi would provide a FAT table and something that looks like a FAT32 partition to the host, but in reality that only exists in the RAM of the Pi. So there wouldn't be the same filesystem mounted from more than one place. That reinitialization would only need to occur when you want to make the Wii (or whatever) aware of new files that you've placed on the actual filesytems.
All I have left to say at this point is good luck with that.
 
  • Like
Reactions: Curtman

Curtman

Member
Newcomer
Joined
Dec 31, 2015
Messages
24
Trophies
0
Age
44
XP
298
Country
Canada
All I have left to say at this point is good luck with that.

I haven't had a whole lot of time to work on this, but my attempts so far have been less than fruitful. I've tried various things like NBD (Network Block Device), and most recently iSCSI. I was very hopeful with iSCSI for a while, I can create a target device and connect to it with Windows Initiator, or with open-iscsi in Linux. I can set the raspberry pi to use open-iscsi, connect to the target drive, and then pass the device (/dev/sda) to the g_mass_storage module. If I plug it into my macbook it shows up just like a USB drive would, I can transfer files to and from it no problem, and it's as large as I make the file on my RAID. For some reason though, wiiflow is able to see all the wbfs images and make thumbnails etc but only about 10% of the time does it actually finish loading. Most of the time the progress bar on the wii freezes, the wiimote light goes out, and syslog on the raspberry pi fills up with complaints about not being able to terminate the usb endpoints. Power cycling the wii brings everything back to order.

I wish I understood better the system on the Wii, and how these ios work, which one or ones are involved in actually loading the information from the drive, etc. It seems like that is where the problem is happening. Everything looks good on the Linux side until the Wii hangs. I thought about why this seems to happen on some external hard drives, but not on others. Maybe the trick will be creating a buffer of some size. But even copying the wbfs to an SD card and passing that to g_mass_storage doesnt seem to work ever. At least iSCSI works occasionally.

On a side note, yesterday when I was playing around I found out that using g_multi instead of g_mass_storage makes the raspberry pi look like a A) ethernet adapter, B) mass storage device, and C) Serial port.. To my surprise, the Wii seems to see the ethernet adapter and it seems to work. I can unplug the Wii ethernet dongle, and after a bunch of fiddling around with network tables and running a dhcp server on the raspi, the wii gets an ethernet address as if it was a 10mbit ethernet dongle. :)
 
General chit-chat
Help Users
    theguydudeman tempBOT: theguydudeman has left the room.