環境
Arduino IDE 1.8.12
esp32 by Espressif System v1.0.4
参考にしたサンプル・スケッチ
SerialToSerialBT.ino
VL53L0X_Continuous.ino
モジュール
VL53L0X
ESP32 DEVKIT V1
ESP32 DEVKIT V1とシルク印刷のあるESP32モジュールを使う。
これにVL53L0Xという測距センサーのモジュールをI2C接続で3台接続した。
測定値はBluetooth SerialでPCへ送る。
上の写真ではUSBケーブルが刺さっているが電源供給のみでデータ線はつながっていない。
I2C用に2本と3つのセンサーのアドレス変更時の切り替え用にGPIO16~18の3本を使っている。
当初、3つ目のセンサーを付けるとうまく動かなかったりした。
そのため、電源入力部にコンデンサをつけたり、I2Cのプルアップ抵抗を追加したりした。
結局、ESP32ボードの3V3から取っていたセンサー用の電源をVINからに変更したら問題なく動作するようになった。
現状ではコンデンサも抵抗も一切取り付けていない。
センサーの電源は3.3Vだとばかり思っていたが、よく見たらセンサー・モジュール上に3.3Vのレギュレータが付いていた。
なので5Vにつないだ方がいいのだろう。
662KとマーキングのあるこのレギュレータはLM6206N3とかXC6206P332MRとかいう名前で出て来る3.3Vのレギュレータだ。