If naoi Then return false;
last update: Thu, 18 Oct 2018 01:01:40 GMT ( 6 years ago )

          Raspberry PI あれこれ

          • 初期化時にすること

            • OS のゲット

            • Disk の書き込み

            • 環境設定

            • Wi-Fi の設定

              上記までで、有線LANを使ってのネットワークはできたと思いますが、やはりケーブルがじゃまなので、
              無線LANドングルを用意して無線化しましょう。
              ネットで調べたところ、以下の商品がいいみたいです。
              Planex 
              (Buffaloの無線LANドングルは異常に熱くなるので低消費のものが良さそう)
              ドングルを挿すとRaspberry Piは自動で認識してくれます。
              確認するには、(コマンド:lsusb )
              デバイスの一覧に「PLANEX ほにゃほにゃ」が出ていればOKです。
              ではネットワーク設定をします。コンソールにて以下のコマンドを実行します。
              wpa_passphrase SSID PASSWORD >> /etc/wpa_supplicant/wpa_supplicant.conf
              >>と一緒に書かれているのは「wpa_passphrase 」の実行結果を>>以降に書かれているファイルに
              書き込んでね。って意味です。
              ではリブートしてみましょう。(コマンド:reboot )
              ネットワークにつながっているかを確認(コマンド:ifconfig )
              wlan0 にIPアドレスが振られていれば成功。
            • Raspberry Piのバージョンアップ

              最新版への更新は以下のコマンドになります。
              apt-get update
              apt-get upgrade
            • Node.js のバージョンアップ

              Raspberry Piでは初期状態のNodeのバージョンは0.10.47(2016/4/4現在)です。
              ちょっと古いので以下の要領でアップデートします。
              Node.jsのミラーサイトで最新版を確認します。
              http://conoroneill.net/node-v01040-and-v0127-for-arm-v7-raspberry-pi-2-banana-pi-odroid-c1-available/
              サイトに記載されている通りですが、v0.xx.xxの部分は編集する必要があります。
              実行するコマンドは以下。( 現在のディレクトリが /root である前提です。)
              mkdir nodetemp
              cd nodetemp
              wget http://conoroneill.net.s3.amazonaws.com/wp-content/uploads/2015/07/node-v0.12.7-linux-arm-v7.tar.gz
              tar -zxvf node-v0.12.7-linux-arm-v7.tar.gz
              cd usr/local
              sudo cp -R * /usr/local/
              node-v0.xx.xxの部分は適宜変更してください。
              /root の下にテンポラリフォルダを作り、tar.gzをダウンロードして解凍。
              んで /usr/local/ にコピーしてます。
              cd usr/local でコピーするファイルの場所に移動するのをお忘れなく。
              このままですと、最新のNodeさんを使ってくれないので、パスを通します。
              export PATH=/usr/local/bin:$PATH
              その後、以下のコマンドで環境を更新します。
              source .bashrc
              以下のコマンドでNodeのバージョンを確認して自分の想定したバージョンになれば成功。
              node -v 
            • root パスワードの変更

              Raspberry piはデフォルトで root のパスワードが設定されていません。
              そのままでは良くないので変えましょう。
              pi@raspberrypi# sudo passwd root
              Enter new UNIX password: NEWPASSWORD でEnter
              Retype new UNIX password : 上と同じものでEnter
              passwd: password updated successfully
              と出ればOK

              ※ root のパスワードを変更した場合、root でのSSH接続ができなくなることが
              あります。その場合は、Tips>SSHでつながらないーを参照ください。
            • 文字化けー

              文字化けっす。
              ■がコンソールに羅列っす。。。(汗
              対策)
              1.Raspi-configを起動して「Innternnatiolisation Options」を選択
              2.Change Localeを選択
              3.ja_JP.UTF-8をチェックしてデフォルト言語に選択
              4.日本語フォントのインストール「sudo apt-get install ttf-kochi-gothic xfonts-intl-japanese xfonts-intl-japanese-big xfont-kaname」
              5.日本語を入力するためのメソッドをインストール「sudo apt-get install uim uim-anthy」
              6.jfbtermをインストール。「sudo apt-get install jfbterm」
              7.jfbtermを叩いて起動させる。
              ※7が重要!
          • Tips

            • Disk size の拡張

              Raspberry PIでは、どんなサイズのSDカードであっても、root のDiskは最大4Gになってしまう。
              本来であれば、8Gのディスクなら7Gくらいは利用できるので、Diskの拡張を行うとよい。
              まずは、ディスクの状況を確認(コマンド:df - h )
              以下のように表示される。(/dev/root がほぼ100%で余裕がない状態)

              Raspberry Pi のコンフィグを開く(コマンド:raspi-config)
              すると以下のダイアログが表示される

              一番上の「Expand Disksize」を選んでEnter

              すると以下のアラートが出るのでEnterで進む

              コンフィグ画面に戻るので「Tab」を押してExitを選んでEnter

              再起動を促されるので素直に再起動

              以上。
            • コンソールからGUIの起動

              コンソールにて以下を入力(コマンド:startx )
              startx
              するとGUIが起動する。
            • SSHでつながらないっ!

              ◆接続元に定義されているデバイス情報が原因のケース
              複数のラズパイを設定していると同じIPで違うデバイスに繋ぐことになります。
              そんなときによく遭遇するのが以下のメッセージ。
              セキュリティーがあーだこーだ言ってるけど、なんか登録されてるキーが変わってるよ?
              ってことらしい。

              そんな時は、このコマンドでknown_hostsをリニューアル。
              そうすると繋がるようになりますん。
              sudo ssh-keygen -R HOSTNAME/IP ADDRESS

              ◆Raspberry PIのセキュリティ設定の不備のケース
              デフォルトではRaspberry Piは以下のユーザーでログインできます。
               ・ pi ユーザー(パスワードはraspberry )か
               ・root ユーザー(パスワードなし)
              が、SSHで別のPCからアクセスしようとした時に、ユーザー/パスワードは
              間違えていないのにログインできないケースがありました。
              それは、SSHでの接続の設定は以下のファイルに定義されていおり、
              デフォルトでは、root でのSSHでの接続は、パスワードなしの場合に
              限られており、PermitRootLoginを設定することで接続できるようになります。
              vi /etc/ssh/sshd_config
              PermitRootLogin without_password --- > デフォルト
              PermitRootLogin no --- > root でSSH接続を許可しない
              PermitRootLogin yes --- > root でSSH接続を許可する

            • root での自動ログイン

              ◆Raspberry pi のOSバージョン(Whezzy)の場合
              /etc/inittab を編集します。
              1:2345:respawn:/sbin/getty 38400 tty1
              の行を見つけて
              
              に書き換えます。
              これで自動ログインされるようになります。
              ◆Raspberry pi のOSバージョン(Jessie)の場合
              1)raspi-config にて自動ログインを選択します。(GUIだったり、コンソールだったり)
              ただし、上記は pi ユーザーの設定になるので
              2)/etc/systemd/system/autologin@.service というファイルを編集
              中身はこんな感じ(一部)
              [Service]
              # the VT is cleared by TTYVIDisallocate
              ExecStart=-/sbin/agetty --autologin pi -- noclear %I $TEAM
              Type=idle


              上記の「pi」になっている部分を「root」に変更
              以上。
              と思ったけど、ログインしないっ!本家のサイトをチェック
              systemctl set-default multi-user.target
              ln -fs /etc/systemd/system/autologin@.service /etc/systemd/system/getty.target.wants/getty@tty1.service

              と打ったら、、自動ログインした。。
              (でも、なんかおしいかんじ)
            • Raspberry pi3 でUART接続できない対応

              Raspberry pi3では初期セットアップをHDMI、マウス、キーボードを
              使ってでしかセットアップできないもよう。。。
              つまりはシリアル接続が動かないのだそうです。
              試してみましたが、、だめ。。。
              一応、行ったのは以下
              cat /boot/config.txt で中身を確認して
              core_freq=250 という行が一番最後にない場合は、
              echo core_freq=250 >> /boot/config.txt をして行を追加

              別のサイトでは、
              dtoverlay=pi3-mminiuart-bt

              も追加とあったが。。。
              どちらを試しても
              screen tty.usbserial 115200

              で接続できなかった。(Busyと言われる。。。)

            • Raspberry pi メモ

              Raspberry Pi command
              UART接続は1赤、3黒、4白、5緑です。
              ◆MACの場合
              //デバイスが登録されているディレクトリに移動
              cd /dev
              //ディレクトリの中身を見るコマンド
              ls
              //このようなデバイスが出ているはずです
              tty.usbserial
              //UARTを使ってデバイスへログインする方法(Mac)
              ~# screen /dev/tty.usbserial 115200
              ◆Windowsの場合
              TeraTermにて
              Serial接続(COMx)
              コネクトしたあとにボーレートを115200に変更
              Enter
              ◆ネットワーク状況の確認コマンド
              ifconfig
              ◆ネットワーク設定用のディレクトリ移動と内容確認
              cd /etc/network
              cat interfaces
              ◆Wifi設定用のディレクトリ移動と内容確認
              cd /etc/wpa_supplicant
              cat wpa_supplicant.conf
              ◆Wi-Fiのアクセスポイントに接続するときのコマンド
              wpa_passphrase SSID PASSWORD >> wpa_supplicant.conf
              ◆ネットワークの更新コマンド
              /etc/init.d/networking restart
              ◆ラズベリーパイの再起動と終了コマンド
              reboot
              shutdown -r now シャットダウンしてすぐ再起動
              shutdown -h now すぐシャットダウン
              ◆ラズベリパイのバージョン確認コマンド
              uname -a :バージョン確認
              cat /proc/version でより詳細に
              ◆プロセス監視
              ps -ef | grep xxx
              ◆kernelのログ
              dmesg
              USBシリアルケーブルで
              LDSバイタルのデータを取得するには、以下の作業が必要
              1.RaspberryPIのアップデート
              apt-get update
              apt-get upgrade -y
              2.ArmのNodeをダウンロード+インストール
              wget https://node-arm.herokuapp.com/node_archive_armhf.deb
              dpkg -i node_archive_armhf.deb
              3.serialport のダウンロード+インストール
              npm install serialport
              (これは時間がかかります)
              4.USBドライバーの認識をさせる
              modprobe ftdi_sio vendor=0x165C product=0007
              FTDI USB Serial Device converter now attached to ttyUSB0
              とでれば、OK
              5.シリアルポートでのアクセス
              var SerialPort = require("serialport").SerialPort;
              var serialPort = new SerialPort("/dev/ttyUSB0",{baudRate:19200});
              6.データの取得
              シリアルにスペース(" ") を送信するとon("data")が発生