Intro
You can get official DPT-RP1 support while using Windows or MacOS. Sony has a well-designed software Digital Paper App, which supports everything in the user manual.
Unfortunately, Sony do not support Linux. And the program above cannot be started by wine, as DPT-RP1 is using some weird mechanics: (setting the device as an USB-network adapter and controling the IO by posting and getting files from a virtual web server hosted in DPT-RP1.) and adding virtual printer and device drivers, which is unable to be handled by Linux and wine.
Here we introduces a python command tool dpt-rp1-py to operate DPT-RP1 on Linux.
A New Method
If your device can connect to the same local network to your computer, you can just connect it and do as the original tool guide.
With mDNS query installed on your computer correctly, you can create an alias like dptrp1="dptrp1 --addr digitalpaper.local"
to speed up.
Install and Config
You can access the tool here. It supports pip3 so it can be installed easily by pip3 install dpt-rp1-py
.
However, in order to get the device work, you may need some technics which do not show in their homepage. Here is the extra step (it's also written in their docs).
-
install the pyserial. (You can set it up by
pip3 install pyserial
.) -
Plug in your device and create a python script file(we assume the filename is 'connect.py') and add these lines to the file.(You can download the file here directly.)
1 | #!/usr/bin/python |
-
run the script with python. (You can type
python ./connect.py
or something like this. You can also edit the code if you know what you're doing.) -
De-activate DHCP on the new Ethernet device.
If you're using DHCP to obtain addresses, you should disable it for the DPT-RP1, since the DPT-RP1 does not run a DHCP server.
For example, if you're using Network Manager, change the IPv4 settings on the DPT-RP1 Ethernet device to 'Link-Local Only' instead of 'Automatic'. This will assign your end of the Ethernet link an IPv4 link-local address in the 169.254.0.0/16 range.
When using Network Manager, also make sure that in the 'Ethernet' tab, 'device' is set to the interface name, not the MAC address. This will help Network Manager to restore the settings when connecting next time.
- Determining the address for DPT-RP1. You may use your DNS lookup to find the address of
digitalpaper.local
. e.g. you can run this:
1 | $ avahi-resolve -n digitalpaper.local |
- You need to get your device interface name. You may get it by
ifconfig
. It should beusb0
orenp0s20u1
or something. - Then your full address should be something like
[fe80::xxxx:xxxx:xxxx:xxxx%usb0]
, by adding the interface name after the address, separating by %.
dptrp1 do not support searching your device under linux directly, so you should run dptrp1 with an additional parameter --addr="[fe80::xxxx:xxxx:xxxx:xxxx%usb0]"
all the time (replace with your own address). You can add an alias like dptrp1USB="dptrp1 --addr=\"[fe80::xxxx:xxxx:xxxx:xxxx%usb0]\""
to the shell to simplify, as the ip address won't change normally.
Use the Tool
Every time you plugged your device onto your computer, you need to run the file connect.py
again to get your device responcing.
You may get usage by directly typing dptrp1 -h
. you should've got
1 | usage: dptrp1 [-h] [--client-id CLIENT_ID] [--key KEY] [--addr ADDR] [--serial SERIAL] |
For some command, you can get additional help by calling dptrp1 command-help <command>
.
If you're connecting to the DPT-RP1 for the first time, you may need to register the device. The dptrp1 cannot search for your device under linux automatically, so you must do it by dptrp1 --addr="[fe80::xxxx:xxxx:xxxx:xxxx%usb0]" register
to register it. If your alias was set, you can just type dptrp1USB register
.
If you get an error, wait a few seconds and try again. Sometimes it takes two or three tries to work.
Remember that automatic searching is not suitable for linux USB connection, so it's a must to add the --addr="[fe80::xxxx:xxxx:xxxx:xxxx%usb0]"
parameter.
Note that the root path for DPT-RP1 is
Document/
.Example command to download a document
file.pdf
from the root folder ("System Storage") of DPT-RP1:dptrp1 download Document/file.pdf ./file.pdf
.Example command to upload a document
file.pdf
to a folder named Articles on DPT-RP1:dptrp1 upload ./file.pdf Document/Articles/file.pdf
.
Postscripts
You may refer to the origin site for more advanced details, such as dptmount(experimental) to mount your device as a disk, or other interesting functions.