本文譯自樹莓派雜誌97期(MagPi issue 97),原文標題為Connect Raspberry Pi 4 to iPad Pro with a USB-C cable(插圖來源取自雜誌內頁)。本篇使用CC 3.0 BY-NC-SA授權,若有任何不妥與指教敬請告知。若在實際操作中遇上問題,無法提供相關技術支援服務。

在許多方面,蘋果的iPad Pro和樹莓派可以說是南轅北轍;樹莓派是一台可編程電腦,而iPad Pro卻是相對封閉的系統。不過自2018年起,iPad Pro搭載了USB-C介面後,便和Raspberry Pi 4一致了。

透過一些步驟,你就能讓你的Raspberry Pi 4使用USB-C傳輸資料並建立固定IP;花費短暫的時間設定系統,你就能單單透過USB-C傳輸線,啟動並遠端遙控你的樹莓派!

 

你將會需要:

  • iPad Pro

  • Raspberry Pi 4

  • 可相容的USB-C線

  • Termius APP

  • VNC連線APP或使用Screens APP

 

安裝Raspberry Pi OS

我們透過Raspberry Pi Imager燒錄Raspberry Pi OS (32-bit)至SD卡上。

接著為你的樹莓派準備好螢幕、鍵盤及滑鼠(放心我們最後不會再需要它們!),開啟電源並進行初始化的設置。在過程中請確保你已更改默認密碼,不要直接使用喔! 

開啟終端機(Terminal)視窗並輸入以下,確保使用的是最新版本:

sudo apt update

sudo apt full-upgrade

sudo reboot

 

開啟SSH連線和VNC遠端桌面軟體

選擇Menu(選項)> Preference(偏好設定)> Raspberry Pi設定 > Interfaces > SSH及VNC > Enabled(啟用)。點擊OK鍵關閉Configuration tool(組態工具)。

注意:在啟用前請務必確認已修改過默認密碼。

(譯註:相關文章可參考【樹莓派教學】 在樹莓派上使用SSH【樹莓派教學】用遠端桌面連接樹莓派。)

 

設定config.txt

調整解析度並確認dtoverlay=dwc2出現在config.txt檔案的末端。

sudo nano /boot/config.txt

取消framebuffer行的註解(將它前面的#號移除)並將解析度改為1024×768。

framebuffer_width=1024

framebuffer_height=768

去config.txt檔案的末端查看,確認dtoverlay=dwc2有出現。

[all]

dtoverlay=dwc2

按下CTRL+O後,再按下CTRL+X,儲存並關閉config.txt。

 

設定cmdline.txt

開啟cmdline.txt檔案:

sudo nano /boot/cmdline.txt

在console=serial0的下一行新增以下:

modules-load=dwc2

 

設定modules

接著設定modules檔案

sudo nano /etc/modules

增加以下命令在尾端:

libcomposite

儲存並關閉。

 

調整IP地址

現在我們需防止樹莓派選用自己的網路地址。編輯dhcpcd.conf檔案:

sudo nano /etc/dhcpcd.conf

在檔案的尾端加入:denyinterfaces usb0

 

選擇IP範圍

安裝dnsmasq:

sudo apt install dnsmasq -y

建立usb檔案:

sudo nano /etc/dnsmasq.d/usb

加入以下script腳本:

interface=usb0

dhcp-range=10.55.0.2,10.55.0.6,255.255.255.248,1h

dhcp-option=3

leasefile-ro

 

選擇地址

現在是時候選擇固定IP地址了!它就是被用來將樹莓派與iPad Pro連接的。

sudo nano /etc/network/interfaces.d/usb0

並增加以下script腳本:

auto usb0

allow-hotplug usb0

iface usb0 inet static

  address 10.55.0.1

  netmask 255.255.255.248

儲存並關閉檔案。我們的IP地址是10.55.0.1。將會用此IP(或是樹莓派本地端IP位址)使用VNC的SSH連接樹莓派。

 

複製貼上usb.sh script腳本

現在我們需要下載並執行usb.sh script腳本在樹莓派上。

剪下並貼上位於 Ben Hardill’s網站的usb.sh script腳本代碼。建議使用Text Editor編輯檔案:

sudo mousepad /root/usb.sh

然後貼上從usb.sh取得的代碼後,儲存並退出。

輸入sudo chmod +x /root/usb.sh使usb.sh檔案被執行。

 

啟動時運行script腳本

為了每次都能順利連接,我們必須確保開啟樹莓派時usb.sh script腳本順利運行。使用crontab定時運行腳本或程序:

sudo crontab -e

第一次設定時,系統會詢問我們要用什麼編輯器,如nano、vim等;輸入1以選擇nano。

並將以下輸入至crontab的末行。

@reboot bash /root/usb.sh

利用CTRL+O和CTRL+X儲存後離開。

 

iPad連接

將樹莓派關機:

sudo shutdown -h now

將供電來源從樹莓派移除,並利用USB-C線連上iPad Pro。

養成測試運行時和螢幕連接著的良好習慣;由於不是所有的USB-C都能順利運作,我們這次並非使用蘋果原廠的USB-C線,而是選用Anker品牌的USB-C連接。按照前面的步驟,這邊應該會是正常重啟的,且螢幕解析度的尺寸為稍早設定的1024×768。

 

確認連接狀態

若是運作正常,你會在iPadOS的設定中,看見樹莓派以Ethernet連接顯示。

你會在WiFi下方看見一個新的選項Ethernet,點選它查看「Pi4 USB Device」,內頁有更多設定項目。

接著就能開始利用SSH及VNC,讓你透過iPad Pro使用樹莓派了!

 

下載VNC Viewer APP

從APP Store上就能下載VNC Viewer。開啟APP並點擊Add。

進入10.55.0.1的網路位址並設定名稱(在這邊我們設定為Raspberry Pi 4 iPad Pro)。點擊儲存(Save)後點擊連接(Connect)。

在使用者名稱(Username)輸入「pi」及填入你的密碼,按下繼續(Continue)。你將會在iPad Pro的VNC上看見你的桌面。

 

下載Screens APP

為了要能直覺式的點擊螢幕操作游標,我們需要下載Screens這款APP,免去移動虛擬游標在操控上的麻煩。載好APP後,也必須調整VNC Server的設定。

打開樹莓派的VNC Server(點擊VNC Server的圖標)並點選menu > Options。將認證方式的密碼從UNIX修改為VNC;點擊使用者及權限(Users & Permissions)並點擊密碼,在兩處皆輸入慣用VNC密碼後點擊確認。

接著回到Screens APP上,點選「+」號並選擇新螢幕(New Screen)。點擊Custom後,在地址欄位輸入10.55.0.1。將操作系統改為樹莓派,並在使用者名稱欄位輸入「pi」,點擊完成(Done)。點選設定好的螢幕開啟連線。

下載Termius APPSSH

在iPadOS上有許多SSH的APP可以使用,這邊推薦各位可以使用Termius。

下載後打開Termius並點選加入鈕(+),選擇New Host。在Hostname欄位輸入10.55.0.1,並在Username欄位輸入「pi」。點擊儲存並點選剛剛建立好的Host連接。

 

當然還有許多方式可以讓你的iPad和樹莓派互相連線,但SSH和VNC可說是對初學者來說相當堪用的好方法。

樹莓派和iPad Pro的傳輸讓你可以方便地利用iPad Pro去編程,它持久的電力及絕佳的螢幕顯示更是一大優勢。