やりたい事

  • ローラーマウスつきキーボード
  • クラムシェル型のPiConを作る。

やった事

  • ローラーマウスつきキーボード
    • PCB発注
    • ケースを考えてる
  • フレッツ光クロス
    • 停電時に復帰するようにした。
  • レップリのケース
  • Nucbox G9
    • NVMEを4つ差した。

学んだ事

  • ブロックデバイスレベルでのNVMEの読み書きはLinuxの方が速そう。

記録

  • 20250224
    • 祝日
    • ヒンジ
      • ノートPCを作る
      • https://www.printables.com/model/658393-friction-hinge-mechanism
      • ネジにする事で接触面積を稼いでると考えればいいのかな?
  • 20250225
    • ローラーマウスつきキーボード
      • PCBを作りたい。
      • 作りかけがあったので、いじった。
        • ダイオードを表面実装→スルーホールに。
        • イヤホンジャックをスルーホールから表面実装に。
      • 明日に発注しよう。
    • レップリのケース
      • さすがに足がないのは。
      • ただのお碗みたいなのを作ったら3.5mmジャックの所がひっかかった。
      • ここを凹ませないとだめだ。
    • フレッツ光クロス
      • ルータの電源を入れなおしたらネットにつながらなかった。
        • 設定途中だった。
      • 現状
        • dhclient -Pでプレフィックスをもらってる。
        • dhclientは、レスポンスをもらうとインターフェースの設定を消す。
        • dhclientは、状態がアップデートされるとシェルスクリプトをコールバックとして呼ぶ。
        • シェルスクリプトには環境変数としてもらったプリフィックスなどが渡される。
        • ただ渡された中にデフォルトゲートウエィがない。
      • とりあえず、停電のたびにネットが切れるとよくないので、固定のIPと固定のデフォルトゲートウェイを設定しておくスクリプトをdhclientに設定した。
  • 20250226
    • レップリのケース
      • へこませたけど、横にずれてるぞ。
        • kicadに読ませた配置データでジャックは点(x,y)に配置してた。
        • ローラーマウスつきのキーボードで使ったPJ-320Dはジャックの穴の軸は原点を通ってた。
        • このキーボードで使ったPJ-320Eは、1番ピンが原点になってる。
        • そのため、穴が2.3mmずれてる。
      • 再印刷するなら固定ツメや、枠部分もつけよう。
    • ローラーマウスつきキーボード
      • PCBは昨日のまま発注
      • ケースの構想を練りはじめる。
        • どう分割するかだな。
        • 上下分割かな?
      • サイズを考える。
        • 基板の厚さが 1.6mm
        • 基板の裏に 2mm ぐらい足がでてる。
        • 基板から 19.5mm キースイッチ(キーキャップ入れて)がでてる。
          • 押すと 15.5mm まで押せる。
        • PiPicoが裏に 7.7mm でてる。
        • イヤホンジャックが裏に 5.4mm でてる。
  • 20250227
    • レップリのケース
      • なおした。
    • ローラーマウスつきキーボード
      • 昨日計測したサイズを元にケースを考える。
      • 製作中
    • QuBenchy
      • 3DBenchyみたいなやつだけど、もっと小さい。
      • かわいい。
      • 印刷してみた。
      • 左: 0.2mm standard 150レイヤ
      • 右: 0.08mm extra fine 374レイヤ
        • むしろ0.2mmより汚ない?
  • 20250228
    • ローラーマウスつきキーボード
      • センサまわりを組込む
      • どうかな。
    • Nucbox G9
      • ディスクが4枚揃った。
        # 4枚を使ったZFSのRAID0
        |      | Read(MB/s)|Write(MB/s)|
        |------|-----------|-----------|
        |  Seq |   1563.000|    475.000|
        | 512K |    913.000|    445.000|
        |   4K |     11.800|     73.000|
        |4KQD32|     12.900|     90.500|
        # 4枚を使ったZFSのRAIDZ
        |      | Read(MB/s)|Write(MB/s)|
        |------|-----------|-----------|
        |  Seq |   2169.000|    414.000|
        | 512K |   1517.000|    400.000|
        |   4K |     12.300|     65.500|
        |4KQD32|     14.000|     80.400|
        # 4枚にLUKSの暗号化をし、ZFSのRAID0で束ねた。
        |      | Read(MB/s)|Write(MB/s)|
        |------|-----------|-----------|
        |  Seq |   1422.000|    436.000|
        | 512K |    819.000|    397.000|
        |   4K |      8.442|     42.900|
        |4KQD32|     11.100|     55.300|
        # 4枚にLUKSの暗号化をし、ZFSのRAIDZで束ねた。
        |      | Read(MB/s)|Write(MB/s)|
        |------|-----------|-----------|
        |  Seq |   1829.000|    395.000|
        | 512K |   1335.000|    374.000|
        |   4K |      9.654|     39.700|
        |4KQD32|     11.800|     52.600|
        
      • 先週LUKSの数値がおかしかったので下2つが信頼できるのかは不明。
  • 20250301
    • Nucbox G9
      • FreeBSDを入れた。このインストーラを見たのはひさしぶり。
      • fioのエンジンとしてlibaio(Linuxの専用システムコールに依存してる)が使えないので、posixaioを使った。
      • ホームディレクトリ
        |      | Read(MB/s)|Write(MB/s)|
        |------|-----------|-----------|
        |  Seq |   4395.000|    134.000|
        | 512K |    142.000|    107.000|
        |   4K |      6.911|      3.176|
        |4KQD32|      6.815|      2.756|
        
        • またまたDirectが効いてなさそう。
      • ZFS 2.3.0を入れた。
        • このマニュアルでいけたが、コマンドのインストール先が/usr/local/sbin/zfsなので注意
        • https://openzfs.github.io/openzfs-docs/Getting%20Started/FreeBSD.html
          $ zfs version
          ikeji@bsd:~ % zfs version
          zfs-2.2.6-FreeBSD_g33174af15
          zfs-kmod-2.3.0-1
          ikeji@bsd:~ % /usr/local/sbin/zfs version
          zfs-2.3.0-1
          zfs-kmod-2.3.0-1
          
      • いろいろ試した。
        # zfs raid0 with 4disks
        |      | Read(MB/s)|Write(MB/s)|
        |------|-----------|-----------|
        |  Seq |   4031.000|   3954.000|
        | 512K |   3556.000|   3724.000|
        |   4K |    172.000|     91.200|
        |4KQD32|    311.000|     92.700|
        # zfs raidz with 4disks
        |      | Read(MB/s)|Write(MB/s)|
        |------|-----------|-----------|
        |  Seq |   3923.000|   4357.000|
        | 512K |   3012.000|   3683.000|
        |   4K |    161.000|     82.300|
        |4KQD32|    309.000|     85.400|
        # zfs raid0 with geli 4 disks
        |      | Read(MB/s)|Write(MB/s)|
        |------|-----------|-----------|
        |  Seq |   3879.000|   3021.000|
        | 512K |   3618.000|   2409.000|
        |   4K |    160.000|     61.700|
        |4KQD32|    322.000|     61.400|
        # zfs raidz with geli 4 disks
        |      | Read(MB/s)|Write(MB/s)|
        |------|-----------|-----------|
        |  Seq |   3879.000|   1484.000|
        | 512K |   4592.000|   1644.000|
        |   4K |    156.000|     51.700|
        |4KQD32|    319.000|     54.300|
        
        • 速すぎる気がする。
        • どっかでキャッシュがオフになってない気がする。
  • 20250302
    • Nucbox G9
      • そもそも、ZFSなしだとどのぐらいの速度だろう?
        # デイスク直
        |      | Read(MB/s)|Write(MB/s)|
        |------|-----------|-----------|
        |  Seq |    754.000|   1154.000|
        | 512K |   1198.000|   1102.000|
        |   4K |     45.400|    273.000|
        |4KQD32|    909.000|    647.000|
        # geliで暗号化したブロックデバイス直
        |      | Read(MB/s)|Write(MB/s)|
        |------|-----------|-----------|
        |  Seq |    392.000|    494.000|
        | 512K |    536.000|    402.000|
        |   4K |     58.000|    233.000|
        |4KQD32|    661.000|    623.000|
        
        • readが遅いな。
      • 先週やったLinuxとの比較
        |       | Read | Read | Read | Read   | Write | Write | Write | Write  |
        |       | Seq  | 512K | 4K   | 4KQD32 | Seq   | 512K  | 4K    | 4KQD32 |
        |-------|------|------|------|--------|-------|-------|-------|--------|
        |Linux  |1434.0|1101.0|  45.7|   971.0| 1148.0| 1047.0|  270.0|   910.0|
        |LUKS   | 629.0| 513.0|  37.2|   669.0|  598.0|  509.0|  103.0|  1166.0|
        |FreeBSD| 754.0|1198.0|  45.4|   909.0| 1154.0| 1102.0|  273.0|   647.0|
        |Geli   | 392.0| 536.0|  58.0|   661.0|  494.0|  402.0|  233.0|   623.0|
        
        • Linuxの方がシーケンシャルリードが早い。
        • FreeBSDの方がランダム書き込みが早い。
        • ただ、この結果が正しい気はあまりしない。
    • がまぐち
      • がまぐちのパッチンってとめるやつを3Dプリンタで作れないか?
        • このサイズならできそう。
        • 布につくかな?
      • 型紙はどうやって作るんだ?
        • ネットを見たらjwcadで作ってる人がいた。
        • それなら、FreeCADで作るよ。
        • このTechDrawを使うには3Dである必要があるみたいなので、一度押し出した。