Two common and fairly flexible methods would be:
Direct ethernet connection. This requires you have an ethernet jack on the PC that is not otherwise in use. You connect that to the Pi, and you can create a subnet with two nodes. Once upon a time this required an ethernet "cross-over" cable but generally contemporary jacks, including those on the pi, do ...
I'd go for Ethernet, either point-to-point or through the router. Why?
It handles transmission errors, correction etc. "out of the box" - I guess it's important for medical purposes (your heart rate is now doubled because one bit changed - whoops)
It can be long (up to 100 m - and can be extended)
It's cheap and commonly available
You can get decent quality ...
You can run this as a serial USB device (FTDI-based cable) to GPIO pins
or you can use the raspberry pi in OTG mode to run the PI as a USB peripheral. The raspberrypi zero fits this form factor very well and I think the design intent was to have folks using the zero as a USB peripheral.
You might want to look into MQTT. I use mosquitto as my broker(server)/client on the Pi and and knoleary's (knolleary.net/arduino-client-for-mqtt/) library on several Arduinos. However, there are many other open source MQTT Brokers/Clients available on every platform.
MQTT, Message Queue Telemetry Transport, is a open protocol that implements a publish/...
Transmission-daemon has a web interface.
If you want a pure command line interface, use transmission-cli
Otherwise if you want to use transmission-remote, you'll need to modify /etc/transmission-daemon/settings.json and modify this line -
"rpc-authentication-required": true, and make the true a false
The simplest, fastest, and probably most reliable connection would be a point-to-point Ethernet cable.
Alternatively a serial to USB dongle. The serial end could be on the Pi from the UART (pins 8/10) or on the PC end with a suitable RS232 adapter.
Their are many possible problems that could lead to a slow download speed.
It could be because of the limited number of connections you can make, often the other people you are downloading from will have very limited upload speed, and a decent upload speed is only created with a lot of connections, sadly the Pi is not capable of handling a lot of ...
Ahh ok, I just did it :)
Instead of editing the /etc/dhcpcd.conf for setting the static IP, I edited the /etc/network/interfaces file, to set a static IP for the eth0 alone.
Now my PC can access the RPi with the static IP I see in ifconfig for eth0, without disturbing each other wifi internet connectivity.
Pure peer-to-peer connection achieved. Didn't ...
You could use a MQTT broker to relay the messages.
There are a number of brokers available on the web.
This one is very good for developing your code because of the visual feedback.
The entries I added to the end of this file are:
iface lo inet loopback
iface eth0 inet static
However, later I commented these lines out, and just installed another utility called 'fping'. That simply made my work easier.
And all I had to do in Windows was to "Enable" ping response, with ...
Let me give you some other alternative: use mldonkey.
sudo apt-get install mldonkey-server
It has torrent and donkey protocols in a light daemonized server, that you can access via a HTTP connection using a browser, even from remote machines.