MicroPython的午睡(56) ATOMLite、パッシブ・ブザー接続

ATOMLite_wPassiveBuzzer
Joseph Halfmoon

このところM5ATOMLite側からNodeREDサーバーに「報告」するばかりで、逆方向のアクションがありません。そこでATOMLiteにPassive Buzzerを取り付けてみました。サーバーからブザーを鳴らせば「注意喚起」(何の?)が出来ると。今回はPWM駆動でブザーを鳴らすところまで。

“MicroPython的午睡(56) ATOMLite、パッシブ・ブザー接続” の続きを読む

IoT何をいまさら(102) ESP-EYE, ESP-IDFでWiFiスキャン

DEVKITC_ESP_EYE
Joseph Halfmoon

ATSAMマイコン関係がこちらへ移動したので、「跡地」にESP-EYEをESP-IDF環境で「やっつけよう」という試みが越してまいりました。AIとか、カメラとかまずは置いておいて、ESP32なんだからWiFiで通信できるところから出発すべきだろう、と。ESP-IDF、資料有りすぎ、読むのが辛いです。イケないけれども伝統の試行錯誤法でアプローチ? “IoT何をいまさら(102) ESP-EYE, ESP-IDFでWiFiスキャン” の続きを読む

モダンOSのお砂場(29) FreeRTOS、プリエンプティブなスケジューリング

StateDiag_EC
Joseph Halfmoon

前回はFreeRTOSのスケジューラを起動をしたものの、Taskは1個だけでスケジューラのご利益はありませんでした。今回はTaskを2個にして、Blocking APIを使って「自主的に」制御権を手放すのと「プリエンプティブ」に制御権を取り上げて再スケジュールするのと両方のケースを観察してみたいと思います。実験に使用するのは、前回に続きSAMD21マイコン搭載Seeeduino XAIOボードです。 “モダンOSのお砂場(29) FreeRTOS、プリエンプティブなスケジューリング” の続きを読む

ぐだぐだ低レベルプログラミング(41) 64bitのRISC-Vでインライン・アセンブラ

ArduinoInlineASM_EC
Joseph Halfmoon

RISC-VインタナショナルがVectorなどの拡張命令セット多数を制定したとのニュースが流れるなか、こちらはようやく64ビット命令に入ります。前回まで32ビットのRISC-V、GD32VF103でしたが、今回からは64ビット、Kendryte社のK210です。前回同様VSCode+PlatformIOでのビルドは同じ、しかしプラットフォームが異なるのでまずはアセンブラ命令を走らせる環境の確認から。

“ぐだぐだ低レベルプログラミング(41) 64bitのRISC-Vでインライン・アセンブラ” の続きを読む

ソフトな忘却力(13) ラズパイsyslog、ファイル振り分け、UDPの許可

Raspberry Pi 4
Joseph Halfmoon

困った時の syslog 頼み。Raspberry Pi OSを動かしていて何かトラブったときに見るのが syslog です。運が良ければ?問題の原因が分かります。そうして頼ってきた割にラズパイのsyslogの事はちゃんと理解していなかったことが今回発覚。「ついでに」ファイルの振り分けを追加し、リモートからのUDPでのログにも対応とな。

“ソフトな忘却力(13) ラズパイsyslog、ファイル振り分け、UDPの許可” の続きを読む

Pico三昧(1) Pico C/C++ SDKで定番74HC595接続、ソフト制御編

74HC595
Joseph Halfmoon

ラズパイPico関係の投稿が増えてきたので、総目次を新設し、あちこちに散在する投稿へのリンクを整理中です。ついてはラズパイPico専用で1シリーズを設けました。「Pico三昧」ですぞ。栄えある?第1回は以前Pico上のMicroPythonでやったことのある定番のシフトレジスタ74HC595の接続です(新味が無いな。)

“Pico三昧(1) Pico C/C++ SDKで定番74HC595接続、ソフト制御編” の続きを読む

データのお砂場(2) R言語、BJsales よくわからないけれど「先行指標」?

BJ_EC
Joseph Halfmoon

年寄りの冷や水、R言語を標準インストールすればもれなくついてくるサンプルデータセットを、使い方も良く分からぬまま、それどころか統計も勉強せずに、端から触ってみるというやっつけでご乱心な第2回は BJsales と BJsales.lead であります。なんだかよく分からないデータです。先行指標ってやつ?どんだけ先行してんだろ。 “データのお砂場(2) R言語、BJsales よくわからないけれど「先行指標」?” の続きを読む

手習ひデジタル信号処理(12) STM32F446、IIRフィルタその1、Float型

IIRdirBLK
Joseph Halfmoon

今回から、IIRフィルタに入ります。前回までのFIRフィルタに比べると、計算負荷(あるいは回路規模)は小さくなるけれども、「いろいろ」あって難しい、と。ちょっと上級生になった感じで嬉しいです。まずは、基本形を出発点に、さっそく計算精度の問題の一端を垣間見ることになるみたいです。浮動小数点処理でもグラグラするのね。

“手習ひデジタル信号処理(12) STM32F446、IIRフィルタその1、Float型” の続きを読む

忘却の微分方程式(25) 積分、MathematicaとMaxima

IntgEC
Joseph Halfmoon

前回は微分ということで、今回は積分です。わたしゃ自慢じゃないですが、積分が出来る気がしません。それもあってのMathematicaとMaximaに頼りたい症候群であります。今回は表面的なところを、おっかなびっくり、なでてみたいと思います。積分に関しては、Mathematicaの方が「分かり易い」感じ。何といっても入力の形からして。 “忘却の微分方程式(25) 積分、MathematicaとMaxima” の続きを読む

ブロックを積みながら(47) Node-RED、Dashboard、audio out

DashboardAudioOut_test_Flow
Joseph Halfmoon

このところDashboard用のノードを勉強しております。今回は「Dashboardの」audio outノードです(似たものがDashboardの外にもあり。)Dashboard用と言いつつ、Dashboardの表面には見えませぬ。しかし「結構使える」気がします(個人の感想です。)まあ、ちょっと使い方難しいところもあるけれども。

“ブロックを積みながら(47) Node-RED、Dashboard、audio out” の続きを読む

MicroPython的午睡(55) ATOMLite、NodeREDにCdSセル結果報告

CDSreportDashBoardB
Joseph Halfmoon

前回 M5ATOMLiteのADCにCdSセルを接続し、値を読み取ることができました。今回は測定値をサーバ機Raspberry Pi3上のNodeREDに報告です。DHT11、BMP280と「既に通ってきた道」なので以下同文でOK、っと思ったら温度、湿度グラフのところにバグが。。。まあついでに修正。

“MicroPython的午睡(55) ATOMLite、NodeREDにCdSセル結果報告” の続きを読む

モダンOSのお砂場(28) FreeRTOS、スケジューラの起動、SAMD21

SAMD21_FreeRTOS_Blink_EC
Joseph Halfmoon

前回は、ESP32上のFreeRTOSでした。しかしESP32だと出来なかったことがあるのです。スケジューラの起動。ESP32の場合FreeRTOSが動いているのが前提なので、こちらに制御がもらえる前にスケジューラが動いてます。一方、最近手に入れたSAMD21機Arduino環境では、スケジューラを自分で立ち上げればFreeRTOSできる、という仕組み。

“モダンOSのお砂場(28) FreeRTOS、スケジューラの起動、SAMD21” の続きを読む

鳥なき里のマイコン屋(150) K210、MAiX-BiT、C/C++で恒例Lチカ

MAiX_BiT_Blink_EC
Joseph Halfmoon

前回ボード入手のKendryte、K210についてC/C++で恒例Lチカをしてみたいと思います。以前はK210についてはMAiX PyというMicroPython環境ばかりでしたが、C/C++でも環境が整ってきたようで随分使えるようになっていました。ビルドに使う環境はWindows PC上の VSCode + PlatformIO です。

“鳥なき里のマイコン屋(150) K210、MAiX-BiT、C/C++で恒例Lチカ” の続きを読む

ぐだぐだ低レベルプログラミング(40) RISC-V、div、RV32M拡張その3

DIV_EC
Joseph Halfmoon

前回の乗算に比べると今回の除算命令は分かり易いです。商と余りのどちらか結果はひとつだけという割り切りの効果でしょう。C書いていたら、どちらか一つを求めるのが普通だし、プログラミング言語的にもあっている感じ。そんなこんななのでサクッとやりたいと思います。割り算だよ。

“ぐだぐだ低レベルプログラミング(40) RISC-V、div、RV32M拡張その3” の続きを読む