class

KNX

Inherits Reference < Object

Constants

ERROR_CODES = {0 => "Unspecified Error", 1 => "Out of range", 2 => "Out of maxrange", 3 => "Out of minrange", 4 => "Memory Error", 5 => "Read only", 6 => "Illegal command", 7 => "Void DP", 8 => "Type conflict", 9 => "Prop. Index range error", 10 => "Value temporarily not writeable"}
Log = ::App::Log.for("knx")

Constructors

new(priority : KNX::Priority = Priority::LOW, no_repeat : Bool = true, broadcast : Bool = true, hop_count : UInt8 = 6_u8, two_level_group : Bool = false, cmac_key : Slice(UInt8) | Nil = nil, source : String = "0.0.0")
Source

Class methods

datapoint(value : Float | String | Time | Bool) : Datapoint

takes a stab at what you are hoping for, favours accuracy over what a device might be expecting

Source

Instance methods

action(address : String, data, msg_code : MsgCode = MsgCode::DataRequest, no_repeat : Bool = @no_repeat, broadcast : Bool = @broadcast, priority : Priority = @priority, hop_count : UInt8 = @hop_count, request_type : RequestTypes = RequestTypes::RoutingIndication, source : String = @source) : ActionDatagram
Source
broadcast=(broadcast : Bool)
Source
broadcast?
Source
cmac_key
Source
cmac_key=(cmac_key : Bytes | Nil)
Source
hop_count
Source
hop_count=(hop_count : UInt8)
Source
no_repeat=(no_repeat : Bool)
Source
no_repeat?
Source
priority
Source
priority=(priority : Priority)
Source
read(data : Bytes, two_level_group = @two_level_group)
Source
source
Source
source=(source : String)
Source
status(address : String, msg_code : MsgCode = MsgCode::DataRequest, no_repeat : Bool = @no_repeat, broadcast : Bool = @broadcast, priority : Priority = @priority, hop_count : UInt8 = @hop_count, request_type : RequestTypes = RequestTypes::RoutingIndication, source : String = @source)
Source

Nested types