ブロックを積みながら(21) MakeCode、Compilation failed

CompilationFailed
Joseph Halfmoon

前回、ラズパイPythonからBluetooth UARTサービスを使って「コマンド」をmicro:bitに送り込み、それに反応させることができました。今回はmicro:bitから処理結果をラズパイに返信するとともに、各種コマンド大拡充、と目論んだのですが障害あり。MakeCodeのコンパイル時エラー発生。

“ブロックを積みながら(21) MakeCode、Compilation failed” の続きを読む

MicroPython的午睡(22) ラズパイPico、AQM1602 LCDパネル接続

Pico_AQM1602
Joseph Halfmoon

このところ Raspberry Pi Picoに各種デバイスを接続し、MicroPythonで操作してきております。が、定番のデバイス、どうせ接続できるでしょ、ということでやってませんでした。しかし、やっておかないと何が起きるかわからない。念のためということで今回は、秋月電子製LCDモジュールキット、AE-AQM1602Aであります。 “MicroPython的午睡(22) ラズパイPico、AQM1602 LCDパネル接続” の続きを読む

ブロックを積みながら(20) micro:bit, BLE UartへPython書き出し

uartBLK
Joseph Halfmoon

前回は、BBC micro:bit のBLE特性(Characteristics)のうち、読めばわかりそうなものをラズパイPython3で読み出してみました。今回は、BLE Uartサービスに「書き込んで」micro:bitを鳴かせてみたいとおもいます。また、前回のコードだとmicro:bit v2ではうまく行かないことも発覚したので修正しました。

“ブロックを積みながら(20) micro:bit, BLE UartへPython書き出し” の続きを読む

MicroPython的午睡(21) ラズパイPico、M5AtomLiteとUART通信

RPiPico_M5AtomLite
Joseph Halfmoon

今回はハードウエアの周辺機能の利用に戻りたいと思います。毎度毎度「お世話になっている」のに取り上げてこなかったUART(調歩同期方式シリアル通信)であります。当然、通信する相手なければ使ってみることができませぬ。そこで今回用意いたしましたのは、M5Stack社の超小型デバイスATOM Liteであります。Raspberry Pi Picoに比べても小さいです。機能的には相互補完的?

“MicroPython的午睡(21) ラズパイPico、M5AtomLiteとUART通信” の続きを読む

ブロックを積みながら(19) micro:bit BLE, Pythonで「特性」読み出し

microbit_back_bbox
Joseph Halfmoon

前回、bluepy モジュールを使ってラズパイ上のPython3のスクリプトでBBC micro:bit のBLEアトリビュート内の「特性(characteristic)」のハンドルをリストいたしました。ハンドルが分かれば実際の値にアクセスできます。今回は、読み出すだけの特性を中心に「読んで」みたいと思います。

“ブロックを積みながら(19) micro:bit BLE, Pythonで「特性」読み出し” の続きを読む

MicroPython的午睡(20) ラズパイPico、PIO操作は最大8ビット?

PIOtestDUT
Joseph Halfmoon

Raspberry Pi PicoのPIO(Programmable IO)は、Picoのユニークな機能であり、かつ適応能力最強の「ペリフェラル」だと思います。勿論MicroPythonからも利用できます。しかし前回、普通のSRAMをPIO経由で制御しようとしてトラぶりました。今回は釈然としない部分に絞ってその動作を実機確認してみたいと思います。 “MicroPython的午睡(20) ラズパイPico、PIO操作は最大8ビット?” の続きを読む

ブロックを積みながら(18) BLE、ハンドル、UUID、CHARACTERISTICS

uartService
Joseph Halfmoon

前回は、micro:bitとRaspberry Pi 3 model B+をペアリングし、ラズパイ上のPython3からbluepyモジュールを使ってコネクトしました。そしてその様子をラズパイ上のWiresharkで観察してみました。そこで痛感したことは、Handle / UUID / Characteristic などというものを理解しないと何が何だかサッパリということであります。今回は、micro:bitの「それら」をダンプして何があるのか調べてみます。

“ブロックを積みながら(18) BLE、ハンドル、UUID、CHARACTERISTICS” の続きを読む

MicroPython的午睡(19) ラズパイPico、「普通の」SRAM接続に手こずる

SRM2B256SLMX55
Joseph Halfmoon

前回前々回とシリアル接続のメモリをRaspberry Pi PicoのMicroPythonで読み書きしてみました。今回は「普通の」バスのSRAMを読み書きしてみようと思います。今時、「普通の」バスを扱えるMCUなど滅多に見ないし、ラズパイPicoにも外バスはありません。例のPIO使えばデキそうなんだけれど。

“MicroPython的午睡(19) ラズパイPico、「普通の」SRAM接続に手こずる” の続きを読む

MicroPython的午睡(18) ラズパイPico、SPIでシリアルSRAM接続

23LC512
Joseph Halfmoon

前回はシリアルEEPROM、I2C接続でした。今回はシリアルSRAM、SPI接続であります。前回はMicroPythonからのI2C制御、釈然としない部分ありだったのですが、今回のSPIは明朗会計なんであります。ほとんど何も考えずに接続すれば動作してしまう感じ。落差大きいです。 “MicroPython的午睡(18) ラズパイPico、SPIでシリアルSRAM接続” の続きを読む

ブロックを積みながら(16) 2台のラズパイのBLE受信信号強度をNodeRedで比較

MBG_EddystoneADV
Joseph Halfmoon

前回ラズパイのPython3で、micro:bitが送信するBluetooth LEのアドバタイズパケット、Eddystoneを受信することができました。今回は離れた場所においたラズパイ3とラズパイ4で同じパケットを受信、それぞれの受信信号強度をNodeREDダッシュボード上で比較してみました。ロケーション推定もどき。 “ブロックを積みながら(16) 2台のラズパイのBLE受信信号強度をNodeRedで比較” の続きを読む

鳥なき里のマイコン屋(122) Raspberry Pi 4到着、ラズパイPicoの母艦化

Pi4SoC
Joseph Halfmoon

ようやくと言うべきか、GW前にRaspberry Pi 4 を手に入れました。先に入手のRaspberry Pi Picoの母艦にする、というのが主目的であります。情報もそろい、ツールなども完備のラズパイなので、OSのインストールからクロス開発環境のセットアップなど「スムース」ではあるのですが、例によって引っかかるところもあり。 “鳥なき里のマイコン屋(122) Raspberry Pi 4到着、ラズパイPicoの母艦化” の続きを読む

ブロックを積みながら(15) micro:bitのBLEをラズパイPythonで捕捉

ADV_Pi
Joseph Halfmoon

ここまでmicro:bitからのBLEパケットを送受するのにスマホアプリを使用してきました。スマホは便利ですが、やりたい事によっては固定された場所で常時動作している「基地局」的なものが欲しくなります。そこで手元のラズパイ上でBLE通信プログラムの作成環境セットアップ。やはりPythonが楽だ。

“ブロックを積みながら(15) micro:bitのBLEをラズパイPythonで捕捉” の続きを読む

MicroPython的午睡(17) ラズパイPico、I2CでシリアルEEPROM接続

24LC64 I2C EEPROM
Joseph Halfmoon

前回はRaspberry Pi Picoに独特なPIOの利用でしたが、今回は一般的なI2Cです。接続するのはEEPROMです。マイクロチップ製の24LC64、64Kbit品です。MicroPythonからメモリの読み書きは「とりあえず」出来たんでありますが、いまだ釈然としない事項が残ります。おまけにI2CバスをSCAN時のロジアナ波形もあり。

“MicroPython的午睡(17) ラズパイPico、I2CでシリアルEEPROM接続” の続きを読む

MicroPython的午睡(16) ラズパイPico、PIOで74HC595制御、簡単

PIO_74HC595_LGANA
Joseph Halfmoon

前回は、Raspberry Pi PicoのProgramable IO(PIO)が可能性無限大、みたいな話を書きましたが、オシロで波形を観察したにとどまりました。今回はその威力を実地に確かめるべく、前々回の7セグLED4桁駆動回路に適用してみます。一撃で任意の波形を作れるPIOがあると本当に楽だ。 “MicroPython的午睡(16) ラズパイPico、PIOで74HC595制御、簡単” の続きを読む