PQI Air PenのGPIOを触ってみる

ID/PASSWORDがわかってtelnetで中に入れるようになったので中を覗いているとgpioが見えてました.

# ls -lA /proc/gpio/
ls -lA /proc/gpio/
-r--r--r--    1 root     root            0 Jan  1 07:22 gpio12_in
-r--r--r--    1 root     root            0 Jan  1 07:22 gpio22_in
-rw-r--r--    1 root     root            0 Jan  1 07:22 gpio23_out
-rw-r--r--    1 root     root            0 Jan  1 07:22 gpio27_out
-r--r--r--    1 root     root            0 Jan  1 07:22 gpio6_in
-rw-r--r--    1 root     root            0 Jan  1 07:22 gpio7_out
-r--r--r--    1 root     root            0 Jan  1 07:22 gpio8_in

てことでちょっと叩いてみました.

  • 赤LED : /proc/gpio/gpio7_out
    • 0 : On
    • 1 : Off
/proc/gpio # echo 1 > gpio7_out
echo 1 > gpio7_out
/proc/gpio # echo 0 > gpio7_out
echo 0 > gpio7_out
  • 黄緑LED : /proc/gpio/gpio23_out
    • 0 : Off
    • 1 : On
/proc/gpio # echo 0 > gpio23_out
echo 0 > gpio23_out
/proc/gpio # echo 1 > gpio23_out
echo 1 > gpio23_out
  • 横面同期ボタン : /proc/gpio/gpio22_in
  • 0 : On
  • 1 : Off
/proc/gpio # cat gpio22_in
cat gpio22_in
0
/proc/gpio # cat gpio22_in
cat gpio22_in
1

という感じで2つのLEDと1つのボタンは簡単に利用できました.他はちょっと叩いただけでは解らなかったです.
とりあえずこんな感じで横の同期ボタンを押すとLEDx2を光らせるということが出来ます.

~ # while :
> do
> if [ `cat /proc/gpio/gpio22_in` = '0' ]; then
> echo on
> echo 0 > /proc/gpio/gpio7_out
> echo 1 > /proc/gpio/gpio23_out
> break
> fi
> sleep 1
> done

パケットキャプチャしてPQI Air PenのID/PASSを調べる

送料込み500円だったのでポチってしまいました.X200のジャンク以来のコの手の買い物.

ちょっと古いものですがftp/telnetなどが開いてて色々遊べるようです.PQI Air Card(初代)も持っていますが,これはバッテリー内蔵でAP機能などもあります.

ちょっと叩いてみる

dhcpの提供されているネットワークケーブルを繋いで電源をれてちょっと叩いてみます.

まずはdhcp poolのipから探してみます.

$ sudo nmap -sP 192.168.2.200-
Starting Nmap 7.40 ( https://nmap.org ) at 2017-03-08 11:33 JST
  :
Nmap scan report for 192.168.2.214
Host is up (0.0012s latency).
MAC Address: 80:DB:31:01:A4:B8 (Power Quotient International)
  :

192.168.2.214でした.ポートスキャンしてみます.

$ nmap -A 192.168.2.214

Starting Nmap 7.40 ( https://nmap.org ) at 2017-03-08 11:45 JST
Nmap scan report for 192.168.2.214
Host is up (0.037s latency).
Not shown: 995 closed ports
PORT     STATE SERVICE VERSION
21/tcp   open  ftp     vsftpd 2.0.7
23/tcp   open  telnet  BusyBox telnetd 1.0
53/tcp   open  domain  dnsmasq 2.52
| dns-nsid:
|_  bind.version: dnsmasq-2.52
80/tcp   open  http    Brivo EdgeReader access control http interface
|_http-title: PQI Air Pen
8080/tcp open  http    Mongoose httpd 3.7 (directory listing)
|_http-title: Index of /
Service Info: OS: Unix; Device: security-misc

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 37.14 seconds
$ nmap -P 0-65536 192.168.2.214

Starting Nmap 7.40 ( https://nmap.org ) at 2017-03-08 11:37 JST
Nmap scan report for 192.168.2.214
Host is up (0.035s latency).
Not shown: 995 closed ports
PORT     STATE SERVICE
21/tcp   open  ftp
23/tcp   open  telnet
53/tcp   open  domain
80/tcp   open  http
8080/tcp open  http-proxy

Nmap done: 1 IP address (1 host up) scanned in 0.61 seconds

80番ポートにアクセスすると認証無しで設定画面にアクセスできました.8080番はファイルのアクセスが出来ます.こちらも認証なし.

ftp/telnetは流石に未認証では駄目のようです.

$ nc 192.168.2.214 21
220 (vsFTPd 2.0.7)
USER anonimouse
331 Please specify the password.
PASS matoken@gmail.com
530 Login incorrect.
$ nc 192.168.2.214 23
������!����          (none) login: 

(none) login: 

パッケージの中に入っていたマニュアルには特にID/PASSぽいものの情報はありません.
でもスマートフォン用アプリでファイルのやり取りが可能なようなのでそのパケットを覗けばわかりそうです.
#ネットワークで検索するとID/PASSは見つかるのですが,せっかくなので?
##そういえばPENTAX KPのアプリのパケットも覗いてみたい.

パケットキャプチャしてみる

適当なWi-Fiの使えるPCを用意してネットワークカードをmonitor modeにしてパケットキャプチャをします.
今回はこんな感じ.

  • PC : LENOVO Thinkpad X200
  • NIC : Intel Corporation PRO/Wireless 5100 AGN
  • OS : Ubuntu 17.04 amd64
  • Driver : iwldvm, iwlwifi

AQI Air Penの無線チャンネルを確認しておく

  • ここでは11
$ nmcli d wifi | egrep 'SSID|PQI'
*  SSID                モード    CHAN  レート     信号  バー  セキュリティ 
   PQI Air Pen         インフラ  11    54 Mbit/s  100   ▂▄▆█  --           
$ sudo /sbin/iwlist wls1 scanning | grep -B 5 "PQI Air Pen"
          Cell 09 - Address: 80:DB:31:01:A4:B7
                    Channel:11
                    Frequency:2.462 GHz (Channel 11)
                    Quality=70/70  Signal level=-28 dBm  
                    Encryption key:off
                    ESSID:"PQI Air Pen"

phyとネットワークインターフェイスの確認

$ /sbin/iw dev
phy#0
        Interface wls1
                ifindex 8
                wdev 0x3
                addr 00:22:fa:33:45:6a
                type managed
                channel 8 (2447 MHz), width: 20 MHz, center1: 2447 MHz
                txpower 15.00 dBm

デバイスがmonitor modeになれるか確認する

monitorになれない場合はドライバを変更すると対応できる場合もあります.

$ /sbin/iw phy phy0 info | lv
  :
        Supported interface modes:
                 * IBSS
                 * managed
                 * monitor
  :
        software interface modes (can always be added):
                 * monitor

monitor modeのインターフェイスを作る

$ sudo iw phy phy0 interface add mon0 type monitor

managed modeのインターフェイスを削除する

$ sudo iw dev wls1 del

monitor modeのインターフェイス(mon0)をUpする

$ sudo ifconfig mon0 up

monitor modeのインターフェイスの無線チャンネルを設定する

上の方で11チャンネルだったので2462に設定します.

$ sudo iw dev mon0 set freq 2462

他のチャンネルはこんな感じ

ch1 : 2412
ch2 : 2417
ch3 : 2422
ch4 : 2427
ch5 : 2432
ch6 : 2437
ch7 : 2442
ch8 : 2447
ch9 : 2452
ch10 : 2457
ch11 : 2462
ch12 : 2467
ch13 : 2472
ch14 : 2484

確認

$ /sbin/iwconfig mon0

パケットキャプチャをしながらスマートフォン公式アプリを使ってみる

※パケットがたくさん飛んでいるような場合はフィルタを書いたりWiresharkなどを使うと便利です.

パケットをキャプチャしながらスマートフォンでPQi Air Penのネットワークに繋いだ状態で公式アプリを起動して更新などを行います.

$ sudo tcpdump -i mon0 -n -A -s0
    :
01:26:05.670158 1.0 Mb/s 2462 MHz 11b -34dBm signal antenna 3 IP 192.168.200.1.21 > 192.168.200.102.50504: Flags [P.], seq 1:21, ack 0, win 2896, options [nop,nop,TS val 194874 ecr 35416851], length 20: FTP: 220 (vsFTPd 2.0.7)
E..Hv.@.@..-.......f...H.[.....;...P.P.....
...:..k.220 (vsFTPd 2.0.7)
...e
    :
01:26:05.791087 2462 MHz 11n -39dBm signal antenna 3 72.2 Mb/s MCS 7 20 MHz s
hort GI mixed IP 192.168.200.102.50396 > 192.168.200.1.21: Flags [P.], seq 1:
12, ack 20, win 115, options [nop,nop,TS val 35410347 ecr 178581], length 11:
 FTP: USER root
E..?O.@.@..z...f.............wu....s    ......
..Q.....USER root
...2
    :
01:26:05.792197 2462 MHz 11n -41dBm signal antenna 3 72.2 Mb/s MCS 7 20 MHz s
hort GI mixed IP 192.168.200.1.21 > 192.168.200.102.50396: Flags [P.], seq 20
:54, ack 12, win 2896, options [nop,nop,TS val 178613 ecr 35410347], length 34: FTP: 331 Please specify the password.
E..V.b@.@.\........f.....wu........P`......
......Q.331 Please specify the password.
u`a.
    :
01:27:11.238673 2462 MHz 11n -40dBm signal antenna 3 72.2 Mb/s MCS 7 20 MHz short GI mixed IP 192.168.200.102.50504 > 192.168.200.1.21: Flags [P.], seq 11:23, ack 55, win 115, options [nop,nop,TS val 35416878 ecr 194908], length 12: FTP: PASS pqiap
E..@.@@.@./....f.....H.....F.[.&...s.......
..k....\PASS pqiap
.5.Z

FTP接続でroot:pqiapのようです.

インターフェイスを戻す

sudo iw dev mon0 del
sudo iw phy phy0 interface add wls1 type managed

ftp接続を試してみる

$ nc 192.168.200.1 21
220 (vsFTPd 2.0.7)
user root
331 Please specify the password.
pass pqiap
230 Login successful.

telnetを試してみる

$ nc 192.168.200.1 23
������!����(none) login: 

(none) login: root
root
Password: pqiap



BusyBox v1.01 (2013.01.03-08:27+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

~ # uname -a
uname -a
Linux (none) 2.6.31.AirPen_V0.1.22-g5eca71a #319 Thu Jan 3 16:27:02 CST 2013 mips unknown

ということで中に入れるようになりました :)

mikutterからGooglePhotosにアップロードするやつを試す

Google Photosってことは容量気にせず画像投げられる & Google+との連携もできそう?ってことで試してみました.

#mikutterについてはこちらを.

関連パッケージ導入

$ sudo apt install ruby-oauth2

mikutter-google-photos-uploader plugin導入

$ cd ~/.mikutter/plugin
$ git clone https://github.com/slimymars/mikutter-google-photos-uploader
$ cd mikutter-google-photos-uploader
$ bundle install

mikutter起動

……認識されない.mikutterが古い所為のようです.

$ grep mikutter: ~/.mikutter/plugin/mikutter-google-photos-uploader/.mikutter.yml 
  mikutter: 3.5.2
$ dpkg-query -W mikutter
mikutter        3.5.0+dfsg-1

Debianではjessie-backportsからsidまで3.5.0+dfsg-1experimentalだけ3.5.2+dfsg-1でした.

てことで,experimentalから借りてきます.

sources.listexperimentalがある状態で

$ grep experimental /etc/apt/sources.list
deb http://dennou-q.gfd-dennou.org/debian/ experimental main non-free contrib
deb-src http://dennou-q.gfd-dennou.org/debian/ experimental main non-free contrib

/etc/apt/preferences.d/mikutterを以下のような感じで用意して,

$ cat /etc/apt/preferences.d/mikutter
Package: mikutter
Pin: release a=experimental
Pin-Priority: 800

パッケージを更新して導入.

$ sudo apt upgrade

mikutterでの設定

mikutterが3.5.2になったので認識しました.設定画面を見ると,GooglePhotosというタブが増えているのでそのタブのAuthrise code 取得URLをブラウザで開いて認証し,出てきたコードをAuthrization_codeに貼り付けます.
更にmikutterからアップロードする保存先のアルバムを追加しておきます.GooglePhotosに存在しないアルバムは前もって

から登録しておきましょう.アルバムは複数登録できるので例えば

  • ミク
  • フレンズ

のようにアルバムを登録しておくと画像整理がはかどります?

20170228_19:02:23-16584

実際の画像保存方法は,mikutterの保存したい画像の上で右クリックしてGoogle Photosに画像をアップロードを選び,

shutter_17-03-01_08:33:12_001

その後表示されるアルバムを選択するだけです.

menu_018

Google Photosに見に行くとアップロードされているのが確認できます.

Google+へのクロスポストにも使えるかなと思ったのですが,Google+の投稿画面はタイムラグがあるようで少し待たないと表示されませんでした.これはGoogle側の問題ですね.Google Photosから投稿するようにすれば良さそうです.

関連?Tweet

環境

$ screenfetch
         _,met$$$$$gg.           mk@x220
      ,g$$$$$$$$$$$$$$$P.        OS: Debian 9.0 stretch
    ,g$$P""       """Y$$.".      Kernel: x86_64 Linux 4.9.0-2-amd64
   ,$$P'              `$$$.      Uptime: 4d 18h 51m
  ',$$P       ,ggs.     `$$b:    Packages: 5147
  `d$$'     ,$P"'   .    $$$     Shell: bash 4.4.11
   $$P      d$'     ,    $$P     Resolution: 1366x768
   $$:      $$.   -    ,d$$'     WM: Awesome
   $$\;      Y$b._   _,d$P'      WM Theme: default
   Y$$.    `.`"Y$$$$P"'          CPU: Intel Core i5-2540M CPU @ 3.3GHz
   `$$b      "-.__               GPU: Mesa DRI Intel(R) Sandybridge Mobile 
    `Y$$                         RAM: 13040MiB / 15934MiB
     `Y$$.                      
       `$$b.                    
         `Y$$b.                 
            `"Y$b._             
                `""""           

Ubuntu 17.04のSynergyと互換性が無くなったのでDebianでexperimentalのSynergyを使う

20170224_01-02-43-4533

リリース前のUbuntu 17.04をサブマシンで使用しているのですが,これをメインPCの横に置いてSynergyを使ってメインPCから操作しています.しかしUbuntu 17.04のSynergyが新しくなって繋がらなくなりました.
設定を確認するとこれまで暗号化通信にパスワードを指定する形でした.これがSSLになったようです.
GUIでもman synergys/synergycを見ても旧形式は使えなさそうで互換性が失われているようです.

20170224_01-02-53-4521
※Ubuntu 17.04のsynergy 1.8.7-stable+dfsg.1-2

20170224_01:02:47-1037
※Debian stretchのsynergy 1.4.16-2

DebianのSynergyのバージョンを確認すると,今のところsidでも1.4.16-2でexperimentalでは1.8.7-stable+dfsg.1-2でした.

とりあえずexperimentalから借りてくることにしました.

sources.listexperimentalがある状態で

$ grep experimental /etc/apt/sources.list
deb http://dennou-q.gfd-dennou.org/debian/ experimental main non-free contrib
deb-src http://dennou-q.gfd-dennou.org/debian/ experimental main non-free contrib

/etc/apt/preferences.d/synergyを以下のような感じで用意して,

$ cat /etc/apt/preferences.d/synergy
Package: synergy
Pin: release a=experimental
Pin-Priority: 800

パッケージ情報を更新して導入.

$ sudo apt update
$ sudo apt install synergy
 :
以下のパッケージはアップグレードされます:
  synergy
アップグレード: 1 個、新規インストール: 0 個、削除: 0 個、保留: 22 個。
853 kB のアーカイブを取得する必要があります。
この操作後に追加で 607 kB のディスク容量が消費されます。
取得:1 <http://dennou-q.gfd-dennou.org/debian> experimental/main amd64 synergy amd64 1.8.7-stable+dfsg.1-2 [853 kB]
853 kB を 3秒 で取得しました (235 kB/s)
 :
.../synergy_1.8.7-stable+dfsg.1-2_amd64.deb を展開する準備をしています ...
synergy (1.8.7-stable+dfsg.1-2)(1.4.16-2 に) 上書き展開しています ...
synergy (1.8.7-stable+dfsg.1-2) を設定しています ...
 :

という感じで導入できました.
元に戻す場合は/etc/apt/preferences.d/synergyを消してパッケージを更新すればいいはず.

バージョンが新しくなってからSynergyを起動するとウィザードが走ってSSL証明書が~/.synergy/SSL/Synergy.pemに作られます.フィンガープリントも~/.synergy/SSL/Fingerprints/Local.txtに作成されるので初回接続時にClient側に表示されるメッセージをSynergy Server側のこのフィンガープリントと見比べてから接続します.

$ cat ~/.synergy/SSL/Fingerprints/Local.txt 
2E:51:06:DC:05:42:09:81:7E:FB:3A:4F:C6:A4:A4:EE:98:ED:75:A0

20170225_00:02:32-4657

このフィンガープリントはClientの~/.synergy/SSL/Fingerprints/TrustedServers.txtに保存されます.

$ cat ~/.synergy/SSL/Fingerprints/TrustedServers.txt
2E:51:06:DC:05:42:09:81:7E:FB:3A:4F:C6:A4:A4:EE:98:ED:75:A0

てことでとりあえず使えるようになりました.

環境

  • server
$ lsb_release -d
Description:    Debian GNU/Linux 9.0 (stretch)
$ uname -a
Linux x220 4.9.0-2-amd64 #1 SMP Debian 4.9.10-1 (2017-02-17) x86_64 GNU/Linux
$ dpkg-query -W synergy
synergy 1.8.7-stable+dfsg.1-2
  • client
$ lsb_release -d
Description:    Ubuntu Zesty Zapus (development branch)
$ uname -a
Linux x200 4.9.0-15-generic #16-Ubuntu SMP Fri Jan 20 15:31:12 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
$ dpkg-query -W synergy
synergy 1.8.7-stable+dfsg.1-2

Raspberry Pi Zero Tips

ダウンロード
Raspberry-Pi-Zero-web
24日にKSYとスイッチサイエンスからRaspberry Pi Zero発売ってことでTipsを書いてみます.

Raspberry-Pi-Zero-web (コピー)

  • 本体の他に最低限microSD(OS領域)やmicroUSBケーブル(電源)が必要です.(microUSBへのOS導入に別途PCも必要).
  • HDMIディスプレイを利用したい場合は大抵の場合別途mini HDMIからフルサイズへの変換アダプタやケーブルが必要です.※PIZEROはmini HDMIです.よく見かけるのはmicro HDMIなので注意しましょう.
  • コンポジットのディスプレイを利用したい場合はジャックなどをはんだ付けする必要があります.(TVのシルク)
  • microUSBx2のうち片方(PWR IN)は電源専用です.
  • もう片方(USB)はUSB OTGでHOSTにもGadget(SerialやEthernetはdebugに便利!)にもなれます.電源供給も可能なので電源容量が足りるならこの1本だけで運用することも可能です.microUSBケーブルやOTGケーブルはそれなりのものを使ったほうが良いです.安いものを使ったらPIZERO側のコネクタが傷んで使えなくなってしまいました.
  • USBを利用する場合は給電が可能なmicroUSBのHUBがデバッグに便利です.
  • GPIO Pinは+以降と共通だけどピンは未実装なので利用したい場合は自分で別途ピンヘッダ等購入してはんだ付けする必要があります.カラフルなピンヘッダをASUS TINKER BOARDのようにピンの用途毎に変えると便利そうです.
    XxbHbzYFnf4AVH1a_setting_fff_1_90_end_1000C-06641

  • 純正カメラモジュールを利用する場合はRaspberry Pi Zero V1.3以降が必要(KSYもスイッチサイエンスもV1.3と書かれているので問題ない)で更にカメラモジュール付属のものとは別のPIZERO専用のケーブルが必要です.

  • KSYでは5000円以上送料無料,それ以下は一律756円の送料が掛かる.KSYを初めて使う人は形式チェックが厳しくて結構面倒なので前もってアカウントを登録しておいたほうが良いです.(単品で買うのであれば海外で買うのと変わらないか高いくらいなので早く欲しい人向け?)
  • スイッチサイエンスでは送料150円.3000円以上送料無料.単品で買う場合おすすめ.但し2017年3月20日週から順次発送予定なので届くまで暫くかかります.
  • 余録.チョコベビーの容器はケースにちょうどいいです :)
    • IMG_20170216_075638

Raspberry Piでコンポジットで起動した後に解像度やディスプレイを変更する

コンポジット出力の解像度変更

Raspberry Piを起動するときにHDMIを接続した状態で起動すると高解像度で起動しますが,繋いでいないとコンポジット出力で起動してXの解像度が720×480になってちょっと手狭です.
xrandrで解像度を追加するとXの再起動もせずに高解像度に出来ます.

※xrandrコマンドは対象のX端末上か,DISPLAY変数を対象のものを指定して実行すること

  • 720x480しか選べない
$ xrandr 
Screen 0: minimum 320 x 200, current 720 x 480, maximum 2048 x 2048
HDMI-0 disconnected (normal left inverted right x axis y axis)
Composite-0 unknown connection 720x480+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   720x480       62.69* 
DSI-0 disconnected (normal left inverted right x axis y axis)
  • cvtコマンドで設定したい解像度を指定してModelineを調べる
$ cvt 1360 768
# 1360x768 59.80 Hz (CVT) hsync: 47.72 kHz; pclk: 84.75 MHz
Modeline "1360x768_60.00"   84.75  1360 1432 1568 1776  768 771 781 798 -hsync +vsync
  • xrandrのmodeを作成する
$ xrandr --newmode "1360x768_60.00"   84.75  1360 1432 1568 1776  768 771 781 798 -hsync +vsync
  • modeが増えている
$ xrandr 
Screen 0: minimum 320 x 200, current 720 x 480, maximum 2048 x 2048
HDMI-0 disconnected (normal left inverted right x axis y axis)
Composite-0 unknown connection 720x480+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   720x480       62.69* 
DSI-0 disconnected (normal left inverted right x axis y axis)
  1360x768_60.00 (0x248) 84.750MHz
        h: width  1360 start 1432 end 1568 total 1776 skew    0 clock  47.72KHz
        v: height  768 start  771 end  781 total  798           clock  59.80Hz
  • modeをComposite-0に追加する
$ xrandr --addmode Composite-0 1368x768_60.00
$ xrandr 
Screen 0: minimum 320 x 200, current 720 x 480, maximum 2048 x 2048
HDMI-0 disconnected (normal left inverted right x axis y axis)
Composite-0 unknown connection 720x480+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   720x480       62.69* 
   1360x768_60.00  59.80  
DSI-0 disconnected (normal left inverted right x axis y axis)
  • 設定したmodeに切り替える
$ xrandr --output Composite-0 --mode 1360x768_60.00

起動後にHDMIに切り替える

解像度の変更ではなく起動後にHDMI接続に切り替えるのもxrandrで出来ます.こちらもXの再起動は必要ありません.

  • HDMIケーブルを接続するとHDMI-0 connectedとなってmodeが選べるようになる
$ xrandr 
Screen 0: minimum 320 x 200, current 1366 x 768, maximum 2048 x 2048
HDMI-0 connected 1366x768+0+0 (normal left inverted right x axis y axis) 580mm x 360mm
   1366x768      59.79*+
   1920x1080     60.00    59.94  
   1920x1080i    60.00    50.00    59.94  
   1280x1024     60.02  
   1152x864      75.00  
   1280x720      60.00    58.68    50.00    59.94  
   1024x768      75.03    70.07    60.00  
   832x624       74.55  
   800x600       72.19    75.00    60.32    56.25  
   720x576       50.00  
   720x576i      50.00  
   720x480       60.00    59.94  
   720x480i      60.00    59.94  
   640x480       75.00    72.81    66.67    60.00    59.94  
   720x400       70.08  
Composite-0 unknown connection (normal left inverted right x axis y axis)
   720x480       62.69  
   1360x768_60.00  59.80  
DSI-0 disconnected (normal left inverted right x axis y axis)
  • 一度にコンポジットを無効にしてHDMIを有効にしようとするとエラーとなる
$ xrandr --output Composite-0 --off --output HDMI-0 --auto
xrandr: cannot find crtc for output HDMI-0
  • 一度に行うのではなく先にコンポジットを無効にしてからHDMIを有効にするとうまく行った
$ DISPLAY=:0 xrandr --output Composite-0 --off
$ DISPLAY=:0 xrandr --output HDMI-0 --auto
  • 逆にHDMIからコンポジットに切り替えることも出来る
$ xrandr --output HDMI-0 --off
$ xrandr --output Composite-0 --mode 1360x768_60.00

環境

  • HW : Raspberry Pi B 2
$ screenfetch 
    .',;:cc;,'.    .,;::c:,,.    pi@raspberrypi
   ,ooolcloooo:  'oooooccloo:    OS: Unknown 8.0 jessie
   .looooc;;:ol  :oc;;:ooooo'    Kernel: armv7l Linux 4.9.11-v7+
     ;oooooo:      ,ooooooc.     Uptime: 4h 28m
       .,:;'.       .;:;'.       Packages: 1541
       .... ..'''''. ....        Shell: 3362
     .''.   ..'''''.  ..''.      Resolution: 1368x768
     ..  .....    .....  ..      DE: LXDE lxpanel 0.7.2
    .  .'''''''  .''''''.  .     WM: OpenBox
  .'' .''''''''  .'''''''. ''.   GTK Theme: Clearlooks [GTK2], Not Found [GTK3]
  '''  '''''''    .''''''  '''   Icon Theme: nuoveXT2
  .'    ........... ...    .'.   Font: Sans 10
    ....    ''''''''.   .''.     CPU: ARMv7 rev 5 (v7l) @ 900MHz
    '''''.  ''''''''. .'''''     RAM: 258MB / 922MB
     '''''.  .'''''. .'''''.    
      ..''.     .    .''..      
            .'''''''            
             ......       

mpv audio delay

動画プレイヤーのmpvを最近良く使うけどBluetoothで音が遅れるのでディレイ掛けたい.
vlcだとj,kというショートカットで50msずつずらせたので同じようなことがしたい.
man見ると載っててmpvだとCtrl + / Ctrl -みたい,だけど100ms単位.
コマンドラインオプションや設定ファイルだと細かく指定できた.

  • ショートカット
       Ctrl + and Ctrl -
              Adjust audio delay by +/- 0.1 seconds.

※100ms単位(VLCは50ms単位)

  • オプション
       --audio-delay=<sec>
              Audio delay in seconds (positive or negative float value). Positive values delay the audio, and negative values delay the video.

こちらは細かい時間を指定可能.以下は-250msを指定.
$ mpv --audio-delay=-0.25 FILE
この状態でショートカットを利用すると-250ms -> -150msのような感じに100ms単位で移動する.

  • 設定ファイル
$ cat ~/.config/mpv/mpv.conf
audio-delay=-0.25
  • 環境
$ lsb_release -d
Description:    Ubuntu Zesty Zapus (development branch)
$ uname -a
Linux x200 4.9.0-15-generic #16-Ubuntu SMP Fri Jan 20 15:31:12 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
$ dpkg-query -W mpv
mpv     0.23.0-2

引用はmpv(1)より

JavaScript無効状態のブラウザでのDuckDuckGoカスタマイズ

DuckDuckGoをJavaScript無効にしたウェブブラウザで利用しようとすると以下で設定したカスタマイズが効かないようです.

これは以下のように設定していても

https://duckduckgo.com/?q=keyword&kp=-1&kl=jp-jp&kc=1&kf=-1&kh=1&k1=-1

JavaScriptが無効だと以下のページにリダイレクトされて,オプションが消えてしまうからのようです.

https://duckduckgo.com/html?q=KEYWORD

JavaScript無効環境では以下のようなURLを利用すると良さそうです.

https://duckduckgo.com/html?q=KEYWORD&kp=-1&kl=jp-jp&kc=1&kf=-1&kh=1&k1=-1

Joyfull Wi-Fi&電源利用可能に

IMG_20170126_000231

 

 

 

 

てことで九州民のオアシスJoyfullの一部店舗でWi-Fiが利用可能になっているようです.更に電源も利用可能とか.

鹿屋近辺の4店舗(高山店,肝付店,鹿屋北店,鹿屋店)を回ってみたところうち1件(肝付店)で利用可能なのを確認しました.

IMG_20170125_235917

Wi-FiはOPENで接続後認証が必要です.認証は以下のような感じで各種SNSやメールアドレスが利用できました.

Screenshot_2017-01-26-00-05-01Screenshot_2017-01-26-00-05-52

USENと株式会社ファイバーゲートのサービスのようです.

株式会社USENと株式会社ファイバーゲートが運営するWIFIサービスサポートセンター(以下「当社」といいます)が提供するインターネット接続等に関するサービス

回線はASAHIネットのようです.

$ traceroute-nanog www.google.com|head
traceroute to www.google.com (202.224.62.89), 30 hops max, 60 byte packets
 1  gateway (192.168.150.1)  2.994 ms  2.987 ms  2.968 ms
 2  kgsnik31.asahi-net.or.jp (202.224.38.216)  7.214 ms  9.284 ms  9.515 ms
 3  tkybi3-v7.asahi-net.or.jp (202.224.38.1)  32.352 ms  32.785 ms  32.584 ms
 4  tkycr2-v2.asahi-net.or.jp (202.224.32.182)  33.519 ms  33.885 ms  34.059 ms
 5  tkycr1-v1001.asahi-net.or.jp (202.224.51.1)  33.718 ms  33.835 ms  33.382 ms
 6  cs1cr1-v1002.asahi-net.or.jp (202.224.51.6)  34.042 ms  33.787 ms  33.502 ms
 7  cs1cdn2-v1023.asahi-net.or.jp (202.224.51.90)  33.597 ms  33.592 ms  34.722 ms
 8  cs1cdn1-v1031.asahi-net.or.jp (202.224.51.121)  32.347 ms  34.007 ms  33.860 ms
 9  * * *

速度は上下とも20Gbps前後

Speedtest by Ookla

1/26の時点では5GHz帯のみで珍しいなと思っていましたが,

1/30には2.4GHz/5GHz両方生きてるのを確認しました.

26日の時点ではAP落ちてたのかな?

大隅半島でWi-Fiが利用できてゆっくり出来る飲食店は他にマクドナルド西原店,自遊空間鹿屋店位だと思うのでかなり嬉しいです.

他の店舗にも速く導入して欲しい&電源席増強して欲しいとこです.

<追記>
モスバーガー鹿屋バイパス店にもFree Wi-Fiがあるようです.

</追記>

<追記2>
殆どの店舗への導入が済んだのか2017-03-29に「Free Wi-Fi はじめました!!」というメールが届きました.そして接続方法のドキュメントも.

20170329_17:03:39-18859
</追記2>

Joyfull Wi-Fi&電源利用可能に

IMG_20170126_000231

 

 

 

 

てことで九州民のオアシスJoyfullの一部店舗でWi-Fiが利用可能になっているようです.更に電源も利用可能とか.

鹿屋近辺の4店舗(高山店,肝付店,鹿屋北店,鹿屋店)を回ってみたところうち1件(肝付店)で利用可能なのを確認しました.

IMG_20170125_235917

Wi-FiはOPENで接続後認証が必要です.認証は以下のような感じで各種SNSやメールアドレスが利用できました.

Screenshot_2017-01-26-00-05-01Screenshot_2017-01-26-00-05-52

USENと株式会社ファイバーゲートのサービスのようです.

株式会社USENと株式会社ファイバーゲートが運営するWIFIサービスサポートセンター(以下「当社」といいます)が提供するインターネット接続等に関するサービス

回線はASAHIネットのようです.

$ traceroute-nanog www.google.com|head
traceroute to www.google.com (202.224.62.89), 30 hops max, 60 byte packets
 1  gateway (192.168.150.1)  2.994 ms  2.987 ms  2.968 ms
 2  kgsnik31.asahi-net.or.jp (202.224.38.216)  7.214 ms  9.284 ms  9.515 ms
 3  tkybi3-v7.asahi-net.or.jp (202.224.38.1)  32.352 ms  32.785 ms  32.584 ms
 4  tkycr2-v2.asahi-net.or.jp (202.224.32.182)  33.519 ms  33.885 ms  34.059 ms
 5  tkycr1-v1001.asahi-net.or.jp (202.224.51.1)  33.718 ms  33.835 ms  33.382 ms
 6  cs1cr1-v1002.asahi-net.or.jp (202.224.51.6)  34.042 ms  33.787 ms  33.502 ms
 7  cs1cdn2-v1023.asahi-net.or.jp (202.224.51.90)  33.597 ms  33.592 ms  34.722 ms
 8  cs1cdn1-v1031.asahi-net.or.jp (202.224.51.121)  32.347 ms  34.007 ms  33.860 ms
 9  * * *

速度は上下とも20Gbps前後

Speedtest by Ookla

1/26の時点では5GHz帯のみで珍しいなと思っていましたが,

1/30には2.4GHz/5GHz両方生きてるのを確認しました.

26日の時点ではAP落ちてたのかな?

大隅半島でWi-Fiが利用できてゆっくり出来る飲食店は他にマクドナルド西原店,自遊空間鹿屋店位だと思うのでかなり嬉しいです.

他の店舗にも速く導入して欲しい&電源席増強して欲しいとこです.

<追記>
モスバーガー鹿屋バイパス店にもFree Wi-Fiがあるようです.

</追記>

<追記2>
殆どの店舗への導入が済んだのか2017-03-29に「Free Wi-Fi はじめました!!」というメールが届きました.そして接続方法のドキュメントも.

20170329_17:03:39-18859
</追記2>