colmi_r02_client.battery

Get the battery level and charging status.

 1"""
 2Get the battery level and charging status.
 3"""
 4
 5from dataclasses import dataclass
 6
 7from colmi_r02_client.packet import make_packet
 8
 9CMD_BATTERY = 3
10
11BATTERY_PACKET = make_packet(CMD_BATTERY)
12
13
14@dataclass
15class BatteryInfo:
16    battery_level: int
17    charging: bool
18
19
20def parse_battery(packet: bytearray) -> BatteryInfo:
21    r"""
22    example: bytearray(b'\x03@\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00C')
23    """
24    return BatteryInfo(battery_level=packet[1], charging=bool(packet[2]))
CMD_BATTERY = 3
BATTERY_PACKET = bytearray(b'\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03')
@dataclass
class BatteryInfo:
15@dataclass
16class BatteryInfo:
17    battery_level: int
18    charging: bool
BatteryInfo(battery_level: int, charging: bool)
battery_level: int
charging: bool
def parse_battery(packet: bytearray) -> BatteryInfo:
21def parse_battery(packet: bytearray) -> BatteryInfo:
22    r"""
23    example: bytearray(b'\x03@\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00C')
24    """
25    return BatteryInfo(battery_level=packet[1], charging=bool(packet[2]))

example: bytearray(b'\x03@\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00C')