ATOM Cam2 向けの最小構成カスタム Linux ファームウェア。
- カーネル: Linux 3.10.98 (Wyze/Ingenic カスタム、T31 SoC)
- アーキテクチャ: MIPS32 R2 LE (mipsel-ingenic-linux-gnu)
- ビルドシステム: Buildroot 2024.02
- パッケージ: BusyBox + wpa_supplicant + OpenSSH + NTP + ATBM WiFi ドライバ
- USB-Ethernet アダプタ (開発時に便利 — SDカード設定不要で接続できる)
- WiFi (ATBM603x) — SDカードの
wpa_supplicant.confを読み込む
- ビルド成果物 (
factory_t31_ZMC6tiIDQN,rootfs_hack.squashfs) をSDカードのルートに置く - 以下のファイルも SDカードに配置する
/factory_t31_ZMC6tiIDQN ← カーネル (uImage.lzma をリネーム)
/rootfs_hack.squashfs ← rootfs
/wpa_supplicant.conf ← WiFi 設定
/authorized_keys ← SSH 公開鍵
ctrl_interface=/var/run/wpa_supplicant
network={
ssid="MyWiFi"
psk="MyPassword"
scan_ssid=1
}
ssh-keygen -t ed25519 -f ~/.ssh/atomcam2
cat ~/.ssh/atomcam2.pub # → SDカードの authorized_keys にコピーssh -i ~/.ssh/atomcam2 root@<IPアドレス>rootパスワード: atomcam2
Docker Desktop (Windows/Mac) または Docker Engine (Linux) が必要。
# イメージをビルドしてコンテナを起動
docker compose build
docker compose up -d
# コンテナ内でビルド実行
docker compose exec builder docker_build
# 成果物は output/ に生成されるまたは一発で:
docker compose run --rm builder docker_build# 依存パッケージのインストール (Ubuntu/Debian)
sudo apt update
sudo apt install -y build-essential git wget curl unzip rsync bc cpio \
python3 libssl-dev libelf-dev flex bison file zip lzop gawk \
texinfo help2man libtool cmake autoconf
# ビルド実行
bash buildscripts/build_local.shmain または build ブランチに push すると自動ビルドされる。
成果物は Actions の Artifacts からダウンロードできる。
U-Boot
└─ factory_t31_ZMC6tiIDQN (uImage.lzma = カーネル + initramfs)
└─ initramfs /init
├─ SDカードをマウント (/media/mmc)
├─ rootfs_hack.squashfs をマウント → switch_root
└─ BusyBox init (/sbin/init)
├─ S20network USB-Eth or WiFi
├─ S42ntpd 時刻同期 (ntp.nict.jp)
└─ S80sshd SSH サーバ