« Kobo Sage購入記念:CFWのコレクション作成スクリプトを修正 | トップページ | ランチャーのスクリプトをNickelMenuから実行(とりあえずのやり方) »

2022年3月 6日 (日)

Kobo Sage / Libra2 : Bluetoothリモコンでページめくり

Sageで試しにやってみたら、できるね・・・。

いつものmobilereadのDeveloper's Cornerの、Bluetooth page turning for Kobo eReaders より。

手順の解説はこちら: kobo-btpt

https://github.com/tsowell/kobo-btpt

 

なのだが、あらかじめ言っておくと、

linux環境が必要。

というわけで、利用できる人は少ないだろうな・・・。

---------------------------------------------

作者さんはLibra2で、「8BitDo Zero 2」というゲームパッドを使った模様。これか?

8bitdozero2

https://www.amazon.co.jp/dp/B07Z2T85TQ/

 

こちらは単なる実験のつもり、何千円も使う気はないので、中国製の正体不明のコントローラーを使用。600円とか700円ぐらいでアマゾンで買っていたもの。もっと安いものも探せば見つかる。

Btcontroller

https://www.amazon.co.jp/dp/B09J4KWTPY/

https://www.amazon.co.jp/dp/B09F85D9XJ/

こんなものでもページめくりはできたので、たぶん一般的なBluetoothのマウスやキーボードでもいけそうな感触。

---------------------------------------------

◯手順

1.https://github.com/tsowell/kobo-btpt/releases から

KoboRoot.tgzをダウンロードして、Kobo端末にインストール。

Kobo端末のトップに「.btpt」というフォルダができているはず。この中に設定ファイルを配置する(後述)。

 

2.Bluetoothデバイスとペアリング

作業を行なうlinux PCとペアリングしたら、デバイス名をメモしておく。

上のBTコントローラーを例にすると、「Beauty-R1」。
この名称をそのまま設定ファイル名にする(後述)。

 

3.Bluetoothデバイスの情報をゲットする。PCでそのままターミナルを起動して、

次のコマンドを打つ:

cat  /proc/bus/input/devices

もしくは

cat  /proc/bus/input/devices | grep -C 8 'Beauty-R1'

で、Enterキー。すると

I: Bus=0005 Vendor=05ac Product=022c Version=011b
N: Name="Beauty-R1"
P: Phys=58:b0:d4:a5:1c:81
S: Sysfs=/devices/platform/soc/uart1/tty/ttyS1/hci0/hci0:2/0005:05AC:022C.0004/input/input6
U: Uniq=11:22:34:da:9b:f3
H: Handlers=event20
B: PROP=0
B: EV=1f
B: KEY=3f 3007f 0 0 0 0 483ffff 17aff32d bf544446 401 0 1 130f93 8b17c000 677bfa d9415fed 9ed680 4400 0 10000002
B: REL=40
B: ABS=301 3
B: MSC=10

いろいろ画面に出力されるが、こんなのが見つかる(赤字にしたところに注目)。

デバイス名を確認。もう一つは、Handlers=event20の部分。

eventの後ろの数字は環境によって変わるので注意。この番号を覚えておく。

 

4.次はBluetoothデバイスのボタンの情報をゲットする

設定できるのは「次ページに進む」「前ページに戻る」「次章に進む」「前章に戻る」の4つ。

これらをBluetoothデバイスのどのボタンに割り当てるか設定するために、ボタンの情報が必要。

続けてまたコマンドを打つ:

sudo evtest  /dev/input/eventXX

XXの部分は上で調べた番号にする。例では event20 になる。

(evtestがインストールされていなかったら、インストールする)

コマンドを打ったら、Bluetoothデバイスの使いたいボタン(「次ページ」などに割り当てたいボタン)を押す。

ボタンを押すと、画面にいろいろ出力される。たとえば、こんな感じ:
Event: time 1646452427.257389, type 4 (EV_MSC), code 4 (MSC_SCAN), value d0042
Event: time 1646452427.257389, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1
Event: time 1646452427.257389, type 1 (EV_KEY), code 320 (BTN_TOOL_PEN), value 1
Event: time 1646452427.257389, type 3 (EV_ABS), code 0 (ABS_X), value 512
Event: time 1646452427.257389, -------------- SYN_REPORT ------------

メモしておくのは、オレンジ、黄色、青のマーカーを引いた部分。これを設定ファイルに記述する。

同じようにして、別のボタン(「前ページ」に割り当てたいボタン)を押して、メモ(どこかにコピペ)しておく。

終わったら、Ctrlキーを押しながら、c を押す。これでevtestを終了させることができる。

あとは、ペアリングの登録解除。

 

5.設定ファイルを書く

設定ファイルはただのテキストファイルだが、念のため改行コードをunix式にできるエディタで。linuxのエディタなら問題ない。

ファイル名はBluetoothデバイス名と同じにすること。例ではBeauty-R1 というファイル名。拡張子もつけない。

ファイルの中身は

Method type code value の4つを記述するだけ。

Methodは
 「prevPage」(前ページ)
 「nextPage」(次ページ) 
 「prevChapter」(前章) 
 「nextChapter」(次章) のどれか。

type, code, valueはさっきメモしたもの。こんな感じになる(マーカーに注目):

nextPage  EV_ABS  ABS_X  512
prevPage  EV_ABS  ABS_X  3328

 

6.設定ファイルをkobo端末に配置する

PCにつないだKobo端末の「.btpt」フォルダに、作成した設定ファイルを配置する。

以上でおしまい。

---------------------------------------------

気になるのは、Kobo端末でBluetoothをONにすると、WiFiもいっしょにONになること。いちいち手動でWiFiをOFFにするのが面倒。

また、Bluetoothでバッテリー消費がどうなるのかも未確認。とくにSageのバッテリーはきついので、どうなのか・・・。

 

基本的に手で持って読むので、ページめくりにリモコンはいらないのだが、可能性はとりあえず追求。

linuxユーザーで、リモコンが使いたい人は参考までに。

 

|

« Kobo Sage購入記念:CFWのコレクション作成スクリプトを修正 | トップページ | ランチャーのスクリプトをNickelMenuから実行(とりあえずのやり方) »

kobo」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




« Kobo Sage購入記念:CFWのコレクション作成スクリプトを修正 | トップページ | ランチャーのスクリプトをNickelMenuから実行(とりあえずのやり方) »