Raspberry Pi で Cintiq を使う(X11)
作成:
Raspberry Pi で Cintiq を使う(X11)
注意: Waylandでも動作確認済み(Ubuntu 23.10)
Raspberry Pi では /boot/firmware/cmdline.txt
の mousepoll の値を0にしないとドライバが正常に入っていてもペン先のカーソルがまともに動かないために以下を追記する。
/boot/firmware/cmdline.txt を編集
sudo vi /boot/firmware/cmdline.txt
# 末尾に usbhid.mousepoll=0 を追加
console=serial0,115200 console=tty1 root=PARTUUID=f84fc793-02 rootfstype=ext4 fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles cfg80211.ieee80211_regdom=JP usbhid.mousepoll=0
wacomドライバを入れる
sudo apt install xserver-xorg-input-wacom
この後再起動する
ペン(Stylus)のデバイスIDを調べてマッピング画面を設定する
# 以下のコマンドでデバイスのIDがわかる
xsetwacom --list
# 例
# Wacom Cintiq 13HD Pen stylus id: 6 type: STYLUS
# Wacom Cintiq 13HD Pad pad id: 7 type: PAD
# Wacom Cintiq 13HD Pen eraser id: 11 type: ERASER
# ペンのマッピング先ディスプレイを指定する
# HDMI-1 はマッピング先のディスプレイ名
xsetwacom --set 6 MapToOutput "HDMI-1"
自動マッピングスクリプト
再起動ごとに上記を手作業でしていても面倒なのでデバイスidを調べて一度にマッピングするようにスクリプトを書いた。
これを自動起動するようにしておく。
#!/bin/sh
# デバイスのID番号を取り出してペンと消しゴムをディスプレイにマッピングする
STYLUSID=$(xsetwacom --list | grep stylus | awk -F'type' '{print $1}' | rev | cut -c 1-3 | rev)
ERASERID=$(xsetwacom --list | grep eraser | awk -F'type' '{print $1}' | rev | cut -c 1-3 | rev)
xsetwacom --set $STYLUSID MapToOutput "HDMI-1"
xsetwacom --set $ERASERID MapToOutput "HDMI-1"