Steam Link
Free VirtualHere for SteamLink (USBIP)
Want to try VirtualHere before you buy the Steam version?
One transferred USB device is enough for you?
Then this maybe just for you.

I build a small SteamLink Native App which enables you to use free VirtualHere USB Clients[virtualhere.com] for one USB device at a time.

Be aware that someone (guess who) is deleting post concerning this topic/possibility in the VH for SL discussions.

A few details
  • The first time you start the VHUSB app it downloads the free VirtualHere USB Server[virtualhere.com] "vhusbdarm"[virtualhere.com] and starts it. To circumvent any potential license[virtualhere.com] issues I didn't included the binary, even though I don't see any.
  • The VirtualHere USB Server keeps running as long the SL is not power cycled. So you only need to start it once in while.
  • Starting the app while the daemon is already running is no problem (the new instance quits after it sees the already running one).
  • It contains a preconfigured config[virtualhere.com] (see below).
  • VH Clients can connect to the SL the whole time the SL is running. Not just when you stream from a PC.
  • The downloaded VH server binary on the SL is most likely less efficient than the integrated one.
    If you experience problems possibly related to this you can investigate by enabling SSH on the SL, connecting to the SSH an running "top" to monitor CPU usage.

DOWNLOAD
sha256 = 9aeff21f64fd6518ff4d4d8980d3f1b54cb813457d6e08a765d33cf614008f0f
from GitHub[github.com]

(old sha256 = fecd9fb73e83c14acc95ceb81f8561016b664ff053551fc4fccf8f185b4c6785)

How to install[github.com]



What's inside the vhusb.tgz
  1. ./vhusb/bin/config.ini
    ;see here for more infos: https://virtualhere.com/configuration_faq ;SrvName can be changed from the client - this is just a useful start. ServerName=$HOSTNAME$ ;UseAVAHI=0 ;IgnoredDevices= ;IgnoredBuses= ;AllowedDevice= <- only allow the keyboard you're using?! ;CompressionLimit=

  2. ./vhusb/icon.png
  3. ./vhusb/vhusb.sh
    #!/bin/sh cd ./bin executable=vhusbdarm if [ -f $executable ] then echo Run VHUSB Server in background mode. exec ./$executable -b else echo Downloading the VHUSB Server with WGET. wget https://virtualhere.com/sites/default/files/usbserver/vhusbdarm # MISSING! Check return code, file etc... chmod a+x ./$executable echo ... and running it in background mode. exec ./$executable -b fi #NOTES: # GUI Idea - enable user to edit the config.ini and (re)start the vhusbdarm daemon (automatically if config was modified). # Pid management? for later killing? # How to Verify integrity of the downloaded server? Show sha256s of binary on first install or sth? # If the "App" is removed while the daemon is still running, the files/dirs are removed but the daemon stays until the next powercycle. # ... don't know what happens if the daemon tries to use it's config.ini

  4. ./vhusb/toc.txt
    name=VHUSB icon=icon.png run=vhusb.sh

To modify it and/or integrate the vhusbdarm binary just unpack everything and repack it as a .tgz (.tar.gz).
NOTE: Keep in mind that the text files need the Linux EOL-character "LF". They won't work with Windows's "CR+LF".

I used PeaZip[www.peazip.org].


From the notes in some files you can gather that this is far from perfect, but it's a start.

Have fun!


Disclaimer - I was not the first one to think of this general possibility. I got the idea, searched a little bit and found this thread/post[steamcommunity.com].
Автор останньої редакції: Limer; 18 лют. 2020 о 7:50
< >
Показані коментарі 115 із 43
With self written wrapper scripts it should be possible to
  1. start a vh-client on the PC.
  2. direct it to transfer a specific USB device required for the game from the SL to the PC.
  3. start the game and wait until it quits.
  4. close the vh-client client.

Take a look at the client api[virtualhere.com].


I'm using VHUSB with a heavily modified "AHK Desktop Streaming" script to stream my desktop without an restrictions on the keyboard.

Details will follow...



Автор останньої редакції: Limer; 15 груд. 2017 о 19:31
what do i do whit vhusb.tgz , where i install it
Thank you very much for this, it'll come in handy specially because i was thinking in trying virtualhere soon with some devices, i really appreciate it.
Цитата допису IVIBeade:
what do i do whit vhusb.tgz , where i install it

Цитата допису https://github.com/ValveSoftware/steamlink-sdk#deploying:
Deploying

Put the files in a folder with the app name on a USB drive under \steamlink\apps, insert it into the Steam Link and power cycle the device.

The app will be copied onto the system at boot and can be launched from the menu.

  1. Create the directory structure "\steamlink\apps" on an FAT32(*) USB thumb drive
    (e.g. "F:\steamlink\apps" if your thumb drive got the drive letter "F").
  2. copy the vhusb.tgz in the apps directory (e.g. "F:\steamlink\apps\vhusb.tgz") and remove it safely from the PC (unmount).
  3. Power off your SteamLink (=SL) by disconnecting the power supply.
  4. Attach the thumb drive to your SL and power it on.
  5. When the SL is finished booting you should see a new icon (VH USB) next to your available Steam PCs.

If the new icon doesn't appear you can try other thumb drives and other USB ports on the SL.

(*) FAT16 and exFAT may work as well. Don't know about extN and NTFS
Автор останньої редакції: Limer; 16 груд. 2017 о 14:44
OT UPDATE:

Update 2017-12-17 - I got banned on the VirtualHere for Steam Link Forum without any reason given.
To be fair, I re-posted some notes in relevant places pointing to this thread after the first few got deleted. Thus I technically violated one Discussions Rule, namely:
Post spam (i.e. +1, 10char, rickrolls) or Re-post Closed, Modified, Deleted Content
But the first posts did not violate any rules or guidelines.

... maybe keep that in mind if anyone wants to post there too.
Автор останньої редакції: Limer; 17 груд. 2017 о 15:15
Цитата допису Limer:
... maybe keep that in mind if anyone wants to post there too.

I doubt anyone is willing to take the risk, most users that are interested in SL Development/Native Apps already know this subforum, so i think it's ok to just have it here, if anyone needs this they'll find it.
Isn't it more easy to replace virtualhere with usbip, which linux already supports? I assume virtualhere does not have any relations with usbip, as usbip probably exists longer than virtualhere.
Virtualhere is only a solution for windows users, but we linux users should be able to set up usbip fairly easily.
I have never had a need to use it though.
Цитата допису DirtyCamper:
Isn't it more easy to replace virtualhere with usbip, which linux already supports? I assume virtualhere does not have any relations with usbip, as usbip probably exists longer than virtualhere.
Virtualhere is only a solution for windows users, but we linux users should be able to set up usbip fairly easily.
I have never had a need to use it though.

For Linux users that is most likely true - not so much for Windows users because there is no client available (see this thread).
I'm pretty sure VH is based on USBIP (the VH Linux client[virtualhere.com] uses USBIP).
Цитата допису Limer:
I'm pretty sure VH is based on USBIP (the VH Linux client[virtualhere.com] uses USBIP).
Ah, right!
It is just a (g)ui for linux users. Hmmm, then why not configure it by default on steamos, or the steam client.
Oh, no, I remember now I think:
virtualhere uses the usbip driver as a hook into the usb subsystem but still uses it's own proprietary protocol if I recall correctly.
https://steamcommunity.com/app/353380/discussions/0/142260895146829697/
shows that they are not the same protocol.
So I think virtualhere on linux is just a proxy between two protocols, using the already available usbip protocol to connect to the linux kernel.
Hello, do you mind sharing a mirror link? The one you posted is expired. TY
Цитата допису Ice RO:
Hello, do you mind sharing a mirror link? The one you posted is expired. TY
Just run the VirtualHere trial server on SteamLink.

Steps:

Make this file with random text on FAT32 USB and plug into SteamLink:
\steamlink\config\system\enable_ssh.txt

Use SSH client (maybe PuTTY: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html ) and get SteamLink's IP from router. The default SSH user and password are root /// steamlink123

Once you're on SteamLink's SSH, run these commands:
wget https://virtualhere.com/sites/default/files/usbserver/vhusbdarm
chmod a+x ./vhusbdarm
exec ./vhusbdarm -b

Then download the VirtualHere client ( https://virtualhere.com/usb_client_software ) onto your PC, run it and add the SteamLink's IP to the VirtualHere client, connect SteamLink to your PC, minimize Steam big picture, and then attach the USB device you want.

If you aren't running Windows, you could always try USBIP instead of VirtualHere. The Windows client isn't very stable and was abandoned, but this guy ( https://github.com/Oxalin/usbip_windows ) might fix it up.

Note: if you intend to keep SteamLink's SSH enabled, you might want to change the password using passwd.
Автор останньої редакції: Brawl Bashin’ Bison; 5 лют. 2018 о 18:10
Цитата допису Brawl Bashin’ Bison:
Just run the VirtualHere trial server on SteamLink.
What exactly do you think 'my' native app is doing? It downloads the same VHusbdarm binary and starts it if and when the user wishes to.
It does not require SSH access to start the VH-USB-Deamon after rebooting the SLink.

Цитата допису Ice RO:
Hello, do you mind sharing a mirror link? The one you posted is expired. TY
Sorry i forgot to do that - can you point me to a better (free + without registration) file hosting service?
Would you be willing to reupload it to better service(s) after you get the file? I'd add the links to my orignal post (if the checksumm still checks out).
Цитата допису Limer:
Цитата допису Brawl Bashin’ Bison:
Just run the VirtualHere trial server on SteamLink.
What exactly do you think 'my' native app is doing? It downloads the same VHusbdarm binary and starts it if and when the user wishes to.
The app is definitely more convienent, but it's been somewhat unavailable for 2+ weeks (unless they tried manually recreating it with a different icon). My instructions were for people who wanted a solution that is guaranteed to work *now* :steammocking:

Цитата допису Limer:
Цитата допису Ice RO:
Hello, do you mind sharing a mirror link? The one you posted is expired. TY
Sorry i forgot to do that - can you point me to a better (free + without registration) file hosting service?
Would you be willing to reupload it to better service(s) after you get the file? I'd add the links to my orignal post (if the checksumm still checks out).
I'd suggest setting up a github and uploading the individual sources along with the complete package there. That way there's less of a likelihood of it getting lost (and leaves users with a convenient avenue for extending functionality or fixing any breakage).
Автор останньої редакції: Brawl Bashin’ Bison; 5 лют. 2018 о 18:13
I didn't even consider GitHub despite me already having an account there....
Guess I need to 'learn' how to upload sth. there.
Mirror to the file?
The original download is not available for free user..
< >
Показані коментарі 115 із 43
На сторінку: 1530 50