Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save nezuppo/ba5b707daf3a425268fc855dc637626b to your computer and use it in GitHub Desktop.
Save nezuppo/ba5b707daf3a425268fc855dc637626b to your computer and use it in GitHub Desktop.
XIAO SAMD21 に CircuitPython をインストール
参考にしたサイト
https://qiita.com/fujioka244kogacity/items/da5842a4c6b7b68ce29c
CircuitPython のサイトから UF2 ファイルをダウンロード
https://circuitpython.org/
'Dornloads' - 'Seeed Studio XIAO SAMD21'
the latest stable release の CircuitPython 8.0.5 をダウンロード
言語は「ENGLISH (US)」を選択
'DOWNLOAD .UF2 NOW' を押してダウンロード
ダウンロードした以下のファイルをラズパイに scp 等で転送
adafruit-circuitpython-seeeduino_xiao-en_US-8.0.5.uf2
XIAO をラズパイに USB 接続
/var/log/messages を確認するとこの時点ではディスクとは認識していない
二つの RST 端子をマウスをダブルクリックするように二度短絡
以下の動画の要領
https://wiki.seeedstudio.com/Seeeduino-XIAO/
オレンジの LED が点灯状態になった
/var/log/messages を確認すると /dev/sdb として認識したと思われる
fdisk で確認
$ sudo fdisk -l
... snip ...
Disk /dev/sdb: 7.8 MiB, 8192000 bytes, 16000 sectors
Disk model: o XIAO
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000
/dev/sdb の Disk model が o XIAO とのこと
/dev/sdb に sdb1 のようなパーティションは切られていないみたい
XIAO をマウント
$ mkdir xiao
$ sudo mount /dev/sdb xiao/
$ df -h
Filesystem Size Used Avail Use% Mounted on
... snip ...
/dev/sdb 7.8M 513K 7.3M 7% /some/where/xiao
ファイルが三つ置いてあった
以下
$ ls -la xiao/
total 519
drwxr-xr-x 2 root root 2048 Jan 1 1970 .
drwxr-xr-x 3 pi pi 4096 May 7 17:40 ..
-rwxr-xr-x 1 root root 524288 Dec 25 2018 CURRENT.UF2
-rwxr-xr-x 1 root root 111 Dec 25 2018 INDEX.HTM
-rwxr-xr-x 1 root root 101 Dec 25 2018 INFO_UF2.TXT
CURRENT.UF2 は工場出荷時の UF2 ファイルと思われる
$ cat xiao/INDEX.HTM
<!doctype html>
<html><body><script>
location.replace("https://www.seeedstudio.com/");
</script></body></html>
$ cat xiao/INFO_UF2.TXT
UF2 Bootloader v3.7.0-33-g90ff611-dirty SFHWRO
Model: Seeeduino XIAO
Board-ID: SAMD21G18A-XIAO-v0
$ sudo cp adafruit-circuitpython-seeeduino_xiao-en_US-8.0.5.uf2 xiao/
すぐにオレンジの LED が消灯し、緑色の LED が点灯状態になった
xiao/ は空
$ ls -la xiao/
total 6
drwxr-xr-x 2 root root 2048 Jan 1 1970 .
drwxr-xr-x 3 pi pi 4096 May 7 18:12 ..
一応、/dev/sdb はマウントされたまま
$ df -h
Filesystem Size Used Avail Use% Mounted on
... snip ...
/dev/sdb 7.8M 877K 6.9M 12% /some/where/xiao
/var/log/messages を確認すると /dev/sdb は切断され、新しく /dev/sdc として認識されたっぽい
fdisk でも sdb は出てこず、sdc が出てきた
$ sudo fdisk -l
... snip ...
Disk /dev/sdc: 64.5 KiB, 66048 bytes, 129 sectors
Disk model: Seeeduino XIAO
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000
Device Boot Start End Sectors Size Id Type
/dev/sdc1 1 128 128 64K 1 FAT12
先ほどは Disk model が o XIAO だったが、今回は Seeeduino XIAO
念のため、sdb をアンマウント
$ sudo umount xiao/
sdc1 をマウント
$ sudo mount /dev/sdc1 xiao/
$ df -h
Filesystem Size Used Avail Use% Mounted on
... snip ...
/dev/sdc1 47K 1.5K 46K 4% /some/where/xiao
CircuitPython ぽいファイルが置かれていました
$ ls -la xiao/
total 22
drwxr-xr-x 4 root root 16384 Jan 1 1970 .
drwxr-xr-x 3 pi pi 4096 May 7 18:12 ..
-rwxr-xr-x 1 root root 138 Jan 1 2000 boot_out.txt
-rwxr-xr-x 1 root root 0 Jan 1 2000 code.py
drwxr-xr-x 2 root root 512 Jan 1 2000 .fseventsd
drwxr-xr-x 2 root root 512 Jan 1 2000 lib
-rwxr-xr-x 1 root root 0 Jan 1 2000 .metadata_never_index
-rwxr-xr-x 1 root root 0 Jan 1 2000 .Trashes
$ sudo umount xiao/
試しに XIAO の USB を抜き差し
df -h で xiao/ にマウントされていないことを確認
XIAO の USB を抜き差し
/var/log/messages を確認すると再度 /dev/sdb として認識したと思われる
fdisk で確認
$ sudo fdisk -l
... snip ...
Disk /dev/sdb: 64.5 KiB, 66048 bytes, 129 sectors
Disk model: Seeeduino XIAO
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000
Device Boot Start End Sectors Size Id Type
/dev/sdb1 1 128 128 64K 1 FAT12
$ sudo mount /dev/sdb1 xiao/
$ ls -la xiao/
total 22
drwxr-xr-x 4 root root 16384 Jan 1 1970 .
drwxr-xr-x 3 pi pi 4096 May 7 18:12 ..
-rwxr-xr-x 1 root root 138 Jan 1 2000 boot_out.txt
-rwxr-xr-x 1 root root 0 Jan 1 2000 code.py
drwxr-xr-x 2 root root 512 Jan 1 2000 .fseventsd
drwxr-xr-x 2 root root 512 Jan 1 2000 lib
-rwxr-xr-x 1 root root 0 Jan 1 2000 .metadata_never_index
-rwxr-xr-x 1 root root 0 Jan 1 2000 .Trashes
minicom を使えるようにする
$ sudo apt install minicom
$ echo $USER
pi
これやらなくてもはじめから dialout グループに入っている可能性もあり
$ sudo usermod -a -G dialout $USER
$ id
uid=1000(pi) gid=1000(pi) groups=1000(pi),4(adm),20(dialout),24(cdrom),27(sudo),29(audio),44(video),46(plugdev),60(games),100(users),105(input),109(netdev),997(gpio),998(i2c),999(spi)
dialout グループに入っていることを確認
(反映されていない場合は、とりあえずラズパイを再起動してみて再度確認)
$ minicom -b 115200 -o -D /dev/ttyACM0
リターンキーを押すと Circuit Python と思われるコンソールに接続
minicom の終了
Ctrl + a -> z -> x
(byobu から minicom を動かしている場合は Ctrl + a -> a -> z -> x)
XIAO の USB ケーブルをラズパイから抜く前に unmount
$ sudo umount qtpy/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment