インフォメーション

2009年02月 ブログ運用開始(玄箱,Web Diary Professional 使用)

2012年10月 ブログシステムをfreoに移行

2015年05月 サーバを「Cubieboard」に移行し運用開始

2018年10月20日 なんちゃって百葉箱(後に「な!百葉箱」と命名)の運用開始(HomeWeather)

2019年09月01日 な!百葉箱(第2版)運用開始

2023年03月04日 NOAA受信システムの運用開始

2024年06月09日 システムダウンにより新サーバにて復旧作業中(6/20現在も本Blogは更新不可)

2024年06月10日 サーバ移行開始(6/29復旧)

2025年08月13日 最後となったNOAA19が11日に運用を終了した模様(暫くゴミ画像)

2025年10月23日 「な!百葉箱」はダウン中(11/23復旧)

2025年12月12日 ひまわりの画像は国立情報学研究所(NII)が提供するデジタル台風という公開データベースから取得

エントリー

ラズパイでMinivMacを動作させてみた

Maclockの偽Mac組み込みを検討するためラズパイでMinivMacを動作させてみた

MinivMac for Windows

先ず必要ファイルの確認を含めWindows版でMinivMacの動作確認

大体の必要物は以下から手に入る

https://www.toughdev.com/content/2008/06/system-7-5-5-on-mini-vmac/

https://www.gryphel.com/c/minivmac/

Windows版MinivMacでBootDiskを起動

ws00_winMinivMac.png

上記のリンク先を探ればわかるがROMはこちら

同じくBootDiskはこちら

ラズパイの準備

IMG_20260419_163109.jpg

組み込み時はラズパイZERO2Wになるが試行時は有線LANが使えるラズパイ3を使用

480x640の2.8inch LCDは少し高価なので320x240だがILI9341のLCDを使う

ws01_trixie64.png

OSはTrixie(64bit)だと画面のちらつきが気になるのと,画面がスケーリングできないため320x240を変更できない

そこでOSはbullseyeになるが640x480のスケーリングが可能なfbcp-ili9341を使用にすることにした

①2023-05-03-raspios-bullseye-armhf-full.img.xzを使う

②fbcpを作成(手順

DC:GPIO24,RESET:GPIO25なら以下で良い

$ cmake -DILI9341=ON -DSTATISTICS=0 -DSPI_BUS_CLOCK_DIVISOR=8 ..

③/etc/rc.localからmakeしたfbcpをバックグランドで起動

④/boot/config.txtを編集(参考

(略)
#dtoverlay=vc4-kms-v3d
dtoverlay=vc4-fkms-v3d
(略)
framebuffer_width=640 framebuffer_height=480
(略)
hdmi_group=2 hdmi_mode=87 hdmi_cvt=640 480 60 1 0 0 0

⑤ラズパイを起動してデスクトップの設定から構成を最小,画面解像度を640x480にする

ws02_bullseye32.png

VNCでは640x480で表示

IMG_20260419_202351.jpg

LCDでは320x240にダウンスケーリングされて表示となるが文字は認識できる

MinivMac for ARM

ARM版をDLしてWindows版と同じ様にファイルを配置し起動

ws03_piMinivMac_def.png

IMG_20260420_095321.jpg

LCDを撮影すると青っぽくなるようだ

初代Macは512x342なので640x480ではウインドウになってしまうため

https://www.gryphel.com/c/minivmac/var_serv.html

で,画面解像度を変更したdemo版を入手

ws04_piMinivMac_vga.png

IMG_20260420_091731.jpg

画面を占有して良い感じになるのだが,Window操作ができなくなるという欠点がある

MiniMac以外で利用しないのであれば問題とはならないがちょっと勿体ない

Maclockへの組み込み

320x240のILI9341LCDを使用して精細とはいかないが解像度の問題にはならないようだ

IMG_20260420_104956.jpg

しかし基板の取付部分がはみ出てしまうため取り付けを断念

ピンソケットで直接刺せる製品を探したところ現状は2.4インチ版しかない

安価な代用品が調達できるようになるまで中断かな

追加

HDDでの構築例が以下

https://qiita.com/nak435/items/ee536b02747dc93ff57a

Maclockを購入

  • 2026/04/18 09:56
  • カテゴリー:分類無

そこそこ高価格なため見送っていたMaclockがAmazonにて¥2,369(限定プライムセール)で販売されていたので購入

IMG_20260418_093057.jpg

1984年の初代Macintoshの形を80×91×112㎜にした時計である

IMG_20260418_093235.jpg

本物は高価だったので所持することはできなかったが,会社で調査・研究のため購入したのをさわりまくった記憶がある

前身であるLisa(VT100の様な形状)と比べ,コンパクトで独特な筐体が人気を得た理由ではないかと思う(大きな価格差もあるか)

IMG_20260418_093558.jpg

FDがスイッチになっているのは面白い(MacのFDはジョブスのこだわりでソフトイジェクトだった)

デザインシールは購入者が付けるようになっている

時計は日本語表示なしで標準電波(電波時計)の受信機能もないので大したものではない(HWは凝っているみたい)

見覚ましとカレンダー,温度計が付いている

中身を取り除きMinivMacでMacエミュレートしている強者もいる

ESP32で音出しとMP3を再生したまとめ

ESP32ではメモリ不足で「ESP32-audioI2S」ライブラリは動作不可であったが「ESP8266Audio」というライブラリがありESP32でも使えることが判ったので音出しを実験

まずはネットで情報収集した結果ESP32で音出しする際の構成をまとめてみた

20260412_Fig01.png

ESP32の音出しには2つの方法がある(I2S

①内蔵DACを使って,I2SとDACドライバを経由で音を出力

②内蔵DACを使用しないで直接I2S信号をGPIOで出力させ外付けDACで音を出力

注)②の場合直接I2Sへデーターを送出する方法とライブラリを利用する方法がある

①の方法で出力

サイン波を生成して出力させるスケッチを試したが今一つだったので以下からスケッチを拝借

https://kghr.blog.fc2.com/blog-entry-126.html

I2S_1bit_output.png

注)直接SPを接続すると音量最大時が3.3Vとなるので大電流がGPIOに流れないよう注意

(再生)

②の方法で出力

(テスト用音源の準備)

②の方法で「ESP8266Audio」を使って音を再生するための音源データ(MP3)を準備

当初はWeb経由で行おうとして正常に動作しないので以下を参考にしてESP32のフラッシュに置いた

https://hatakekara.com/spiffs/(SPIFFS)

https://qiita.com/kumakumao/items/be51f174bfeb0e4a6a06 (LittleFS)

音源データが1MB少々でも1.5MBでは不足となるので「NO OTA(2MB APP/2MB SPIFFS)」で対応

■ 簡易的なモノラル出力

「ESP8266Audio」でDACがなくてもDOUTからPWMで再生する方法がある

サンプリング周波数は低いのだろうが,1bitのパルス波形の密度(ON/OFF)で表現するDSDってことかな

I2S_1bit_output.png

スケッチ(音源はSPIFFS)

#define NODAC 1

#include <Arduino.h>
#include "AudioFileSourceSPIFFS.h"
#include "AudioGeneratorMP3.h"
#ifdef NODAC
#include "AudioOutputI2SNoDAC.h"
#else
#include "AudioOutputI2S.h"
#endif

AudioGeneratorMP3 *mp3;
AudioFileSourceSPIFFS *file;
#ifdef NODAC
AudioOutputI2SNoDAC *out;
#else
AudioOutputI2S *out;
#endif

void setup() {
Serial.begin(115200);
delay(1000);
Serial.printf("MP3 Play Start\n");
SPIFFS.begin();
file = new AudioFileSourceSPIFFS("/hoshi45s.mp3");
#ifdef NODAC
out = new AudioOutputI2SNoDAC();
#else
out = new AudioOutputI2S();
#endif
out->SetPinout(26, 25, 22); //BCK=26, WCLK=25, DOUT=22
out->SetGain((float)30/100.0); //音量
mp3 = new AudioGeneratorMP3();
mp3->begin(file, out);
}

void loop() {
if(mp3->isRunning()) {
if(!mp3->loop()) mp3->stop();
} else {
Serial.printf("MP3 done\n");
delay(10000);
}
}

(再生)

■ MAX98357Aで出力

I2S_output.png

スケッチ(音源はSPIFFS)

//#define NODAC 1    ← コメントアウト

以下,上記のスケッチと同じ

(再生)

ESP32C3 super miniでMP3を再生

ESP32で音出しが出来たので,低価格でコンパクトなESP32C3 Super miniでのMP3再生を実験smc3-k2-pin-2.jpg

(相違や懸案点)

  • 使用したのは「ESP32 C3 Super Mini(K2)」((K1)以外はPIN互換だったかな)
  • ESP32C3 Super miniは内蔵DACが省かれているので出力は②の方法のみとなる
  • PIN数が異なるのでGPIOを1~5へ変更
  • SPIFFSを作成してファイルを設置できるのだが何故か読めないのでLittleFSを使用
  • arduinoIDE V1ではビルドできても動作が不安定で動作しないためV2でビルド
  • デバッグで利用するSerial出力がIDEの設定で出力PINが変わるので注意(USB CDC On Boot)
■ 簡易的なモノラル出力

IMG_20260412_164740.jpg

アンプ付きスピーカーとの接続はGPIO1

スケッチ(音源はLittleFS)

#define NODAC 1

#include <Arduino.h>
#include "AudioFileSourceLittleFS.h"
#include "AudioGeneratorMP3.h"
#ifdef NODAC
#include "AudioOutputI2SNoDAC.h"
#else
#include "AudioOutputI2S.h"
#endif

AudioGeneratorMP3 *mp3;
AudioFileSourceLittleFS *file;
#ifdef NODAC
AudioOutputI2SNoDAC *out;
#else
AudioOutputI2S *out;
#endif

void setup() {
Serial.begin(115200);
delay(1000);
Serial.printf("MP3 Play Start\n");
LittleFS.begin();
file = new AudioFileSourceLittleFS("/hoshi45s.mp3");
#ifdef NODAC
out = new AudioOutputI2SNoDAC();
#else
out = new AudioOutputI2S();
#endif
out->SetPinout(3, 2, 1); //BCK=3, WCLK=2, DOUT=1
out->SetGain((float)30/100.0); //音量
mp3 = new AudioGeneratorMP3();
mp3->begin(file, out);
}

void loop() {
if(mp3->isRunning()) {
if(!mp3->loop()) mp3->stop();
} else {
Serial.printf("MP3 done\n");
delay(10000);
}
}

(再生)

■ MAX98357Aで出力

esp32c3_output.png

スケッチ(音源はLittleFS)

//#define NODAC 1 ← コメントアウト

以下,上記のスケッチと同じ

(再生)

  • 電源の問題なのかフェージングが発生

琴電を撮影

  • 2026/04/11 20:57
  • カテゴリー:観光

観光という訳ではないが琴平に寄った時に琴電車両が観えたので撮影(POCO M8)

IMG_20260411_144146.jpg

丁度琴平駅発もあったので動画も撮影(風音が酷いのは勘弁)

 

ページ移動

ユーティリティ

検索

エントリー検索フォーム
キーワード

新着コメント

Re:ArduinoIDEでFTDIチップでの書き込みエラー
2026/01/16 from 権限がありません
Re:ArduinoIDEでFTDIチップでの書き込みエラー
2026/01/15 from admin
Re:ArduinoIDEでFTDIチップでの書き込みエラー
2026/01/14 from 権限がありません
Re:NOAA受信システム復旧
2025/06/11 from admin
Re:NOAA受信システム復旧
2025/06/11 from とおりすがり

過去ログ

Feed