趣味の電子工作などの記録。時にLinuxへ行ったり、ガジェットに浮気したりするので、なかなかまとまらない。※サイト移転しました(tomono.eleho.net ⇒ tomono.tokyo)
RSS icon
  • Raspbianをダウンロードしようとしたら・・・

    投稿日 2018年 7月 22日 コメントはありません

    公式サイトのダウンロードページから RASPBIAN STRETCH LITE のTorrentのリンクをクリックしたところ・・・

    ということで、負荷がいっぱいなので・・・ということで .torrent ファイルすらダウンロードできず。でも負荷を軽くするための torrent だと思うのですが、torrentでダウンロードするための .torrent がダウンロードできなかったら余計にサーバーに負荷が集中するような気がします。

    幸い、ミラーサイトが国内にありましたので、そちらからダウンロードしましたが・・・。

    http://ftp.jaist.ac.jp/pub/raspberrypi/raspbian/images/

    で、ZIPファイル展開して、USBイメージライタでイメージを書き込んで、初めからSSHを有効化するために bootパーディション直下に ssh という名前で空ファイルを作ってから起動しました。(/boot/ssh ファイルを作らないと、一度ディスプレイ+キーボードを繋ぐか、シリアルコンソールを繋がないとSSHを有効化できないので・・・)


  • Raspberry Piをネットワークの試験に使う

    投稿日 2018年 2月 10日 コメントはありません

    ここのところ買い集めている小さなLinuxボードは結局はネットワークの試験のために購入したもので、元々はなるべく小さなtcpdumpが使えて動かしっぱなしで放置できるものを探していたものです。で、いろいろぐぐっていたら、linuxでEthernetインタフェースが2つある環境を使って、もっといろいろできることがわかってきました。具体的には、ブリッジとして動作させてた上で、遅延を挿入したりできるというものです。その環境もRaspberry PiにUSBイーサネットアダプタを追加してやれば、Raspberry Piでもできそうなことがわかったので、試してみました。

    1.Raspbianのインストール

    今回はGUIは不要なので、Raspbian Liteを適当なMicro SDに書き込んで、余っていたRaspberry Pi model B+に入れました。
    起動して、User/Passwd=pi/raspberryでログインしたあと、コンソールから

    として再起動。再起動後、linuxマシン側から

    としてsshでログイン、以降はリモートログインで作業します。リモートログインしたら、

    として、初期設定をします。今回は、

    • パスワード設定
    • ホスト名をraspinetに変更
    • ブートオプションをConsoleに設定
    • ローカライゼーションでLocaleにja_JP.UTF-8 UTF-8を追加、デフォルトはen_GB.UTF-8のまま。タイムゾーンはAsia/Tokyoを選択。
    • Advanced OptionでExpand Filesystemを選択、Memory Spiltは16MBに設定

    で、設定後に再度、再起動。再起動後、Linuxマシン側から

    として再度ログインします。ログインしたら、

    として、アップデートを一通りかけた後、bridge-utilsとtcpdumpをインストールします。

    2.スクリプトファイルを作成して起動時に実行させる

    として、ブリッジを起動する以下の内容のスクリプトを作成しました。(実行タイミングをsleepで調整しているのでちょっと汚いですが・・・)

    IPv6は今回禁止、IGMP snooping も禁止しました。作成後に、

    pi@raspinet:~ $ sudo chmod a+x /usr/local/bin/start-bridge

    として、実行権限を付与。起動時に実行させるため、/etc/rc.local を修正して、最後の exit 0 の前に以下の部分を追加しました。

    これで、Raspberry Piを起動させると自動的にブリッジとして動作するようになります。

    3.tcpdumpで通過パケットをモニタしてみる

    Linuxホスト側から

    でブリッジに設定したRaspberry Piにログインします。その後、

    とか、

    で通過するパケットをモニタします。(後ろの方の長いのは vbr0 のIPアドレスを抽出しているだけです)
    ポートやIPアドレスでRaspberry Piに接続しているsshのパケットを除外しています。除外しないと、表示した文字列をパケットキャプチャして、それを再度表示してしまいます。

    4.参考情報


  • NanoPi NEO2でタイムラプス撮影(続)

    投稿日 2018年 1月 8日 コメントはありません

    NanoPi NEO2でのタイムラプス撮影ですが、前回はcronが使えないようなので、スクリプト中でsleepして周期の調節をしていました。

    で、いろいろ調べていたら、systemdのtimerユニットで似たようなことが実現できるようなのでやってみました。

    1.スクリプトの作成

    ログイン中であればユーザー権限でtimerユニットを動作させることもできるようなのですが、今回はroot権限で動作させます。

    /usr/local/bin/TimerImageとして以下のファイルをrootで作成しました。

    2.サービスファイルの作成

    /etc/systemd/system/TimerImage.serviceとして以下のファイルを作成しました。

    3.timerを設定する

    /etc/systemd/system/TimerImage.timerとして以下のファイルを作成しました。

    作成後、以下のようにして起動します。

    daemon-reload は設定ファイルを修正した場合に再読み込みさせる際に必要です。(=初回は必要ない)

    4.動作状態を確認する

    以下のようにして動作状態を確認することができます。再起動しても自動的に起動することも確認できました。

     


  • NanoPi NEO2のUbuntu CoreでWiFi有効化

    投稿日 2017年 11月 29日 コメントはありません

    NanoPi NEO2 の Ubuntu Core で WiFi を有効化したので、その際のメモです。

    使用可能なUSBアダプタは

    • RTL8188CUS 802.11n WLAN Adapter
    • RT2070 Wireless Adapter
    • RT2870/RT3070 Wireless Adapter
    • RTL8192CU Wireless Adapter
    • NetGear, Inc. WG111v3 54 Mbps Wireless [realtek RTL8187B]

    ということらしいですが、きっと Raspberry Pi で動作可能なものは動くのでしょう^^;

    USBコネクタにWiFiアダプタは挿しておきます。

     

    1.使用可能なデバイスのリストアップ

    という感じで、wlxに続いてMACアドレスという形でデバイスが表示されました。

    2.WiFi起動

    $ sudo nmcli r wifi on

    3.アクセスポイントのスキャン

    という感じでグラフィカルに表示されます。

    4.アクセスポイントに接続

    5.接続されているか確認

    という感じで無事に接続。再起動しても大丈夫です。


  • NanoPi NEO2のNASキットを動かしてみました

    投稿日 2017年 11月 28日 5個のコメント

    秋月で NanoPi NEO/NEO2 用のNASキットが売っていたので、買ってみました。

    秋月の説明書きにはヒートシンクが同梱されているとは書いてない(写真には写っていますが・・・)ので、思わずヒートシンクも余計に買ってしまいましたが、これから買う方はキットにヒートシンクが同梱されているので気をつけて下さい。

    このNASキット以外に、

    • NanoPi-NEO2 (または NanoPi-NEO)
    • 2.5インチのHDDまたはSDD(まずは余り物の160GBをつけてみました)
    • CR2032コイン型リチウム電池
    • 起動用のMicroSDカード(手持ちの16GBを使いました)
    • 12VのACアダプタ(秋月で標準的なDCプラグがついているもの)

    の準備が必要です。

    組み立てにあたっては、

    • ハンダゴテ一式(NanoPi-NEO2の端子はハンダ付けが必要)
    • プラスドライバ(たぶん+1のもの)

    も必要です。

    とりあえず、端子をハンダ付けしました。ランド径が小さいので、ハンダ付けしにくいです。

    この状態で、別のNanoPi-NEO2 から持ってきた MicroSD カードを挿して Ubuntu-Core で起動して ssh でログイン、適当に /dev/sda1 を mount してやると、中身を見ることができましたので、動作は問題ないようです。

    ヒートシンクを付けてみました。

    この後、Official ROMのイメージを

    https://www.mediafire.com/folder/ah4i6w029912b/NanoPi-NEO2

    の下の Official ROMs から nanopi-neo2_debian-nas-jessie_4.11.2_20171103.img.zip をダウンロードして、これを展開、USBイメージライタでMicroSDに書き込んで電源投入します。

    ブラウザで、 http://friendlyelec.local/ にアクセスすると、

    として画面が出ました。

    ユーザー名: admin
    パスワード: openmediavault

    でログインすることができました。

    とりあえず、

    • Web管理者パスワードの設定
    • タイムゾーンの設定、NTPの有効化
    • ホスト名を NanoPi-NAS に変更
    • アップデートの確認&インストール
    • ディスクのワイプ、ファイルシステム作成
    • ユーザーの作成

    をしてみました。

    この後、プラグインを見てみると、「openmediavault-flashmemory」というのがあり、これを使うと MicroSD への書き込みを減らせるようです。・・・が、インストールを試みたところエラーになりました・・・。

    あと、デフォルトで root での ssh ログインが有効になっています

    $ ssh root@nanopi-nas.local (変更していない場合はfriendlyelec.local)
    root@nanopi-nas.local’s password: (デフォルトパスワードは fa )
    root@nanopi-nas:~# passwd
    Enter new UNIX password:
    Retype new UNIX password:
    passwd: password updated successfully
    root@nanopi-nas:~# passwd pi
    Enter new UNIX password:
    Retype new UNIX password:
    passwd: password updated successfully
    root@nanopi-nas:~# passwd fa
    Enter new UNIX password:
    Retype new UNIX password:
    passwd: password updated successfully
    root@nanopi-nas:~#

    として、ログインパスワードは変更しておく必要があります。(もしくは、SSHを無効化したほうがよいかも)

    ・・・と思ったのですが、/etc/ssh/sshd_config の AllowGroups の項目には root と ssh しかいないので、実際にログインできるのは root だけのようです。


  • NanoPi NEO2でタイムラプス撮影

    投稿日 2017年 11月 27日 コメントはありません

    部屋を掃除していたらELECOMのWebカメラが出てきました。LinuxMintのマシンに挿してみたところ uvc カメラとして認識するようでしたので、NanoPi NEO2に挿してみたらこちらも認識しました。

    なので、TimeLapse撮影ができないか、試してみました。
    ググると Ubuntu でTimeLapseをやっている方は結構いるようで、基本的にはそちらに倣ってやってみました。

    基本、NanoPi NEO2に合わせている以外はこちらのページのパクリです。

    1.カメラ画像の連続キャプチャ

    1枚単位での撮影には fswebcam を使うのが簡単なようです。

    でインストールできます。で、連続撮影する場合には、1枚キャプチャするシェルスクリプトを書いて、cron で所定の時間毎に1枚キャプチャ、というのが簡単なようなのですが、NanoPi-NEO2のUbuntu-coreではcronはユーザーに開放されてないっぽいです。crontab -eとしても編集できないですし、ググってもシェルスクリプト内でループしてsleepで時間待ちせよ、みたいなことが書いてあります。

    結局、以下のようなシェルスクリプトで連続撮影します。ファイル名は TimeLapse.sh として、ホームディレクトリの下に CaptureImage というディレクトリを作って、そこに置きました。

    作成したスクリプトに実行権限を付けてやります。

    で、実行すると、ザクザクと画像が溜まっていきます。

    2.キャプチャした静止画の引取の準備

    動画への変換はホスト側でやります。

    ホスト側で

    として、sshfsでnanopi側のホームディレクトリをローカルディレクトリにマウントして、これで引き取ります。
    (今考えれば、sshfsでマウントしなくても scp でも良かった・・・)

    3.画像の変換の準備

    ローカル側でffmpegで変換しますが、motionをインストールするほうが楽だという情報があったので、そうしました。

    4.画像の引取と変換

    以下の手順で画像の引取と変換を行います。

    これで TimeLapse ができましたが、静止画の保存サイズが大きいようです。
    1分間で3〜4MB出力しているようなので、1週間で40GBくらいになってしまいます。ちょっと要対策ですね。


  • ROCK64/4GBを買ってみた

    投稿日 2017年 10月 9日 2個のコメント

    秋月にROCK64が売られていたので買ってみました。ROCK64はRaspberry Piと似たような形状のボードコンピュータですが、ギガビットイーサネットとUSB3.0を搭載し、搭載RAM容量別に3モデルあって、この手のボードとしては大容量の4GBのRAMが搭載されているモデルがあるので手を出してみました。秋月のページでは電源供給には何やら工作しないと電源供給できないような面倒くさいことが書いてありますが、秋月で売っている内径2.1mmの5V3A出力のACアダプタと、2.1mmメス⇔1.3mmオスの変換プラグ(たぶんこれ)で基板上のDCジャックから電源供給できました。

    次に、ソフトウェアというか、Linuxのイメージですが、こちらに掲載されているものをいくつか試してみましたが、まだどれも今ひとつな感じです。UARTコンソール経由で制御したかったのですが、シリアルコンソールは通信パラメータがわかりません。速度をいろいろ変えても、ubootも正しく表示できないです。(オシロスコープで直接見れば良いのですが・・・)
    また、USB HUBを噛ませているからかもしれないですが、USBキーボードとUSBマウスで入力しようとすると、時々キーイベント(キー押下、キー放す)を取りこぼすようです。

    もうしばらくいろいろいじってみる必要がありそうです。


  • WiFi+BT付きのRaspberry Pi Zeroが登場

    投稿日 2017年 3月 1日 コメントはありません

    すでに日本語の記事も出回っていますが Raspberry Pi 5周年にあたって、Raspberry Pi Zero の新モデルが登場しました。

    名称はRaspberry Pi Zero W。仕様としてはRaspberry Pi Zeroに802.11nとBluetooth 4.0が追加になっています。価格はRaspberry Pi Zeroが$5だったのに対して、Raspberry Pi Zero Wは$10。設計としては Raspberry Pi Zero に Raspberry Pi 3 model B の無線部分を移植(ただしアンテナはチップアンテナから基板パターンによるアンテナに変更)した感じのようです。

    Raspberry Pi Zeroはようやく日本でも入手可能になりそうな感じですが、Raspberry Pi Zero Wは早くもSwitch Scienceさんが「3月下旬に1,296円で発売」としています。(まだ技適の問題がクリアになっていないようですが)

    Raspberry Pi Zeroは激安でしたので(原価率に無理があったんじゃないかと思うのですが)入手難に悩むことになりました。しかしながら、今回のRaspberry Pi Zero Wは追加部品がそれほど多くない割に$5アップということで原価率的にはおそらく改善しているのではないかと思います。入手しやすくなることを期待したいものです。

    加えて、Raspberry Pi Zero W用の公式ケースも登場するようです。Raspberry Piのロゴ入りのトップカバーは40ピンGPIOが引き出せるようになっているものと、カメラモジュールが取り付けられるようになっているもの、何も穴が開いていないものの3種類が付属するようです。

    現物の画像などは Hack a Day の記事の写真がわかりやすいと思います。


  • インテルベースのシングルボードコンピュータ

    投稿日 2016年 11月 24日 コメントはありません

    たまたま見かけたのですが、「Raspberry Pi 3に対抗する(?)」インテルベースのシングルボードコンピュータがいくつか出てきているようです。

    最初にみかけたのが LattePanda です。最初にみつけたYouTubeの動画などによると、

    • IntelのQuad CoreのCPU(Cherry Trail 1.8GHz)
    • ストレージは32GBのeMMC
    • RAMは2GBと4GBの2種類
    • RAMが2GBのモデルにはWindows10付きのものもある
    • USB3.0×1、USB2.0×2、WiFi + Bluetooth4.0、HDMI、100Mbps Ethernet、MicroSDスロット
    • Arduino対応のGPIO、Cheery TrailのGPIO
    • 電源は5V 2A

    と仕様のようです。で、メモリ2GBのOSなしが$79、メモリ2GBのWindows10モデルが$109、メモリ4GBのOSなし?が$139のようです。ディストリビュータはDFRobotのようなのですが、LattePandaのWebサイトからAmazon Japanのページに飛んでくると、4GB版が19,999円になっています。で、この4GB版の商品説明が微妙で、

    2016-11-24

    で、なんのこっちゃ?なのですが、要はWindows10はインストールされているのだけど、ライセンスキーは付属しない、ということのようです。騙されて(?)買っちゃった人のレビューが載ってます。$109でOS有りだと、まあ面白いかも、なのですが、いくら4GBといえども、2万円でOS無しだとあまり買う意味無いですね・・・。また、Raspberry Pi 3との比較ビデオもあって、これを見ると、Intelプロセッサだけどあまり速くない。というか、Raspberry Pi 3が思ったよりも速いというか、やっぱWindows10重いというか、そんな感じでしょうか。

    次に見かけたのがUDOO X86です。こちらはKICK STARTERでキャンペーンやってた(?)みたいです(やってるけど日本からは注文不可?)。公式Webの内容とKICK STARTERの内容で差があるのですが、公式Webの記載によると、

    • Intel の Quad Core CPU(Braswell で最大2.56GHzまでのモデルがある?)
    • メモリはDDR3L で 2GB/4GB/8GB
    • HDMIとDP×2(4K画像が3画面出せるような記述あり)
    • eMMC最大32GB(Webサイトでは安価なモデルはeMMCなし、KICKSTARTERでは8GB)
    • SATAコネクタ、M.2 SSDスロット、MicroSDスロット(KICKSTARTERではMicroSDからブートできるような記載もあります)
    • USB3.0×3ポート
    • Gigabit Ether
    • ArduinoコンパチのI/Oポート
    • その他

    ということみたいです。KICKSTARTERでは

    • 2GHzのCPU、RAM2GB、eMMC8GBのものが$89(売り切れ)
    • 2.24GHzのCPU、RAM4GB、eMMC8GBのものが$109
    • その他

    のようで、Webサイトで受け付けているPREORDERでは、

    • Atom X5-E8000 2GHz、RAM2GB、eMMCなし、ACアダプタ付きで$125
    • Celeron N3160 2.24GHz、RAM4GB Dual Channel、eMMCなし、ACアダプタ付きで$149
    • Celeron N3160 2.24GHz、RAM4GB Dual Channel、eMMC 32GB、ACアダプタ付きで$165
    • Pentium N3710 2.56GHz、RAM8GB Dual Channel、eMMC 32GB、ACアダプタ付きで$259

    となっています。まあ、小さいPCとしてみると魅力的に見えないこともないのですが、送料とか関税(かかるのかな?)とか考えるとイマイチ感もありますね。


  • Raspberry Pi3でネットワークブートなどが可能に?

    投稿日 2016年 8月 5日 コメントはありません

    まだ正式版ではないようですが、Raspberry Pi3でUSBメモリやネットワークからのブートが可能になるようです。

    リンク先によると、USBマスストレージとして起動するデバイスブート、USBホストとして起動するホストブート、マスストレージデバイスから起動するマスストレージブート、イーサネットから起動するネットワークブートが選べるようです。

    ブートシーケンスの資料によると、GPIOで起動モードを設定すると、CPUに内蔵のワンタイム(OTP=One Time Programmable)ROMから起動して、更にどのデバイスから起動するかの設定をGPIOから読み込むようです。

    ネットワークブートは設定がちょっと面倒な感じだけど、一度設定してしまえばクライアント側の劣化部分(要はSDカード)がほとんどなくなるのでちょっと便利かもしれない。設定方法はたぶんここ(最初のリンクの中にある)でしょうか?
    でも、Raspberry PiのEthernetはUSB越しなので、USB抜き差しで不安定になることがあるような感じなので、用途はかなり限られる気がしますが、大量のRaspberryPiのルートファイルシステムをあれこれしながら動かす用途であれば便利かも・・・ですね。クラスタとかなにかの観測ネットワークとかかな?

    自分は・・・たぶんやらないだろうなぁ・・・。