Documentation ¶
Index ¶
- Constants
- Variables
- func ArrayMarshalZcl(ln string, t TypeID, v []Val) ([]byte, error)
- func ArrayNoTypeMarshalZcl(ln string, v []Val) ([]byte, error)
- func ArrayUnmarshalZcl(ln string, b []byte) (TypeID, []Val, []byte, error)
- func BitmapList(b []byte) []int
- func BitmapSet(a []byte, b uint, v bool) []byte
- func BitmapStringer(b []byte) string
- func BitmapTest(a []byte, b uint) bool
- func BytesStringer(b []byte) string
- func Duration(t int, m int) time.Duration
- func Equal(a, b Val) bool
- func JsonAttr(a Attr) ([]byte, error)
- func StructMarshalZcl(ln string, v []StructField) ([]byte, error)
- func UnmarshalList(ln string, b []byte, newVal func() Val) ([]byte, error)
- type Address
- type AddressMode
- type ArgDesc
- type Argument
- type Attr
- type AttrDef
- type AttrID
- type AttrValue
- type BitmapArg
- type Cluster
- type ClusterAttr
- type ClusterAttrImpl
- type ClusterID
- type Command
- type CommandDescription
- type CommandID
- type CommandType
- type CustomUnit
- type DefaultResponse
- func (DefaultResponse) Direction() Direction
- func (v *DefaultResponse) Handle(frame ReceivedZclFrame, handler interface{}) (rsp General, found bool, err error)
- func (DefaultResponse) ID() CommandID
- func (v DefaultResponse) MarshalZcl() ([]byte, error)
- func (DefaultResponse) Name() string
- func (v DefaultResponse) String() string
- func (v *DefaultResponse) UnmarshalZcl(b []byte) ([]byte, error)
- func (v *DefaultResponse) Values() []Val
- type DefaultResponseHandler
- type Direction
- type EngineeringUnit
- func (u EngineeringUnit) Format(v float64) string
- func (u EngineeringUnit) MarshalZcl() ([]byte, error)
- func (u EngineeringUnit) String() string
- func (EngineeringUnit) TypeID() TypeID
- func (u EngineeringUnit) Unit() Unit
- func (u *EngineeringUnit) UnmarshalZcl(buf []byte) ([]byte, error)
- func (u *EngineeringUnit) Values() []Val
- type EnumArg
- type General
- type Handler
- type InArg
- type Option
- type OutArg
- type Packet
- type ProfileID
- type ReceivedPacket
- type ReceivedZclFrame
- type ReceivedZdpFrame
- type ScaledArg
- type SceneExtension
- type SceneExtensionSet
- type Status
- type StatusError
- type StructField
- type Transport
- type TypeID
- type TypeVal
- type Unit
- type UnknownAttr
- func (a UnknownAttr) Cluster() ClusterID
- func (a UnknownAttr) ID() AttrID
- func (a UnknownAttr) MarshalJSON() ([]byte, error)
- func (a UnknownAttr) MarshalZcl() ([]byte, error)
- func (a UnknownAttr) Name() string
- func (a UnknownAttr) Readable() bool
- func (a UnknownAttr) Reportable() bool
- func (a UnknownAttr) SceneIndex() int
- func (a UnknownAttr) SetValue(v Val) error
- func (a UnknownAttr) String() string
- func (a UnknownAttr) TypeID() TypeID
- func (a *UnknownAttr) UnmarshalJSON(b []byte) error
- func (a *UnknownAttr) UnmarshalZcl(b []byte) ([]byte, error)
- func (a *UnknownAttr) Value() Val
- func (a UnknownAttr) Writable() bool
- type Val
- type ValueDescription
- type Zaid
- type Zarray
- type Zbag
- type Zbmp16
- type Zbmp24
- type Zbmp32
- type Zbmp40
- type Zbmp48
- type Zbmp56
- type Zbmp64
- type Zbmp8
- type Zbool
- func (t Zbool) MarshalJSON() ([]byte, error)
- func (t Zbool) MarshalZcl() ([]byte, error)
- func (t Zbool) String() string
- func (t Zbool) TypeID() TypeID
- func (t *Zbool) UnmarshalJSON(b []byte) error
- func (t *Zbool) UnmarshalZcl(buf []byte) ([]byte, error)
- func (t Zbool) Valid() bool
- func (t *Zbool) Values() []Val
- type Zbytes
- type Zcid
- type ZclFrame
- type ZclHandler
- type Zcstring
- type Zdat16
- type Zdat24
- type Zdat32
- type Zdat40
- type Zdat48
- type Zdat56
- type Zdat64
- type Zdat8
- type Zdate
- type ZdoCmdID
- type ZdoCommand
- type Zdouble
- type ZdpFrame
- type ZdpHandler
- type Zenum16
- type Zenum8
- type Zfloat
- type Zlcstring
- type Zlist
- type Zlostring
- type Zoid
- type Zostring
- type Zs16
- type Zs24
- type Zs32
- type Zs40
- type Zs48
- type Zs56
- type Zs64
- type Zs8
- type Zseckey
- type Zsemi
- type Zset
- type Zstruct
- type Ztime
- func (t Ztime) MarshalZcl() ([]byte, error)
- func (t *Ztime) SetTime(hr, min, sec, hundreths int)
- func (t Ztime) String() string
- func (t Ztime) TypeID() TypeID
- func (t *Ztime) UnmarshalJSON(b []byte) error
- func (t *Ztime) UnmarshalZcl(buf []byte) ([]byte, error)
- func (t Ztime) Valid() bool
- func (t *Ztime) Values() []Val
- type Zu16
- type Zu24
- type Zu32
- type Zu40
- type Zu48
- type Zu56
- type Zu64
- type Zu8
- type Zuid
- func (u Zuid) HWAddr() net.HardwareAddr
- func (u Zuid) MarshalJSON() ([]byte, error)
- func (u Zuid) MarshalZcl() ([]byte, error)
- func (u Zuid) String() string
- func (u Zuid) TypeID() TypeID
- func (u *Zuid) UnmarshalJSON(b []byte) error
- func (u *Zuid) UnmarshalZcl(buf []byte) ([]byte, error)
- func (u Zuid) Valid() bool
- func (u *Zuid) Values() []Val
- type Zutc
Constants ¶
const ( ErrNotEnoughData errType = "not enough data" ErrTooMuchData errType = "too much data" ErrNotImpl errType = "not implemented" ErrInvalidArrayLength errType = "invalid length for array" ErrInvalidType errType = "invalid type" ErrTimeout errType = "timeout" ErrInvalidHandler errType = "invalid handler" ErrInvalidPacket errType = "invalid packet" ErrCommandClusterSpecific errType = "command is cluster-specific, cannot use as profile-wide" ErrCommandProfileWide errType = "command is profile-wide, cannot use as cluster-specific" ErrResponseClusterSpecific errType = "request is profile-wide, cannot respond with cluster-specific command" ErrResponseProfileWide errType = "request is cluster-specific, cannot respond with profile-wide command" ErrResponseWrongCluster errType = "response cluster does not match request" ErrResponseWrongMnfCode errType = "response mnfCode does not match request" ErrUnknownCommand errType = "unknown command" )
const ( ServerToClient Direction = true ClientToServer Direction = false ProfileWide CommandType = 0 ClusterSpecific CommandType = 1 GroupAddress AddressMode = 0x01 NWKAddress AddressMode = 0x02 IEEEAddress AddressMode = 0x03 FullAddress AddressMode = 0x04 BroadcastAll uint16 = 0xFFFF BroadcastRxOnWhenIdle uint16 = 0xFFFD BroadcastRoutersCoords uint16 = 0xFFFC BroadcastLowPowerRouter uint16 = 0xFFFB )
const UnixtimeOffset = 946684800
UnixtimeOffset specifies the offset between zigbee time (epoch = 2000-01-01 UTC) and unixtime in seconds
Variables ¶
Functions ¶
func BitmapList ¶
func BitmapStringer ¶
func BitmapTest ¶
func BytesStringer ¶
func StructMarshalZcl ¶
func StructMarshalZcl(ln string, v []StructField) ([]byte, error)
Types ¶
type Address ¶
type Address interface { Mode() AddressMode NWK() uint16 IEEE() net.HardwareAddr }
type AddressMode ¶
type AddressMode uint8
func (AddressMode) String ¶
func (a AddressMode) String() string
type Cluster ¶
type ClusterAttr ¶
type ClusterAttrImpl ¶
func (ClusterAttrImpl) Cluster ¶
func (c ClusterAttrImpl) Cluster() ClusterID
type CommandDescription ¶
type CommandDescription struct { Name string ClusterID *ClusterID Required bool MnfCode *uint16 List bool Arguments []ValueDescription }
func DescribeCommand ¶
func DescribeCommand(cmd Command) (desc CommandDescription)
func DescribeGeneral ¶
func DescribeGeneral(cmd General) (desc CommandDescription)
func DescribeZdoCommand ¶
func DescribeZdoCommand(cmd ZdoCommand) (desc CommandDescription)
type CommandID ¶
type CommandID Zu8
const DefaultResponseCommand CommandID = 0x0b
func (CommandID) MarshalZcl ¶
type CommandType ¶
type CommandType uint8
func (CommandType) String ¶
func (t CommandType) String() string
type CustomUnit ¶
type CustomUnit uint8
const ( DecibelMilliWatts CustomUnit = iota MilliAmpereHours Mired Bytes )
func (CustomUnit) Format ¶
func (u CustomUnit) Format(n float64) string
func (CustomUnit) String ¶
func (u CustomUnit) String() string
type DefaultResponse ¶
func (DefaultResponse) Direction ¶
func (DefaultResponse) Direction() Direction
func (*DefaultResponse) Handle ¶
func (v *DefaultResponse) Handle(frame ReceivedZclFrame, handler interface{}) (rsp General, found bool, err error)
func (DefaultResponse) ID ¶
func (DefaultResponse) ID() CommandID
func (DefaultResponse) MarshalZcl ¶
func (v DefaultResponse) MarshalZcl() ([]byte, error)
func (DefaultResponse) Name ¶
func (DefaultResponse) Name() string
func (DefaultResponse) String ¶
func (v DefaultResponse) String() string
func (*DefaultResponse) UnmarshalZcl ¶
func (v *DefaultResponse) UnmarshalZcl(b []byte) ([]byte, error)
func (*DefaultResponse) Values ¶
func (v *DefaultResponse) Values() []Val
type DefaultResponseHandler ¶
type DefaultResponseHandler interface {
HandleDefaultResponse(ZclFrame, *DefaultResponse) error
}
type EngineeringUnit ¶
type EngineeringUnit uint16
func (EngineeringUnit) Format ¶
func (u EngineeringUnit) Format(v float64) string
func (EngineeringUnit) MarshalZcl ¶
func (u EngineeringUnit) MarshalZcl() ([]byte, error)
func (EngineeringUnit) String ¶
func (u EngineeringUnit) String() string
func (EngineeringUnit) TypeID ¶
func (EngineeringUnit) TypeID() TypeID
func (EngineeringUnit) Unit ¶
func (u EngineeringUnit) Unit() Unit
func (*EngineeringUnit) UnmarshalZcl ¶
func (u *EngineeringUnit) UnmarshalZcl(buf []byte) ([]byte, error)
func (*EngineeringUnit) Values ¶
func (u *EngineeringUnit) Values() []Val
type Handler ¶
type Handler interface { ZclHandler ZdpHandler }
type Packet ¶
type ReceivedPacket ¶
type ReceivedPacket interface { Packet // contains filtered or unexported methods }
type ReceivedZclFrame ¶
type ReceivedZdpFrame ¶
type ReceivedZdpFrame interface { ZdpFrame Response(cmd ZdoCommand) (ZdpFrame, error) // contains filtered or unexported methods }
type SceneExtension ¶
type SceneExtensionSet ¶
type SceneExtensionSet []SceneExtension
func (SceneExtensionSet) MarshalZcl ¶
func (s SceneExtensionSet) MarshalZcl() ([]byte, error)
func (SceneExtensionSet) String ¶
func (s SceneExtensionSet) String() string
func (SceneExtensionSet) TypeID ¶
func (SceneExtensionSet) TypeID() TypeID
func (*SceneExtensionSet) UnmarshalZcl ¶
func (s *SceneExtensionSet) UnmarshalZcl(b []byte) ([]byte, error)
type Status ¶
type Status Zenum8
const ( Success Status = 0x00 Failure Status = 0x01 NotAuthorized Status = 0x7e ReservedFieldNotZero Status = 0x7f MalformedCommand Status = 0x80 UnsupClusterCommand Status = 0x81 UnsupGeneralCommand Status = 0x82 UnsupManufClusterCommand Status = 0x83 UnsupManufGeneralCommand Status = 0x84 InvalidField Status = 0x85 UnsupportedAttribute Status = 0x86 InvalidValue Status = 0x87 ReadOnly Status = 0x88 InsufficientSpace Status = 0x89 DuplicateExists Status = 0x8a NotFound Status = 0x8b UnreportableAttribute Status = 0x8c InvalidDataType Status = 0x8d InvalidSector Status = 0x8e WriteOnly Status = 0x8f InconsistentStartupState Status = 0x90 DefinedOutOfBand Status = 0x91 HardwareFailure Status = 0xc0 SoftwareFailure Status = 0xc1 CalibrationError Status = 0xc2 )
func (Status) MarshalZcl ¶
type StatusError ¶
type StatusError interface {
Status() Status
}
type StructField ¶
func StructUnmarshalZcl ¶
func StructUnmarshalZcl(ln string, b []byte) ([]StructField, []byte, error)
func (StructField) String ¶
func (s StructField) String() string
type Unit ¶
type Unit uint8
const ( SquareMeters Unit = 0x00 // Area SquareFeet Unit = 0x01 // Area Milliamperes Unit = 0x02 // Electrical Amperes Unit = 0x03 // Electrical Ohms Unit = 0x04 // Electrical Volts Unit = 0x05 // Electrical KiloVolts Unit = 0x06 // Electrical MegaVolts Unit = 0x07 // Electrical VoltAmperes Unit = 0x08 // Electrical KiloVoltAmperes Unit = 0x09 // Electrical MegaVoltAmperes Unit = 0x0A // Electrical VoltAmperesReactive Unit = 0x0B // Electrical KiloVoltAmperesReactive Unit = 0x0C // Electrical MegaVoltAmperesReactive Unit = 0x0D // Electrical DegreesPhase Unit = 0x0E // Electrical PowerFactor Unit = 0x0F // Electrical Joules Unit = 0x10 // Energy Kilojoules Unit = 0x11 // Energy WattHours Unit = 0x12 // Energy KilowattHours Unit = 0x13 // Energy BTUs Unit = 0x14 // Energy Therms Unit = 0x15 // Energy TonHours Unit = 0x16 // Energy JoulesPerKilogramDryAir Unit = 0x17 // Enthalpy BTUsPerPoundDryAir Unit = 0x18 // Enthalpy CyclesPerHour Unit = 0x19 // Frequency CyclesPerMinute Unit = 0x1A // Frequency Hertz Unit = 0x1B // Frequency GramsOfWaterPerKilogramDryAir Unit = 0x1C // Humidity PercentRelativeHumidity Unit = 0x1D // Humidity Millimeters Unit = 0x1E // Length Meters Unit = 0x1F // Length Inches Unit = 0x20 // Length Feet Unit = 0x21 // Length WattsPerSquareFoot Unit = 0x22 // Light WattsPerSquareMeter Unit = 0x23 // Light Lumens Unit = 0x24 // Light Luxes Unit = 0x25 // Light FootCandles Unit = 0x26 // Light Kilograms Unit = 0x27 // Mass PoundsMass Unit = 0x28 // Mass Tons Unit = 0x29 // Mass KilogramsPerSecond Unit = 0x2A // Mass Flow KilogramsPerMinute Unit = 0x2B // Mass Flow KilogramsPerHour Unit = 0x2C // Mass Flow PoundsMassPerMinute Unit = 0x2D // Mass Flow PoundsMassPerHour Unit = 0x2E // Mass Flow Watts Unit = 0x2F // Power Kilowatts Unit = 0x30 // Power Megawatts Unit = 0x31 // Power BTUsPerHour Unit = 0x32 // Power Horsepower Unit = 0x33 // Power TonsRefrigeration Unit = 0x34 // Power Pascals Unit = 0x35 // Pressure Kilopascals Unit = 0x36 // Pressure Bars Unit = 0x37 // Pressure PoundsForcePerSquareInch Unit = 0x38 // Pressure CentimetersOfWater Unit = 0x39 // Pressure InchesOfWater Unit = 0x3A // Pressure MillimetersOfMercury Unit = 0x3B // Pressure CentimetersOfMercury Unit = 0x3C // Pressure InchesOfMercury Unit = 0x3D // Pressure DegreesCelsius Unit = 0x3E // Temperature DegreesKelvin Unit = 0x3F // Temperature DegreesFahrenheit Unit = 0x40 // Temperature DegreeDaysCelsius Unit = 0x41 // Temperature DegreeDaysFahrenheit Unit = 0x42 // Temperature Years Unit = 0x43 // Time Months Unit = 0x44 // Time Weeks Unit = 0x45 // Time Days Unit = 0x46 // Time Hours Unit = 0x47 // Time Minutes Unit = 0x48 // Time Seconds Unit = 0x49 // Time MetersPerSecond Unit = 0x4A // Velocity KilometersPerHour Unit = 0x4B // Velocity FeetPerSecond Unit = 0x4C // Velocity FeetPerMinute Unit = 0x4D // Velocity MilesPerHour Unit = 0x4E // Velocity CubicFeet Unit = 0x4F // Volume CubicMeters Unit = 0x50 // Volume ImperialGallons Unit = 0x51 // Volume Liters Unit = 0x52 // Volume UsGallons Unit = 0x53 // Volume CubicFeetPerMinute Unit = 0x54 // Volumetric Flow CubicMetersPerSecond Unit = 0x55 // Volumetric Flow ImperialGallonsPerMinute Unit = 0x56 // Volumetric Flow LitersPerSecond Unit = 0x57 // Volumetric Flow LitersPerMinute Unit = 0x58 // Volumetric Flow UsGallonsPerMinute Unit = 0x59 // Volumetric Flow DegreesAngular Unit = 0x5A // Other DegreesCelsiusPerHour Unit = 0x5B // Other DegreesCelsiusPerMinute Unit = 0x5C // Other DegreesFahrenheitPerHour Unit = 0x5D // Other DegreesFahrenheitPerMinute Unit = 0x5E // Other NoUnits Unit = 0x5F // Other PartsPerMillion Unit = 0x60 // Other PartsPerBillion Unit = 0x61 // Other Percent Unit = 0x62 // Other PercentPerSecond Unit = 0x63 // Other PerMinute Unit = 0x64 // Other PerSecond Unit = 0x65 // Other PsiPerDegreeFahrenheit Unit = 0x66 // Other Radians Unit = 0x67 // Other RevolutionsPerMinute Unit = 0x68 // Other Currency1 Unit = 0x69 // Currency Currency2 Unit = 0x6A // Currency Currency3 Unit = 0x6B // Currency Currency4 Unit = 0x6C // Currency Currency5 Unit = 0x6D // Currency Currency6 Unit = 0x6E // Currency Currency7 Unit = 0x6F // Currency Currency8 Unit = 0x70 // Currency Currency9 Unit = 0x71 // Currency Currency10 Unit = 0x72 // Currency SquareInches Unit = 0x73 // Area SquareCentimeters Unit = 0x74 // Area BTUsPerPound Unit = 0x75 // Enthalpy Centimeters Unit = 0x76 // Length PoundsMassPerSecond Unit = 0x77 // Mass Flow DeltaDegreesFahrenheit Unit = 0x78 // Temperature DeltaDegreesKelvin Unit = 0x79 // Temperature Kilohms Unit = 0x7A // Electrical Megohms Unit = 0x7B // Electrical Millivolts Unit = 0x7C // Electrical KilojoulesPerKilogram Unit = 0x7D // Energy Megajoules Unit = 0x7E // Energy JoulesPerDegreeKelvin Unit = 0x7F // Entrophy JoulesPerKilogramDegreeKelvin Unit = 0x80 // Entrophy Kilohertz Unit = 0x81 // Frequency Megahertz Unit = 0x82 // Frequency PerHour Unit = 0x83 // Frequency Milliwatts Unit = 0x84 // Power Hectopascals Unit = 0x85 // Pressure Millibars Unit = 0x86 // Pressure CubicMetersPerHour Unit = 0x87 // Volumetric Flow LitersPerHour Unit = 0x88 // Volumetric Flow KilowattHoursPerSquareMeter Unit = 0x89 // Other KilowattHoursPerSquareFoot Unit = 0x8A // Other MegajoulesPerSquareMeter Unit = 0x8B // Other MegajoulesPerSquareFoot Unit = 0x8C // Other WattsPerSquareMeterDegreeKelvin Unit = 0x8D // Other CubicFeetPerSecond Unit = 0x8E // Volumetric Flow PercentObscurationPerFoot Unit = 0x8F // Other PercentObscurationPerMeter Unit = 0x90 // Other Milliohms Unit = 0x91 // Electrical MegawattHours Unit = 0x92 // Energy KiloBTUs Unit = 0x93 // Energy MegaBTUs Unit = 0x94 // Energy KilojoulesPerKilogramDryAir Unit = 0x95 // Enthalpy MegajoulesPerKilogramDryAir Unit = 0x96 // Enthalpy KilojoulesPerDegreeKelvin Unit = 0x97 // Entrophy MegajoulesPerDegreeKelvin Unit = 0x98 // Entrophy Newton Unit = 0x99 // Force GramsPerSecond Unit = 0x9A // Mass Flow GramsPerMinute Unit = 0x9B // Mass Flow TonsPerHour Unit = 0x9C // Mass Flow KiloBTUsPerHour Unit = 0x9D // Power HundredthsSeconds Unit = 0x9E // Time Milliseconds Unit = 0x9F // Time NewtonMeters Unit = 0xA0 // Torque MillimetersPerSecond Unit = 0xA1 // Velocity MillimetersPerMinute Unit = 0xA2 // Velocity MetersPerMinute Unit = 0xA3 // Velocity MetersPerHour Unit = 0xA4 // Velocity CubicMetersPerMinute Unit = 0xA5 // Volumetric Flow MetersPerSecondPerSecond Unit = 0xA6 // Acceleration AmperesPerMeter Unit = 0xA7 // Electrical AmperesPerSquareMeter Unit = 0xA8 // Electrical AmpereSquareMeters Unit = 0xA9 // Electrical Farads Unit = 0xAA // Electrical Henrys Unit = 0xAB // Electrical OhmMeters Unit = 0xAC // Electrical Siemens Unit = 0xAD // Electrical SiemensPerMeter Unit = 0xAE // Electrical Teslas Unit = 0xAF // Electrical VoltsPerDegreeKelvin Unit = 0xB0 // Electrical VoltsPerMeter Unit = 0xB1 // Electrical Webers Unit = 0xB2 // Electrical Candelas Unit = 0xB3 // Light CandelasPerSquareMeter Unit = 0xB4 // Light KelvinsPerHour Unit = 0xB5 // Temperature KelvinsPerMinute Unit = 0xB6 // Temperature JouleSeconds Unit = 0xB7 // Other SquareMetersPerNewton Unit = 0xB8 // Other KilogramPerCubicMeter Unit = 0xB9 // Other NewtonSeconds Unit = 0xBA // Other NewtonsPerMeter Unit = 0xBB // Other WattsPerMeterPerDegreeKelvin Unit = 0xBC // Other Other Unit = 0xFF )
type UnknownAttr ¶
func (UnknownAttr) Cluster ¶
func (a UnknownAttr) Cluster() ClusterID
func (UnknownAttr) ID ¶
func (a UnknownAttr) ID() AttrID
func (UnknownAttr) MarshalJSON ¶
func (a UnknownAttr) MarshalJSON() ([]byte, error)
func (UnknownAttr) MarshalZcl ¶
func (a UnknownAttr) MarshalZcl() ([]byte, error)
func (UnknownAttr) Name ¶
func (a UnknownAttr) Name() string
func (UnknownAttr) Readable ¶
func (a UnknownAttr) Readable() bool
func (UnknownAttr) Reportable ¶
func (a UnknownAttr) Reportable() bool
func (UnknownAttr) SceneIndex ¶
func (a UnknownAttr) SceneIndex() int
func (UnknownAttr) SetValue ¶
func (a UnknownAttr) SetValue(v Val) error
func (UnknownAttr) String ¶
func (a UnknownAttr) String() string
func (UnknownAttr) TypeID ¶
func (a UnknownAttr) TypeID() TypeID
func (*UnknownAttr) UnmarshalJSON ¶
func (a *UnknownAttr) UnmarshalJSON(b []byte) error
func (*UnknownAttr) UnmarshalZcl ¶
func (a *UnknownAttr) UnmarshalZcl(b []byte) ([]byte, error)
func (*UnknownAttr) Value ¶
func (a *UnknownAttr) Value() Val
func (UnknownAttr) Writable ¶
func (a UnknownAttr) Writable() bool
type ValueDescription ¶
type ValueDescription struct { Index int Name string Type TypeID List bool ListType *ValueDescription EnumValues []Option BitmapValues []Option Default Val }
func DescribeArgs ¶
func DescribeArgs(cmd interface{}) (v []ValueDescription)
func DescribeAttr ¶
func DescribeAttr(attr Argument) (desc ValueDescription)
type Zaid ¶
type Zaid uint16
Zaid is Attribute ID (0xffff = invalid). A/D = D
func (Zaid) MarshalZcl ¶
type Zbmp16 ¶
type Zbmp16 [2]byte
func (Zbmp16) MarshalJSON ¶
func (Zbmp16) MarshalZcl ¶
func (*Zbmp16) UnmarshalJSON ¶
type Zbmp24 ¶
type Zbmp24 [3]byte
func (Zbmp24) MarshalJSON ¶
func (Zbmp24) MarshalZcl ¶
func (*Zbmp24) UnmarshalJSON ¶
type Zbmp32 ¶
type Zbmp32 [4]byte
func (Zbmp32) MarshalJSON ¶
func (Zbmp32) MarshalZcl ¶
func (*Zbmp32) UnmarshalJSON ¶
type Zbmp40 ¶
type Zbmp40 [5]byte
func (Zbmp40) MarshalJSON ¶
func (Zbmp40) MarshalZcl ¶
func (*Zbmp40) UnmarshalJSON ¶
type Zbmp48 ¶
type Zbmp48 [6]byte
func (Zbmp48) MarshalJSON ¶
func (Zbmp48) MarshalZcl ¶
func (*Zbmp48) UnmarshalJSON ¶
type Zbmp56 ¶
type Zbmp56 [7]byte
func (Zbmp56) MarshalJSON ¶
func (Zbmp56) MarshalZcl ¶
func (*Zbmp56) UnmarshalJSON ¶
type Zbmp64 ¶
type Zbmp64 [8]byte
func (Zbmp64) MarshalJSON ¶
func (Zbmp64) MarshalZcl ¶
func (*Zbmp64) UnmarshalJSON ¶
type Zbmp8 ¶
type Zbmp8 [1]byte
func (Zbmp8) MarshalJSON ¶
func (Zbmp8) MarshalZcl ¶
func (*Zbmp8) UnmarshalJSON ¶
type Zbool ¶
type Zbool uint8
func (Zbool) MarshalJSON ¶
func (Zbool) MarshalZcl ¶
func (*Zbool) UnmarshalJSON ¶
type Zcid ¶
type Zcid uint16
Zcid is Cluster ID (0xffff = invalid). A/D = D
func (Zcid) MarshalZcl ¶
type ZclFrame ¶
type ZclFrame interface { Packet // contains filtered or unexported methods }
func NewClusterFrame ¶
type ZclHandler ¶
type ZclHandler interface {
HandleZcl(ReceivedZclFrame) (response ZclFrame, err error)
}
type Zcstring ¶
type Zcstring string
Zcstring is Character string (0xff = invalid). A/D = D
func (Zcstring) MarshalZcl ¶
type ZdoCommand ¶
type Zdouble ¶
type Zdouble float64
Zdouble is Double precicion (0x = invalid). A/D = A
func (Zdouble) MarshalZcl ¶
func (*Zdouble) UnmarshalJSON ¶
type ZdpFrame ¶
type ZdpFrame interface { Packet // contains filtered or unexported methods }
func NewZdpFrame ¶
func NewZdpFrame(seq uint8, dstAddr Address, cmd ZdoCommand) (frame ZdpFrame, err error)
type ZdpHandler ¶
type ZdpHandler interface {
HandleZdp(ReceivedZdpFrame) (response ZdpFrame, err error)
}
type Zenum16 ¶
type Zenum16 uint16
Zenum16 is 16-bit enumeration (0xffff = invalid). A/D = D
func (Zenum16) MarshalZcl ¶
func (*Zenum16) UnmarshalJSON ¶
type Zenum8 ¶
type Zenum8 uint8
Zenum8 is 8-bit enumeration (0xff = invalid). A/D = D
func (Zenum8) MarshalZcl ¶
func (*Zenum8) UnmarshalJSON ¶
type Zfloat ¶
type Zfloat float32
Zfloat is Single precicion (0x = invalid). A/D = A
func (Zfloat) MarshalZcl ¶
func (*Zfloat) UnmarshalJSON ¶
type Zlcstring ¶
type Zlcstring string
Zlcstring is Long character string (0xffff = invalid). A/D = D
func (Zlcstring) MarshalZcl ¶
type Zlist ¶
func (Zlist) MarshalZcl ¶
type Zlostring ¶
type Zlostring string
Zlostring is Long octet string (0xffff = invalid). A/D = D
func (Zlostring) MarshalZcl ¶
type Zoid ¶
type Zoid uint32
Zoid is BACnet OID (0xffffffff = invalid). A/D = D
func (Zoid) MarshalZcl ¶
type Zostring ¶
type Zostring []byte
Zostring is Octet string (0xff = invalid). A/D = D
func (Zostring) MarshalZcl ¶
type Zs16 ¶
type Zs16 int16
Zs16 is Signed 16-bit integer (0x8000 = invalid). A/D = A
func (Zs16) MarshalZcl ¶
func (*Zs16) UnmarshalJSON ¶
type Zs24 ¶
type Zs24 int32
Zs24 is Signed 24-bit integer (0x800000 = invalid). A/D = A
func (Zs24) MarshalZcl ¶
func (*Zs24) UnmarshalJSON ¶
type Zs32 ¶
type Zs32 int32
Zs32 is Signed 32-bit integer (0x80000000 = invalid). A/D = A
func (Zs32) MarshalZcl ¶
func (*Zs32) UnmarshalJSON ¶
type Zs40 ¶
type Zs40 int64
Zs40 is Signed 40-bit integer (0x8000000000 = invalid). A/D = A
func (Zs40) MarshalZcl ¶
func (*Zs40) UnmarshalJSON ¶
type Zs48 ¶
type Zs48 int64
Zs48 is Signed 48-bit integer (0x800000000000 = invalid). A/D = A
func (Zs48) MarshalZcl ¶
func (*Zs48) UnmarshalJSON ¶
type Zs56 ¶
type Zs56 int64
Zs56 is Signed 56-bit integer (0x80000000000000 = invalid). A/D = A
func (Zs56) MarshalZcl ¶
func (*Zs56) UnmarshalJSON ¶
type Zs64 ¶
type Zs64 int64
Zs64 is Signed 64-bit integer (0x8000000000000000 = invalid). A/D = A
func (Zs64) MarshalZcl ¶
func (*Zs64) UnmarshalJSON ¶
type Zs8 ¶
type Zs8 int8
Zs8 is Signed 8-bit integer (0x80 = invalid). A/D = A
func (Zs8) MarshalZcl ¶
func (*Zs8) UnmarshalJSON ¶
type Zseckey ¶
type Zseckey []byte
Zseckey is 128-bit security key. A/D = D
func (Zseckey) MarshalZcl ¶
type Zsemi ¶
type Zsemi float32
Zsemi is Semi-precicion (0x = invalid). A/D = A
func (Zsemi) MarshalZcl ¶
func (*Zsemi) UnmarshalJSON ¶
type Zstruct ¶
type Zstruct []StructField
Zstruct is Structure (0xffff = invalid). A/D = D
func (Zstruct) MarshalZcl ¶
type Ztime ¶
type Ztime uint32
Ztime is Time of day (0xffffffff = invalid). A/D = A
func (Ztime) MarshalZcl ¶
func (*Ztime) UnmarshalJSON ¶ added in v0.2.0
type Zu16 ¶
type Zu16 uint16
Zu16 is Unsigned 16-bit integer (0xffff = invalid). A/D = A
func (Zu16) MarshalZcl ¶
func (*Zu16) UnmarshalJSON ¶
type Zu24 ¶
type Zu24 uint32
Zu24 is Unsigned 24-bit integer (0xffffff = invalid). A/D = A
func (Zu24) MarshalZcl ¶
func (*Zu24) UnmarshalJSON ¶
type Zu32 ¶
type Zu32 uint32
Zu32 is Unsigned 32-bit integer (0xffffffff = invalid). A/D = A
func (Zu32) MarshalZcl ¶
func (*Zu32) UnmarshalJSON ¶
type Zu40 ¶
type Zu40 uint64
Zu40 is Unsigned 40-bit integer (0xffffffffff = invalid). A/D = A
func (Zu40) MarshalZcl ¶
func (*Zu40) UnmarshalJSON ¶
type Zu48 ¶
type Zu48 uint64
Zu48 is Unsigned 48-bit integer (0xffffffffffff = invalid). A/D = A
func (Zu48) MarshalZcl ¶
func (*Zu48) UnmarshalJSON ¶
type Zu56 ¶
type Zu56 uint64
Zu56 is Unsigned 56-bit integer (0xffffffffffffff = invalid). A/D = A
func (Zu56) MarshalZcl ¶
func (*Zu56) UnmarshalJSON ¶
type Zu64 ¶
type Zu64 uint64
Zu64 is Unsigned 64-bit integer (0xffffffffffffffff = invalid). A/D = A
func (Zu64) MarshalZcl ¶
func (*Zu64) UnmarshalJSON ¶
type Zu8 ¶
type Zu8 uint8
Zu8 is Unsigned 8-bit integer (0xff = invalid). A/D = A
func (Zu8) MarshalJSON ¶
func (Zu8) MarshalZcl ¶
func (*Zu8) UnmarshalJSON ¶
type Zuid ¶
type Zuid uint64
Zuid is IEEE address (0xffffffffffffffff = invalid). A/D = D
func IEEE ¶
func IEEE(addr net.HardwareAddr) Zuid
func (Zuid) HWAddr ¶
func (u Zuid) HWAddr() net.HardwareAddr
func (Zuid) MarshalJSON ¶
func (Zuid) MarshalZcl ¶
func (*Zuid) UnmarshalJSON ¶
type Zutc ¶
type Zutc uint32
Zutc is UTCTime (0xffffffff = invalid). A/D = A
func (Zutc) MarshalZcl ¶
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
general
provides general/common attributes and operations for most zigbee devices
|
provides general/common attributes and operations for most zigbee devices |
measurement
provides generic measurement and sensing interfaces
|
provides generic measurement and sensing interfaces |
cmd
|
|
half
Package half is an IEEE 754 binary16 half precision format.
|
Package half is an IEEE 754 binary16 half precision format. |