HUION GT-156HD v2をUbuntu 17.10に繋いでみた際のデバイス認識状況

HUION GT-156HD v2をUbuntu 17.10マシンに繋いだ時に、どう認識されるかを確認してみた。

ただし、Linux上でちゃんとタブレットとして認識したわけではないです。

lshwの実行結果から抜粋

                    *-usb:1
                         詳細: USBハブ
                         製品: USB2.0Hub
                         ベンダー: Alcor Micro Corp.
                         物理ID: 2
                         バス情報: usb@1:1.2.2
                         バージョン: 1.00
                         性能: usb-2.00
                         設定: driver=hub maxpower=100mA slots=4 speed=480Mbit/s
                       *-usb:0
                            詳細: マウス
                            製品: Tablet Monitor
                            物理ID: 1
                            バス情報: usb@1:1.2.2.1
                            バージョン: 0.00
                            性能: usb-1.10
                            設定: driver=usbhid maxpower=100mA speed=12Mbit/s
                       *-usb:1
                            詳細: マスストレージデバイス
                            製品: Mass Storage Device
                            ベンダー: Generic
                            物理ID: 4
                            バス情報: usb@1:1.2.2.4
                            論理名: scsi0
                            バージョン: 1.00
                            シリアル: 058F0O1111B1
                            性能: usb-2.00 scsi emulated scsi-host
                            設定: driver=usb-storage maxpower=100mA speed=480Mbit/s
                          *-disk
                               詳細: SCSI Disk
                               製品: Flash Reader
                               ベンダー: Multi
                               物理ID: 0.0.0
                               バス情報: scsi@0:0.0.0
                               論理名: /dev/sda
                               バージョン: 1.00
                               性能: removable
                               設定: logicalsectorsize=512 sectorsize=512
                             *-medium
                                  物理ID: 0
                                  論理名: /dev/sda

lsusbの実行結果から抜粋

Bus 001 Device 013: ID 058f:6366 Alcor Micro Corp. Multi Flash Reader
Bus 001 Device 012: ID 256c:006e
Bus 001 Device 011: ID 058f:6254 Alcor Micro Corp. USB Hub

lsusb -vの実行結果から抜粋

Bus 001 Device 013: ID 058f:6366 Alcor Micro Corp. Multi Flash Reader
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  idVendor           0x058f Alcor Micro Corp.
  idProduct          0x6366 Multi Flash Reader
  bcdDevice            1.00
  iManufacturer           1 Generic
  iProduct                2 Mass Storage Device
  iSerial                 3 058F0O1111B1
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk-Only
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  bNumConfigurations      1
Device Status:     0x0000
  (Bus Powered)

Bus 001 Device 012: ID 256c:006e
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x256c
  idProduct          0x006e
  bcdDevice            0.00
  iManufacturer           5 (error)
  iProduct                6 Tablet Monitor
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           59
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      2 Mouse
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      18
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               2
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      2 Mouse
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      83
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0010  1x 16 bytes
        bInterval               2
Device Status:     0x0000
  (Bus Powered)

Bus 001 Device 011: ID 058f:6254 Alcor Micro Corp. USB Hub
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         1 Single TT
  bMaxPacketSize0        64
  idVendor           0x058f Alcor Micro Corp.
  idProduct          0x6254 USB Hub
  bcdDevice            1.00
  iManufacturer           0
  iProduct                1 USB2.0Hub
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           25
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0 Full speed (or root) hub
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0001  1x 1 bytes
        bInterval              12
Hub Descriptor:
  bLength               9
  bDescriptorType      41
  nNbrPorts             4
  wHubCharacteristic 0x0080
    Ganged power switching
    Ganged overcurrent protection
    TT think time 8 FS bits
    Port indicators
  bPwrOn2PwrGood       50 * 2 milli seconds
  bHubContrCurrent    100 milli Ampere
  DeviceRemovable    0x00
  PortPwrCtrlMask    0xff
 Hub Port Status:
   Port 1: 0000.0103 power enable connect
   Port 2: 0000.0100 power
   Port 3: 0000.0100 power
   Port 4: 0000.0503 highspeed power enable connect
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         0 Full speed (or root) hub
  bMaxPacketSize0        64
  bNumConfigurations      1
Device Status:     0x0001
  Self Powered

RHEL7でpam_tally2が使えるのか?

RedHat Enterprise Linuxでパスワードを複数回間違えたらロックをかける、ということをさせる場合、RHEL5,RHEL6の情報だとpam_tally2を使う、というのが出てくる。
RHEL7だとpam_faillockを使う、という話も出てくる。

サポートサイト情報「How to lock out a user to login a system after a set number of failed attempts in Red Hat Enterprise Linux using pam_tally/pam_tally2
RHEL7の関連ドキュメント「第4章 ツールとサービスを使用したシステム強化

でも、RHEL7にはpam_tally2も入っていて使えそうな感じがする・・・

使えるのかなぁ?と思って試したところ、とりあえずつかえはしました。
ただ・・・こういう動作は普通なんだろうか?という動きをしているところがいくつか・・・

  • pam_tally2のFailuresカウントはpam_tally2 -rでリセットするか、該当ユーザがログインに成功するかでカウントが0になる
  • unlock_timeを過ぎてもpam_tally2のFailuresカウントは自動リセットされず継続する
  • 「passwd -S ユーザ」でロックされているかの確認ができない

なお、「passwd -S ユーザ」によるロック状態のチェックは、pam_faillockを使った場合でも使えません。

実際の動作について

とりあえず、pam_tally2設定を行い、パスワード入力を規定回数以上間違えます。

このようなpam_tally2によりロックされている場合、コンソールログインをしようとすると下記のような表示となります。

ホスト名 login: <ユーザ名>
Account locked due to <カウント> failed logins
Password:

システムのログとしては /var/log/secure に対して下記のような出力があります。

Nov 22 18:35:21 linuxtest <authpriv.notice> login:pam_tally2(login:auth): user <ユーザ名>(<UID>) tally 7, deny 5

ここで、さらに間違うとカウントは増加していきます。

unlock_timeが設定されている場合、 unlock_timeの時間が経過した後、1回目の試行でログインに成功すると、カウントが0に戻ります。

しかし、ここでさらにパスワードを間違えてしまうと、 前回のFailuresカウントがリセットされず、カウントが継続して増えていきます。
そして、失敗回数超過がすぐに適用されてしまうため、再度ロックされてしまいます。

DELL Venue 10 Pro 5055にUbuntu 17.10をインストールした

ワコムのAESペンを採用しているDELL Venue 10 Pro 5055にUbuntu 17.10をインストールしてみました。

1. 回転機能が働くので床に水平置きしてインストール実施
回転機能が働くものの向きが90度違うので、立てて置くとちゃんと使えません。
とりあえず、水平置きしておけば問題ないです。
インストール完了後は、GUI上にあるRotateアイコンをクリックして、回転禁止設定に変えましょう。

2. USB接続のNICを用意する
オンボードのWiFiは、そのままでは認識しないので、USB接続のNICを用意します。
USBキーボード/マウスをつなぎやすいようにUSBハブ付きのやつを買いました。

USB接続のWiFiは、失敗することが多いそうです。
実際、うちにある古いUSB WiFiを何種類か使ってみましたが、接続状況がいまいちで、インストール時には使えませんでした。

3. Ubuntu 17.10のデフォルトISOでは起動できない
DELL Venue 10 Pro 5055は、32bit UEFI採用のモデルなのですが、Ubuntu 17.10は、BIOSか64bit UEFIにのみ対応しています。
このため標準配布のISOイメージをやいたDVDでは起動できません。

ISOイメージをUSBメモリに書き込むツール(rufusとかLinuxLive USB Creator)を使って、USBメモリに書き込みます。
書き込み後、EFI/BOOTにbootia32.efiを配置します。
linux-asus-t100ta」にある「https://github.com/jfwells/linux-asus-t100ta/raw/master/boot/bootia32.efi」を使いました。

4. Ubuntu 17.10のインストールはLive モードで起動したあとの画面から行う
Ubuntu 17.10のデフォルトISOには、32bit UEFI採用モデルで起動する際に必要なパッケージ grub-efi-ia32が含まれていません。
このため、インストール中にネットワーク接続できる環境を用意する必要があります。

ネットワークがきちんと接続されていることを確認するために、Liveモードで起動します。
Firefoxが入っているので、起動してWebが開けるかを確認します。

5. インストール操作は普通に行う
インストール操作自体は普通のUbuntu 17.10インストールと同じです。
Windows10とのデュアルブートも可能でした。
エラーがでる場合は、おそらくネットワーク接続が不安定で、grub-efi-ia32パッケージがダウンロードできなかったことにより発生しています。

6. インストール後、brcmfmac43241b4-sdio.txtを配置すると内蔵WiFiが使える
DELL Venue 10 Pro 5055の内蔵WiFiは、内部的にはSDIO接続であるようです。
先ほども使用した「linux-asus-t100ta」から「https://github.com/jfwells/linux-asus-t100ta/raw/master/nvram/lib/firmware/brcm/brcmfmac43241b4-sdio.txtをダウンロードして、/lib/firmware/brcm/brcmfmac43241b4-sdio.txtに配置します。
配置後、再起動すれば認識しています。


さて、ワコムのBamboo Inkを買っているので、ペンタブとしてどの程度動くのか確認

「設定」-「デバイス」-「ワコムタブレット」を開くと「スタイラスペンが見つかりません」という表示。
「設定を確認する」をクリックすると開く、ペンの動作確認をしてみると、ちゃんと筆圧動作はしていました。
しかし、ペンを動かすと追従がちょっとイマイチ・・・
丸く描いているのにカクカクで認識されてしまいます。
「xsetwacom –list」で認識されているワコムタブを確認してみたのですが、表示されません。
wacomドライバは読み込んでるようなんですけどね。

# xsetwacom --list
# lsmod|grep wa
wacom                 102400  0
hid                   118784  4 i2c_hid,hid_generic,usbhid,wacom
#

とりあえず下記を参考にしつつ調査中です
Linux Mint sarah (ubuntu16.04)ワコム ペンタブレット Intuos Draw 使ってみた&設定
Xsetwacomの解説
ArchLinux Wacomタブレット

Kernelを4.10.xにしたarmbianを使ったOrange Pi PCでSPI接続のLCDを使う

ラズパイ用Waveshare / Kuman 3.5インチ 320×480タッチパネル付き液晶をOrange Piで使う」の続編です。

Mainline Kernel 4.10.3を利用したarmbianに変えてみたところ、設定を追加する必要がありました。

今までの設定だと下記のようなエラーがでます。

[ 3480.448973] fbtft_device: spi_busnum_to_master(0) returned NULL
[ 3480.448982] fbtft_device: failed to register SPI device

これは、SPI関連ドライバの読み込み方法が変わったためです。
関連ドキュメント「Allwinner DT overlays」(DT=Device Tree)

直接的に参考になった資料は「How to enable hardware SPI」の「willmoreさんのコメント」にある下記を/boot/armbianEnv.txt に追加して再起動、というもの

overlay_prefix=sun8i-h3
overlays=spi-spidev
param_spidev_spi_bus=0
param_spidev_max_freq=100000000

上記を追加し、再起動することで、他は「ラズパイ用Waveshare / Kuman 3.5インチ 320×480タッチパネル付き液晶をOrange Piで使う」と同じ設定でLCDを制御することはできました。

ただ・・・なんか、X-Windows出力がうまくいかない感じで・・・

あとで、X.logをみて考えよっと・・・

ラズパイ用Waveshare / Kuman 3.5インチ 320×480タッチパネル付き液晶をOrange Piで使う

正月にアマゾンで「Kuman Raspberry Pi 3 2用ディスプレイ タッチパネル 3.5インチ 320*480 SPI インターフェース Raspberry Pi Model B B+ A+ A SC06」というのがタイムセールで売っていたので買ってみた。

買ったまましまってあったのをすっかり忘れていたので、今頃になって使ってみた。

この製品はWaveshareの「3.5inch RPi LCD (A), 320×480」のコピー製品。
なので、情報はWaveshare側で追う必要がある。

いろいろ面倒な試行錯誤があったのですが、最終結果を書いておきます。

2017/04/10の時点では、液晶表示はできました。
タッチパネル動作については、まだ全然できていません。


Orange Pi PCでSPI接続の液晶で表示をする場合に必要な設定

インストールしておくもの

フレームバッファの動作チェックに使うfbiコマンド

apt install fbi

X-Windowを今回のLCDに出力するために使う

apt install xserver-xorg-video-fbdev

モジュールを読み込むための /etc/modules-load.d/waveshare.conf の内容

flexfb
fbtft_device

上記で指定したモジュールのパラメータ指定 /etc/modprobe.d/waveshare.conf の内容

options flexfb width=320  height=480  regwidth=16 init=-1,0xb0,0x0,-1,0x11,-2,250,-1,0x3A,0x55,-1,0xC2,0x44,-1,0xC5,0x00,0x00,0x00,0x00,-1,0xE0,0x0F,0x1F,0x1C,0x0C,0x0F,0x08,0x48,0x98,0x37,0x0A,0x13,0x04,0x11,0x0D,0x00,-1,0xE1,0x0F,0x32,0x2E,0x0B,0x0D,0x05,0x47,0x75,0x37,0x06,0x10,0x03,0x24,0x20,0x00,-1,0xE2,0x0F,0x32,0x2E,0x0B,0x0D,0x05,0x47,0x75,0x37,0x06,0x10,0x03,0x24,0x20,0x00,-1,0x36,0x28,-1,0x11,-1,0x29,-3
options fbtft_device debug=3 rotate=90 name=flexfb speed=16000000 gpios=reset:2,dc:71

X-Windowで表示させるための /usr/share/X11/xorg.conf.d/98-fbdev.conf の内容

Section "Device"
  Identifier "myfb"
  Driver "fbdev"
  Option "fbdev" "/dev/fb8"
EndSection

注: /dev/fb8 は環境によっては番号が変わるはずです

これで再起動することで、LCDに表示されるようになりました….

ただ・・・時々、うまく表示されないことがあるのが謎です・・・

armbianフォーラムの「[SOLVED] Orange PI PC H3 Winner, compiled with igorpecovnik jessie desktop」に/boot/bin/orangepipc.binをfexに変換し、[disp_init]と[hdmi_para]にある下記項目を変更する、という話があった。

[disp_init]
disp_init_enable = 1
disp_mode = 0
screen0_output_type = 3
screen0_output_mode = 5
screen1_output_type = 3
screen1_output_mode = 5
fb0_width = 800
fb0_height = 480
fb1_width = 800
fb1_height = 480
 
[hdmi_para]
hdmi_used = 1
hdmi_x = 800
hdmi_y = 480
hdmi_power = "vcc-hdmi-18"
hdmi_cts_compatibility = 1

この情報を元に関連する記述を下記の様に書き換えたところ、安定して表示されるようになった。

[disp_init]
disp_init_enable = 1
disp_mode = 0
screen0_output_type = 3
screen0_output_mode = 5
screen1_output_type = 3
screen1_output_mode = 5
fb0_format = 0
fb0_width = 320
fb0_height = 480
fb1_format = 0
fb1_width = 320
fb1_height = 480
hdcp_enable = 1
hdmi_cts_compatibility = 0

[hdmi_para]
hdmi_used = 1
hdmi_power = "vcc-hdmi-18"
hdcp_enable = 0
hdmi_cts_compatibility = 1
hdmi_x = 320
hdmi_y = 480

もちろん、元のbinファイルを「bin2fex orangepipc.bin orangepipc.fex」でテキスト形式のfexファイルに変換し、編集したあと、
「fex2bin orangepipc.fex orangepi.bin」でbinファイルに戻すという手順も行っています。


参考にしたサイト

・Raspberry PiとOrange PiのGPIO指定の違いについて
RaspBerry Piで遊んでみる」の「WiringPiとWiringOP」の記載と
このページで紹介されていた「WiringOP

実際に実行してみて得られた下記の実行結果からGPIOの番号を得ました

osakanataro@orangepipc:/work/lcd/LCD-show$ gpio readall
 +-----+-----+----------+------+---+-Orange Pi+---+---+------+---------+-----+--+
 | BCM | wPi |   Name   | Mode | V | Physical | V | Mode | Name     | wPi | BCM |
 +-----+-----+----------+------+---+----++----+---+------+----------+-----+-----+
 |     |     |     3.3v |      |   |  1 || 2  |   |      | 5v       |     |     |
 |  12 |   8 |    SDA.0 | ALT5 | 0 |  3 || 4  |   |      | 5V       |     |     |
 |  11 |   9 |    SCL.0 | ALT5 | 0 |  5 || 6  |   |      | 0v       |     |     |
 |   6 |   7 |   GPIO.7 | ALT3 | 0 |  7 || 8  | 0 | ALT3 | TxD3     | 15  | 13  |
 |     |     |       0v |      |   |  9 || 10 | 0 | ALT3 | RxD3     | 16  | 14  |
 |   1 |   0 |     RxD2 | ALT3 | 0 | 11 || 12 | 0 | ALT3 | GPIO.1   | 1   | 110 |
 |   0 |   2 |     TxD2 | ALT3 | 1 | 13 || 14 |   |      | 0v       |     |     |
 |   3 |   3 |     CTS2 | ALT3 | 0 | 15 || 16 | 0 | ALT3 | GPIO.4   | 4   | 68  |
 |     |     |     3.3v |      |   | 17 || 18 | 0 | ALT3 | GPIO.5   | 5   | 71  |
 |  64 |  12 |     MOSI | ALT4 | 0 | 19 || 20 |   |      | 0v       |     |     |
 |  65 |  13 |     MISO | ALT4 | 0 | 21 || 22 | 0 | ALT3 | RTS2     | 6   | 2   |
 |  66 |  14 |     SCLK | ALT4 | 0 | 23 || 24 | 0 | ALT4 | CE0      | 10  | 67  |
 |     |     |       0v |      |   | 25 || 26 | 0 | ALT3 | GPIO.11  | 11  | 21  |
 |  19 |  30 |    SDA.1 | ALT4 | 0 | 27 || 28 | 0 | ALT4 | SCL.1    | 31  | 18  |
 |   7 |  21 |  GPIO.21 | ALT3 | 0 | 29 || 30 |   |      | 0v       |     |     |
 |   8 |  22 |  GPIO.22 | ALT3 | 0 | 31 || 32 | 0 | ALT3 | RTS1     | 26  | 200 |
 |   9 |  23 |  GPIO.23 | ALT3 | 0 | 33 || 34 |   |      | 0v       |     |     |
 |  10 |  24 |  GPIO.24 | ALT3 | 0 | 35 || 36 | 0 | ALT3 | CTS1     | 27  | 201 |
 |  20 |  25 |  GPIO.25 | ALT3 | 0 | 37 || 38 | 0 | ALT3 | TxD1     | 28  | 198 |
 |     |     |       0v |      |   | 39 || 40 | 0 | ALT3 | RxD1     | 29  | 199 |
 +-----+-----+----------+------+---+----++----+---+------+----------+-----+-----+
 | BCM | wPi |   Name   | Mode | V | Physical | V | Mode | Name     | wPi | BCM |
 +-----+-----+----------+------+---+-Orange Pi+---+------+----------+-----+-----+
osakanataro@orangepipc:/work/lcd/LCD-show$

・Waveshare 3.5インチTFTパネルのメーカ公式情報
3.5inch RPi LCD (A), 320×480 製品ページ」と「3.5inch RPi LCD (A)情報ページ
最終的には、ピンをどのような用途で使っているか、しか参考になる情報は無かった。

・Waveshare 3.5インチTFTパネルを汎用のflexfbで認識させるパラメータ
おっさんエンジニアの実験室」の「Waveshare 3.5 Spotpear TFTパネルをRPi2に付けて・・」で紹介されているfbtftのIssue#215「Support for Waveshare 3.5 Spotpear」の「fergie4000さんのコメント

modprobe flexfb  width=320  height=480  regwidth=16 init=-1,0xb0,0x0,-1,0x11,-2,250,-1,0x3A,0x55,-1,0xC2,0x44,-1,0xC5,0x00,0x00,0x00,0x00,-1,0xE0,0x0F,0x1F,0x1C,0x0C,0x0F,0x08,0x48,0x98,0x37,0x0A,0x13,0x04,0x11,0x0D,0x00,-1,0xE1,0x0F,0x32,0x2E,0x0B,0x0D,0x05,0x47,0x75,0x37,0x06,0x10,0x03,0x24,0x20,0x00,-1,0xE2,0x0F,0x32,0x2E,0x0B,0x0D,0x05,0x47,0x75,0x37,0x06,0x10,0x03,0x24,0x20,0x00,-1,0x36,0x28,-1,0x11,-1,0x29,-3
modprobe fbtft_device debug=3 rotate=90 name=flexfb speed=16000000 gpios=reset:25,dc:24

fbtft_deviceのgpios指定はRaspberry Piの場合で、そのままOrange Pi PCで使うとセグメンテーションフォルト。
WiringOPを実行(gpio readall)して、resetで使う22ピンのRST、dcで使う18ピンのLCD_RSがOrange Pi PCでは何番にあたるかを確認。
wPiなら「gpios=reset:6,dc:19」、BCMなら「gpios=reset:2,dc:71」ということで、試してみた結果、後者の「gpios=reset:2,dc:71」となった、

・fbtft_deviceとflexfbのパラメータの意味
fbtft_device」と「flexfb
とはいえ、flexfbのinitパラメータに関しては完全に呪文

・fbtftの表示動作確認で使えるコマンド
fbtft公式の「Framebuffer use」。
fbiコマンドで画像出力する、というのが簡単。

・armbianでのモジュールパラメータの設定方法
Allwinner(Generic)のEnable Hardware Features」の「Connect your LCD Display

・Waveshare 3.5インチTFTパネルのタッチパネルを認識させるパラメータ
fbtftのIssue#215「Support for Waveshare 3.5 Spotpear」の「pykoonさんのコメント
fbtft wikiの「Touchpanel

ただし、armbian環境ではads7846_device が無く、ads7846 しかない。

ラズパイではoverlaysで制御するようだが、armbian wikiの「Allwinner DT overlays」にあるarmbian-add-overlayを実行しようとしても無いので、使えなさそう・・・
armbian forumの「ads7846 / Banana pro」を見ると使えそうなことが書いてあるんですが・・・

99-calibration.confのサンプル

Section "InputClass"
        Identifier      "calibration"
        MatchProduct    "ADS7846 Touchscreen"
        Option  "Calibration"   "3932 300 294 3801"
        Option  "SwapAxes"      "1"
EndSection

・バックライト関連
fbtftのwikiに「Backlight」という項目はあるのだが、製品ページのピン配列を見ると該当しそうなものが見当たらない。
制御できないのではないか?


2017/05/05追記

・タッチパネル続報
三日坊主な私がいつまでブログやれるか...( ̄~ ̄;)の「Raspberry Pi でタッチパネル」に、下記でads7846_device単体でのコンパイルができる、という記載を発見

git clone https://github.com/notro/fbtft_tools.git
cd ~/fbtft_tools/ads7846_device; make && sudo make install

これを試してみると、armbian環境でもコンパイルできた。
調整の手法については、
特に縛りなくの「ebayで購入した3.2インチTFT液晶をRaspberry Piで使ってみる」と、fbtft公式の「ads7846_deviceのマニュアル
をあわせてみて試したところ、下記でとりあえず、タッチパネルの認識ができることを確認

insmod /lib/modules/3.4.113-sun8i/extra/ads7846_device.ko  gpio_pendown=1 cs=0 verbose=2 x_min=270 x_max=3830 y_min=340 y_max=3900

しかし、fbtft_deviceとバッティングするようで、どちらかしか利用できない状態
どうすればいいのかなぁ・・・

・動画再生
armbianのmplayはmplay2なので

sudo SDL_VIDEODRIVER=fbcon SDL_FBDEV=/dev/fb8 mplayer -vo sdl -framedrop -vf scale=360:240 動画.mpg

-vf scaleで適切なサイズを指定して縮小処理を行うような指定にしないと、動画の表示サイズが大きい場合、再生出来ない。