CH32V006 を使ってみた その1
ここ数年低価格マイコンとして定着した感のある CH32V003 ですが、 昨年発表された新製品がやっと入手できるようになったので、簡単にテストします。
CH32V006 とは
CH32V003 の後継機として発表された一連のシリーズのひとつです。 大きな変更箇所は以下の通りです
ここ数年低価格マイコンとして定着した感のある CH32V003 ですが、 昨年発表された新製品がやっと入手できるようになったので、簡単にテストします。
CH32V003 の後継機として発表された一連のシリーズのひとつです。 大きな変更箇所は以下の通りです
Raspberry Pi Pico 自作エミュレータまとめ(随時更新)
東芝のパソコン「パソピア」のエミュレータです。 いろいろと変わった設計のパソコンですが、 テープ周りの再現が現時点ではてきていません。 代わりに RAMPAC というメモリーカートリッジがあったので、そちらを使用するようにしています。
MSX1 エミュレータを作ったのでメモ
レトロ PC 界隈の方には説明不要だと思いますが、MSX (MSX1) とは 1983 年に発表されたレトロPCの規格で、 当時複数のメーカーからいろんな機種が発売されたものです。
2024 年につくったものまとめ
aitendo 年末福箱に入っていた、EN803 を使った簡単 FM ラジオ。 一応バッテリ駆動できるようになっている。 製作中に 3D プリンタが故障したので、買いなおす羽目になった。
自分の作っているレトロPCエミュレータは部品数削減のため、フラッシュの空き容量にファイルシステムを作って、そこにファイルを置くようになっています。 既存のテープのイメージをどのようにして書き込んだらよいのかわからないという話をよく聞くので簡単に手順をまとめてみました。
現在レトロPCエミュレータで使っている VGA 出力ライブラリは、 Hunter Adams さんの VGAライブラリ を使っているのですが、いろいろ改変しているので、ここでまとめます。
勝手に Pasocom mini シリーズの製作メモ
市販の Pasocom mini が 1/4 スケールで製作されているので、 同縮尺のミニチュア筐体に組み込むのを目標とする。
筐体についてはいくつかネットで STL データが公開されているので、それを利用して加工することとする。
フラッシュの書き込みではハマる人が減りますようにメモ
Rasberry Pi Pico は中華マイコンと比べて値段が高いのであまり使っていなかったのですが、 1MB フラッシュの互換品が安く手に入ったので、PIO の練習がてら使っていました。
ESP32-C3 でセンサーデバイスを作る
HomeAssistant にはたくさんのセンサーなどが登録されていますが、日本国内で販売されている製品はあまりありません。 とりあえず、温湿度センサーと赤外線リモコンができることを目的に、センサーデバイスを作っていきます。
ESPHome を導入して、ESP32CAM のカメラ画像を取得する
前回 HomeAssistant をインストールしましたが、まだなにもセンサーがありません。 市販のセンサーなどを登録することも可能なのですが、日本国内で手に入るものはあまりありません。
HomeAssistant の環境を作る
御多分に漏れず秋月電子の謎 SoC 基板を入手しました。 これは、Wi-Sun のモジュールがついているので、たったの 2200円(2024年5月現在)で、 電力計のデータを取得することができるようになります。
RISC-V と ARM の切り替えができる変態 SoC を ARM モードを使う
Milk-V Duo 256M で使っている Sophpi SG2002 は、メインプロセッサが RV64 と Cortex-A53 の切り替え式になっています。 とりあえず ARM モードで起動させることができたのでメモします。
PY32F002A つづきとひみつ
前回は SWDIO 経由でフラッシュを書き込みましたが、PY32F002A には USART 経由で書き込みできるブートローダが出荷時に書き込まれているので、 何処のご家庭にもある USB-シリアル変換機を使って書き込むことができます。ただし、現状 Windows にしか対応していません。
いわゆる「8セントマイコン」こと PY32F002A を入手したのでいろいろ試してみます。
PY32 シリーズは、中国 Puyaが製造している ARM マイコンです。 おもに Flash などを製造している会社のようです。
CH32V203 にはドキュメントに書かれていないフラッシュ領域が存在するようなので調査
CH32V203 は、安くて速いので使い勝手のいい製品ですが、4月の末にこんな噂が流れました「CH32V203 には、どの製品にも 224KB のフラッシュが積まれている」。 ということで確認してみましょう。
ESP32-S3 で Linux を動かしてみる
Lichee Nano の作業時に buildroot を見ていたのですが、 レポジトリの中に ESP32 の設定がありました。 昔、MMU のない CPU で Linux を動かす uCLinux というプロジェクトがあったのですが、 今ではメインのカーネルソースに取り込まれていて、簡単にビルドできるようになっているようです。
やっぱり積みボードとなっている Lichee Nano の FW を更新する
Trying to boot from MMC1
Card did not respond to voltage select!
mmc_init: -95, time 22
spl: mmc init failed with error: -95
Trying to boot from sunxi SPI
U-Boot 2018.01-05679-g013ca457fd-dirty (Aug 02 2019 - 09:57:28 +0800) Allwinner Technology
CPU: Allwinner F Series (SUNIV)
Model: Lichee Pi Nano
DRAM: 32 MiB
MMC: SUNXI SD/MMC: 0
SF: Detected xt25f128b with page size 256 Bytes, erase size 4 KiB, total 16 MiB
*** Warning - bad CRC, using default environment
Setting up a 800x480 lcd console (overscan 0x0)
In: serial@1c25000
Out: serial@1c25000
Err: serial@1c25000
Net: No ethernet found.
starting USB...
No controllers found
Hit any key to stop autoboot: 0
SF: Detected xt25f128b with page size 256 Bytes, erase size 4 KiB, total 16 MiB
device 0 offset 0x100000, size 0x4000
SF: 16384 bytes @ 0x100000 Read: OK
device 0 offset 0x110000, size 0x400000
SF: 4194304 bytes @ 0x110000 Read: OK
## Flattened Device Tree blob at 80c00000
Booting using the fdt blob at 0x80c00000
Loading Device Tree to 80e03000, end 80e07ddc ... OK
これもほぼ初期状態ですかね。
Linux つながりで、昔買って積みボードと化している Intel Edison の FW を更新してみたいと思います。
ぶっちゃけほぼ初期状態です。 u-boot
U-Boot 2014.04 (Jun 06 2016 - 14:40:07)
Watchdog enabled
DRAM: 980.6 MiB
MMC: tangier_sdhci: 0
In: serial
Out: serial
Err: serial
Hit any key to stop autoboot: 0
カーネル
NEC の WiFi ルータを OpenWRT化する手順について
OpenWRT は Linux のディストリビューションの一つで、主に WiFi ルータなどの小規模な機器をターゲットとしています。 前に扱った Linino One も OpenWRT を使っています。
昔の秋月お楽しみ袋に入っていたマトリックス LED で電光表示器をつくる
基板のマーキングによると Rohm の製品のようです。 電車やバスなどの LED 表示器によく使われているようです。 こちらのページに解析結果がありましたので、参考にさせていただきました。
秋月電子で ATmega328PB を売ってたので試してみた
Arduino Uno でおなじみの ATmega328P の後継となるマイコンです。
実のところ ATmega328P は少し前から Not Recommended for new designs
となっていて、
代わりに ATmega328PB を使ってくださいということになっています。
発売自体も 2015 年ころなので、今まで秋月であつかっていなかったのが不思議なくらいです。
最近はフラットパッケージ版しかない IC が増えてきて、昔ながらのユニバーサル基板に手半田で工作するのも難しい時代になってきました。 よく使う CH32V203 とか 0.5mm ピッチなので、DIP 化基板への半田付けも一苦労です。 せめて DIP 化基板の半田づけだけでも省力化できないかと、安価な中華ホットプレートを導入してみました。
二台目 3D プリンター Ender-3 S1 Plus をちゃんと動かすまでのメモ
TouchBoard をいじっていた時に公式のケースの STL ファイルがあったので、いつものように 3D プリンターで出力しようとしたときのこと。
aitendo 正月福箱に入っていた EN803 で FMラジオを作る
aitendo 正月福箱には、2種類のラジオキットが入っていました。 そのうちの一つが EN803 です。
キットといっても、EN803 とコンデンサx2 と、タクトスイッチ、イヤホンジャックしか入っていませんでした。
ワンタイムパスワードをワンタッチで入力できる装置を作ってみる
現在時刻は USART を通して設定していますが、キースイッチでやった方がいいのかも?
一年以上放置状態の、MakeCode Arcade の忘備録
Microsoft の MakeCode Arcade は、Web 上のノーコード開発ツール(や Javascript / Python)でゲームなどが作れる環境です。 STEM教育などにも使われています。
ワンタイムパスワードをワンタッチで入力できる装置を作ってみる
ちょっと時間が空きましたが、ブレッドボード上にプロトタイプを作りました。
以下今回のハマりポイント
STM32C011 で気になることがあったので追記
STM32C011 はバリエーションの違いで Flash 16kB 品(J4/F4 など)と、32kB 品(J6/F6 など)が存在します。 今回は J4 を使っているのですが、STM32CubeProgrammer 上でよく見ると、
AVR64DD と STM32C011 で、Blink のコードサイズが全然違うので、 手持ちのマイコンで比較してみた。
Blinkのコードはほぼなにもしないコードなので、マイコンの初期化コードサイズの比較とほぼ同値になります。
これまた、秋月電子で取り扱いの始まった、低価格 STM32 マイコンである STM32C011 を使ってみるテスト。
STM32C0 シリーズは 2023 年にリリースされた STM32 マイコンの中でも最低価格帯に属する製品です。 ST は「8/16bit マイコンのリプレースの置き換えに」などと謳っています。
秋月電子で最近取り扱いが始まった AVR64DD28 を Arduino から使ってみるテスト。
いままでの mega なんとかという名称から変わった AVR の新シリーズです。 (もう Atmel ロゴじゃなくて Microchip ロゴなんだな…)
Linino One のファームウェアを更新してみる話
さすがに、オリジナルファームウェアは古すぎるので、最新版のファームウェアを入れてみたいのですが…
秋月電子 正月福箱に入っていた Linio わんわんハントセットをいじってみました
Linino わんわんハントセットは、Linino One と USB A/Ethernet 用サブボードがセットになったものです。去年の夏くらいから秋月電子で 2000円で売っていたので、気にはなっていたのですが、すでに Linino のサイトが閉鎖されているためファームウェアの更新ができないという注意書きがあったので見送りしていました。
年末なので、今年作ったものまとめ。
2022 年末に seeed studio のクリスマスセールで買った Arduino Leonardo HDK を使って作った Arduboy 互換機。 基板は2階建てで、下の層に Leonardo 相当品を入れている。 このあと 3Dプリンタ製のケースに入れている。 フラッシュが 64Mbit の物しか入手できなかったのがちょっと残念。
ワンタイムパスワードをワンタッチで入力できる装置を作ってみる
いろんなサービスで MFA を設定していることは多いと思うのですが、 いわゆる TOTP を使ったサービスの場合、 毎回 Authenticator を起動して認証コードを確認して、 手でコードを入力しないといけないので、手間が増えてしまいます。
1000円で買える RA4M1 マイコンを Arduino として使えるか試してみました。
今回のターゲットは WeAct Studio の RA4M1 Core Boardです。 送料別で 1000 円未満で買えると思います。
Arduino Uno R4 で採用された Renesas の RA4M1 マイコンを積んだマイコンボードです。 RA4M1 は単体で買ってもそれなりの値段になるので、かなりオトクなボードだと思います。
「ドラクエのアレ」を AT32F403A で動かす
CH32V003/203 や GD32VF103 で Systick を使った例である「ドラクエのアレ」を AT32F403A の Firmlib に移植する。 タイマー系の操作はレジスタの名前が違うなどいろいろあるが、さほど難しくはないと思う。
安価な Linux SBC をゲットしたので、いろいろ試してみました。
Luckfox Pico とは中国の Luckfoxが作っている、低価格 Linux SBC です。 Raspberry Pi Pico とほぼ同じ大きさのボード上で Linux が動作します。
AT32F403A Lチカまでの道のり
Artery tek の github にPlatformIO のライブラリが存在するので、案内に従って PlatformIO core CLI からインストールする。
pio pkg install -g -p https://github.com/ArteryTek/platform-arterytekat32/releases/download/v1.0.2/pio-at32-1.0.2.tar.gz
実はこのボードは出荷時に L チカするコードが書かれているので、書き換わったことがわかりやすいように三々七拍子 L チカコードを作る。 LED の場所はボードに書かれている通り PC13 である。(負論理)
Artery tek 製マイコン AT32F403A を入手したのでいろいろ試してみるテスト
AT32F403A は、Artery tek 製の STM32 互換マイコンです。 STM32 と比べて以下の特徴があります。
フラッシュサイズは最大 1MiB、SRAM サイズは最大 224KiB あります。 フラッシュのゼロウェイトアクセス可能エリアサイズが可変になっていて、それによって使用可能 SRAM サイズが変わります。
CH32V003 に続いて CH32V203 のメモ
STM32F103 とピン互換な RISC-V マイコンといえば大体あってる感じです。 元々 WCH は CH32F シリーズの STM32 互換マイコンを出していたのですが、これの CPU を RISC-V に変えたものになります。 さらに USB ホスト機能があるので、ほかの USB 機器を接続することもできます。
CH340 などでおなじみの、WCH 製の RISC-V マイコンです。 2023 年の年頭から「10セントマイコン」と呼ばれて話題になっていたものです。 半年くらいいろいろ使ってみたので、軽くメモしておきます。