カテゴリー別アーカイブ: 構築

コンデンサ押し込みファン コントローラー (その2) 他

5/25(土)

コンデンサ押し込みファン続きです。

まずは、SAB戸田で、結束バンドとか買出し

ファンドライブ側のリレーを結線&固定!

先日外したマフラーを耐熱シルバー吹いて、出品(w

お次は、車載PC制御回路側!

ファンリレーを制御するための、TeensyLCで組んだリレー回路 。

プログラムもクイックで作成^^

テストうまく行ったので、車載PC(mz20mon-nanopct4)へ接続!

ついでに、mz20monのファンも交換〜

あと、車載PC9号(mz20h270)へ、furuno PT-G1も接続!

mz20mon側の制御プログラムをとりあえず作成

  • エンジンオン→エンジンオフで、ファンをオン!
  • ファンオンの後、5分後に、ファンをオフ!

今日は、ここまで〜

5/26(日)

mz20mon側の制御プログラム追加!

  • mqtt subscriberで、コマンド受付
    • on: ファンオン
    • off: ファンオフ

garent-r側のリモコンプログラム追加!

  • スマフォリモコンからmqtt経由で、ファンコントローラーを制御!

リモコン画面

とりあえず、玄関のUnLock/Lockの隣にボタン配置(w

お次は、furuno PT-G1制御プログラムも。

インターフェース/ドライバの認識は、ここに。

でもって、gps2019へ流し込むアプリ作ってたのだけれども、今使ってるlibnmeapで、このフォーマットがそのまま使えなかった。^^;

  • $GPGGAがない。(設定で出すことができるみたい?)
  • 近しいデータとして、$GNGNSがある
  • ので、$GNGNS→$GPGGAをリアルタイムで変換して食わせたら、うまく行った!

これで、しばらく様子みます〜

続く〜

[memo]furuno PT-G1 on fedora30

driver設定

  • vi /etc/udev/rules.d/99-furuno.rules
    SUBSYSTEM=="usb", ATTR{idVendor}=="0ee7", ATTR{idProduct}=="0016", RUN+="/sbin/modprobe -q ftdi-sio", RUN+="/bin/sh -c 'echo 0ee7 0016 >/sys/bus/usb-serial/drivers/ftdi_sio/new_id'" 
    KERNEL=="ttyUSB*", MODE="0666"
    KERNEL=="ttyUSB*", ATTRS{idVendor}=="0ee7", ATTRS{idProduct}=="0016", SYMLINK+="ttyUSB_gps2"
  • udevadm control –reload-rules

[memo]onemix2s + fedora30

ディスプレイ関連(採用案)

  • 90度回転 console設定 (grub2設定)
    # vi /etc/default/grub
    ~~~
    GRUB_CMDLINE_LINUX="quiet fbcon=rotate:1"
    ~~~
    # grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
  • 傾きセンサーのパラメータ変更
    # vi /etc/udev/hwdb.d/99-local.hwdb
    sensor:modalias:acpi:BOSC0200*:dmi:*:svnDef*:pnDef*:*
     ACCEL_MOUNT_MATRIX=0,  1, 0;  1, 0, 0; 0, 0, 0
    # systemd-hwdb update;udevadm trigger
  • Wayland有効
    # vi /etc/gdm/custom.conf
    ~~~
    [daemon]
    #WaylandEnable=false
    ~~~
  • スケール調整
    • 0.80くらい

ディスプレイ関連(ボツ案^^;)

  • 傾きセンサー停止
    # systemctl mask iio-sensor-proxy.service
  • 90度回転
    • Wayland無効化
      WaylandEnable=falseを設定

      # vi /etc/gdm/custom.conf
      ~~~
      [daemon]
      WaylandEnable=false
      ~~~
    • モニター設定
      • 設定→デバイス→ディスプレイ→向き を 縦方向(左向き)
    • monitors.xmlコピー
      # cp ~XXXX/.config/monitors.xml /var/lib/gdm/.config/.
  • スケール調整
    • Tweaks→フォント→倍率を設定

サスペンド関連

        • モニタ閉じる関連
            • Tweaks→全般→ラップトップの蓋を閉じるとサスペンドするをオフ
            • 念のため、/etc/systemd/logind.confも編集
              # vi /etc/systemd/logind.conf
              ~~~
              HandleSuspendKey=ignore
              HandleLidSwitch=ignore
              HandleLidSwitchExternalPower=ignore
              ~~~
              
        • Touch Screenのドライバがsuspend/resume時悪さしている臭いのでblacklist!
          # vi /etc/modprobe.d/blacklist.conf
          blacklist goodix

キーボード関連

  • X11レイアウト設定
    $ localectl --no-convert set-x11-keymap us pc105
  • 日本語IMEインストール
    # dnf install -y anthy ibus-anthy

サウンド関連

  • プツプツ音対策
    # vi /etc/modprobe.d/alsa.conf
    options snd-hda-intel power_save=0

Arduino/Teensyduino

  • udev rule設定
    vi /etc/udev/rules.d/teensyduino.rules

    KERNEL=="hidraw*",  GROUP="sano", MODE="0666"
    ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", ENV{ID_MM_DEVICE_IGNORE}="1"
    ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789A]?", ENV{MTP_NO_PROBE}="1"
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789ABCD]?", GROUP="sano", MODE:="0666"
    KERNEL=="ttyACM*", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", GROUP="sano", MODE:="0666"
    

こんなもんかな。

Unixbench

USB PD 12V対応充電器とか

[memo]cent6+gcc7/8

Cent6.10 デフォは、gcc-4.4.7 (古!

準備

# yum install centos-release-scl
# yum install scl-utils
# yum install devtoolset-7-gcc devtoolset-7-gcc-c++ devtoolset-7-binutils
# yum install devtoolset-8-gcc devtoolset-8-gcc-c++ devtoolset-8-binutils

有効化

  • テンポラリ
    # scl enable devtoolset-7 bash
    # scl enable devtoolset-8 bash
    
  • 恒久的
    # cat /etc/profile.d/enable_gcc7.sh
    #!/bin/bash
    source scl_source enable devtoolset-7

各バージョン

  • devtoolset-7
    • gcc version 7.3.1 20180303 (Red Hat 7.3.1-5) (GCC)
  • devtoolset-8
    • gcc version 8.2.1 20180905 (Red Hat 8.2.1-3) (GCC)

[memo]PIC関連

PIC関連のtips

開発環境

PICライター

PL2303(USBシリアル)

 

ステアリングパッドをリニューアルするヨ (その1)

ステアリングパッド情報システム(?)のネットワークまわりが若干不安定になってきたのと、パフォーマンス改善のために、SBCを入れ替えることに。

初版 (2016/2)

超久しぶり(4年ぶりらしい)に、model A+が追加されたので、今回は、Raspberry Pi3 model A+で!

Raspberry Pi zeroとの主な違い

  • ボードサイズは約2倍。(でも、Pi3 model B+よりは小さい!)
  • Arch
    • Pi0:ARMv6
    • Pi3 A+:ARMv8
  • SoC
    • Pi0:1GHz/1core
    • Pi3 A+:1.4GHz/4core
  • USB
    • Pi0:micro USB2.0 *1
    • Pi3 A+:USB 2.0*1
  • NIC
    • Pi0:n/a
    • Pi3 A+:wifi (802.11b/g/n/a/ac)

今回は、SBC入れ替えに伴い、OSもリニューアル!!

Pi0は、ARMv6系だったので、正式には、Raspbianくらいしかなくて、RHEL系だと、Pidora20くらいだった。

Fedoraは、ARMv7(armv7l),ARMv8(aarch64)しかサポートしてないんですよねー。

今回は、bootイメージは、Raspbian Stretch Lite (2018-11-13)をベースにして、rootfsをfedora28(armv7l)で上書きすることに。

Networkまわりも、NetworkManagerでの管理で。

LCDは、正式なサポートが充実していて、すんなり動作!!

  • LCDのfbドライバは、overlayモジュールで。(dtoverlay=waveshare35a)
  • タッチパネルは、kernel moduleで。 (input/touchscreen/ads7846.ko)

自作アプリをリビルドして〜。動作確認!

やっぱり、速いね!4coreだし、1.4GHzだし、ARMv7だし。^^
※fedora nativeのARMv8も検討したけど、周辺ドライバとかwiringPiとかの絡みで、今回はARMv7で。^^;

だいたい動いたので、git commit/pushして、一旦完了!

後は、実車インプリすね。

続く〜

mz20mon-nanopct4 (その2)

fanコントローラーと、PowerインジケータLED追加!

RTC用のバックアップバッテリーも追加!

左上の単4電池:RTC用バックアップバッテリー
そのすぐ右側の黒いやつ:USB(LTEモデム用)電源コントローラー → 過去ブログ参照1 参照2
右上の青いLCD付いたやつ:昇降圧電源モジュール(出力12.10V固定)
その下の基板(緑系)2個:I2Cな電圧電流計(INA226)
そのすぐ左の基板(茶色系):ファンコントローラー (手抜きな NPN&リレー制御)
そのすぐ真下の白いやつ:4ポートUSB-HUB
右下:ケースファン(ファンコントローラー経由)
左下:NanoPC-T4本体

だいたいできたので、車載するヨ

実車テスト&Debug

シリアルコンソールは、mz20h270へ接続!(FT232 USB-Serial経由)

一旦、いい感じ!!

続く~

 

before/after

左(上):mz20mon-tinker、右(下):mz20mon-nanopct4

mz20mon-nanopct4

NanoPC-T4のテストがだいぶいい感じになってきたので、詰め替えしますヨ

Tinker-Board Sを外して、ケース加工!!

NanoPC-T4は、電源ボタンを押す必要があるので、ハードボタン(黄色のやつ)取り付け!

電源ボタンスイッチにリード線半田付け。そいつを黄色ボタンに。

ケースに詰め込んだヨ

ラベルも貼り替えて!

GPIOはnanoPC側の都合で、レイアウト変更。

続く〜

おまけ

Orange Pi-RK3399との比較

左:Orange Pi-RK3399 右:NanoPC-T4

NanoPC-T4 を試すヨ (その3)

オンボードのWiFi-NIC(wlan0)その後

  • ifconfig wlan0 down しちゃうと、wpa_supplicantでエラー出続ける。
  • そもそも、不安定。
  • shutdown時、かなりの確率でkernel-panic

というわけで、やはり、kernelをちゃんとビルドしよう。

docs.armbian.com/Developer-Guide_Build-Preparation/

↑これを参考に、kernelチューニングしてイメージをビルドすることに。

kernel変更箇所

  • そもそも元のソースが最新版出てた! linux-4.4.174-rk3399_5.75_arm64 → linux-4.4.176-rk3399_5.76_arm64
  • config削除箇所
    • CONFIG_IPV6
    • CONFIG_WIFI_LOAD_DRIVER_WHEN_KERNEL_BOOTUP
    • CONFIG_AP6XXX
      • ↑こいつがオンボードのWiFiのドライバ。デフォでは、モジュールでなくkernel組み込みでビルドされてるので厄介。なので、さくっと削除!(W

そして、uBootパラメタもちょっと変更

  • console=display

SDカードに反映して、boot!

うまくいったヨ!!

wlan0は無事認識しなくなりました(w
ついでに、IPv6も、いなくなりました(w

# uname -a
Linux mz20mon-nanopct4 4.4.176-rk3399 #5 SMP Wed Feb 27 23:40:40 JST 2019 aarch64 aarch64 aarch64 GNU/Linux
# ifconfig 
eth0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.3.246  netmask 255.255.255.0  broadcast 192.168.3.255
        ether 0e:46:74:29:84:cb  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 24  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 1  (Local Loopback)
        RX packets 1580  bytes 136257 (133.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1580  bytes 136257 (133.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.129.10  netmask 255.255.255.0  broadcast 192.168.129.255
        ether 60:84:bd:5a:31:8c  txqueuelen 1000  (Ethernet)
        RX packets 3160  bytes 397202 (387.8 KiB)
        RX errors 0  dropped 1  overruns 0  frame 0
        TX packets 2393  bytes 732946 (715.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
# ethtool -i wlan1
driver: rtl88xxau
version: 
firmware-version: 
expansion-rom-version: 
bus-info: 3-1:1.0
supports-statistics: no
supports-test: no
supports-eeprom-access: no
supports-register-dump: no
supports-priv-flags: no

dmesg/journalctl共に静かになりました。

USB-NICもONにしたときの、lsusb

# lsusb -t
/:  Bus 06.Port 1: Dev 1, Class=root_hub, Driver=ohci-platform/1p, 12M
    |__ Port 1: Dev 2, If 0, Class=Vendor Specific Class, Driver=ftdi_sio, 12M
/:  Bus 05.Port 1: Dev 1, Class=root_hub, Driver=ehci-platform/1p, 480M
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 3: Dev 3, If 0, Class=Vendor Specific Class, Driver=rtl88xxau, 480M
        |__ Port 4: Dev 9, If 0, Class=Vendor Specific Class, Driver=ax88179_178a, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ohci-platform/1p, 12M
    |__ Port 1: Dev 2, If 0, Class=Vendor Specific Class, Driver=pl2303, 12M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-platform/1p, 480M

続く〜

NanoPC-T4 を試すヨ (その2)

電源は、昇降圧電源経由で。

12V時、0.2〜0.4Aかな。bench中は、0.8Aくらいまで。

OS関連その後、、

移行を進めてたら、なんと、iptables関連が一切ビルドされてなかった。。。

公式なimageでのkernelは諦め、armbianをテストすることに!

www.armbian.com/nanopc-t4

取り急ぎ、sdにイメージを焼いて、ブートしてみた!

# uname -a
Linux mz20mon-nanopct4 4.4.174-rk3399 #31 SMP Sun Feb 10 00:37:23 CET 2019 aarch64 aarch64 aarch64 GNU/Linux
# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
# lsmod 
Module                  Size  Used by
iptable_filter         16384  0
af_packet              40960  12
dm_mirror              24576  0
dm_region_hash         20480  1 dm_mirror
dm_log                 20480  2 dm_region_hash,dm_mirror
midgard_kbase         405504  0
rk_vcodec              65536  0
ip_tables              24576  1 iptable_filter
x_tables               32768  2 ip_tables,iptable_filter
autofs4                40960  2

Goodです!!

aarch64なので、gpioバイナリも問題なし!!

# ldd /usr/local/bin/gpio
        linux-vdso.so.1 (0x0000007f866c0000)
        libwiringPi.so => /usr/local/lib/libwiringPi.so (0x0000007f8664b000)
        libwiringPiDev.so => /usr/local/lib/libwiringPiDev.so (0x0000007f86633000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x0000007f865fe000)
        librt.so.1 => /lib64/librt.so.1 (0x0000007f865dd000)
        libm.so.6 => /lib64/libm.so.6 (0x0000007f8651c000)
        libcrypt.so.1 => /lib64/libcrypt.so.1 (0x0000007f864d3000)
        libc.so.6 => /lib64/libc.so.6 (0x0000007f8635b000)
        /lib/ld-linux-aarch64.so.1 (0x0000007f86692000)

この環境が良さげすね。

  • ベースのSDカードbootイメージ
    • Armbian: Armbian_5.75_Nanopct4_Debian_stretch_default_4.4.174.img
  • rootfs
    • Fedora 29 (aarch64) 改
  • WiringPi(NP)
    • rk3399-sd-friendlydesktop-bionic-4.4-arm64-20181219.img 付属のバイナリ!

wifiとかserialとか

オンボードなwifi(wlan0)は、dmesgにエラー吐きまくりでキモいので、usbなnicに。

usb-serialは、FT232なやつ2個でいこうかな。gpsとcamp用。

# lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 0411:0242 BUFFALO INC. (formerly MelCo., Inc.) 
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 003: ID 0403:6001 Future Technology Devices International, Ltd FT232 Serial (UART) IC
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 002: ID 0403:6001 Future Technology Devices International, Ltd FT232 Serial (UART) IC
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
# ethtool -i wlan1
driver: rtl88xxau
version: 
firmware-version: 
expansion-rom-version: 
bus-info: 3-1:1.0
supports-statistics: no
supports-test: no
supports-eeprom-access: no
supports-register-dump: no
supports-priv-flags: no
# udevadm info --attribute-walk -n /dev/ttyUSB0

Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/devices/platform/fe3a0000.usb/usb6/6-1/6-1:1.0/ttyUSB0/tty/ttyUSB0':
    KERNEL=="ttyUSB0"
    SUBSYSTEM=="tty"
    DRIVER==""

  looking at parent device '/devices/platform/fe3a0000.usb/usb6/6-1/6-1:1.0/ttyUSB0':
    KERNELS=="ttyUSB0"
    SUBSYSTEMS=="usb-serial"
    DRIVERS=="ftdi_sio"
    ATTRS{latency_timer}=="16"
    ATTRS{port_number}=="0"

  looking at parent device '/devices/platform/fe3a0000.usb/usb6/6-1/6-1:1.0':
    KERNELS=="6-1:1.0"
    SUBSYSTEMS=="usb"
    DRIVERS=="ftdi_sio"
    ATTRS{authorized}=="1"
    ATTRS{bAlternateSetting}==" 0"
    ATTRS{bInterfaceClass}=="ff"
    ATTRS{bInterfaceNumber}=="00"
    ATTRS{bInterfaceProtocol}=="ff"
    ATTRS{bInterfaceSubClass}=="ff"
    ATTRS{bNumEndpoints}=="02"
    ATTRS{interface}=="FT232R USB UART"
    ATTRS{supports_autosuspend}=="1"

  looking at parent device '/devices/platform/fe3a0000.usb/usb6/6-1':
    KERNELS=="6-1"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{authorized}=="1"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bDeviceClass}=="00"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bMaxPacketSize0}=="8"
    ATTRS{bMaxPower}=="90mA"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{bcdDevice}=="0600"
    ATTRS{bmAttributes}=="a0"
    ATTRS{busnum}=="6"
    ATTRS{configuration}==""
    ATTRS{devnum}=="2"
    ATTRS{devpath}=="1"
    ATTRS{idProduct}=="6001"
    ATTRS{idVendor}=="0403"
    ATTRS{ltm_capable}=="no"
    ATTRS{manufacturer}=="FTDI"
    ATTRS{maxchild}=="0"
    ATTRS{product}=="FT232R USB UART"
    ATTRS{quirks}=="0x0"
    ATTRS{removable}=="unknown"
    ATTRS{serial}=="AH00TNQA"
    ATTRS{speed}=="12"
    ATTRS{urbnum}=="16"
    ATTRS{version}==" 2.00"

  looking at parent device '/devices/platform/fe3a0000.usb/usb6':
    KERNELS=="usb6"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{authorized}=="1"
    ATTRS{authorized_default}=="1"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bDeviceClass}=="09"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{bMaxPower}=="0mA"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{bcdDevice}=="0404"
    ATTRS{bmAttributes}=="e0"
    ATTRS{busnum}=="6"
    ATTRS{configuration}==""
    ATTRS{devnum}=="1"
    ATTRS{devpath}=="0"
    ATTRS{idProduct}=="0001"
    ATTRS{idVendor}=="1d6b"
    ATTRS{interface_authorized_default}=="1"
    ATTRS{ltm_capable}=="no"
    ATTRS{manufacturer}=="Linux 4.4.174-rk3399 ohci_hcd"
    ATTRS{maxchild}=="1"
    ATTRS{product}=="Generic Platform OHCI controller"
    ATTRS{quirks}=="0x0"
    ATTRS{removable}=="unknown"
    ATTRS{serial}=="fe3a0000.usb"
    ATTRS{speed}=="12"
    ATTRS{urbnum}=="27"
    ATTRS{version}==" 1.10"

  looking at parent device '/devices/platform/fe3a0000.usb':
    KERNELS=="fe3a0000.usb"
    SUBSYSTEMS=="platform"
    DRIVERS=="ohci-platform"
    ATTRS{driver_override}=="(null)"

  looking at parent device '/devices/platform':
    KERNELS=="platform"
    SUBSYSTEMS==""
    DRIVERS==""

# cat /etc/udev/rules.d/99-local.rules
KERNEL=="ttyUSB*", KERNELS=="2-1*", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", SYMLINK+="ttyUSB_gps"
KERNEL=="ttyUSB*", KERNELS=="6-1*", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", SYMLINK+="ttyUSB_camp"

続く〜

NanoPC-T4 を試すヨ

FriendlyElec NanoPC-T4を入手したので試してみることに。

特徴

  • Rockchiip RK3399(ARMv8-A) 2core+4core
  • LPDDR3 4GB
  • M.2 M-Key PCIe x4 socket(NVMe-SSD)
  • WiFi/BT: 802.11a/b/g/n/ac,BT4.1
  • USB 2.0×2
  • USB 3.0×1
  • USB Type-C
  • eMMC 16GB
  • micorSD

OSテスト

  • eMMCブート
    • ubuntu 18.04(64bit)
    • f29化は断念
  • microSDブート
    • ubuntu 18.04(64bit)
    • Fedora 29 (64bit)  ※ubuntu 18.04のブートイメージ利用
  • nvmeマウント
    • 問題なし
  • USB-NIC
    • Buffalo LUA3-U2-AGT (USB2.0 GbE) OK
  • USB-Serial
    • CP210 OK
    • PL2303 OK
  • オンボード WiFi wlan0 OK

GPIO

  • WinringPi(WiringNP)は、ubuntu環境のバイナリでf29環境でも実行OK
  • ユーザが自由に使えるgpioポートは少ない感じ
    •  +------+-----+----------+------+ Model  NanoPC-T4 +------+----------+-----+------+
       | GPIO | wPi |   Name   | Mode | V | Physical | V | Mode |   Name   | wPi | GPIO |
       +------+-----+----------+------+---+----++----+---+------+----------+-----+------+
       |      |     |     3.3V |      |   |  1 || 2  |   |      | 5V       |     |      |
       |      |     | I2C2_SDA |      |   |  3 || 4  |   |      | 5V       |     |      |
       |      |     | I2C2_SCL |      |   |  5 || 6  |   |      | GND(0V)  |     |      |
       |   32 |   7 | GPIO1_A0 |   IN | 0 |  7 || 8  |   |      | I2C3_SCL |     |      |
       |      |     |  GND(0V) |      |   |  9 || 10 |   |      | I2C3_SDA |     |      |
       |   33 |   0 | GPIO1_A1 |   IN | 0 | 11 || 12 | 1 | IN   | GPIO1_C2 | 1   |  50  |
       |   35 |   2 | GPIO1_A3 |   IN | 0 | 13 || 14 |   |      | GND(0V)  |     |      |
       |   36 |   3 | GPIO1_A4 |   IN | 0 | 15 || 16 | 0 | IN   | GPIO1_C6 | 4   |  54  |
       |      |     |     3.3V |      |   | 17 || 18 | 0 | IN   | GPIO1_C7 | 5   |  55  |
       |      |     | UART4_TX |      |   | 19 || 20 |   |      | GND(0V)  |     |      |
       |      |     | UART4_RX |      |   | 21 || 22 | 0 | IN   | GPIO1_D0 | 6   |  56  |
       |      |     | SPI1_CLK |      |   | 23 || 24 |   |      | SPI1_CSn |     |      |
       |      |     |  GND(0V) |      |   | 25 || 26 |   |      | SPDIF_TX |     |      |
       |      |     | I2C2_SDA |      |   | 27 || 28 |   |      | I2C2_SCL |     |      |
       |      |     | I2S1_LRX |      |   | 29 || 30 |   |      | GND(0V)  |     |      |
       |      |     | I2S1_LTX |      |   | 31 || 32 |   |      | I2S_CLK  |     |      |
       |      |     | I2S1_SCL |      |   | 33 || 34 |   |      | GND(0V)  |     |      |
       |      |     | I2S1SDI0 |      |   | 35 || 36 |   |      | I2S1SDO0 |     |      |
       |  124 |  25 | GPIO3_D4 |  ALT |   | 37 || 38 |   | ALT  | GPIO3_D5 | 28  |  125 |
       |      |     |  GND(0V) |      |   | 39 || 40 |   | ALT  | GPIO3_D6 | 29  |  126 |
       +------+-----+----------+------+---+----++----+---+------+----------+-----+------+
      
  • i2cは未テスト(i2cdetectのみテスト)
    • # i2cdetect -y 0
           0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
      00:          -- -- -- -- -- -- -- -- -- -- -- -- --
      10: -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- --
      20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
      30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
      40: UU UU -- -- -- -- -- -- -- -- -- -- -- -- -- --
      50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
      60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
      70: -- -- -- -- -- -- -- --
      # i2cdetect -y 1
           0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
      00:          -- -- -- -- -- -- -- -- -- -- -- -- --
      10: UU -- -- -- -- -- -- -- -- -- UU -- -- -- -- --
      20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
      30: -- -- -- -- -- -- UU -- -- -- -- -- -- -- -- --
      40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
      50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
      60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
      70: -- -- -- -- -- -- -- --
      

unixbench

# cat mz20mon-nanopct4-2019-02-22-01
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: mz20mon-nanopct4: GNU/Linux
   OS: GNU/Linux -- 4.4.143 -- #1 SMP Tue Nov 20 11:10:11 CST 2018
   Machine: aarch64 (aarch64)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   02:28:53 up  3:09,  1 user,  load average: 0.18, 0.17, 0.16; runlevel 2019-02-21

------------------------------------------------------------------------
Benchmark Run: 金  2月 22 2019 02:28:53 - 02:56:59
6 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       18706534.8 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     3068.8 MWIPS (8.8 s, 7 samples)
Execl Throughput                               2707.6 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        250659.2 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           97961.0 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        586605.1 KBps  (30.0 s, 2 samples)
Pipe Throughput                              740133.8 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  80872.4 lps   (10.0 s, 7 samples)
Process Creation                               4217.8 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   1606.9 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    599.2 lpm   (60.1 s, 2 samples)
System Call Overhead                         695470.5 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   18706534.8   1603.0
Double-Precision Whetstone                       55.0       3068.8    558.0
Execl Throughput                                 43.0       2707.6    629.7
File Copy 1024 bufsize 2000 maxblocks          3960.0     250659.2    633.0
File Copy 256 bufsize 500 maxblocks            1655.0      97961.0    591.9
File Copy 4096 bufsize 8000 maxblocks          5800.0     586605.1   1011.4
Pipe Throughput                               12440.0     740133.8    595.0
Pipe-based Context Switching                   4000.0      80872.4    202.2
Process Creation                                126.0       4217.8    334.7
Shell Scripts (1 concurrent)                     42.4       1606.9    379.0
Shell Scripts (8 concurrent)                      6.0        599.2    998.6
System Call Overhead                          15000.0     695470.5    463.6
                                                                   ========
System Benchmarks Index Score                                         581.9

------------------------------------------------------------------------
Benchmark Run: 金  2月 22 2019 02:56:59 - 03:25:19
6 CPUs in system; running 6 parallel copies of tests

Dhrystone 2 using register variables       69004021.4 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                    12819.7 MWIPS (9.4 s, 7 samples)
Execl Throughput                               5905.1 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        246663.4 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           71883.8 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        639581.6 KBps  (30.0 s, 2 samples)
Pipe Throughput                             3260025.5 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 303014.4 lps   (10.0 s, 7 samples)
Process Creation                               9312.4 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   5237.5 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    714.3 lpm   (60.2 s, 2 samples)
System Call Overhead                        2084590.0 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   69004021.4   5912.9
Double-Precision Whetstone                       55.0      12819.7   2330.9
Execl Throughput                                 43.0       5905.1   1373.3
File Copy 1024 bufsize 2000 maxblocks          3960.0     246663.4    622.9
File Copy 256 bufsize 500 maxblocks            1655.0      71883.8    434.3
File Copy 4096 bufsize 8000 maxblocks          5800.0     639581.6   1102.7
Pipe Throughput                               12440.0    3260025.5   2620.6
Pipe-based Context Switching                   4000.0     303014.4    757.5
Process Creation                                126.0       9312.4    739.1
Shell Scripts (1 concurrent)                     42.4       5237.5   1235.2
Shell Scripts (8 concurrent)                      6.0        714.3   1190.4
System Call Overhead                          15000.0    2084590.0   1389.7
                                                                   ========
System Benchmarks Index Score                                        1265.9

その他情報

# uname -a
Linux mz20mon-nanopct4 4.4.143 #1 SMP Tue Nov 20 11:10:11 CST 2018 aarch64 aarch64 aarch64 GNU/Linux
# cat /etc/redhat-release
Fedora release 29 (Twenty Nine)
# lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 0411:006e BUFFALO INC. (formerly MelCo., Inc.) LUA-U2-GT 10/100/1000 Ethernet Adapter
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 1c4f:0002 SiGma Micro Keyboard TRACER Gamma Ivory
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
# lsblk
NAME         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
mmcblk1      179:0    0  14.6G  0 disk
mmcblk1boot0 179:32   0     4M  1 disk
mmcblk1boot1 179:64   0     4M  1 disk
mmcblk1rpmb  179:96   0     4M  0 disk
mmcblk0      179:128  0  14.9G  0 disk
└─mmcblk0p1  179:129  0  14.8G  0 part /
nvme0n1      259:0    0 232.9G  0 disk
└─nvme0n1p1  259:1    0 232.9G  0 part /data
# lscpu
アーキテクチャ:                      aarch64
バイト順序:                          Little Endian
CPU:                                 6
オンラインになっている CPU のリスト: 0-5
コアあたりのスレッド数:              1
ソケットあたりのコア数:              3
ソケット数:                          2
ベンダー ID:                         ARM
モデル:                              4
モデル名:                            Cortex-A53
ステッピング:                        r0p4
CPU 最大 MHz:                        1800.0000
CPU 最小 MHz:                        408.0000
BogoMIPS:                            48.00
フラグ:                              fp asimd evtstrm aes pmull sha1 sha2 crc32
# lspci
00:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd RK3399 PCI Express Root Port
01:00.0 Non-Volatile memory controller: Sandisk Corp WD Black 2018/PC SN720 NVMe SSD
# df -h
ファイルシス   サイズ  使用  残り 使用% マウント位置
udev             1.9G     0  1.9G    0% /dev
tmpfs            386M  5.7M  381M    2% /run
/dev/mmcblk0p1    15G  2.3G   13G   16% /
tmpfs            1.9G  8.0K  1.9G    1% /dev/shm
tmpfs            1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/nvme0n1p1   229G   14G  204G    7% /data
tmpfs            1.9G  4.0K  1.9G    1% /tmp
tmpfs            1.9G     0  1.9G    0% /var/tmp
tmpfs            386M     0  386M    0% /run/user/0
# cat /proc/interrupts
           CPU0       CPU1       CPU2       CPU3       CPU4       CPU5
 14:          0          0          0          0          0          0     GICv3  29 Edge      arch_timer
 15:      29915      13843      19905      17540      17986      21483     GICv3  30 Edge      arch_timer
 17:      39716      15911      15339      39364      14158      14063     GICv3 113 Level     rk_timer
 20:          0          0          0          0          0          0     GICv3  37 Level     ff6d0000.dma-controller
 21:          0          0          0          0          0          0     GICv3  38 Level     ff6d0000.dma-controller
 22:          0          0          0          0          0          0     GICv3  39 Level     ff6e0000.dma-controller
 23:          0          0          0          0          0          0     GICv3  40 Level     ff6e0000.dma-controller
 24:       3532          0          0          0          0          0     GICv3  44 Level     eth0
 25:     127974          0          0          0          0          0     GICv3  96 Level     dw-mci
 26:      30090          0          0          0          0          0     GICv3  97 Level     dw-mci
 27:        504          0          0          0          0          0     GICv3  43 Level     mmc1
 28:          4          0          0          0          0          0     GICv3  58 Level     ehci_hcd:usb5
 29:         79          0          0          0          0          0     GICv3  60 Level     ohci_hcd:usb6
 30:          2          0          0          0          0          0     GICv3  62 Level     ehci_hcd:usb1
 31:         34          0          0          0          0          0     GICv3  64 Level     ohci_hcd:usb2
 33:      25930          0          0          0          0          0     GICv3  94 Level     ff100000.saradc
 34:       8553          0          0          0          0          0     GICv3  89 Level     ff3c0000.i2c
 35:        378          0          0          0          0          0     GICv3  91 Level     ff110000.i2c
 36:         12          0          0          0          0          0     GICv3  67 Level     ff120000.i2c
 37:         45          0          0          0          0          0     GICv3  68 Level     ff160000.i2c
 39:          0          0          0          0          0          0     GICv3 132 Level     debug
 40:          0          0          0          0          0          0     GICv3 129 Level     rockchip_thermal
 42:         60          0          0          0          0          0     GICv3  88 Level     ff3d0000.i2c
 43:          1          0          0          0          0          0     GICv3  81 Level     pcie-sys
 45:          0          0          0          0          0          0     GICv3  83 Level     pcie-client
 47:          0          0          0          0          0          0     GICv3 145 Level     ff650000.vpu_service
 48:          0          0          0          0          0          0     GICv3 146 Level     ff650000.vpu_service
 50:          0          0          0          0          0          0     GICv3 148 Level     ff660000.rkvdec
 56:          1          0          0          0          0          0     GICv3  51 Level     ff9a0000.gpu
 57:          1          0          0          0          0          0     GICv3  52 Level     ff9a0000.gpu
 58:          1          0          0          0          0          0     GICv3  53 Level     ff9a0000.gpu
 59:       1076          0          0          0          0          0     GICv3 151 Level     ff8f0000.vop, ff8f0000.vop
 60:       1096          0          0          0          0          0     GICv3 150 Level     ff900000.vop, ff900000.vop
 61:          0          0          0          0          0          0     GICv3  75 Level     ff910000.cif_isp
 62:          0          0          0          0          0          0     GICv3  76 Level     ff920000.cif_isp
 63:          3          0          0          0          0          0     GICv3  55 Level     ff940000.hdmi
 64:          3          0          0          0          0          0     GICv3  42 Level     analogix-dp
 73:       4509          0          0          0          0          0     gpio0   3 Level     bcmsdh_sdmmc
 74:          0          0          0          0          0          0     gpio0   4 Edge      bt_default_wake_host_irq
 75:          0          0          0          0          0          0     gpio0   5 Edge      GPIO Key Power
104:          0          0          0          0          0          0     gpio1   2 Level     fusb302
123:          5          0          0          0          0          0     gpio1  21 Level     rk808
226:          0          0          0          0          0          0     gpio4  28 Edge      Headphone detection
230:          1          0          0          0          0          0     GICv3  63 Level     rockchip_usb2phy
231:          0          0          0          0          0          0     GICv3 143 Level     rockchip_usb2phy
232:          1          0          0          0          0          0     dummy   0 Edge
233:          0          0          0          0          0          0   ITS-MSI   0 Edge      PCIe PME, aerdrv
235:      18938          0          0          0          0          0     GICv3 142 Level     xhci-hcd:usb3
236:       2624          0          0          0          0          0   ITS-MSI 524288 Edge      nvme0q0, nvme0q1
237:          0        622          0          0          0          0   ITS-MSI 524289 Edge      nvme0q2
238:          0          0       3335          0          0          0   ITS-MSI 524290 Edge      nvme0q3
239:          0          0          0        357          0          0   ITS-MSI 524291 Edge      nvme0q4
240:          1          0          0          0        859          0   ITS-MSI 524292 Edge      nvme0q5
241:          0          0          0          0          0        220   ITS-MSI 524293 Edge      nvme0q6
247:          0          0          0          0          0          0     rk808   5 Edge      RTC alarm
251:          1          0          0          0          0          0     GICv3  59 Level     rockchip_usb2phy
252:          0          0          0          0          0          0     GICv3 138 Level     rockchip_usb2phy
253:          0          0          0          0          0          0     GICv3 135 Level     rockchip_usb2phy_bvalid
IPI0:     26343      18968      12109      61120      19313      29886       Rescheduling interrupts
IPI1:        28         37         39         34         27         32       Function call interrupts
IPI2:         0          0          0          0          0          0       CPU stop interrupts
IPI3:         0          0          0          0          0          0       CPU stop (for crash dump) interrupts
IPI4:      1035       1003       1770       1014        759        973       Timer broadcast interrupts
IPI5:         0          0          0          0          0          0       IRQ work interrupts
IPI6:         0          0          0          0          0          0       CPU wake-up interrupts
Err:          0
# systemctl -t service
UNIT                                          LOAD   ACTIVE SUB     DESCRIPTION
atd.service                                   loaded active running Deferred execution scheduler
crond.service                                 loaded active running Command Scheduler
dbus-daemon.service                           loaded active running D-Bus System Message Bus
dracut-shutdown.service                       loaded active exited  Restore /run/initramfs on shutdown
getty@tty1.service                            loaded active running Getty on tty1
irqbalance.service                            loaded active running irqbalance daemon
kmod-static-nodes.service                     loaded active exited  Create list of required static device nodes for the current kernel
mariadb.service                               loaded active running MariaDB 10.3 database server
NetworkManager-wait-online.service            loaded active exited  Network Manager Wait Online
NetworkManager.service                        loaded active running Network Manager
polkit.service                                loaded active running Authorization Manager
postgresql.service                            loaded active running PostgreSQL database server
rc-local.service                              loaded active exited  /etc/rc.d/rc.local Compatibility
rngd.service                                  loaded active running Hardware RNG Entropy Gatherer Daemon
rpc-statd-notify.service                      loaded active exited  Notify NFS peers of a restart
rsyslog.service                               loaded active running System Logging Service
smartd.service                                loaded active running Self Monitoring and Reporting Technology (SMART) Daemon
sshd.service                                  loaded active running OpenSSH server daemon
systemd-backlight@backlight:backlight.service loaded active exited  Load/Save Screen Backlight Brightness of backlight:backlight
systemd-fsck@dev-nvme0n1p1.service            loaded active exited  File System Check on /dev/nvme0n1p1
systemd-journal-flush.service                 loaded active exited  Flush Journal to Persistent Storage
systemd-journald.service                      loaded active running Journal Service
systemd-logind.service                        loaded active running Login Service
systemd-modules-load.service                  loaded active exited  Load Kernel Modules
systemd-random-seed.service                   loaded active exited  Load/Save Random Seed
systemd-remount-fs.service                    loaded active exited  Remount Root and Kernel File Systems
systemd-sysctl.service                        loaded active exited  Apply Kernel Variables
systemd-tmpfiles-setup-dev.service            loaded active exited  Create Static Device Nodes in /dev
systemd-tmpfiles-setup.service                loaded active exited  Create Volatile Files and Directories
systemd-udev-settle.service                   loaded active exited  udev Wait for Complete Device Initialization
systemd-udev-trigger.service                  loaded active exited  udev Coldplug all Devices
systemd-udevd.service                         loaded active running udev Kernel Device Manager
systemd-update-utmp.service                   loaded active exited  Update UTMP about System Boot/Shutdown
systemd-user-sessions.service                 loaded active exited  Permit User Sessions
user-runtime-dir@0.service                    loaded active exited  User Runtime Directory /run/user/0
user@0.service                                loaded active running User Manager for UID 0
wpa_supplicant.service                        loaded active running WPA supplicant

LOAD   = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB    = The low-level unit activation state, values depend on unit type.

37 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.
# free
              total        used        free      shared  buff/cache   available
Mem:        3950696      158236     3553792       25996      238668     3692384
Swap:       2047996           0     2047996

続く

2/22更新: unixbench再測定(cpu-fan付けて)

ガレージ改善プロジェクト

照明制御とリモコン制御の基板を作り直した。

変更点

  • シャッターリモコン制御
    • フォトカプラの発光側の抵抗を180Ωに変更
    • リモコンに穴を開けて、配線をちゃんと外へ出した
    • リモコンの電池を新品に(CR2025)
  • 照明制御
    • SSR制御の電圧を12Vへ変更

新品リモコンも届いたので登録!

リモコンクライアントデザインもちょっと変更!

後は、ネコ閉じ込み防止対策機器導入。(w

ガレージ改善プロジェクトは続きます。。。

トランクルーム リニューアル

NaO10号の、トランクルームリニューアルです。

注文していた、棚が届いたので、さっそく開梱して、背面板を撤去(w

次に、mz20mon-tinkerのケースリプレース!

前のやつより、一回り大きくなりました。

今回のメインの目的ですね。

mz20mon-tinkerの放熱性を上げるため、ケースを大きくすることにしたのですが、そうすると、トランクの棚に入らなくなる。
なので、棚も大きくしました。。。^^;

でもって、いろいろ撤去!


↑引退した、棚

新しい棚にします~

耐震マットとか買いに、ダイソーへ。

いろいろ固定!

だいたい完成です!

内装戻します~

まだ、途中ですが、完成!!

変更後!

↓変更前

mz20mon-tinker その2

mz20monのメンテ続きます。

ASUS Tinker Board Sベースへ

  • Hostname: mz20mon-tinker
  • OS: Fedora 27ベース (kernel-4.4.103+)
  • USBデバイス
    • USB-SATA-IF: 128GB-SSD
    • USB-LTE-Modem: PIX-MT100
    • USB-HUB
    • USB-WiFi: BUFFALO WI-U2-433DMS  (RTL88xx)

      白いのがUSB-HUB、それに刺さってる黒いのがWI-U2-433DMS
  • オンボードUART
    • UART3(/dev/ttyS3): gpsレシーバ用
    • UART4(/dev/ttyS4): HKS CAMP Junction-BOX用
  • I2C
    • 0x40: INA226 mz20monシステム電力測定用
    • 0x41: INA226 7M-GTEU オルタネーター電力測定用
    • 0x76: BME280 トランクルーム 温度・湿度・気圧測定用
  • GPIO
    • wiP28(PHY38): USB-LTE-Modem Power OFF
    • wiP29(PHY40): USB-LTE-Modem Power ON
    • wiP06(PHY22): ソーラーチャージコントローラー Power OFF
    • wiP24(PHY35): ソーラーチャージコントローラー Power ON
    • wiP01(PHY12): オフ会モード入力
    • wiP23(PHY33): ファンコントローラー用(PWM2)
    • wiP08(PHY03): I2C-SDA
    • wiP09(PHY05): I2C-SCL
    • wiP27(PHY36): UART3-RX
    • wiP25(PHY37): UART3-TX
    • wiP02(PHY13): UART4-TX
    • wiP03(PHY15): UART4-RX
  • ネットワーク
    • eth0: NaO10 mz20 車内LAN
      • 192.168.3.246 / 24
    • tun0: Garent-VPN
      • 192.168.70.13
    • wlan0: 未使用(オンボードwifi)
    • wlan1: ガレージWiFi接続用
      • 192.168.129.102 / 24
    • usb0: OCNモバイルONEネットワーク接続用
      • 192.168.128.10 / 24

ネットワークについて

  • 現在位置を、gpsより取得し、自宅 or それ以外を判定する。
  • WAN接続の決定
    • 自宅(GPSの距離が20m以内)であれば、WAN接続を、WiFi経由とする
    • 自宅以外であれば、WAN接続を、LTEモデム(OCNモバイルONE)経由とする
  • VPN接続の確立
    • GarentへVPN接続する
  • namedのリフレッシュ
  • ntpdのリフレッシュ

ルーフモニタ その4 (1.8″→3.2″)

オーストラリアから、3.2インチTFTモニタが届いたので、リプレースすることに。

まずは、ABS樹脂をcoromozaでレーザーカット!

そんでもって、ヤスリがけ!

細長いのは、シフトパネルのTEMSスイッチのところのめくら蓋に!

そんでもって、塗装行くよ!

プライマー吹いて〜

シフトパネル用のパーツは、マッドブラック吹いて〜

ルーフモニタ化粧パネルは、レッドブラウン吹いて〜

マッドブラック乾いてきたヨ!

化粧パネル2回目のレッドブラウン!

こちらも乾いてきた!

塗装は終了!

次は台座加工。

既存の枠もカットカット!

貼り付け!

いい感じじゃない?

では、Raspberry Pi Zero Wに、OS入れて〜LCDのドライバー入れて〜

実車マウント!

いいねー

3.2インチバージョンは一旦完成!

あとは、ここで何をやらせるかが問題なんですねー。(w

続く〜

車載PC9号(仮)構築 & ガレージ照明改善作戦 (その3)

先日、車載PCモニタを11.6インチ化したら、いろいろ思うところが出てきて、車載PCもリプレースしようかなと。
→ 詳細はこちら

で、パーツが揃ったので、構築開始!

M/Bは、ASRock H270M-ITX/ac、CPUは、Intel Core i5-7400T/2.4GHz(TDP:35W)

メインストレージは、NVMeなSSD(WD-Black 256GB、 メモリはDDR4-2133 16GB(8GB*2)

ケースは、SilverStone ML6

とりあえずは、Bench!

Bench中に、電流値チェック。

シングルコアでベンチ中:2.2A  (12V) 約26W
クアッドコアでベンチ中:3.0A (12V) 約36W
アイドル中: 1.3A (12V) 約16W

いい感じですね!

USBもいっぱい!

お次は、照明制御の続き。

SSRにIVケーブルを付けて、、

スイッチへ。

DC側のリード線は長めに。

スイッチ側は完了!

回路は書いてみたヨ。

続く〜

Tinker Board Sを試すヨ

ASUS の Tinker Boardが、eMMC搭載で、新しく Tinker Board Sが発売されたので、試してみることに。

ツクモ12号店でゲット!

技適もOK!

とりあえず、Armbian for Tinker Boardを起動してみた。

普通に動きますね。

体感、Rpi3のそれよりかなりキビキビ動きますねー。

でもって、kernel/bootはそのまま、中身をFedora27に!!^^

SSDもつなげて、一通り構築。

  • Armbian 5.38 →  Fedora 27
    TinkerOS 2.0.4 → Fedora 27 (2/22変更)
  • /var,/usr/local等、ssdへ
  • systemd関連チューニング
  • WiringPI ライブラリ整備
  • i2c-tools関連整備
  • rpi2で使ってたi2cなデバイス実験
  • unixbench測定
     

結論、「コレはイイ!!

以下、比較。

Tinker Board S (mz20mon-tinker) Raspberry Pi2 (mz20mon) Banana Pi M2-Ultra (mz20mon-bpi仮)
SoC Rockchip RK3288 Broadcom BCM2836 Allwinner R40
CPU ARM Quad-Core Cortex-A17 CPU /1.8GHz ARM Quad-Core Cortex-A7 CPU/900MHz ARM Quad-Core Cortex A7 CPU
GPU ARM Mali-T760 MP4 GPU Broadcom VideoCore IV  MALI-400 MP2 @ 500MHz
Memory Dual-CH LPDDR3 2GB  LPDDR2 SDRAM 1GB 2GB DDR3 SDRAM (shared with GPU)
Storage eMMC 16GB,microSD-Slot microSD-Slot eMMC 8GB,microSD-Slot,SATA-I/F
Ethernet RTL8211E-VB-CG GbE-LAN  LAN9514 10/100Mbps Realtek RTL8211E/D GbE-LAN
WiFi/BT 802.11 b/g/n wireless & BT 4.0 + EDR 802.11 b/g/n (AP6212) & BT4.0 (AP6212)
USB 4 x USB 2.0 ports  4 x USB 2.0 ports 2 x USB 2.0 ports
Pin-Header 1 x 40-pin headers includes:
– up to 28 x GPIO pins
– up to 2 x SPI bus
– up to 2 x I2C bus
– up to 4 x UART
– up to 2 x PWM
– up to 1 x PCM/I2S w/ Slave Mode support
– 2 x 5V power pins
– 2 x 3.3V power pins
– 8 x ground pins
1 x 2-pin Power-on header
1 x 2-pin eMMC recovery header
1 x 40-pin headers includes:
– up to 28 x GPIO pins
– up to 1 x SPI bus
– up to 1 x I2C bus
– up to 1 x UART
– up to 1 x PWM
– 2 x 5V power pins
– 2 x 3.3V power pins
– 8 x ground pins
 1 x 40-pin headers includes:
– up to 28 x GPIO pins
– up to 1 x SPI bus
– up to 1 x I2C bus
– up to 1 x UART
– up to 1 x PWM
– 2 x 5V power pins
– 2 x 3.3V power pins
– 8 x ground pins
OS,Kernel Fedora 27 / kernel-4.4.71+ Fedora 24 / kernel-4.4.30-v7+ Fedora 26 / kernel-3.10.108-BPI-M2U
I2C winringPI,i2c-tools,i2c-tools-python OK winringPI,i2c-tools,i2c-tools-python OK winringBP,i2c-tools,i2c-tools-python OK
SSD via USB-2.0 via USB-2.0 SATA-Native
 Unixbench 924.0 440.7 334.7

Tinker BoardのGPIO

memo
  • /dev/ttyS1 → UART1
  • /dev/ttyS2 → UART2 ※PWMに使うので、UARTはoff
  • /dev/ttyS3 → UART3
  • /dev/ttyS4 → UART4
  • /dev/ttyS0 → BT用?

2/23追記

eMMCへの構築完了。tinker osのみ対応のため、tinker osを構築後、fedora27化を実施。

kernelは、4.3.71+

リアのスタビライザーリンク交換〜の富士宮 (2/3)

リアのスタビリンクのゴムがぱっかりしてるので交換!

まずは、ジャッキアップ!

アストロジャッキが大活躍!!

コイツを交換するヨ!

新品なスタビリンク(リア用)

新品なスタビリンク(フロント用、今回は交換しないけどね)

ぱっかりしてるヨ

お昼頃、TOMさんちゃり輸送のため、柏某所へ。

そんでもって、戸田にちょこっと寄り道して、交換手伝ってもらいました。^^;

まずは、右側外したヨ。

新旧比較。左:新品、右:仕様済。

そんでもって、取付!

左側も交換して、終了〜

その後、TOMさんを相模原へ送り、富士宮へ。

夜中に富士宮で、サーバーリプレイス!

↓撤去したコ

ホコリまみれ。。HDDがお亡くなりかけなので、引退。4年間お疲れ様でした!

そんでもって、設置したコ↓

 

CPU Intel(R) Core(TM) i3-4030U CPU @ 1.90GHz(DualCore-HT) Intel(R) Celeron(R) CPU 1007U @ 1.50GHz (DualCore)
RAM DDR3 8GB*1 DDR3 4GB*2
Storage SSD 120GB HDD 500GB
OS Fedora Release 27 CentOS 6.9

 

ソーラーとかカウルとか。

ソーラーパネルをテラスに。

そんでもって、チャージコントローラ−とバッテリーへ接続。

ちゃんと充電できてるヨ!

お次は、ヘッドライト交換!(LEDなやつに、H4/PH7/PH8対応品)

↑LED明るいヨ!(帰宅時)

帰ってきてからは、アドレスのカウル交換!

作業前に、ヤツがきた!

レプリカカウル

交換したよ!

Before/After

↑左:交換前(割れてるヨ)、右:新品レプリカ品

Orange Pi Plus2 (その2)

いろいろ設定。

boot時のオプションなど。

/boot/script.binの変更 (fedora24の場合)

  • # dnf install sunxi-tools
    # ln -s /usr/bin/sunxi-fexc /usr/local/bin/bin2fex
  • # cd /boot
    # bin2fex script.bin > HOGEHOGE.fex
    # vi HOGEHOGE.fex
    # fex2bin HOGEHOGE.fex script.bin
  • # reboot

CPU Clockの上限を1.54GHzへ。

  • fexファイル修正 (変更箇所のみ)
    cooler0 = "1536000 4 4294967295 0"
    extremity_freq = 1536000000
    max_freq = 1536000000
    LV1_freq = 1536000000
    LV1_volt = 1500
    
  • fex2binで更新し、reboot

不要なドライバーをblacklist化

  • # vi /etc/modprobe.d/opp-blacklist.conf
    blacklist pcf8591
    blacklist bmp085
    blacklist 8189es
    • pcf8691,bmp085はオンボードなi2cデバイスらしいけどいらないので。
    • 8189esはオンボードwifi、こちらも、技適通ってないし、いらないや。

wiringOPビルド

  • # git clone https://github.com/zhaolei/WiringOP.git -b h3
    # cd WiringOP
    # sh ./build

RTC追加

  • Orange Pi Plus2は、オンボードでrtcチップ載っていますが、バックアップバッテリーとクリスタル(32.768kHz)が載ってなく事実上使い物にならないので、i2cなrtcを追加することに。
  • 今回は、ds3231というチップのrtcに。
  • 適当にスクリプト作成
    # cat /opt/bin/set-clock.sh
    #!/bin/bash
    echo ds3231 0x68 > /sys/class/i2c-adapter/i2c-0/new_device 2>/dev/null
    sleep 1
    /usr/sbin/hwclock -f /dev/rtc1 -s
    # chmod 750 /opt/bin/set-clock.sh
  • サービス登録のファイル作成
    # cat /etc/systemd/system/rtc.service 
    [Unit]
    Description=set clock from rtc
    #Before=dbus.service
    Before=chronyd.service
    
    [Service]
    Type=oneshot
    ExecStart=/opt/bin/set-clock.sh
    RemainAfterExit=yes
    
    [Install]
    WantedBy=multi-user.target
  • サービス登録
    • # systemctl enable rtc.service

Orange Pi Plus2

アリババで発注したOrange Pi Plus2が届いた。

RPi3との比較 (主な違い)

  • CPU
    • RPi3: Quad Core 1.2GHz Broadcom BCM2837 64bit CPU
    • OPP2: H3 Quad-core Cortex-A7 H.265/HEVC 4K  / 1.6GHz
  • RAM
    • RPi3: DDR2 1GB
    • OPP2: DDR3 2GB
  • ストレージ
    • RPi3: オンボードストレージなし、microSD
    • OPP2: オンボード eMMC 16GB、microSD、SATA-I/F
  • Ethernet
    • RPi3: 10/100 Ethernet RJ45
    • OPP2: 10/100/1000M Ethernet RJ45
  • ボードサイズ
    • RPi3: 85mm * 56mm
    • OPP2: 108mm * 67mm
  • 価格
    • RPi3: $38.5~ (アリババ)
    • OPP2: $49~ (アリババ)

そんな感じで、いろいろ実験。

まずは、loborisさん公開のFedora 22を試してみることに。

すんなり動きました。中身をF24に入れかえても動いてます。

が、Kernelがちと古くて、挙動も怪しい。USBキーボード刺してももconsoleで入力できなかったりと。(w

というわけで、いったん、ArmbianのUbuntu_xenialを入れてみた。
こちらも、すんなり起動。

やっぱり、中身をFC24にしてみた。
問題なし!!
コンソールでのキーボードも問題ないです。

というわけで、こいつでいくことに!。

以下、memo

# uname -a
Linux orange-pi-plus2 3.4.113-sun8i #16 SMP PREEMPT Tue Jun 13 14:15:57 CEST 2017 armv7l armv7l armv7l GNU/Linux                                                                                        
# cat /etc/redhat-release 
Fedora release 24 (Twenty Four)
# lscpu
Architecture:          armv7l                                                                                                                                                                           
Byte Order:            Little Endian                                                                                                                                                                    
CPU(s):                4                                                                                                                                                                                
On-line CPU(s) list:   0-3                                                                                                                                                                              
Thread(s) per core:    1                                                                                                                                                                                
Core(s) per socket:    4                                                                                                                                                                                
Socket(s):             1                                                                                                                                                                                
CPU max MHz:           1296.0000                                                                                                                                                                        
CPU min MHz:           480.0000
# free
              total        used        free      shared  buff/cache   available                                                                                                                         
Mem:        2062620       47928     1061924       13412      952768     1979391                                                                                                                         
Swap:        102396           0      102396 
# cpupower frequency-info
analyzing CPU 0:
  driver: cpufreq-sunxi
  CPUs which run at the same hardware frequency: 0 1 2 3
  CPUs which need to have their frequency coordinated by software: 0 1 2 3
  maximum transition latency: 2.00 ms
  hardware limits: 480 MHz - 1.54 GHz
  available frequency steps:  60.0 MHz, 120 MHz, 240 MHz, 312 MHz, 408 MHz, 480 MHz, 504 MHz, 528 MHz, 576 MHz, 600 MHz, 624 MHz, 648 MHz, 672 MHz, 720 MHz, 768 MHz, 816 MHz, 864 MHz, 912 MHz, 960 MHz, 1.01 GHz, 1.06 GHz, 1.10 GHz, 1.15 GHz, 1.20 GHz, 1.25 GHz, 1.30 GHz, 1.34 GHz, 1.44 GHz, 1.54 GHz
  available cpufreq governors: interactive conservative ondemand powersave userspace performance
  current policy: frequency should be within 480 MHz and 1.54 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency: 1.54 GHz (asserted by call to hardware)
# df -h
Filesystem      Size  Used Avail Use% Mounted on                                                                                                                                                        
udev            877M     0  877M   0% /dev                                                                                                                                                              
tmpfs           202M   14M  189M   7% /run                                                                                                                                                              
/dev/mmcblk0p1   15G  3.0G   12G  21% /                                                                                                                                                                 
tmpfs          1008M     0 1008M   0% /dev/shm                                                                                                                                                          
tmpfs          1008M     0 1008M   0% /sys/fs/cgroup                                                                                                                                                    
tmpfs          1008M     0 1008M   0% /tmp                                                                                                                                                              
tmpfs           202M  4.0K  202M   1% /run/user/0
# fdisk -l /dev/mmcblk0                                                                                                                                                         
Disk /dev/mmcblk0: 14.6 GiB, 15634268160 bytes, 30535680 sectors                                                                                                                                        
Units: sectors of 1 * 512 = 512 bytes                                                                                                                                                                   
Sector size (logical/physical): 512 bytes / 512 bytes                                                                                                                                                   
I/O size (minimum/optimal): 512 bytes / 512 bytes                                                                                                                                                       
Disklabel type: dos                                                                                                                                                                                     
Disk identifier: 0x15592fef                                                                                                                                                                             
                                                                                                                                                                                                        
Device         Boot Start      End  Sectors  Size Id Type                                                                                                                                               
/dev/mmcblk0p1       8192 30535679 30527488 14.6G 83 Linux                                                                                                                                              
# cat /proc/interrupts 
           CPU0       CPU1       CPU2       CPU3                                                                                                                                                        
  3:          1          0          0          0  sunxi_gpio_irq_chip  gk_EINT                                                                                                                          
 29:    1210550     327635     534201     153257       GIC  arch_timer                                                                                                                                  
 30:          0          0          0          0       GIC  arch_timer                                                                                                                                  
 32:        328          0          0          0       GIC  uart0                                                                                                                                       
 38:         18          0          0          0       GIC  twi0                                                                                                                                        
 39:         18          0          0          0       GIC  twi1                                                                                                                                        
 43:          0          0          0          0       GIC  PA                                                                                                                                          
 49:          0          0          0          0       GIC  PG                                                                                                                                          
 50:          0          0          0          0       GIC  sunxi_timer0                                                                                                                                
 63:          0          0          0          0       GIC  Thermal                                                                                                                                     
 72:          1          0          0          0       GIC  sunxi-rtc alarm                                                                                                                             
 77:          1          0          0          0       GIC  PL                                                                                                                                          
 81:          0          0          0          0       GIC  arisc_hwmsgbox_irq                                                                                                                          
 82:          0          0          0          0       GIC  sunxi_dmac                                                                                                                                  
 90:          0          0          0          0       GIC  cedar_dev                                                                                                                                   
 92:          0          0          0          0       GIC  sunxi-mmc                                                                                                                                   
 93:      18310          0          0          0       GIC  sunxi-mmc                                                                                                                                   
 94:     909231          0          0          0       GIC  sunxi-mmc                                                                                                                                   
 97:          0          0          0          0       GIC  spi0                                                                                                                                        
104:          0          0          0          0       GIC  ehci_hcd:usb1                                                                                                                               
105:          0          0          0          0       GIC  ohci_hcd:usb4                                                                                                                               
106:         91          0          0          0       GIC  ehci_hcd:usb2                                                                                                                               
107:          0          0          0          0       GIC  ohci_hcd:usb5                                                                                                                               
110:        118          0          0          0       GIC  ehci_hcd:usb3                                                                                                                               
111:          0          0          0          0       GIC  ohci_hcd:usb6                                                                                                                               
114:     183812          0          0          0       GIC  gmac0                                                                                                                                       
118:    3847283          0          0          0       GIC  dispaly                                                                                                                                     
IPI0:          0          0          0          0  CPU wakeup interrupts                                                                                                                                
IPI1:          0          0          0          0  Timer broadcast interrupts                                                                                                                           
IPI2:     176557     167026      80912     118984  Rescheduling interrupts                                                                                                                              
IPI3:        263        283        177        271  Function call interrupts                                                                                                                             
IPI4:          3          3          2          3  Single function call interrupts                                                                                                                      
IPI5:          0          0          0          0  CPU stop interrupts                                                                                                                                  
IPI6:          0          0          0          0  CPU backtrace                                                                                                                                        
IPI7:          0          0          0          0  completion interrupts                                                                                                                                
Err:          0                                                                                                                                                                                         
# ethtool eth0
Settings for eth0:                                                                                                                                                                                      
        Supported ports: [ TP MII ]                                                                                                                                                                     
        Supported link modes:   10baseT/Half 10baseT/Full                                                                                                                                               
                                100baseT/Half 100baseT/Full                                                                                                                                             
                                1000baseT/Half 1000baseT/Full                                                                                                                                           
        Supported pause frame use: No                                                                                                                                                                   
        Supports auto-negotiation: Yes                                                                                                                                                                  
        Advertised link modes:  10baseT/Half 10baseT/Full                                                                                                                                               
                                100baseT/Half 100baseT/Full                                                                                                                                             
                                1000baseT/Half 1000baseT/Full                                                                                                                                           
        Advertised pause frame use: No                                                                                                                                                                  
        Advertised auto-negotiation: Yes                                                                                                                                                                
        Speed: 1000Mb/s                                                                                                                                                                                 
        Duplex: Full                                                                                                                                                                                    
        Port: MII                                                                                                                                                                                       
        PHYAD: 0                                                                                                                                                                                        
        Transceiver: external                                                                                                                                                                           
        Auto-negotiation: on                                                                                                                                                                            
        Link detected: yes
# ethtool -i eth0                                                                                                                                                               
driver: sunxi_geth                                                                                                                                                                                      
version: SUNXI Gbgit driver V1.1                                                                                                                                                                        
firmware-version:                                                                                                                                                                                       
expansion-rom-version:                                                                                                                                                                                  
bus-info:                                                                                                                                                                                               
supports-statistics: no                                                                                                                                                                                 
supports-test: no                                                                                                                                                                                       
supports-eeprom-access: no                                                                                                                                                                              
supports-register-dump: no                                                                                                                                                                              
supports-priv-flags: no
# 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 | ALT4 | TxD3     | 15  | 13  |
 |     |     |       0v |      |   |  9 || 10 | 0 | ALT4 | RxD3     | 16  | 14  |
 |   1 |   0 |     RxD2 | ALT5 | 0 | 11 || 12 | 0 | ALT3 | GPIO.1   | 1   | 110 |
 |   0 |   2 |     TxD2 | ALT5 | 0 | 13 || 14 |   |      | 0v       |     |     |
 |   3 |   3 |     CTS2 | ALT5 | 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 | ALT5 | 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 |  OUT | 0 | 29 || 30 |   |      | 0v       |     |     |
 |   8 |  22 |  GPIO.22 |  OUT | 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+---+------+----------+-----+-----+
# cat unixbench-5.1.3/result/orange-pi-plus2-2017-08-07-01
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: orange-pi-plus2: GNU/Linux
   OS: GNU/Linux -- 3.4.113-sun8i -- #16 SMP PREEMPT Tue Jun 13 14:15:57 CEST 2017
   Machine: armv7l (armv7l)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   14:47:27 up 29 min,  2 users,  load average: 1.25, 0.93, 0.66; runlevel 2000-01-01

------------------------------------------------------------------------
Benchmark Run: Mon Aug 07 2017 14:47:27 - 15:15:30
4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables        6349037.5 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     1006.8 MWIPS (10.0 s, 7 samples)
Execl Throughput                                693.4 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks         98028.9 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           28717.7 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        246639.2 KBps  (30.0 s, 2 samples)
Pipe Throughput                              221516.1 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  32429.3 lps   (10.0 s, 7 samples)
Process Creation                               1906.4 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   1065.3 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    280.4 lpm   (60.1 s, 2 samples)
System Call Overhead                         465673.3 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0    6349037.5    544.0
Double-Precision Whetstone                       55.0       1006.8    183.1
Execl Throughput                                 43.0        693.4    161.3
File Copy 1024 bufsize 2000 maxblocks          3960.0      98028.9    247.5
File Copy 256 bufsize 500 maxblocks            1655.0      28717.7    173.5
File Copy 4096 bufsize 8000 maxblocks          5800.0     246639.2    425.2
Pipe Throughput                               12440.0     221516.1    178.1
Pipe-based Context Switching                   4000.0      32429.3     81.1
Process Creation                                126.0       1906.4    151.3
Shell Scripts (1 concurrent)                     42.4       1065.3    251.2
Shell Scripts (8 concurrent)                      6.0        280.4    467.4
System Call Overhead                          15000.0     465673.3    310.4
                                                                   ========
System Benchmarks Index Score                                         231.2

------------------------------------------------------------------------
Benchmark Run: Mon Aug 07 2017 15:15:30 - 15:43:43
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables       20145461.3 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     3392.8 MWIPS (10.2 s, 7 samples)
Execl Throughput                               1480.6 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        150785.3 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           46616.7 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        372879.2 KBps  (30.0 s, 2 samples)
Pipe Throughput                              708030.9 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  98681.5 lps   (10.0 s, 7 samples)
Process Creation                               4170.1 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   2120.6 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    291.6 lpm   (60.5 s, 2 samples)
System Call Overhead                        1481920.1 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   20145461.3   1726.3
Double-Precision Whetstone                       55.0       3392.8    616.9
Execl Throughput                                 43.0       1480.6    344.3
File Copy 1024 bufsize 2000 maxblocks          3960.0     150785.3    380.8
File Copy 256 bufsize 500 maxblocks            1655.0      46616.7    281.7
File Copy 4096 bufsize 8000 maxblocks          5800.0     372879.2    642.9
Pipe Throughput                               12440.0     708030.9    569.2
Pipe-based Context Switching                   4000.0      98681.5    246.7
Process Creation                                126.0       4170.1    331.0
Shell Scripts (1 concurrent)                     42.4       2120.6    500.1
Shell Scripts (8 concurrent)                      6.0        291.6    486.0
System Call Overhead                          15000.0    1481920.1    987.9
                                                                   ========
System Benchmarks Index Score                                         506.1

そんな感じ。

ボードサイズ比較

上:Orange Pi Plus2、下:Raspberry Pi3

[IoT]mz20mon

車載Raspberry Piシリーズ4台目を投入したので、ちょこっと説明。

  • 1台目: Raspberry Pi2
    エアコンパネル専用 (IGN-ON時のみ稼働)
  • 2台目:Raspberry Pi Zero
    ステアリングモニタ専用 (IGN-ON時のみ稼働)
  • 3台目:Raspberry Pi3
    LEDマトリックスパネル制御専用 (IGN-ON時のみ稼働、たまに、手動で稼働)
  • 4台目:Raspberry Pi2 ※今回はこの話
    多目的管理サーバ (常時稼働)

ざっくり構成

上記は、4台目のRpi2に接続している簡易構成図。

電源関連

  • 本システム専用にDeepCycleBattery 12V/50Ahを用意 → ブログ参照
  • 充電は走行中(IGN-ON)時に、走行充電器にて
  • Rpi2/関連システムには、12V→5Vレギュレータより供給

OS

  • Fedora24 for ARMv7
  • メインストレージは、16GB microSD
  • 追加ストレージに、64GB SSD(USB接続)

ネットワーク

  • インターネット接続
    Pixela社のLTE USBドングル PIX-MT100 に、OCNモバイルOneのSIMをさして通信
  • VPN
    tachibanaに、VPN接続
  • LAN
    オンボードEthernetにて、既存車内LANと接続

機能仕様等

  • dhcpサーバ
  • ntpサーバ
  • DNSリゾルバー(cache)
  • NAT Router機能
  • mysql(MariaDB)
  • 各種ロガー
    • Location
    • 温度・湿度・気圧
    • 電圧・電流
    • SPD、Rev、INJ、加吸圧、水温、その他(todo)

監視

  • tachibanaより、VPN経由で監視
  • 監視agentは、zabbix-agent

    ↑サンプル

センサーとか

  • 電流・電圧センサー1  (INA226iso)
    本システムの消費電力(12Vライン側)を計測
    zabbixモニタリング
    mysqlへロギング
  • 電流・電圧センサー2 (INA226iso-100)
    オルタネータハイサイド電流・電圧計測
    zabbixモニタリング
    mysqlへロギング
    ※まだ、シャント抵抗仮設置しただけ。
  • 温度・湿度・気圧センサー (BME280)
    トランク内の温度・湿度・気圧を計測
    zabbixモニタリング
    mysqlへロギング
  • GPSセンサー (GPS受信キット)
    現在地記録
    mysqlへロギング
    MQTT通知

他の構成は、システム詳細を参照。

続く。

車載PC9号機に向けて

メインの車載PCをリプレースするにあたり、次期車載PC9号機の構築を開始しました。

今回は、大幅に変更。

ほぼ0から構築開始。

主な変更点

  • OS変更 CentOS6.7 → Fedora23
  • OS変更に伴い、Systemd関連の整備
  • kernelのチューニング(リビルド)
  • scriptsの全面見直し
  • M/B,CPU変更 (P8H77-i→H81I-Plus、CPUは仮でCore i3-4130T)

↓現在 (進捗30%)

20160405_091818

↑ 自宅開発環境。

全機能再構築完了後に、現在の8号機のケースへ収納予定。

車載PC8号機メンテ

車載PC8号機に、イグニッション&2ndバッテリー電圧表示、電源温度表示アプリ(自作)を設置。

電源データ自体は、PSU(M4-ATX-hv)からUSB経由で取得。

20160329_231936

Ignition: ①の電圧 (M4-ATX-HVのIGNITIONへ接続)

  • IGNオンの時、A接点リレー経由でメインバッテリー(オルタ)の電圧を表示。

2nd-Battery: ②の電圧 (M4-ATX-HVのV+へ接続)

  • メインバッテリー(オルタ)からは、アイソレーター、電源ノイズフィルターを経ているため、若干ドロップしている。

↓ざっくりこんな感じ(オルタは省略しています。。。)

ps_bat

m4-atx-conn