Yay more I/O errors!
So I've sorted things out for the most part. I'm still getting occasional I/O errors like I did before but my current thinking is that it has something to do with electrical interference amidst the spiderweb of wires. I shot a bit of hot melt glue on the USB contact points (microusb to cameras, usb to usb extenders, etc.) to avoid wiggling and I'm not getting the same kind of random temperment I was getting before. Something I noticed about Alpha hub (the troublesome one) is that there are two usb to extender "joints" right next to eachother, and it's the only tower with that issue.
So now I'm getting a different problem involving I/O errors, and this seems like it might be a software issue. The events leading up to this issue goes like so:
I connect to all 62 cameras (the number of cameras I'm using varies a bit) and everything is going just fine. I can start and stop the cameraside script as much as I'd like with no trouble.
I hit prepare which just runs this code
self:cmdwait('rec',{printcmd=false})
self:cmdwait('call set_prop(props.FLASH_MODE, 2)',{printcmd=false})
self:cmdwait('preshoot',{printcmd=false})
printf("ready to shoot\n")
return
I'll occasionally get an I/O error here, at the moment I'm considering it an EM interference issue and I think my hot melt glue helped a bit. Normally however this works fine and I can take a shot.
I then go to the download stage, which starts fine but at some point it stops and gives me an I/O error. Then when I try to connect it connects to a few cameras before freezing briefly and giving me an I/O error again. This now happens every time I try to connect. I end up having to walk around switching off individual hubs until I find the one causing the errors, and after successfully connecting with the hub off I can switch it back on and connect to it fine.
It's probably worth noting that I don't actually turn off any of the cameras on the problematic hub, I just flick the power switch on the hub. I'll link to the USB hubs I'm using below, I really like them. They have two SPST switches, each one is responsible for 6 usb ports, and all they do is open and close the negative usb power line. This means I could make a wire that runs between all the hubs connected to a single switch and use that as my trigger.
Anyway this I/O error problem I'm getting happens consistanly in this order, occasionally one of the cameras on the connected hub will freeze and I have to manually disconnect and reconnect power to get it running again. There don't seem to be any particularly troublesome hubs/cameras. My guess would be that it's a chdk firmware problem.
Link to the USB hubs:
https://www.amazon.com/gp/product/B01MSVRCKH/ref=ox_sc_sfl_title_3?ie=UTF8&psc=1&smid=A2FJ4BFHX4X7NN