Skip to content

Profielformaat ​

Een add-on-profiel is een JSON-bestand. Het beschrijft een apparaat volledig: hoe de nomos system Controller het bereikt, wat hij kan verzenden, welke waarden terugkomen en wat daarvan in de app, in automatiseringen en in Quick Config verschijnt. Deze pagina beschrijft het formaat. Hoe u het in de Profiel Editor bewerkt, staat daar. Profielen met een eigen verbinding via TCP, UDP, HTTP of serieel beschrijft CommandServer in detail. Volledige voorbeelden voor HTTP, TCP (Modbus), UDP, MQTT en KNX staan onder Voorbeeldprofielen.

INFO

Elk profiel in de profiellijst kunt u met het downloadpictogram als .json opslaan. Een bestaand profiel dat op uw apparaat lijkt, is het beste startpunt.

Opbouw in het kort ​

json
{
	"version": "1.0",
	"author": "Muster Integration GmbH",
	"description": "Wallbox XY",
	"manufacturer": "XY",
	"model": "Wallbox",
	"platform": "XY",
	"category": "Energy",
	"type": "EV Charger",
	"className": "XY_WALLBOX",
	"engineType": "",
	"structure": { "config": {}, "commands": {}, "mappings": {} },
	"polling": {},
	"properties": {},
	"propertiesMeta": {},
	"mappings": {},
	"mappingsMeta": {},
	"actionTemplates": [],
	"triggerTemplates": [],
	"hooks": {},
	"cameras": [],
	"components": {}
}
BlokInhoud
BasisgegevensNaam, fabrikant, categorie, type, motortype
structureAlleen CommandServer: verbinding, opdrachten en antwoordpatronen, zie CommandServer
pollingAlleen CommandServer: opdrachten die regelmatig worden verzonden
properties, propertiesMetaActies: wat naar het apparaat kan worden verzonden, en hun labels
mappings, mappingsMetaTerugmeldingen: welke waarden het apparaat meldt, en hun labels
actionTemplates, triggerTemplatesSjablonen voor automatiseringen en Quick Config
hooksWaarden die het apparaat zelf via HTTP mag verzenden
camerasCamerabeelden van het apparaat
componentsSubprofielen: meerdere apparaten via één verbinding

Belangrijk om te begrijpen: structure beschrijft alleen wat over de lijn gaat. De app, automatiseringen en opgeslagen waarden werken uitsluitend met properties en mappings. Een CommandServer-profiel heeft daarom beide nodig: de opdracht in structure.commands en de actie in properties, het antwoordpatroon in structure.mappings en de terugmelding in mappings.

Basisgegevens ​

VeldVerplichtBetekenis
versionjaVersienummer, bijv. 1.0. Bestaande apparaten nemen wijzigingen alleen over bij een hogere versie, zie Profiel wijzigen
descriptionjaNaam in de profiellijst en voorstel voor de apparaatnaam
author, manufacturer, modeljaGegevens over auteur en apparaat
platformjaHerkomst, meestal de fabrikant. Bij KNX KNX, bij MQTT MQTT
category, typejaZie Categorie en type
engineTypejaZie Motortype
classNameCommandServer, KNXBij CommandServer de naam van de verbinding (alleen A–Z, 0–9, _, -, maximaal 28 tekens), bij KNX altijd KNX, bij MQTT en BUS leeg
supportUrlneeHulppagina over het apparaat, verschijnt als infoknop
compatibilityneeDekking van het apparaat in procenten
nomosCertifiedneetrue alleen bij profielen die nomos system heeft gecontroleerd
minVersionneeMinimale versie van de controller; oudere controllers weigeren een apparaat aan te maken
tagsneeKenmerken, zie hieronder
hideProperties, hideMappingsneeStelt de Profiel Editor zelf in, zie Sjablonen

Tags met effect: uihidden (apparaat niet in de app), voicehidden (niet naar spraakassistenten en de Matter-bridge). Een veld name hoort niet in het hoofdprofiel: het zou de naam vervangen die de gebruiker bij het aanmaken invult.

Een punt in de naam van het profiel wordt bij de import _, want bij het laden scheidt een punt profiel en subprofiel.

Categorie en type ​

Categorie en type bepalen het pictogram en het bedieningselement in de app. Ze bepalen ook of en als wat het apparaat via de Matter-bridge verschijnt. Gebruik de waarden die de Profiel Editor aanbiedt, bijv.:

CategorieTypes
LightingLightbulb
SwitchesSwitch, Trigger
ThermostatsThermostat, Thermostat Variation TA
Window CoveringsWindow Covering, Window Covering Up/Down
SunblindsSunblind
SensorsTemperature Sensor, Humidity Sensor, Contact Sensor, Motion Sensor, CO2 Sensor, Smoke Sensor, Light Sensor, Rain Sensor, Wind Sensor, Weather Station, Binary Sensor, …
EnergyInverter, Smart Meter, EV Charger, Heat Pump, Heating Controller, Pellet Boiler, Power Sensor
Fans, Doors, Garage Door, ValvesFan, Door, Garage Door Opener, Valve
Security SystemsLock, Alarm, Camera, Security System

Kies het type op basis van de belangrijkste waarde van het apparaat.

Motortype ​

engineTypeVerbindingBijzonderheden
"" (CommandServer)Eigen verbinding via TCP, UDP, HTTP, HTTPS of serieelstructure en polling, zie CommandServer
MQTTVia de broker van de MQTT-skillTopics per actie en terugmelding, zie MQTT
KNXVia de KNX-interfaceProfiel zonder adressen, groepsadressen bij het aanmaken, zie KNX
BUSWaarden komen alleen via webhooksVoor apparaten die zelf via HTTP melden
ZWAVEVia de Z-Wave-skillWordt via de Z-Wave-pagina aangemaakt

Elk apparaat uit een CommandServer-, MQTT- of BUS-profiel telt mee voor het aantal add-ons dat uw licentie toestaat.

Acties en terugmeldingen ​

properties (acties) zijn alles wat naar het apparaat kan worden verzonden. mappings (terugmeldingen) zijn de waarden die het apparaat meldt. Een naam mag in beide voorkomen, bijvoorbeeld state om te schakelen en als gemelde toestand. Alleen dan toont de app een schakelaar die de werkelijke toestand weergeeft.

json
"properties": {
	"state":     {"method": "set", "property": "ENA", "datatype": "bool"},
	"switchon":  {"method": "set", "property": "ENA", "value": 1, "datatype": "bool", "uihidden": true},
	"switchoff": {"method": "set", "property": "ENA", "value": 0, "datatype": "bool", "uihidden": true}
},
"mappings": {
	"state":     {"method": "get", "property": "ENABLE_USER", "datatype": "bool", "defaultValue": false},
	"reachable": {"method": "get", "property": "REACHABLE", "datatype": "bool", "defaultValue": false}
}

Velden ​

VeldInBetekenis
methodbeideActies: command (opdracht verzenden), set (eigenschap instellen), alias (naar een andere actie doorverwijzen). Terugmeldingen: get
commandactiesNaam van de opdracht bij method: "command"
propertybeideBij set: naam van de eigenschap. Bij terugmeldingen: naam van de gemelde waarde, bij CommandServer de naam van een antwoordpatroon, bij KNX altijd value
datatypebeideZie Datatypes
valueactiesVaste waarde, zie Vaste waarde
defaultValuebeideActies: waarde als er geen waarde wordt meegestuurd. Terugmeldingen: beginwaarde tot de eerste melding
valueListbeideKeuzewaarden, zie Waardenlijsten
min, max, internalMin, internalMaxbeideZie Schaling
unitbeideZie Eenheden
stepValuebeideStapgrootte van schuifregelaars (niet step)
uihiddenbeideNiet als eigen rij in de app
processterugmeldingenZie Verwerking
customFormatterugmeldingenZie Weergave
simulateFeedbackactiestrue: de verzonden waarde geldt direct als gemeld. Voor apparaten zonder terugmelding
prefix, suffixactiesWorden met een komma voor of achter de waarde gezet (prefix,waarde)
sizeInBitbeideKNX: grootte van het datapunt. Bij 1 worden true/false als 1/0 verzonden
filterDPTbeideKNX: aangeboden datapunttypen bij het toewijzen van het groepsadres
mqtt, mqttValue, mqttPayload, mqttScalebeideMQTT, zie MQTT

Bij CommandServer wordt {"method": "set", "property": "ENA"} de opdracht SETENA en {"method": "command", "command": "ON"} de opdracht ON. Beide moeten in structure.commands staan.

Datatypes ​

datatypeBetekenis
boolJa/nee. Als "uit" gelden 0, false, off, aus, offline, close, closed, error, warning (hoofdletters maken niet uit), al het andere als "aan". Een apparaat dat open meldt, is dus "aan"
int, floatGeheel getal of decimaal getal (punt als decimaalteken)
stringTekst
nullActie zonder waarde, bijv. een knop. Een meegestuurde waarde wordt genegeerd
triggerActie die alleen wordt uitgevoerd, bijvoorbeeld het stoppen van een zonwering

Standaardnamen ​

De app herkent waarden aan hun naam en toont daarvoor het passende bedieningselement. Gebruik voor deze waarden precies deze namen:

NaamWaardeDatatype
stateAan/uitbool
levelHelderheid 0–100int
color-temperatureKleurtemperatuur in miredint
positionPositie van een zonwering 0–100int
stopZonwering stoppentrigger
opencloseOpenen/sluiten, verplicht bij garagedeurenbool
openedDeur of poort openbool
temperature, setpointWerkelijke en gewenste temperatuurfloat
hvacmodeBedrijfsmodusint of string
isheating, heatingpowerVerwarmt op dit moment, verwarmingsvermogen in %bool, int
humidity, co2, pressure, noiseMeetwaardenGetal
batteryBatterijniveau in %int
reachableBereikbaarheidbool
powerVermogenfloat
pv_power, grid, battery_power, battery_state, e_day, e_totalEnergie: pv-vermogen, net, opslag, opbrengst vandaag en totaal. grid vanuit het huis gezien: teruglevering positief, afname negatiefGetal

Andere waarden mogen eigen namen hebben (kleine letters, cijfers, _, -). De app toont ze als tekstregel. De Profiel Editor stelt bij de naam alle bekende namen voor.

state, switchon en switchoff ​

Schakelt de app een apparaat, dan verzendt de controller niet state, maar switchon of switchoff. Automatiseringen gebruiken daarentegen state zelf. Een schakelbaar apparaat heeft daarom alle drie de acties nodig: state met het datatype bool, en switchon/switchoff met dezelfde opdracht en de vaste waarde 1 of 0, beide met uihidden. In propertiesMeta vat één item de drie samen:

json
"propertiesMeta": {
	"state": {"text": "State", "properties": ["state", "switchon", "switchoff"]}
}

Vaste waarde ​

value bij een actie is de waarde die de actie verzendt als er geen waarde wordt meegestuurd. Komt er een waarde mee, bijvoorbeeld uit de app, dan wint die, behalve bij "datatype": "null": dan wordt altijd value verzonden. In automatiseringen wint daarentegen altijd de vaste waarde van het profiel. Gebruik voor knoppen met een vaste inhoud (scène oproepen, toets indrukken) daarom "datatype": "null" en value.

Waardenlijsten ​

json
"valueList": [
	{"text": "Off", "value": "0"},
	{"text": "Low", "value": "1"},
	{"text": "High", "value": "2"}
]

Bij een actie is de lijst tegelijk een toegestane lijst: een waarde die er niet in staat, wordt geweigerd. Automatiseringen tonen de keuze alleen als dezelfde lijst ook in het sjabloon staat. Herhaal de lijst daar.

Schaling ​

internalMin/internalMax zijn het waardebereik van het apparaat, min/max het bereik in nomos (app, automatiseringen). De controller rekent lineair om, in beide richtingen. Voorbeeld: de wallbox verwacht de laadstroom in mA (6000–32000), de app toont A (6–32):

json
"amperelimit": {"method": "set", "property": "CURR", "datatype": "int", "unit": "A",
	"min": 6, "max": 32, "internalMin": 6000, "internalMax": 32000}

WARNING

Er wordt geschaald zodra max is ingesteld. Ontbrekende grenzen gelden als min 0, max 100, internalMin 0, internalMax 100. Een "max": 3000 zonder internalMin/internalMax rekent een apparaatwaarde 0–100 dus om naar 0–3000. Stel alle vier de grenzen in, of geen enkele.

  • Het resultaat wordt afgerond op gehele getallen. Een omrekening van W naar kW met decimalen werkt daarom niet via de schaling. Gebruik bij CommandServer een formaat ({%/1000.00}, zie Formaatfilters) of geef de waarde weer in de eenheid van het apparaat.
  • Verzonden waarden worden begrensd op min/max.
  • Een omgekeerd bereik is mogelijk, bijv. "internalMin": 100, "internalMax": 0 voor een zonwering die 0 % als gesloten meldt.

Eenheden ​

unit is ofwel een categorie die de app voor elke gebruiker passend toont en omrekent (temperature, percent, luminescence, voltage, current, electric, energy, co2, angle, noise, pressure, currency, bigmetric, smallmetric), ofwel een vaste eenheid zoals W, kW, kWh, Hz, m³/h, die zo wordt getoond.

Voor color-temperature geldt: de waarde is in nomos altijd in mired. Gebruikt het apparaat kelvin, geef dan "internalUnit": "kelvin" op, het kelvinbereik met koud eerst ("internalMin": 6500, "internalMax": 2700) en als min/max de mired-waarden (154/370).

Verwerking ​

process bij een terugmelding bewerkt de waarde na ontvangst, onder andere: invert (teken omdraaien), wattHoursToKilowattHours, openCloseToBoolean (woorden zoals open/closed naar ja/nee), calculateGridPrice, calculatePhotovoltaicsPrice, calculateWaterPrice (waarde × prijs uit de systeemvariabele GRID_PRICE, PV_PRICE of WATER_PRICE). Triggers in automatiseringen vergelijken de waarde vóór deze verwerking.

Weergave ​

customFormat legt vast hoe de app een waarde toont. De sleutel format is een expressie in JsonLogic die de getoonde waarde berekent. Elke andere sleutel is een kleur die geldt als haar expressie waar is.

json
"grid": {"method": "get", "property": "GRID", "datatype": "float", "unit": "W",
	"customFormat": {
		"format": {"Math.abs": {"Math.round": {"var": "value"}}},
		"red-minus": {"<": [{"var": "value"}, 0]},
		"green-plus": {">": [{"var": "value"}, 0]}
	}}

Voor format zijn er daarnaast Math.round, Math.abs en de overige Math-functies, toFixed1, toFixed2, toFixed3 en CustomFormatter.toHHMM en CustomFormatter.toHHMMSS (seconden als tijd). Kleuren: green, red, blue, orange, purple, alleen als tekstkleur of met -plus, -minus, -circle, -square als punt voor de waarde.

Labels en groepen ​

propertiesMeta en mappingsMeta geven elke actie of terugmelding haar label:

json
"mappingsMeta": {
	"power": {"text": "Power", "group": "Vehicle charging", "properties": ["power"]}
}
  • text: label. De gebruiker kan het per apparaat hernoemen.
  • group: gedeelte waaronder de app de waarde toont. Alleen bij apparaten met veel waarden, laat het anders weg. De gedeelten verschijnen in de volgorde van het profiel.
  • properties: welke items deze rij samenvat, bijv. state, switchon en switchoff. Bij KNX wordt elk item in propertiesMeta en mappingsMeta een veld voor een groepsadres.

Vertaling ​

Labels, groepen en teksten van waardenlijsten en sjablonen worden vertaald als ze precies overeenkomen met een term die nomos kent, bijvoorbeeld State, Brightness, Power, Temperature, Reachable, Turn On, Is Turned On, Off, Low, Medium, High. Elke andere tekst verschijnt in alle talen zoals hij in het profiel staat. Schrijf zulke teksten daarom in de taal van de installatie, of gebruik de Engelse standaardtermen die de Profiel Editor voorstelt.

Sjablonen ​

Sjablonen zijn de items die automatiseringen en Quick Config aanbieden.

json
"actionTemplates": [
	{"templateid": "switchon", "mapping": "switchon", "text": "Turn On", "icon": "toggle-on"},
	{"templateid": "level", "mapping": "level", "text": "Brightness", "icon": "sun-o"}
],
"triggerTemplates": [
	{"templateid": "state.on", "mapping": "state", "text": "Is Turned On", "value": "1", "icon": "toggle-on"}
]
VeldBetekenis
templateidUnieke ID. Wordt in opgeslagen automatiseringen gebruikt, wijzig hem daarom later niet meer
mappingDe actie (bij actionTemplates) of terugmelding (bij triggerTemplates) waarop het sjabloon betrekking heeft. Bestaat die niet, dan vervalt het sjabloon
text, textsuffixLabel en toevoeging
iconNaam van een Font Awesome-pictogram zonder fa-, bijv. toggle-on, bolt, thermometer
valueVaste waarde; de automatisering toont dan geen invoerveld
valueListKeuze in de automatisering; kopie van de lijst van de actie of terugmelding
placeholderVoorbeeldtekst in het lege invoerveld van een actie met tekst
hideInQuickConfigtrue: niet in Quick Config, wel in automatiseringen

hideProperties: true en hideMappings: true zorgen ervoor dat automatiseringen alleen de sjablonen aanbieden in plaats van alle acties of terugmeldingen. De Profiel Editor stelt beide bij het opslaan zelf in: true zodra er minstens één sjabloon is.

Pollings ​

Alleen CommandServer. Elk item verzendt een opdracht uit structure.commands met een vaste tussentijd, bij de start meteen één keer:

json
"polling": {
	"Status": {"interval": 30, "editableInterval": true, "command": "STATUS"}
}
  • interval: tussentijd in seconden.
  • editableInterval: true: het interval wordt bij het aanmaken van het apparaat gevraagd (vooraf ingevuld met interval).
  • value en editableValue: optionele waarde die met de opdracht wordt verzonden, en of die bij het aanmaken wordt gevraagd.

Subprofielen kunnen geen pollings uitvoeren; pollings horen bij het hoofdprofiel.

Webhooks ​

Met webhooks meldt een apparaat zelf waarden, in plaats van dat het wordt opgevraagd. Een voorbeeld is een drukknop die bij elke druk een adres aanroept. In het profiel geeft u aan welke terugmeldingen dat mogen. Elk item heeft een terugmelding met dezelfde naam nodig:

json
"hooks": {"action": {"enabled": true}, "battery": {"enabled": true}},
"mappings": {
	"action":  {"method": "get", "property": "ACTION", "datatype": "int"},
	"battery": {"method": "get", "property": "BATTERY", "datatype": "int", "unit": "percent"}
}

Bij het aanmaken van het apparaat noemt de controller het adres dat het apparaat moet aanroepen. Het heeft de vorm http://<IP van de controller>/api/v1/hook/<apparaat-ID>. De waarden staan als parameters in het adres (GET) of in de body (POST, als formulier of JSON):

http://192.168.1.10/api/v1/hook/C12?action=1&battery=98

De controller neemt alleen parameters over die in hooks zijn vrijgegeven. Hij antwoordt met 200 als minstens één waarde is overgenomen, anders met 204.

DANGER

Webhooks hebben geen aanmelding. Elk apparaat in het lokale netwerk dat het adres kent, kan de vrijgegeven waarden instellen. Via externe toegang is het adres geblokkeerd. Geef daarom alleen terugmeldingen vrij die een apparaat echt moet verzenden. Start er geen beveiligingsrelevante automatiseringen mee, zoals het openen van een deur.

Camera's ​

json
"cameras": [
	{"type": "mjpeg", "url": "http://%SERVERIP%/mjpegstream.cgi?usr=%USERNAME%&pwd=%PASSWORD%"}
]

type: snapshot (los beeld, standaard), mjpeg, rtsp of otherhttp. In de URL worden plaatsaanduidingen %NAME% vervangen door de waarden uit de communicatie. Bij het aanmaken van het apparaat ontstaat per item een camera. Is bij rtsp of otherhttp het maximale aantal videostreams bereikt, dan wordt de camera zonder melding overgeslagen.

Subprofielen ​

json
"components": {
	"out1": {"name": "Ausgang 1", "category": "Switches", "type": "Switch",
		"properties": {}, "propertiesMeta": {}, "mappings": {}, "mappingsMeta": {}}
}

Elke sleutel wordt bij het aanmaken van het apparaat een eigen apparaat met de naam "Apparaatnaam Ausgang 1". Ze delen allemaal de verbinding van het hoofdprofiel; structure, polling en cameras bestaan alleen in het hoofdprofiel. Ontbrekende basisgegevens (versie, fabrikant, categorie, type, motortype) neemt een subprofiel over van het hoofdprofiel. Wijzig de sleutel van een subprofiel niet meer als apparaten het gebruiken.

MQTT ​

MQTT-profielen gebruiken de broker die in de MQTT-skill is ingesteld; een profiel kan geen eigen broker kiezen. Bij het aanmaken van het apparaat vult u een MQTT Topic in. In het profiel staat het als %mqttTopic%.

json
"properties": {
	"switchon": {"method": "command", "command": "power", "value": 1,
		"mqtt": "cmnd/%mqttTopic%/POWER", "datatype": "null", "uihidden": true},
	"level": {"method": "command", "command": "brightness",
		"mqtt": "cmnd/%mqttTopic%/Dimmer", "datatype": "int", "unit": "percent"}
},
"mappings": {
	"level": {"method": "get", "property": "dimmer", "mqtt": "stat/%mqttTopic%/RESULT",
		"mqttValue": "Dimmer", "datatype": "int", "unit": "percent"},
	"reachable": {"method": "get", "property": "reachable", "mqtt": "tele/%mqttTopic%/LWT",
		"mqttValue": "", "datatype": "bool", "defaultValue": true}
}
VeldBetekenis
mqttTopic. Bij terugmeldingen zijn + en # als wildcards toegestaan
commandActies: naam van de opdracht. Acties met hetzelfde command moeten hetzelfde topic hebben, zoals switchon en switchoff
mqttPayloadActies: payload met \# als plek voor de waarde, bijv. {"brightness":\#}. Zonder mqttPayload wordt alleen de waarde verzonden
mqttValueTerugmeldingen: welk deel van een JSON-payload de waarde is. Met een punt een pad (ENERGY.Power), zonder punt het eerste veld met deze naam, bij een array een positie. Leeg: de hele payload
mqttScaleTerugmeldingen: wordt als eenheid aan de waarde toegevoegd, maar rekent niet om. Alleen zinvol samen met "unit": "energy" (kW wordt W)
  • Er wordt verzonden met QoS 0 en zonder retain.
  • %mqttTopic% wordt vervangen in mqtt, command en property, niet in mqttPayload.
  • Zonder terugmelding reachable geldt het apparaat altijd als bereikbaar. Met het LWT-topic van het apparaat (Online/Offline) klopt de bereikbaarheid.

Kant-en-klare MQTT-sjablonen en een Node-RED-handleiding om willekeurige apparaten te koppelen staan op de pagina MQTT-sjablonen (in het Duits) van de add-on-bibliotheek.

KNX ​

Een KNX-profiel bevat geen adressen. Het legt vast welke waarden een apparaat heeft en hoe groot ze op de bus zijn. De groepsadressen wijst u toe bij het aanmaken van het apparaat. Apparaat aanmaken opent daarvoor het dialoogvenster van de KNX-skill met het profiel.

json
"className": "KNX", "engineType": "KNX", "platform": "KNX",
"properties": {
	"state":     {"method": "set", "property": "value", "datatype": "bool", "sizeInBit": 1, "filterDPT": ["1.001"]},
	"switchon":  {"method": "set", "property": "value", "value": 1, "datatype": "bool", "sizeInBit": 1, "uihidden": true},
	"switchoff": {"method": "set", "property": "value", "value": 0, "datatype": "bool", "sizeInBit": 1, "uihidden": true}
},
"propertiesMeta": {"state": {"text": "State", "properties": ["state", "switchon", "switchoff"]}},
"mappings": {
	"state": {"method": "get", "property": "value", "datatype": "bool", "sizeInBit": 1, "filterDPT": ["1.001"]}
},
"mappingsMeta": {"state": {"text": "State", "properties": ["state"]}}
  • className en platform zijn altijd KNX, property is altijd value.
  • Elk item in propertiesMeta wordt een veld voor het groepsadres om te schakelen, elk item in mappingsMeta een veld voor het statusadres. De sleutel moet zelf de naam van een actie of terugmelding zijn. Het adres voor state geldt ook voor switchon en switchoff.
  • sizeInBit moet bij het datapunttype passen (1 bit voor schakelen, 8 bit voor procenten en standen, 16 bit voor temperaturen). filterDPT beperkt de keuze bij het toewijzen. De eenheid komt van het datapunttype van het groepsadres.
  • Een waarde zonder groepsadres doet niets en verschijnt niet in de app.
  • Een terugmelding reachable is niet nodig; de bereikbaarheid volgt de KNX-verbinding.

Veel apparaatsoorten (licht, dimmer, zonwering, thermostaat, sensoren) heeft de KNX-skill al aan boord. Een eigen profiel loont voor apparaten die daar ontbreken. Tips over groepsadressen en datapunttypen staan op de pagina KNX-sjablonen (in het Duits) van de add-on-bibliotheek.

Veelvoorkomende fouten ​

  • Waarden blijven leeg: bij CommandServer ontbreekt de terugmelding in mappings, of haar property past niet bij de naam van het antwoordpatroon in structure.mappings.
  • Schakelaar springt terug: er is geen terugmelding state, of het apparaat meldt de toestand niet.
  • App schakelt niet: switchon/switchoff ontbreken; de app verzendt nooit state zelf.
  • Getallen verkeerd geschaald: max zonder internalMin/internalMax (zie Schaling).
  • Automatisering biedt een waarde niet aan: er zijn sjablonen, maar geen voor deze waarde (zie Sjablonen).
  • Apparaat altijd bereikbaar: bij CommandServer ontbreken CONNECTEVENT/DISCONNECTEVENT, bij MQTT de terugmelding reachable (zie Bereikbaarheid).
  • Een tweede profiel …_2: dit ontstaat alleen als u bij een in de Profiel Editor gewijzigd profiel Als kopie kiest. Anders vervangt een nieuwe upload of import het bestaande profiel (zie Updates uit de online bibliotheek).