ラベル Raspberry Pi の投稿を表示しています。 すべての投稿を表示
ラベル Raspberry Pi の投稿を表示しています。 すべての投稿を表示

2021-05-06

ラズパイをホームルーター化

十数年に渡り利用してきたADSLサービスが来月末に終了してしまうので、緊急避難先として、Android端末のUSBテザリングを使ってLAN内のMac/PCをインターネットに接続できるかどうか試してみた。

このADSLは、とても古く12 Mbps(実測9 Mbpsくらい)という、いまとなっては低速な回線なので、むしろモバイル回線のほうが快適かもしれない。

ADSLモデム(ルーター機能付き)+アナログ電話機を、Raspberry Pi(ルーター化)+Android携帯電話に置き換える作戦である。

ネット検索する(Google先生にきいてみる)と「ラズパイを無線LANルーター化する」みたいな記事がたくさんヒットするのだが……

電線が大好きなので、無線LAN (Wi-Fi) ではなく、有線LANに接続できるようにしたい。いわゆるホームルーター(RJ-45有線LANポート付き)を使うのが常道だが、それだと電話が使えない。

どうやら、有線LANとUSBテザリング接続の組み合わせで使いたい人は少数派らしい(Android 11には「イーサネット テザリング」という面白い機能がある。しかし今回使用するAndroid端末には、いまだAndroid 11アップグレードが提供されないので、この機能は使えない)。

無線でも有線でも大した違いはないだろってことで、レッツらトライ。 あっさり成功。

2020-11-01

熱がこもるラズパイ公式ケース

Raspberry Piのケースはさまざまなメーカーから発売されているが、オフィシャルとか純正という言葉に弱いので、ラズベリーパイ財団が提供している公式のケースを使っている。手ごろな価格で、デザインも悪くない(Raspberry Pi 1 Model B+、Raspberry Pi 2 Model B、Raspberry Pi 3 Model BおよびRaspberry Pi 3 Model B+には同じケースが使えるが、Raspberry Pi 4 Model Bはケースの形状が異なる)。

The official Raspberry Pi case for Raspberry Pi 4/The official Raspberry Pi case for the Raspberry Pi 3 Model B and Model B+

でも、このケース、割と密閉されているので熱がこもってしまうのだ。

高熱を発することで有名な Raspberry Pi 4 Model B と Raspberry Pi 3 Model B+ で平熱(アイドル時のCPU温度)を計ってみた。

$ vcgencmd measure_temp

基板むき出し裸の状態:

  • RasPi 4B = 38.0 〜 40.0 ℃
  • RasPi 3B+ = 38.1 〜 40.2 ℃

2017-12-19

Raspbian Stretch でタイムサーバー

Raspbian stretch の新しいイメージファイル (2017-11-29-raspbian-stretch-lite.zip) が出ていたので、これを使って久しぶりに Raspberry Pi でハードウェアクロック(RTC)付きタイムサーバーを作ってみた。備忘録を残しておく。

以前(wheezyで試したとき)とは、いろいろ、やり方が変わっているようだ。stretchのほうが簡単に思える。

RasPiに接続したRTCを認識させるには device tree overlay 機能を使う。おなじみのconfig.txtファイルに次のような設定を追加してRasPiを再起動すれば /dev/rtc0 と /dev/rtc が生えてくる。

$ sudo -e /boot/config.txt
dtoverlay=i2c-rtc,pcf2127

この設定例はリアルタイムクロックICとしてPCF2127を接続した場合を想定している(I2C接続なのでraspi-configでI2Cを有効にしておくのも忘れずに)。 他にどのようなチップに対応しているか調べるには次のようにする。

$ dtc -I dtb -O dts -@ /boot/overlays/i2c-rtc.dtbo

wheezyではNTPクライアント/サーバーに ntpd を使っていたが、最近は、NTPクライアント機能だけでよければ systemd-timesyncd を、サーバー機能も必要なら Chrony を使うのが一般的らしい(ntpdも使える)。

fake-hwclock をアンインストール(あるいは無効化)して chrony をインストールする。

2017-07-24

Raspbianの apt-get upgrade が失敗する

2017-07-05-raspbian-jessie.zip が出ていたので、Raspberry Pi 3 Model Bのシステムを入れ替えることにした。

いつものようにmacOSのターミナルからddコマンドを使ってSDカードに書き込み、RasPiを起動、パッケージを最新のものに更新しようとしたところ、

$ sudo apt-get update
$ sudo apt-get upgrade
... 中略 ...
Reading changelogs... Done
Preconfiguring packages ...
dpkg: unrecoverable fatal error, aborting:
 files list file for package 'qdbus' is missing final newline
E: Sub-process /usr/bin/dpkg returned an error code (2)

のようなエラーが発生する。 package 'qdbus' だけでなく、いくつかの別のパッケージもおかしい。 次の例では、'python3.4'でエラーが発生している。

dpkg: unrecoverable fatal error, aborting:
 files list file for package 'python3.4' is missing final newline
E: Sub-process /usr/bin/dpkg returned an error code (2)

2017-03-10

USBデバイスからRaspberry Piを起動

Raspberry Pi 3 Model B では、「SDカードレスでUSBマスストレージデバイスから起動できるようになった」と聞いたのは、かなり前のことである。いまさら満を持して amazon.co.jp で簡単に入手できる次の2品を買って試してみることにした。

2015-10-01

MacでZIPファイルが展開できない

Raspberry Pi用のLinuxディストリビューション Raspbian Jessie のSDカードイメージが公開されていたので、さっそく試してみようとダウンロードしたのだが……

OS X Yosemite 10.10.5 + Safari 8.0.8 でダウンロードしたZIPファイルをFinderからダブルクリックで展開(解凍)しようとしておかしなことに気が付いた。

Raspbianのイメージは圧縮状態で1.33GBのかなり大きなファイルなので展開にも時間がかかる。展開の途中経過を表示するメッセージは通常なら「“2015-09-24-raspbian-jessie.zip”を展開中...」だ。

ところが、いつもと違って、展開の進捗を示すダイアログのメッセージが「“2015-09-24-raspbian-jessie.zip”アーカイブ中...」となっている。

アーカーイブ中? って、ZIPアーカイブをさらにアーカイブしてどうすんだよ。

2015-09-29

/proc/config.gz が見当たらない

久しぶりにRaspberry Piのシステムを新規インストールしてパッケージをアップデートしたら Raspbian Linux のカーネルがいつの間にか4.1系に変わっていることに気が付いた。

普段カスタマイズしたカーネルを使っているので、いつものようにカーネルを再構築しようとしたところ /proc/config.gz が見当たらない。

そんなときは、

$ sudo modprobe configs

とすると良いらしい。

2015-07-13

Raspberry Pi 2 Model B

遅ればせながら Raspberry Pi 2 Model B がやって来た。これでウチの RasPi は六兄弟になった。

左上から、Model A Rev.2、Model A+、 Model B Rev.1、Model B Rev.2、Model B+、2 Model Bである。 Raspberry Pi 2 Model BはRaspberry Pi Model B+と外観はほとんど変わらない。端子やネジ穴の位置はまったく同じ。

2015-06-11

RasPiでRS485接続

ここのところプログラムを書く仕事は Raspberry Pi (Raspbian Linux) ばかりである。先月はオムロンのRS-485接続タイプの電力監視用機器からデータを収集するRasPi用のプログラムを作っていた。関連機器を並べるとこんな感じ。

写真右側の三段重、上から、小型電力量モニタKM-N1-FLK、小型電力量センサKM20-B40-FLK、通信変換器K3SC-10、写真左側Raspberry Piに乗っかってるのはアドオンボードRasPiCommである。

RS-485(今はEIA-485なのかな)はFAでは、まだまだ使われているらしい。マルチドロップのシリアル接続というと、古くからのMacユーザーはLocalTalkとか思い出すかもしれない(RS-422だけど)。

プログラム自体は RS-232C だろうが RS-422 だろうが RS-485 だろうが、シリアルデバイスを扱うので同じように作れば良いのだが、RS-485だと物理的に接続する手段を探すのに結構手間取った。

2015-01-08

Raspberry Pi Model A+

Raspberry Pi Model A+ がやって来た。これでウチの RasPi は五兄弟になった。

左から、Model B Rev.1、Model B Rev.2、Model B+、Model A Rev.2、Model A+である。

海外では2014年11月に発売されたModel A+だが、日本では年末近くになって、ようやくRSコンポーネンツから購入できるようになり、年が明けてしばらくして届けられた。Model B+に比べ、ちょうどネットワークコネクタの分だけ基板の長さが短くなり、気のせいじゃなくて本当に小さくなった。

2014-11-29

RasPiで安価にVPN

ここのところ、ちょくちょく知り合いの会社経営者の方々から、「本社と支店のLANを接続したい、従業員に外出先からモバイル端末を使って社内のシステムにアクセスできるようにしたい」みたいな相談を受けることがある。

ウチはソフトウェア開発はやってるが、最近はネットワーク関係の仕事なんて、とんとご無沙汰でVPN環境の構築など専門外だ(運用ノウハウも持ってないし)。面倒なことは専門家にパスすることにしようと思い、ネットワーク・システム構築をやっている会社の知り合いに聞いてみたところ、やはり、まともな会社にVPN構築とか頼むと結構なお値段になるそうな。

仕方ないので、VPN構築費用の見積書を見て目玉が飛び出た中小零細企業の社長さん向けに、「RasPiでインターネットVPN環境を構築すると、そこそこ安くて便利ですよ」なシステムを開発した(開発したといっても、ネット上に情報は沢山あるので、適切な選択と、ちょっとした工夫と味付けをしただけだが)。

オープンソースの VPN ソフトウェアをインストールしてVPNアプライアンス化した Raspberry Pi を2台作成し、秘密の呪文を唱え、双方のLANに接続すれば、あっという間に拠点間接続完了。高性能とか高可用性とか求めないのであれば、高価なVPNルーターを買わなくても、これで十分な気がする。

まあ、低価格、安いものには、安いなりの理由があるので過剰な期待はいけません。信頼性が必要な場合は、ちゃんとしたSI屋さんに頼みましょう。

2014-07-30

Raspberry Pi Model B+

Raspberry Pi Model B+ がやって来た。これでウチの RasPi は四兄弟になった。

左から、Model B Rev.1、Model A Rev.2、Model B Rev.2、Model B+である。

Model B+を手に取った最初の印象は「あれ、前のより小さくなった?」なのだが、並べてみると大して変わらない。USB端子の出っ張りがなくなったのと、角が丸くなったせいだろうか。

2014-06-26

MacとRasPiでHDDを共用

Mac と Raspberry Pi の間でハードディスクを介してデータをやり取りしたいのだが、さて、ディスクのフォーマットは何にすれば良いだろう?

一般的には、MacでもWindowsでもLinuxでも読み書きできるFAT32がよく使われる(ディスクユーティリティで言うところの「MS-DOS (FAT)」)。が、今回は4GBを超えるファイルがあるので、それでは困る。じゃあ exFAT にしようかと思ったのだが、 LinuxはexFATがあまりお好きじゃないようだ。

ちょっと調べると、最近のLinuxはHFS+もサポートしているらしい。それなら普通にMac用に初期化したディスクが使えるな、と思ったのだが、落とし穴があった。

2014-06-23

Raspberry PiでQt5.3

今月は Raspberry Pi の仕事をしていた(お客さんに、それRasPiでやりませんか? と提案したら一発OKが出た。ノリのいいお客さんだ)。内容は、シーケンサ(PLC)で構築されていた制御システムを、Raspberry PiとUSB接続のデジタル出力ボードに置き換えるというもの。

次の写真は試作段階のスナップ。入力はRasPiのGPIOを使い、出力は制御しなくてはならない接点の数が多いので USB DIO ボードを使って拡張した。こちらが担当するのはソフトウェアのみなので、ハードウェア部分は別の会社が製作する。

RasPiとUSB DIO Board

2014-02-19

FlashAir™でベアメタルRasPi

FlashAir™ + Raspberry Pi の組み合わせに、さらに適した使い方を発見した。

(なんちゃって)「ベアメタル・プログラミング」である。

Raspberry Pi をOSなしで使用する、ハードウェアを直にたたくプログラム。こういうOSレスの環境を最近の若者?は「ベアメタル(bare-metal)」と呼ぶらしい。

本格的にベアメタルなプログラミングに取り組むなら、JTAGデバッガーでも買いましょう。という話になるんだろうが、カジュアル・ベアメタル・プログラマーには、FlashAirとリセットスイッチがあれば十分だ。

2014-02-09

FlashAir™をRasPiの起動ディスクにする

東芝の無線LAN機能付きSDHCメモリーカードFlashAir™をRaspberry Piの起動ディスクとして使ってみた。

http://www.raspberrypi.org/download/で配布されているブートメディアのRaw Image(2014-01-07-wheezy-raspbian.zip)を、FlashAirにddコマンドで書き込み、Raspberry Piに差し込んで電源を入れると普通に起動する。一般的なSDカードを使った場合と何ら変わりない。