BLE BlueZのbluetoothctlコマンドでGATTサーバのデータを受信する bluetoothctlにはペアリングなどデバイス間の接続管理だけでなく、データの送受信機能も備わっている。今回は、別のLinuxマシンで動作しているGATTサーバからのデータをbluetoothctlで受信する実験を行ったので、手順をメモ... 2023.08.20 BLE
BLE 2台のLinuxマシン間でBLE通信する実験 前回記事では、LinuxマシンにGATTサーバを立て、サーバから送信されるデータをスマホのGATTクライアントに受信させた。 今回は、別のLinuxマシンでPythonコードによるGATTクライアントを動作させ、2台のLinuxマシン間でB... 2023.08.20 BLE
BLE BlueZのPythonテストコードでGATTサーバを動かす 「GATTサーバ」はBLE通信を用いてGATTクライアントからの接続要求に応じると共にデータをGATTクライアントに送信する。例えば、BLE対応の体温計などのセンサ類はGATTサーバの役割を担い、それらのデータを受け取るスマホはGATTクラ... 2023.08.20 BLE
BLE 趣味の電子工作向けBLE情報のまとめ BLE(Bluetooth Low Energy)を支える要素技術はアナログ無線通信からスマホのプログラミングまで多岐に渡る。電子工作の一環でBLEの情報収集を試みた当初はネットに溢れかえる無関係な情報に途方に暮れたものだが、色々試行錯誤を... 2023.08.20 BLE
SBC Linux libgpiodを使ったPythonによるGPIO入力イベント検出方法 Linuxの新しいGPIOインタフェエースlibgpiodを使ってPythonからGPIOの入出力を行う方法は以下の記事にまとめた。 GPIO入力を上記Pythonインタフェースを使って常時監視をする方法も無くはないのだが、CPUの演算リソ... 2023.07.24 SBC Linux
SBC Linux SBC LinuxのPythonで1602LCDを使う いわゆる16文字×2行のキャラクタ用LCDをSBC Linux上のPythonで動かす方法のメモを残しておく。 1602LCDのモノ自体は随分前にArduinoやMicroPythonで動かして当ブログ記事にしたのと同一。 使ったSBCのハ... 2023.06.25 SBC Linux
SBC Linux LinuxのPythonからlibgpiodを使ってGPIOを操作する 少し前の記事にまとめた通り、sysfs経由でのGPIO制御が非推奨となり、代わりにGPIOはキャラクタデバイス(/dev/gpiochip?)経由の方法が推奨されるようになった。 昨年の話だがOPi.GPIOというPythonライブラリを見... 2023.05.28 SBC Linux
SBC Linux LinuxでGPIOピンにラベルを付ける sysfs経由でのGPIO制御が非推奨となり、代わりにlibgpiodによるキャラクタデバイス(/dev/gpiochip?)経由のGPIO制御が推奨となった事は別記事にまとめた。 関連して、GPIOにカーネルレベルでラベルを付ける仕組みが... 2023.04.23 SBC Linux
SBC Linux LinuxのlibgpiodでGPIOを制御する sysfs経由でのGPIO制御が非推奨となり、代わりにGPIOはキャラクタデバイス(/dev/gpiochip?)経由で制御することが推奨されるようになった。GPIOキャラクタデバイスはlibgpiodを介して叩くことが可能。今回は、Lin... 2023.03.28 SBC Linux
SBC Linux Buildroot作成Linuxでboot時にデバイスのパーミッションを開ける方法 PC用Linuxではudevルールを追加することでboot時に一般ユーザにもデバイスへのアクセス権限を与えることが出来る。同様な仕組みはBuildrootでも提供されており、SBC用Linuxシステムでもデバイスへの権限管理が可能だ。方法を... 2023.02.24 SBC Linux