Skip to content

muteme

busylight_core.vendors.muteme._muteme

MuteMe Implementation Details

Classes

busylight_core.vendors.muteme._muteme.OneBitField

OneBitField(offset, width=1)

Bases: BitField

Initialize a bitfield with the given offset and width.

Source code in src/busylight_core/word.py
def __init__(self, offset: int, width: int = 1) -> None:
    """Initialize a bitfield with the given offset and width."""
    self.field = slice(offset, offset + width)
Attributes
busylight_core.vendors.muteme._muteme.OneBitField.field instance-attribute
field = slice(offset, offset + width)

busylight_core.vendors.muteme._muteme.RedBit

RedBit()

Bases: OneBitField

1-bit red color field

Source code in src/busylight_core/vendors/muteme/_muteme.py
def __init__(self) -> None:
    super().__init__(0, 1)
Attributes
busylight_core.vendors.muteme._muteme.RedBit.field instance-attribute
field = slice(offset, offset + width)

busylight_core.vendors.muteme._muteme.GreenBit

GreenBit()

Bases: OneBitField

1-bit green color field

Source code in src/busylight_core/vendors/muteme/_muteme.py
def __init__(self) -> None:
    super().__init__(1, 1)
Attributes
busylight_core.vendors.muteme._muteme.GreenBit.field instance-attribute
field = slice(offset, offset + width)

busylight_core.vendors.muteme._muteme.BlueBit

BlueBit()

Bases: OneBitField

1-bit blue color field

Source code in src/busylight_core/vendors/muteme/_muteme.py
def __init__(self) -> None:
    super().__init__(2, 1)
Attributes
busylight_core.vendors.muteme._muteme.BlueBit.field instance-attribute
field = slice(offset, offset + width)

busylight_core.vendors.muteme._muteme.DimBit

DimBit()

Bases: OneBitField

1-bit dim field

Source code in src/busylight_core/vendors/muteme/_muteme.py
def __init__(self) -> None:
    super().__init__(4, 1)
Attributes
busylight_core.vendors.muteme._muteme.DimBit.field instance-attribute
field = slice(offset, offset + width)

busylight_core.vendors.muteme._muteme.BlinkBit

BlinkBit()

Bases: OneBitField

1-bit blink field

Source code in src/busylight_core/vendors/muteme/_muteme.py
def __init__(self) -> None:
    super().__init__(5, 1)
Attributes
busylight_core.vendors.muteme._muteme.BlinkBit.field instance-attribute
field = slice(offset, offset + width)

busylight_core.vendors.muteme._muteme.SleepBit

SleepBit()

Bases: OneBitField

1-bit sleep field

Source code in src/busylight_core/vendors/muteme/_muteme.py
def __init__(self) -> None:
    super().__init__(6, 1)
Attributes
busylight_core.vendors.muteme._muteme.SleepBit.field instance-attribute
field = slice(offset, offset + width)

busylight_core.vendors.muteme._muteme.State

State(value=0, length=8)

Bases: Word

MuteMe state word

Initialize a Word of length bits with the given value.

Source code in src/busylight_core/word.py
def __init__(self, value: int = 0, length: int = 8) -> None:
    """Initialize a Word of length bits with the given value."""
    if length <= 0 or length % 8 != 0:
        msg = "length must be a multiple of 8"
        raise ValueError(msg)

    self.initial_value = value
    self.length = length
    self.bits = array.array("B", [(value >> n) & 1 for n in self.range])
Attributes
busylight_core.vendors.muteme._muteme.State.red class-attribute instance-attribute
red = RedBit()
busylight_core.vendors.muteme._muteme.State.green class-attribute instance-attribute
green = GreenBit()
busylight_core.vendors.muteme._muteme.State.blue class-attribute instance-attribute
blue = BlueBit()
busylight_core.vendors.muteme._muteme.State.dim class-attribute instance-attribute
dim = DimBit()
blink = BlinkBit()
busylight_core.vendors.muteme._muteme.State.sleep class-attribute instance-attribute
sleep = SleepBit()
busylight_core.vendors.muteme._muteme.State.color property writable
color
busylight_core.vendors.muteme._muteme.State.initial_value instance-attribute
initial_value = value
busylight_core.vendors.muteme._muteme.State.length instance-attribute
length = length
busylight_core.vendors.muteme._muteme.State.bits instance-attribute
bits = array('B', [value >> n & 1 for n in range])
busylight_core.vendors.muteme._muteme.State.value property
value

Return the integer value of the word.

busylight_core.vendors.muteme._muteme.State.range property
range

Return the range of bit offsets for this word.

busylight_core.vendors.muteme._muteme.State.hex property
hex

Return a string hexadecimal representation of the word.

busylight_core.vendors.muteme._muteme.State.bin property
bin

Return a string binary representation of the word.

Functions
busylight_core.vendors.muteme._muteme.State.clear
clear()

Clear all bits in the word.

Source code in src/busylight_core/word.py
def clear(self) -> None:
    """Clear all bits in the word."""
    self.bits = array.array("B", [0] * self.length)