LoginSignup
0
0

More than 5 years have passed since last update.

Brilloの実装 wifi_driver_hal

Posted at

BrilloはGoogleが開発しているIOT用のシステム

BrilloのWi-FiのHALはAndroidとは異なるみたいなので、どんな感じかを調べてみました。

Brilloのバージョンは調査時点の最新版 brillo-m10-dev です。

調べてみたら、ドライバのロードだけあまり中身がなかったけど、公開しときます。
Brilloでのwifi設定はshillを使っているみたいです。

ソースコード

README

README によると以下の3つの機能を持ちます
* ドライバの初期化、ブート直後はデバイスが利用できないので、ブート時にこのメソッドを使って初期化する。
* APモードとstationモードを選択する。これはドライバ初期化直後時に呼ばれることだけを保証する。
* 上位レイヤ用のWi-Fiハードウェアのデバイスネームを返すメソッド

Wi-Fi Directとかはサポートしないみたいなので、Brilloは一時的なネット接続等は考えていないようです。

個人的には、Androidと一時的なネット接続をするならWi-Fi Directは便利だと思ってるけど

API

  • wifi_driver_open( const hw_module_t* module, wifi_driver_device_t** device)
  • wifi_driver_close(wifi_driver_device_t* device)
  • driver->wifi_driver_initialize()
  • driver->wifi_driver_set_mode(wifi_driver_mode mode, char* wifi_device_name_buf, size_t wifi_device_name_size)

使用例

  • HALの使用例はwifi_init.cに含まれます。
  • wifi_init ap でAPとしてドライバを起動する
  • wifi_init client としてドライバを起動する

実装例

wifi_driver_set_mode で検索するといくつか実装例がありました

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0