M5の制御

class akari_client.m5stack_client.M5StackClient[ソース]
abstract set_dout(pin_id, value, sync=True)[ソース]

ヘッド部GPIOピンのデジタル出力を設定する。

パラメータ
  • pin_id (int) -- pin番号。0でdout0、1でdout1を指定する。

  • value (bool) -- デジタル出力の値。Falseで0V,Trueで3.3V出力。

  • sync (bool) -- 同期実行の指定。Trueの場合M5側で実行完了するまで関数の終了待ちを行う。

戻り値の型

None

サンプル

>>> from akari_client import AkariClient
>>> with AkariClient() as akari:
>>>     m5 = akari.m5stack
>>>     m5.set_dout(0, True)
# dout0がTrueになる。
abstract set_pwmout(pin_id, value, sync=True)[ソース]

ヘッド部GPIOピンのPWM出力を設定する。

パラメータ
  • pin_id (int) -- pin番号。デフォルトではpwmout0しかないため、0を指定すること。

  • value (int) -- PWM出力の値。 0-255で指定し、0で0V、255で3.3Vを出力する。

  • sync (bool) -- 同期実行の指定。Trueの場合M5側で実行完了するまで関数の終了待ちを行う。

戻り値の型

None

サンプル

>>> from akari_client import AkariClient
>>> with AkariClient() as akari:
>>>     m5 = akari.m5stack
>>>     m5.set_pwmout(0, 200)
# pwmout0が200になる。
abstract set_allout(*, dout0=None, dout1=None, pwmout0=None, sync=True)[ソース]

ヘッド部GPIOピンの出力をまとめて設定する。

パラメータ
  • dout0 (Optional[bool]) -- dout0の出力値。Falseで0V,Trueで3.3V出力。

  • dout1 (Optional[bool]) -- dout1の出力値。Falseで0V,Trueで3.3V出力。

  • pwmout0 (Optional[int]) -- pwmout0の出力値。0-255で指定し、0で0V、255で3.3Vを出力する。

  • sync (bool) -- 同期実行の指定。Trueの場合M5側で実行完了するまで関数の終了待ちを行う。

戻り値の型

None

サンプル

>>> from akari_client import AkariClient
>>> with AkariClient() as akari:
>>>     m5 = akari.m5stack
>>>     m5.set_allout(dout0=False, dout1=True, pwmout0=100)
# dout0がFalse, dout1がTrue, pwmout0が100になる。
abstract reset_allout(sync=True)[ソース]

ヘッド部GPIOピンの出力を初期値にリセットする。 dout0、dout1はFalse、pwmout0は0となる。

パラメータ

sync (bool) -- 同期実行の指定。Trueの場合M5側で実行完了するまで関数の終了待ちを行う。

戻り値の型

None

サンプル

>>> from akari_client import AkariClient
>>> with AkariClient() as akari:
>>>     m5 = akari.m5stack
>>>     m5.reset_allout()
# dout0がFalse, dout1がFalse, pwmout0が0になる。
abstract set_display_color(color, sync=True)[ソース]

ボディー部M5のディスプレイ背景色を変更する。

パラメータ
  • color (Color) -- 背景色を指定。色は color.Colors から色名を引用する、もしくはRGBの数値指定も可能。

  • sync (bool) -- 同期実行の指定。Trueの場合M5側で実行完了するまで関数の終了待ちを行う。

戻り値の型

None

サンプル

>>> from akari_client import AkariClient
>>> with AkariClient() as akari:
>>>     m5 = akari.m5stack
>>>     color = Colors.WHITE
>>>     m5.set_display_color(color)
# 画面色が白になる。
>>>     color = Color(red=0, green=100, blue=200)
>>>     m5.set_display_color(color)
# 画面色が指定したRGB値になる。
abstract set_display_text(text, pos_x=Positions.CENTER, pos_y=Positions.CENTER, size=5, text_color=None, back_color=None, refresh=True, sync=True)[ソース]

ボディー部M5のディスプレイに文字を表示する。

パラメータ
  • text (str) -- 表示する文字列。

  • pos_x (int) -- x方向の描画位置ピクセルを0-320で指定。左端が0。 position.Positions を用いた位置指定も可能。デフォルト値は中央揃え。

  • pos_y (int) -- y方向の描画位置ピクセルを0-240で指定。上端が0。 position.Positions を用いた位置指定も可能。デフォルト値は中央揃え。

  • size (int) -- 文字サイズを1-11の11段階で指定。デフォルト値は5。

  • text_color (Optional[Color]) -- 文字色を指定。色は color.Colors から色名を引用する、もしくはRGBの数値指定も可能。値を指定しない場合、前回値を引き継ぐ。

  • back_color (Optional[Color]) -- 背景色を指定。色は color.Colors から色名を引用する、もしくはRGBの数値指定も可能。値を指定しない場合、画面全体の背景色に合わせる。

  • refresh (bool) -- trueの場合画面全体を現在の背景色で更新する。falseの場合は現在の表示を維持しつつ、文字を描画する範囲のみ更新する。デフォルト値は背景更新あり。

  • sync (bool) -- 同期実行の指定。Trueの場合M5側で実行完了するまで関数の終了待ちを行う。

戻り値の型

None

サンプル

>>> from akari_client import AkariClient
>>> from akari_client.color import Colors
>>> from akari_client.position import Positions
>>> with AkariClient() as akari:
>>>    text = "AKARI"
>>>    pos_x = Positions.LEFT
>>>    pos_y = Positions.TOP
>>>    size = 7
>>>    text_color = Colors.WHITE
>>>    back_color = Colors.BLACK
>>>    refresh = True
>>>    m5.set_display_text(
...        text, pos_x, pos_y, size, text_color, back_color, refresh
...    )
# 画面に「AKARI」と表示される。
abstract set_display_image(filepath, pos_x=Positions.CENTER, pos_y=Positions.CENTER, scale=-1.0, sync=True)[ソース]

ボディー部M5のディスプレイにM5のSDカード内の画像を表示する。

パラメータ
  • filepath (str) -- M5のSDカード内のファイルパス。(例;"image/hoge.jpg")

  • pos_x (int) -- x方向の描画位置ピクセルを0-320で指定。左端が0。 position.Positions を用いた位置指定も可能。デフォルト値は中央揃え。

  • pos_y (int) -- y方向の描画位置ピクセルを0-240で指定。上端が0。 position.Positions を用いた位置指定も可能。デフォルト値は中央揃え。

  • scale (float) -- 画像の拡大縮小倍率を指定。1.0で等倍表示。マイナスの値を入れた場合、画面サイズに合わせて自動でサイズ調整される。 デフォルト値は自動サイズ調整となっている。

  • sync (bool) -- 同期実行の指定。Trueの場合M5側で実行完了するまで関数の終了待ちを行う。

戻り値の型

None

サンプル

>>> from akari_client import AkariClient
>>> from akari_client.position import Positions
>>> with AkariClient() as akari:
>>>    filepath = "/jpg/logo320.jpg"
>>>    pos_x = Positions.LEFT
>>>    pos_y = Positions.TOP
>>>    scale = 0.75
>>>    m5.set_display_image(filepath, pos_x, pos_y, scale)
# 画面に"/jpg/logo320.jpg"の画像が表示される。
abstract reset_m5()[ソース]

M5をリセットして再起動する。

サンプル

>>> from akari_client import AkariClient
>>> with AkariClient() as akari:
>>>    m5.reset_m5()
# M5が再起動する。
戻り値の型

None

abstract get()[ソース]

M5から環境センサ、ヘッドGPIOの入力値、M5のボタンの状態を取得する。

戻り値

M5から取得した各データを格納したDict。

戻り値の型

M5ComDict

サンプル

>>> from akari_client import AkariClient
>>> with AkariClient() as akari:
>>>    data = m5.get()
>>>    print(data["temperature"])
31.675