Raspberry Pi 4を使用して、私にとって初めてのLチカを試しました。正確には、オシロの波形を見てLチカを頭の中でイメージしました。

 

用意した物(ソフトウェアはフリー)

Raspberry Pi 4
Raspbian Buster with desktop 2019-09-26
Geany(Raspbianに入っている総合開発環境)
g++(Raspbianに入っているC++コンパイラ)
pigpio(Raspbianに入っているGPIO制御ライブラリ)

 

Geanyの設定は、テンプレートから新規作成のmain.cxxを選択。その後、ビルドコマンドを設定画面(Set Build Commands)のC++コマンドのラベルとコマンドを変更しました。これはこちらのサイトを参考にさせて頂きました。

Label: GPIO-Build
Command: g++ -Wall -pthread -o "%e" "%f" -lpigpio -lrt

 

↓ コンパイルをコマンドラインでやりたい場合は

$ g++ -Wall -pthread -o test2 test2.cpp -lpigpio -lrt

 

↓ Lチカ用のソースコードはこれ。これを走らせると500μ秒点灯、500μ秒消灯を繰り返すみたい。このソースコードはどこかの英語で書かれたサイトからコピペしました。

/*
 * test2.cpp
 */

/* Libraries */
#include <iostream>
#include <pigpio.h>

/* Variables and Constants */
using namespace std;
#define LED 17
#define HIGH 0x1
#define LOW 0x0
/* Main function */

int main(void)
{
    cout << "Raspberry Pi initialized!" << endl;
    if (gpioInitialise() < 0) exit(1);

    gpioSetMode(LED, PI_OUTPUT); // 3.3V PIN

    for (;;)
    {
        gpioWrite(LED, HIGH);
        gpioDelay(500);
        gpioWrite(LED, LOW);
        gpioDelay(500);
    }

    gpioTerminate();

}

 

上記ソースコードをGeanyにコピペして、自分で設定したGPIO-Buildを選択してコンパイル完了(Compilation finished successfully) ↓

 

プログラムの実行はコマンドラインで

$ sudo ./test2

 

↓ プログラム実行中の波形。まだLEDを繋げて無いので確認して無いけど、1秒間に約900回点滅する事になるので、多分私の目ではチカチカと点滅するようには見えないかも。

 

↓ LEDを繋げてみました。赤丸のLEDなんですが、点滅では無く点灯ですね。スマホのカメラで240fps撮影して、ようやく点滅しているように見えます。

うちの自宅サーバーをRaspberry Pi 4にしてみました。
(令和元年12月12日から17日まで)

Ubuntu Server 19.10.1使用。

ubuntu-19.10.1-preinstalled-server-arm64+raspi3.img.xz
↓ ダウンロードはここから
https://wiki.ubuntu.com/ARM/RaspberryPi

 

↓ 令和元年12月12日から17日まで、このブログ(WordPress)は、このPi4で運用していました。

↑ USB2.0のポートに刺さっているUSBメモリは、ブログデータのバックアップ用です。

 

IPv6対応方法は、お名前ドットコムの「DNSレコード設定を利用する」にAAAAのIPv6アドレス(240fで始まるアドレス)を登録して、一応、IPv6で接続出来るようになりました。

今後IPv6アドレスが変化したら、再登録しないといけないですが。今のところ3日間、Pi4は何度もの再起動やらUbuntuの入れ直し、ルーターの再起動もしましたが、Pi4のIPv6アドレスの変化はありません。因みにうちはauひかりで、ルーターはBL900HWです。

本当にIPv6で接続出来ているのか判断出来るように、当サイトのブログヘッダーへIPv6判別のコードを置きました。このページ最上部にあるJM1LXSの次2行目を見て下さい。余計な一文があると思います。IPv4で接続の場合、絵文字は薄笑いをします。もしあなたがその場合でも機嫌を損ねないで下さいね。IPv4の接続でもいいんです。

 

このようにiPhoneアプリのPressSyncで書いて見て気になるのが、以前のPCと比べて画像のアップロードに時間がかかります。ストレージがSDカードだからでしょうか。以前のPCはHDDでした。

Raspberry Pi 4 用のヒートシンクケースを装着して、その放熱性をチェック。

 

テストはstressコマンドでCPUに負荷をかけて、CPU温度とヒートシンクの温度を比べるって簡単な方法です。

$ cat /sys/class/thermal/thermal_zone0/temp 
43816
$ stress --cpu 4 --timeout 2m
$ cat /sys/class/thermal/thermal_zone0/temp 
48686
$ stress --cpu 4 --timeout 2m
$ cat /sys/class/thermal/thermal_zone0/temp 
49173

↑ このように合計4分間CPUに負荷をかけてCPU温度が43.8℃から49.1℃になった時、ヒートシンクケースの温度を測ると ↓

スポット1(CPUに接する部分)のヒートシンクケースの温度が46.3℃になっていました。スポット2はSDカード付近です。スポット3はテーブルに置かれたノートです。この時の室温は16.8℃でした。

これをどの様に評価したら良いのでしょう。ヒートシンクケース無しで測定していないので評価出来無いって感じですか。

 

かも知れませんが、別な事で測ってみたかったのです。それは、このケースに付属する熱伝導性両面テープを貼り、ケースを組み付けるとPi4の基板がやや歪むのです。それが嫌で基板とケースの間に薄いワッシャーをかませました。

↓ 赤矢印が示す所に有るのが、そのワッシャーで厚さ0.40mmです。

この0.40mm浮かせた事で、熱伝導性が保たれるのか心配でした。それで温度を測ってみた訳です。

 

結果として、熱伝導性は保たれたと言う事で良いかと思います。

 

ただ今後色々遊んでみたい時は、このケースは不便ですね。基板へのアクセスが非常に悪いです。

取り敢えず、私はこのPi4をWEBサーバーにしてみようと思っています。だから配線はLANケーブルと電源ケーブルだけなので、このケースでもいいかなって感じです。

先日届いたRaspberry Pi 4にUbuntu Server 19.10.1をインストールして遊んでみるよ!

 

と思ったら

Pi4の起動中から、ログイン後のapt update程度の軽作業でも電源ランプ(赤いLED)が点灯したり消灯したりしている。コマンドdmesgを叩いたら低電圧警告が出ていました。

Under-voltage detected! (0x00050005)

 

この低電圧警告が出た時の電源はMax3Aのモバイルバッテリーと大陸から届いたUSB Type-C ケーブルの組み合わせです。↓

このケーブルは怪しいので使用停止。モバイルバッテリーはもっと信頼出来るケーブルを購入してから判断するので保留。

そもそも、Pi4に適したACアダプターが欲しい。って事で探すとPi4に最適と言う物がスイッチサイエンスに有りました。ならばと、それを注文。↓

ラズパイ4に最適なACアダプター 5.1V/3.0A USB Type-Cコネクタ出力

↓ はい、届きました。なんと箱の内側に「寒いよね、ポチってくれてありがとう♥️」だって、またポチっちゃいそうです。

 

 

USB Type-Cケーブルが届いたので、先のモバイルバッテリーとの組み合わせでPi4を起動させて、stressコマンドでCPUとディスクに負荷をかけてみました。

$ sudo apt install stress

$ stress --cpu 4 --timeout 30
$ stress --hdd 1 --timeout 30

 

↓ 結果は良好。電源ランプは一度も消灯しませんし、dmesgを見ても低電圧警告は出ていません。

 

↓ その良好と感じたUSB Type-Cケーブル 1mです。私はこれを使用しました。

 

スイッチサイエンスから届いた「ラズパイ4に最適なACアダプター 5.1V/3.0A USB Type-Cコネクタ出力」も同様の負荷テストをした結果、問題無く良好です。

ラズパイのアップグレード後に置時計が起動しなくなってしまった。今回のRaspbianのアップグレードは27だったか30近い項目があり規模が大き目でした。このアップグレード中にLXDEの文字があったので、それが影響したかなぁ?と思っています。

置時計が起動しなくなった原因はautostartファイルが無くなった為でした。

↓ 無いので新たに作ります。

$ sudo vi ~/.config/lxsession/LXDE-pi/autostart

@lxpanel --profile LXDE-pi
@pcmanfm --desktop --profile LXDE-pi
#@xscreensaver -no-splash
@point-rpi

# BEGIN ADDED
# Chromium parameter references:
# http://peter.sh/experiments/chromium-command-line-switches/
#@/usr/bin/chromium-browser --kiosk --start-maximized --user-data-dir http://127.0.0.1/
@/usr/bin/midori -e Fullscreen -a http://127.0.0.1/

# Hide mouse
@unclutter

# Disable screensaver
@xset s off

# Disable screensaver blanking
@xset s noblank

# Disable DPMS (Energy Star) features
@xset -dpms

# END ADDED

 

あとは、ラズパイを再起動するだけ。