USB/IP Project
usbip.sourceforge.net
usbip.sourceforge.net
What I find really amusing is that back when USB was proposed I argued that rather than create an entirely new infrastructure why not just use Ethernet packets. There are additional protocol types available in the bit encoding and all sorts of infrastructure that already supported layer 2 switching. Plus the "phy" (10/100 at the time) was dirt cheap and already available. It never went anywhere, and at the time I figured that nobody wants to support a standard that they can't see how to make licensing money off of it. Somewhere I have VHDL code for a PC parallel port emulator that ran over my protocol. It fit in a small FPGA with the ethernet MAC so it wasn't like we were talking about a lot of gates. Just no consortium fees and no way to keep people out of the ecosystem you didn't like.
Doing USB over IP is an interesting way of re-creating that work (although mine was multi-master so technically a bit better :-)). Of course these days USB 3.0 is faster than the ethernet port on most machines so it was no doubt doomed from the start. But its fun to do. The SATA over Ethernet stuff that CoRAID did was like that, very nice work.
Unfortunately I think Ethernet might be too fragmented to ever take the convergence to its logical conclusion. But who knows. If someone high on the food chain at Intel wakes up on the other side of the bed one day it could happen.
EDIT: yep https://en.wikipedia.org/wiki/100_Gigabit_Ethernet
I'm pretty sure that the only obstacles against "ethernet as a truly universal bus" are either minor (someone's got to invest in making adapter interfaces) or of the "why bother" variety. Unfortunately the latter is a bit of a show stopper as far as I can tell :)
I'd expect optical more because it's easier to get high bandwidth and low latency on interconnects than copper because of the lower crosstalk and everything. It's just a question of market forces pushing things to converge.
(And it frequently carries USB and Ethernet. So many protocols.)
The ID assignment for USB is pretty awful and so is the robustness - for larger products it seems Ethernet is on the rise again.
https://github.com/mfassler/eFirmata
Basically, I wanted USB, but I wanted much longer cable-lengths than USB, so I used ethernet.Two weeks ago I have had to implement a solution that, for technical reasons, required a usb/ip implementation so I compared everything that was available.
I spent half a day on the project, perusing mailing lists and documentation trying to get usb/ip (as linked here) to work. Eventually, I got discovery working (win7 client connecting to linux/arm server) but the connection would never be established.
Eventually, since usb/ip turned out to be a horrible waste of time, I used a professional solution for about $40 which took 5min to set up and works like a charm since then.
I've got a bunch of things that I'd like more switchable than standard 'kvm' type muxes can do, so curious how it worked out.
The server runs fine even on a raspi 2, to which I switched after having some problems running it on a beaglebone black.
Works awesome, lets you buy the cheap non-workgroup version of pretty much everything (printer, scanner, label printer, ...) and still hook it up to a central server.
I have a Fujitsu ScanSnap ix500 hooked up this way, which scans directly to Dropbox. Put the scanner anywhere where it's convenient to access, put paper in it, press scan button, by the time you walk back to your desk it's on the dropbox. Order of magnitude improvement over other setups.
(And what are you getting at with implying that using a RasPi instead of a turnkey solution would cause Windows-related trouble or require doing the heavy processing somewhere else than your current setup?)
I'm not trying to dismiss your device though. I do believe that it works well. But as another commenter stated, your device is priced up because of the software convenience rather than being a "bargain" in terms of hardware specifications.
Although, my setup is less than ideal since the ix500 does not play nicely with linux. I scan to a shared folder on my Linux Desktop from Windows 7 running in VirtualBox.
It's dirt cheap ($10-20), easy to load linux on [1], and it can be a simple file server, it can run minidlna, google cloud print [2], all kinds of stuff.
800MHz is not a screamer, but most simple I/O tasks like A/V streaming and printing are a walk in the park.
[1] http://archlinuxarm.org/platforms/armv5/pogoplug-series-4
[2] http://geekvisit.com/hacking-pogoplug-mobile-adding-airprint...
With the shipping software the pogoplugs are usually useless secondhand, as the web interface is hidden if you haven't registered the device with the company (and it can't be de-authed without the original owner's credentials). But the administrative interface is still available, if you know the path. Dropbear is already installed, so you can just start it, log in, overwrite the bootloader[0] and run one of several Linux distributions from a flash drive (I use Debian[1]).
My unit[2] has a 700 MHz dual-ARMv6. It only has 256MB of built-in RAM, but it's simple to allocate 1GB of the OS flash drive as swap.
Last year I picked up a number of old MIDI keyboards a local college was throwing out. I figured they were just old and the college had replaced them with something newer, but they worked fine for me under Linux. So I offered one of them to my brother, and he couldn't get it to work under Windows. Of course, it turns out the device is 15 years old and never had a 64-bit driver. So I've been experimenting with using the Python midistream package to stream MIDI over ethernet to a Windows host. Unfortunately, the package (since subsumed by a project called scenic[3]) hasn't had a new release since 2012. But it still works, and it makes for a pretty fun hack.
[0] http://projects.doozan.com/uboot/
http://vmwarebits.com/content/virtualhere-raspberry-pi-usb-s...
I would argue that this benefit is probably mostly historical by now. These days, the wifi-enabled versions of at least printers is generally within less than $150 of their non-networked cousins.
Last I checked, there was someone from Eltima Marketing proposing the site be updated with some revenue sharing deal to their proprietary and costly Windows and etc. USB over IP solution.
Also, there were numerous users in their forums posting signed and patched drivers for modern Windows since the ones available for download aren't signed, so I saw.
That this project aims to offer "full functionality" of the device, afaik, means it is likely doing exactly the kind of thing that I find worrying. Can anyone talk about this a little more in-depth?
USBoIP is a minefield.
(Fanfics not reviewed for Work Safety, caveat lector.)
[0] https://www.fanfiction.net/s/11066605/8/Star-Wars-The-Mandal...
[1] https://www.fanfiction.net/s/9886787/6/Coruscant-School-for-...
[0] http://starwars.wikia.com/wiki/Jaybo_Hood [1] http://starwars.wikia.com/wiki/Mystery_of_a_Thousand_Moons
Unfortunately, it seems it can't make it working, whether I use the official apt-get binaries, or try to compile myself[1] (either with the version available on sourceforge, or in the linux kernel src).
Anyone who succeed to make this running on Raspberry Pi (Raspbian)? It would be a perfect application!
[1]: https://www.raspberrypi.org/forums/viewtopic.php?f=28&t=1077...
https://en.wikipedia.org/wiki/Ethernet_over_USB
A quick google showed there are Gigabit NIC over USB3.0 on the market already(for a while): http://www.amazon.com/Network-Adapter-Anker-Ethernet-Support...
Intel refuses to deploy Thunderbolt everywhere, even though I have two Z87/Z97 motherboards with Intel GPU-powered DisplayPort ports and Intel could have trivially baked this into their chipset.
The only computer I have Thunderbolt on? My MBPr. The only computer I don't need a shitton of cheap bandwidth on? My MBPr.
Side note, can someone please buy me a code-signing certificate?
and using a still image from a webcam seems like the worst use case... there are much better protocols for serving video streams.