HOME | Raspberry Pi | ビジネス書籍紹介 | DIARY | 2025-09-04 (Thu) Today's Access : 351 Total : 1211070. Since 10 Sep. 2019

NanoPi NEO3
2025.08.23


今回は、FRIENDLY ELEC の NanoPi NEO3 を使ってみました。
NanoPi NEO3 には、表示用のHDMI端子はなく、有線LAN端子を実装しているので、サーバーでの用途、WEBサイト開発環境としての利用が考えられます
ここでは、Ubuntu 24.04 をインストールしています

●NanoPi NEO3


NanoPi NEO3

〇Hardware Spec
・Soc: RockChip RK3328, Quad-core 64-bit high-performance Cortex A53
・RAM: 1GB/2GB DDR4
・LAN: 10/100/1000M Ethernet with unique MAC
・USB Host: 1x USB3.0 Type A and 2x USB2.0 on 2.54mm pin header
・MicroSD Slot: MicroSD x 1 for system boot and storage
・LED: Power LED x 1, System LED x 1
・Key: User Button x 1
・Fan: 2Pin JST ZH 1.5mm Connector for 5V Fan
・GPIO: 2.54mm pitch 26 pin-header, include I2C, UART, SPI, I2S, GPIO
・Serial Debug Port: 2.54mm pitch 3 pin-header, 1500000bps
・Power: 5V/1A, via Type-C or GPIO
・PCB Dimension: 48 x 48mm
・Working Temperature: -20℃ to 70℃
・Weight: 22g




●Ubuntu 24.04 LTS 25.8.0-trunk.309

下のほうにスクロールします


Armbian_community_25.8.0-trunk.309_Nanopineo3_noble_current_6.12.35.img.xz をダウンロードします

ダウンロードしたimgファイルをWin32Diskmanagerなどの書き込みソフトでマイクロSDカードに書き込みます。

●インストール時の接続
商品のボードは予めケースに収納されています。ケースには四か所の爪があり、三角オープナーなどを使って上側の蓋を拡げる形で爪を外します。
ネットワーク接続が済むまでは赤枠のデバックポート(RX,TX,GND)を使って設定作業を行います


USBシリアル変換モジュールを繋いでパソコン上のTeraTermなどを使ってシリアル接続します(変換モジュールのVCCは使用しません)。



事前にLAN端子を用いて有線でネットワークに接続するか、緑枠のUSB端子にWiFiアダプタを挿すことで、 インストール時にDHCPの動的IP接続により、地域設定やネットワーク設定の手間を省くこともできます。

電源ケーブルを繋いで起動します。

〇TeraTermの設定
設定は115200bps、データ8bit、パリティなし、ストップビット1bit、フロー制御なしです。






Create root password: **********
Repeat root password: **********

Choose default system command shell:

1) bash
2) zsh
1

Please provide a username (eg. your first name): ubuntu
Create user (ubuntu) password: **********

Please provide your real name: Ubuntu
At your location, more locales are possible:

  1) aa_DJ.UTF-8              170) it_IT.UTF-8
  2) aa_ER                    171) iu_CA
  3) aa_ET                    172) ja_JP.UTF-8
  4) af_ZA.UTF-8              173) kab_DZ
  5) agr_PE                   174) ka_GE.UTF-8
  6) ak_GH                    175) kk_KZ.UTF-8
  ...........
Please enter your choice:172
Please identify a location so that time zone rules can be set correctly.
Please select a continent, ocean, "coord", or "TZ".
 1) Africa
 2) Americas
 3) Antarctica
 4) Asia
 5) Atlantic Ocean
 6) Australia
 7) Europe
 8) Indian Ocean
 9) Pacific Ocean
10) coord - I want to use geographical coordinates.
11) TZ - I want to specify the timezone using the Posix TZ format.
#? 4
Please select a country or a region whose clocks agree with yours.
 ..........
24) Japan                    53) Turkmenistan
25) Jordan                   54) United Arab Emirates
26) Kazakhstan               55) Uzbekistan
#? 24

The following information has been given:

        Japan
        Eyre Bird Observatory

Therefore TZ='Asia/Tokyo' will be used.
Selected time is now:   Thu Jul  3 20:34:23 JST 2025.
Universal Time is now:  Thu Jul  3 11:34:23 UTC 2025.
Is the above information OK?
1) Yes
2) No
#? 1
    _             _    _                                         _ _
   /_\  _ _ _ __ | |__(_)__ _ _ _    __ ___ _ __  _ __ _  _ _ _ (_) |_ _  _
  / _ \| '_| '  \| '_ \ / _` | ' \  / _/ _ \ '  \| '  \ || | ' \| |  _| || |
 /_/ \_\_| |_|_|_|_.__/_\__,_|_||_|_\__\___/_|_|_|_|_|_\_,_|_||_|_|\__|\_, |
                                 |___|                                 |__/
 v25.8 rolling for NanoPi Neo 3 running Armbian Linux 6.12.35-current-rockchip64

 Packages:     Ubuntu stable (noble)
 Updates:      Kernel upgrade enabled and 1 package available for upgrade
 Support:      for advanced users (rolling release)
sed: -e expression #1, char 0: no previous regular expression

 Performance:

 Load:         4%                Uptime:       13 min
 Memory usage: 7% of 1.92G
 CPU temp:     52°C             Usage of /:   8% of 29G

 Commands:

 Configuration : armbian-config
 Upgrade       : armbian-upgrade
 Monitoring    : htop
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Armbian_community 25.8.0-trunk.309 noble
Release:        24.04
Codename:       noble
●ネットワーク設定
用途に応じて有線LAN、WiFiを選べばよいのですが、ここでは両方の設定を行っています
まずはLANケーブルをつないで有線ネットワーク設定を行います

$ sudo armbian-config

〇有線LAN設定
ここでは、NanoPi のLAN固定IPアドレスを 192.168.11.53、GATEWAYを192.168.11.1として設定しています


| Network |
ENS001 - Basic network setup
  ↓
| Select interface ||
end0 unassigned wired
  ↓
| Action for end0 |
Configure
  ↓
| Select IP mode |
static Set IP manually
  ↓
| Spoof MAC address? |
Valid format: xx:xx:xx:xx:xx:xx ← MACアドレスが表示されます
xx:xx:xx:xx:xx:xx
  ↓
| Enter IP for end0 |
Valid format: 1.2.3.4/5
192.168.11.53/24 ← 任意の固定IPアドレスを指定します
  ↓
| Use default route or set static |
Valid format: 0.0.0.0/0
default
  ↓
| Enter IP for gateway
Valid format:
192.168.11.1
  ↓
| Enter DNS server |
Valid format: 9.9.9.9,1.1.1.1
192.168.11.1

有線LAN接続が可能になったのでシリアルケーブルは外します

〇無線LAN設定
無線LANの固定IPアドレスを192.168.11.54として説明します

有線で接続可能になった状態で、赤枠のシリアル接続用ケーブルを抜いて、緑枠のUSB端子にWiFiアダプタを繋ぎます。

WiFiアダプタには TP-Link TL-WN725N を使いました


WiFiアダプタはケースに収納するので、アダプタを挿すUSB DIP化基板の背面にポリイミドテープを貼って絶縁しています


TeraTermから有線LANによりSSH接続します


interface にWiFiアダプタが表示されます
| Action for wlx7cc2c612037f |
Configure
  ↓
| Select SSID |
xxxxxxxx ← WiFIルータのSSIDを選びます
  ↓
| Enter password for xxxxxxxx |
******** ← パスワードを入力します
  ↓
| Select IP mode |
static Set IP manually
  ↓
| Valid format: xx;xx;xx;xx;xx;xx | ← WiFiアダプタのMACアドレス
xx;xx;xx;xx;xx;xx
  ↓
| Enter IP for wlx7cc2c612037f |
192.168.11.54.24
  ↓
| Use default route or set static |
default
  ↓
| Enter IP for gateway |
192.168.11.1
  ↓
| Valid format: 9.9.9.9,1,1,1,1 |
192.168.11.1

作成された設定ファイルを確認してみます。 上記の設定操作が面倒なときはこのファイルを直接編集してもよいと思います
$ sudo cat /etc/netplan/armbian.yaml
network:
  version: 2
  renderer: NetworkManager
  ethernets:
    end0:
      addresses:
      - "192.168.11.53/24"
      nameservers:
        addresses:
        - 192.168.11.1
      dhcp4: false
      dhcp6: false
      macaddress: "xx:xx:xx:xx:xx:xx"
      routes:
      - metric: 200
        to: default
        via: "192.168.11.1"
  wifis:
    wlx7cc2c612037f:
      addresses:
      - "192.168.11.54/24"
      nameservers:
        addresses:
        - 192.168.11.1
      dhcp4: false
      dhcp6: false
      macaddress: "xx:xx:xx:xx:xx:xx"
      routes:
      - metric: 200
        to: default
        via: "192.168.11.1"
      access-points:
        "xxxxxxxxxxxx":
          auth:
            key-management: "psk"
            password: "*************"
〇IPv6の無効化
$ cat <<'EOF' | sudo tee -a /etc/sysctl.d/70-disable-ipv6.conf
> net.ipv6.conf.all.disable_ipv6 = 1
> net.ipv6.conf.default.disable_ipv6 = 1
> EOF

設定を反映します
$ sudo sysctl --system

$ ip a
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: end0:  mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
    inet 192.168.11.53/24 brd 192.168.11.255 scope global noprefixroute end0
       valid_lft forever preferred_lft forever
3: wlx7cc2c612037f:  mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
    inet 192.168.11.54/24 brd 192.168.11.255 scope global noprefixroute wlx7cc2c612037f
       valid_lft forever preferred_lft forever

これでWiFi接続可能になったので、LANケーブルも外してしまいます

●基本設定
各種設定にはいる前に基本的な作業を行ってしまいます

〇初期ユーザ属性確認
$ cat /etc/group | grep ubuntu
tty:x:5:ubuntu
disk:x:6:ubuntu
dialout:x:20:ubuntu
sudo:x:27:ubuntu
audio:x:29:ubuntu
video:x:44:ubuntu
plugdev:x:46:ubuntu
games:x:60:ubuntu
users:x:100:ubuntu
systemd-journal:x:999:ubuntu
input:x:996:ubuntu
render:x:993:ubuntu
netdev:x:108:ubuntu
ubuntu:x:1000:

$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install vim

〇sudo のパスワードを入力なしで使う
$ sudo vi /etc/sudoers
# User privilege specification
root    ALL=(ALL:ALL) ALL
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL
# See sudoers(5) for more information on "#include" directives:
ubuntu    ALL=(ALL:ALL) NOPASSWD: ALL
※%sudo で設定が上書きされないようにそれ以降に追加します
※保存は :wq!

rootでのログインを禁止するには、以下のコマンドを実行します
$ sudo passwd -d root

ここからはWEBサイト開発用の環境設定です。
以前に紹介したUbuntu設定と変わるところはありません。
詳細は下記のリンクから記事を参照してください。

●Apache 2.4 のインストール
Apache WEBサーバ設定

●php インストール
PHP 設定

●MySQLインストール
MySQL 設定

〇WEBサイト移植
Raspberry Pi で運用しているWEBサイトを移植してみました。

普通に動きます

●開発環境構築
Arduino や ESP32 のビルド環境と整えます

〇python3-pipのインストール
pip は、Pythonパッケージのインストールなどを行うユーティリティです
$ sudo apt install python3-pip
$ pip3 --version
pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.12)

〇PlatformIO インストール

$ pip3 install platformio
error: externally-managed-environment

PlatformIO公式サイトからの引用です。
PlatformIO は管理者権限や sudo 権限を必要とせずに動作します。 デフォルトのユーザー アカウントを使用し、追加の権限なしでインストールを実行することを強くお勧めします。
PlatformIO / Installer Script (Recommended)

インストール用スクリプトをダウンロードします
$ curl -fsSL -o get-platformio.py https://raw.githubusercontent.com/platformio/platformio-core-installer/master/get-platformio.py
$ python3 get-platformio.py
Error: Can not install PlatformIO Core due to a missed `venv` module in your Python installation.
仮想環境モジュールがないと指摘されます

$ sudo apt-get install python3.12-venv

$ python3 get-platformio.py

〇仮想環境パス設定
Python 仮想環境のデフォルトの場所は、~/.platformio/penv/bin になります
$ echo 'export PATH=${PATH}:~/.platformio/penv/bin' >> ~/.bashrc
$ source ~/.bashrc
$ echo $PATH | tr ":" "\n"
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/usr/games
/usr/local/games
/snap/bin
/home/ubuntu/.platformio/penv/bin

$ pio --version
PlatformIO Core, version 6.1.18

〇udev rules 設定
99-platformio-udev.rules
udevルールを追加して繁栄させます

$ curl -fsSL https://raw.githubusercontent.com/platformio/platformio-core/develop/platformio/assets/system/99-platformio-udev.rules | sudo tee /etc/udev/rules.d/99-platformio-udev.rules

$ sudo service udev restart

〇テスト・ビルド
$ pio init -b adafruit_qtpy_esp32s2
$ vi src/check.ino
void setup() {
        Serial1.begin(115200);
        Serial1.print("Hello World\n");
}

void loop() {}
$ pio run -t upload


●実運用

NanoPi NEO 3基板の底面には大きなヒートシンクが付いていて、プラスチック筐体の側面から熱を放出するようになっています。 消費電力は5V/1Aなのでモバイルバッテリーからでも動かすことができます。 常時運用する場合は、USB3.0端子にSSDを接続し、そこから駆動するようにして、さらに消費電力の大きいWiFiアダプタは外して有線LANで運用したほうがよいと思います。

●余談:NaniPi NEO Air

実は、NanoPi NEO 3を購入する前に、PayPayフリマでお安くNaniPi NEO Airを購入していました。 こちらには、Armbian Linux 6.12をインストールしています。 PlatformIOをインストールしたところ、Arduino系のビルドは行えるのですが、ESP32系ではtoolchain関連で不具合が発生してしまいました。
Raspberry Pi(ラズベリー パイ)は、ARMプロセッサを搭載したシングルボードコンピュータ。イギリスのラズベリーパイ財団によって開発されている。

2019.12.13 モバイルバッテリーによる瞬間停電対策
2020.01.01 1280x800 HDMI MONITOR
2020.01.12 micro:bitをコマンドラインで使う
2020.02.04 サーマルプリンタを使う
2020.04.10 電卓を制御して数字を表示する
2020.08.03 Seeeduino XIAO
2020.08.09 LGT8F328P - Arduino clone
2020.09.18 電流計測モジュール INA219
2021.02.16 癒しの電子回路
2021.03.06 疑似コンソール
2021.08.08 電子ペーパー
2021.09.04 AVRマイコン・ATTiny85
2021.09.25 pH測定
2021.11.13 NTP時刻取得と活用
2021.11.27 GPS情報取得
2021.12.11 GR-KURUMI
2021.12.25 ATMEGA328P 3.3V/8MHz
2022.01.11 AS-289R2 プリンタシールド
2022.01.25 TM1637 & ATtiny85
2022.02.22 Raspberry Pi Zero 小道具
2022.03.01 ATTinyCore
2022.03.18 Adafruit QT Py + XIAO Expansion board
2022.07.31 サーマルプリンター番外編:通信筒
2023.01.01 FTP Server & SPI Flash SD
2023.02.01 LPC810(ARM Cortex-M0+)
2023.02.15 IchigoJam互換機
2023.03.01 Telnet
2023.04.26 USBメモリをUART接続で利用する
2023.05.14 焦電型赤外線モーションセンサー
2023.07.01 文字化けしないキーボード
2023.08.01 Bluetoothサーマルプリンター
2023.08.12 LattePanda 2G/32GB
2023.09.04 SI-3012KS
2023.12.01 疑似コンソール(C言語編)
2023.12.16 昭和レトロ・温度湿度時刻計
2023.12.25 二酸化炭素濃度監視
2024.01.23 なんちゃってmicro:bit
2024.02.07 オリジナル micro:bit
2024.02.23 ESP32 OTA
2024.03.08 TELNETサーマルプリンター
2024.05.08 ESP32 PROGRAM SELECTOR
2024.05.23 統合開発環境とQwiic
2025.01.24 赤外線リモコン
2025.03.25 QRCode SCANNER
2025.04.08 Keyestudio 328 WiFi Plus
2025.08.23 NanoPi NEO3

Arduinoで学ぶ組込みシステム入門(第2版)
●Arduinoを使って組込みシステム開発を理解する
・ハードウェアやソフトウェアなどの基礎知識/ ・設計から実装までを系統的に説明するモデルベース開発/ ・Arduinoを用いた実際の開発例

最新 使える! MATLAB 第3版
◆◆すぐに「使える!」 全ページフルカラー!◆◆
・MATLAB R2022bに対応し、解説もより詳しく!/ ・コマンド・スクリプトの例が豊富で、動かして学べる!/ ・超基本から解説。これから使いはじめる人にぴったり!/ ・全編フルカラー、スクリーンショットも豊富!

Amazon Web Services基礎からのネットワーク&サーバー構築改訂4版
1.システム構築をインフラから始めるには/ 2.ネットワークを構築する/ 3.サーバーを構築する/ 4.Webサーバーソフトをインストールする/ 5.HTTPの動きを確認する/ 6.プライベートサブネットを構築する/ 7.NATを構築する/ 8.DBを用いたブログシステムの構築/ 9.TCP/IPによる通信の仕組みを理解する

C言語は第二の母国語: 独学学生時代から企業内IT職人時代に培った、独立のための技術とノウハウ 平田豊著
学生時代から独学でプログラミングをはじめ、企業内でデバイスドライバを開発し、そして独立後もたくさんのアプリケーション開発や技術書制作に携わってきた著者。その筆者が大事に使い続ける「C言語」の“昔と今”について、気づいたことや役立つ知識、使ってきたツールなどについて、これまで記してきたことを整理してまとめました。 本書では、現役プログラマーだけでなく、これからプログラミングを学ぶ学生などにも有益な情報やノウハウを、筆者の経験を元に紹介しています。

1冊ですべて身につくJavaScript入門講座
・最初の一歩が踏み出せる! 初心者に寄り添うやさしい解説 ・最新の技術が身につく! 今のJavaScriptの書き方・使い方 ・絶対に知っておきたい! アニメーションとイベントの知識 ・プログラミングの基本から実装方法まですべて学べる

図解! Git & GitHubのツボとコツがゼッタイにわかる本
ソフトウェア開発では欠かすことのできないGit、GitHub。 これからGit、GitHubを使いたいという入門者の方でも、実際に手を動かしながら使い方を学べます。

C自作の鉄則!2023 (日経BPパソコンベストムック)
メーカー製のパソコンはスペックが中途半端で、自分が本当に欲しい機種がない――。そう思っている人には、ぜひ自作パソコンをお薦めします。自作パソコンのパーツは進化が速く、しかも驚くほど種類が豊富。価格も性能も、幅広く用意されているため、満足度100%の“自分だけの1台”を手に入れることができます。

Interface 2023年6月号
特集:第1部 フィルタ設計 基礎の基礎/ 第2部 係数アプリや波形観測アプリで合点!FIR&IIRフィルタ作り/ 第3部 配布プリント基板で体験!マイコンで動くフィルタ作り

日経Linux 2023年5月号
【特集 1】 AI時代の最強フリーソフト ~ 25のやりたいを実現! 【特集 2】 AWS、Azureのうまみを無料で体感!面倒なことはクラウドに任せよう 【特集 3】 新しいRaspberry Pi Cameraで遊んでみよう 【特集 4】 Linuxで旧型PCを復活! 1kg切るモバイルPCを「ChromeOS Flex」でChromebook化

ラズパイマガジン2022年秋号
特集:5大人気ボード 電子工作超入門
「半導体不足で在庫が不足し、電子工作のボードがなかなか買えない…」。そんな今にふさわしい特集を企画しました。5種の人気ボードにすべて対応した電子工作の入門特集です。「GPIO」や「I2C」を使った電子パーツの制御方法は、どのボードでも同じです。手に入れられたボードを使って、今こそ電子工作を始めましょう。

地方で稼ぐ! ITエンジニアのすすめ
学歴、理系の知識、専門スキル……全部なくてもITエンジニアになれる! 地方でも高収入でやりがいをもって働ける!ITエンジニアの魅力を一挙大公開

Raspberry Piのはじめ方2022
本書は、ラズパイやPicoの買い方やインストール、初期設定といった基本から、サーバー、電子工作、IoT、AIといったラズパイならではの活用方法まで、1冊でお届けします。 ラズパイをこれから始める方向けに、全36ページの入門マンガ「女子高生とラズベリーパイ」も巻末に掲載。これを読むだけでラズパイがどんなものなのか、すぐに分かって触れるようになります。

ハッカーの学校 IoTハッキングの教科書
生活にとけこみ、家電機器を便利にするIoT技術。 Webカメラなど、便利の裏側に潜むセキュリティの危険性をハッキングで検証。 専門家がパケットキャプチャからハードウェアハッキングまで、その攻撃と防御を徹底解説。 本書は2018年7月に刊行された「ハッカーの学校IoTハッキングの教科書」に一部修正を加えた第2版です。

攻撃手法を学んで防御せよ! 押さえておくべきIoTハッキング
本書は、経済産業省から2021年4月にリリースされた、IoTセキュリティを対象とした『機器のサイバーセキュリティ確保のためのセキュリティ検証の手引き』の『別冊2 機器メーカに向けた脅威分析及びセキュリティ検証の解説書』をもとに、IoT機器の開発者や品質保証の担当者が、攻撃者の視点に立ってセキュリティ検証を実践するための手法を、事例とともに詳細に解説しました。

ポチらせる文章術
販売サイト・ネット広告・メルマガ・ブログ・ホームページ・SNS… 全WEB媒体で効果バツグン! カリスマコピーライターが教える「見てもらう」「買ってもらう」「共感してもらう」すべてに効くネット文章術

プログラマーは世界をどう見ているのか 西村博之著
イーロン・マスク(テスラ)、ジェフ・べゾス(Amazon)、ラリー・ペイジ(Google)…etc. 世界のトップはなぜプログラマーなのか?

ニーア オートマタ PLAY ARTS改 <ヨルハ 二号 B型 DX版> PVC製 塗装済み可動フィギュア
「NieR:Automata」より、ヨルハ二号B型こと2BがPLAY ARTS改に新たに登場! 高級感の感じられるコスチュームや髪の質感、洗練されたボディバランス、細かなデティールに至るまでこだわり抜かれた逸品。 DX版には通常版のラインナップに加え2Bの随行支援ユニット ポッド042などをはじめ“純白の美しい太刀"白の約定やエフェクトパーツ、自爆モードを再現できる換装用ボディパーツ、シーンに合わせて変えられる顔パーツ2種も付属する豪華な仕様に。 作中のあらゆるシーンを再現することが可能なファン必見の一品となっている。

Newtonライト2.0 ベイズ統計
ベイズ統計は,結果から原因を推定する統計学です。AIや医療などの幅広い分野で応用されています。その基礎となるのは18世紀に考えだされた「ベイズの定理」です。 この本では,ベイズ統計学のきほんをやさしく紹介していきます。

白光(HAKKO) ダイヤル式温度制御はんだ吸取器 ハンディタイプ FR301-81


無水エタノールP 500mlx2個パック(掃除)


ケイバ(KEIBA) マイクロニッパー MN-A04


サンハヤト SAD-101 ニューブレッドボード


白光(HAKKO) HEXSOL 巻はんだ 精密プリント基板用 150g FS402-02


[Amazon限定ブランド]【指定第2類医薬品】PHARMA CHOICE 解熱鎮痛薬 解熱鎮痛錠IP 100錠


Copyright © 2011-2024 Sarako Tsukiyono All rights reserved®.