opentherm

package
v0.0.0-...-52be9fe Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 2, 2022 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Flag

type Flag int
const (
	MasterCH          Flag = 1
	MasterDHW         Flag = 2
	MasterCooling     Flag = 4
	MasterOTC         Flag = 8
	MasterCH2         Flag = 16
	MasterSummer      Flag = 32
	MasterDHWBlocking Flag = 64
	SlaveFault        Flag = 1
	SlaveCH           Flag = 2
	SlaveDHW          Flag = 4
	SlaveFlame        Flag = 8
	SlaveCooling      Flag = 16
	SlaveCH2          Flag = 32
	SlaveDiagnostic   Flag = 64
	SlaveElectricity  Flag = 128
)

type Message

type Message struct {
	ID     int
	Src    Src
	Type   MessageType
	Values []interface{}
	Desc   string
}

func (*Message) Decode

func (m *Message) Decode(msg string) error

func (*Message) Encode

func (m *Message) Encode() (string, error)

func (*Message) IsMasterCH

func (m *Message) IsMasterCH() bool

func (*Message) IsMasterCH2

func (m *Message) IsMasterCH2() bool

func (*Message) IsMasterCooling

func (m *Message) IsMasterCooling() bool

func (*Message) IsMasterDHW

func (m *Message) IsMasterDHW() bool

func (*Message) IsMasterDHWBlocking

func (m *Message) IsMasterDHWBlocking() bool

func (*Message) IsMasterOTC

func (m *Message) IsMasterOTC() bool

func (*Message) IsMasterSummer

func (m *Message) IsMasterSummer() bool

func (*Message) IsSlaveCH

func (m *Message) IsSlaveCH() bool

func (*Message) IsSlaveCH2

func (m *Message) IsSlaveCH2() bool

func (*Message) IsSlaveCooling

func (m *Message) IsSlaveCooling() bool

func (*Message) IsSlaveDHW

func (m *Message) IsSlaveDHW() bool

func (*Message) IsSlaveDiagnostic

func (m *Message) IsSlaveDiagnostic() bool

func (*Message) IsSlaveElectricity

func (m *Message) IsSlaveElectricity() bool

func (*Message) IsSlaveFault

func (m *Message) IsSlaveFault() bool

func (*Message) IsSlaveFlame

func (m *Message) IsSlaveFlame() bool

func (*Message) RoomSetPoint

func (m *Message) RoomSetPoint(value float64)

func (*Message) ThermostatSetPoint

func (m *Message) ThermostatSetPoint(value float64)

type MessageType

type MessageType int
const (
	ReadData MessageType = iota
	WriteData
	InvData
	Reserved
	ReadAck
	WriteAck
	DataInv
	UnkDataId
)

func (MessageType) String

func (m MessageType) String() string

type OpenTherm

type OpenTherm struct {
	sync.RWMutex

	CurrentItem    *item.AnItem
	ReturnTempItem *item.AnItem
	PauseStateItem *item.AnItem
	PauseModeItem  *button.SwitchItem
	// contains filtered or unexported fields
}

func NewOpenTherm

func NewOpenTherm(id string, conn *hmqtt.MQTTConn, topic, currentTopic, returnTopic, pauseTopic string) *OpenTherm

func (*OpenTherm) OnMessage

func (o *OpenTherm) OnMessage(client mqtt.Client, msg mqtt.Message)

func (*OpenTherm) OnValueChange

func (s *OpenTherm) OnValueChange(it item.Item, old string, new string)

func (*OpenTherm) RegisterFlagItem

func (o *OpenTherm) RegisterFlagItem(id, label, unit string, src Src, kind MessageType, flag Flag) item.Item

func (*OpenTherm) RegisterValueItem

func (o *OpenTherm) RegisterValueItem(id, label, unit string, src Src, msgID int, kind MessageType) item.Item

type OpenthermItem

type OpenthermItem struct {
	Item item.Item
	// contains filtered or unexported fields
}

type Src

type Src rune
const (
	B Src = 'B'
	T Src = 'T'
	A Src = 'A'
	R Src = 'R'
)

func (Src) String

func (s Src) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL