Owl Automata logo
  • Home
  • About Us
  • Services
  • Products
    Hotel As a Service
    Chameleon+
    Chameleon+From Room Design to Complete ETS Project - hotel automation made simple
    Fire Ant
    Fire AntAutomate the Tedious. Focus on What Matters
    Explore the HaaS concept
    Apps & Tools
    Pro Builder Ecosystem
    Pro Builder
    Pro BuilderETS app for importing generated .knxproj files into ETS.
    Application Template
    Application TemplateMicroapp for extracting, reusing, and sharing KNX application templates.
    SharkNX
    SharkNXConnect. Monitor. Control. ETS Mobile Toolkit on the Go
    View all products
  • Resources
  • Insights
  • Contact
Current versionv1.18.2
LanguageEnglishDeutschFrançaisEspañolItaliano
Documentation home

Guida introduttiva a SharKNX

L'assistente SharKNXProgetti ETS in SharKNXKNX Data SecureKNX IP SecureIl concetto Shark Hunt

Come Usare Alias e Script dell'AssistenteCome Connettersi a un Gateway KNXCome Creare una Shark HuntCome Esportare i TelegrammiCome Ispezionare gli Oggetti di Comunicazione di un DispositivoCome Caricare un Progetto ETSCome Programmare l'Indirizzo Individuale di un DispositivoCome Leggere la Tabella dei Filtri di un AccoppiatoreCome Scansionare una Linea Bus KNXCome Inviare Comandi KNXCome Configurare KNX Data SecureCome Configurare KNX IP SecureCome Usare l'Assistente

Collegamenti del progettoPagina ConnettiPagina DiagnosticaPagina MonitorPagina ProjectPagina SettingsPagina Shark HuntsPagina Assistente

Comandi dell'AssistenteFormato File di Alias e ScriptFormato file delle dashboardFormati di EsportazioneDomande FrequentiLimitiMenu laterale e AzioniSintassi dei filtri del monitorGuida alle ImpostazioniPiani di AbbonamentoTipi di Datapoint Supportati (DPT)
Riferimento

Formato file delle dashboard

Scrivi, esporta e importa dashboard SharKNX in JSON. Campi, widget, valori predefiniti e regole di validazione, con due esempi da scaricare.

In questa pagina
  1. Struttura
  2. Dashboard
  3. Spazi e pagine
  4. ID e collegamenti
  5. Widget
  6. Indirizzi di gruppo
  7. Colori e icone
  8. Tipi di widget
  9. Connessione
  10. Esempio completo
  11. Validazione
  12. Versioni

Il formato JSON delle dashboard di visualizzazione SharKNX: spazi, pagine, widget e indirizzi di gruppo utilizzati.

Puoi esportare una dashboard da SharKNX come file JSON e importarla sullo stesso dispositivo o su un altro. Puoi anche scriverla in un editor di testo: l’app esporta tutti i campi, ma per l’importazione richiede solo ciò che non può dedurre. Un progetto scritto a mano rimane quindi breve.

Per iniziare rapidamente, usa la dashboard vuota o la casa di esempio. Oppure crea una piccola dashboard nell’app, esportala e modifica il file.

In questa pagina

  1. Struttura
  2. Dashboard
  3. Spazi e pagine
  4. ID e collegamenti
  5. Widget
  6. Indirizzi di gruppo
  7. Colori e icone
  8. Tipi di widget
  9. Connessione
  10. Esempio completo
  11. Validazione
  12. Versioni

Struttura

Una dashboard contiene uno spazio, Home. Ogni altro spazio si trova in Home o in un altro spazio. Uno spazio ha una o più pagine tra cui scorrere, e ogni pagina contiene widget in una griglia.

{
  "format": 1,
  "name": "Villa",
  "home": {
    "name": "Home",
    "tiles": [
      { "type": "switch", "name": "Hall light", "command": "1/0/1", "status": "1/0/2" }
    ],
    "rooms": [
      {
        "name": "Kitchen",
        "tiles": [
          { "type": "switch", "name": "Counter light", "command": "1/4/1" }
        ]
      }
    ]
  }
}

Nel file, gli spazi si chiamano rooms, le pagine panels e i widget tiles. Il file usa JSON UTF-8; è accettato un marcatore dell’ordine dei byte all’inizio.


Dashboard

Il livello principale del file.

Campo Obbligatorio Valore predefinito Descrizione
format No 1 La versione del formato. Vedi Versioni
name Sì (nessuno) Il nome della dashboard, al massimo 50 caratteri. I nomi sono univoci su un dispositivo: importando un nome esistente puoi creare una copia o sostituire la dashboard
home Sì (nessuno) Lo spazio Home. Vedi Spazi e pagine
theme No auto auto (segue la modalità chiara o scura del dispositivo), light, dark, night, wave, sahara, aurora o neon
buttons No filled Aspetto dei pulsanti dei widget: filled o plain
keepScreenOn No false true mantiene lo schermo acceso mentre la dashboard è aperta
muteBanners No false true elenca le notifiche solo in Attività, senza banner
favorites No [] ID dei widget mostrati nei Preferiti, in quest’ordine, ad esempio ["t1", "t4"]
connection No automatica Come la dashboard si connette al bus. Vedi Connessione

Il campo project di un file importato viene ignorato: il collegamento a un progetto nell’Archivio appartiene al dispositivo che ha creato il file.


Spazi e pagine

Campo Obbligatorio Valore predefinito Descrizione
id No assegnato r e un numero, ad esempio r3. Home è sempre r0. Solo uno spazio aperto da un collegamento richiede un ID. Vedi ID e collegamenti
name Sì (nessuno) Il nome dello spazio, al massimo 50 caratteri
icon No predefinito Un nome di icona, ad esempio kitchen. Vedi Colori e icone
tiles Uno dei due (nessuno) I widget di uno spazio con una sola pagina
panels Uno dei due (nessuno) Le pagine di uno spazio con più pagine, al massimo 10
rooms No [] Gli spazi contenuti in questo

Usa tiles o panels, non entrambi. Ogni pagina in panels contiene:

Campo Obbligatorio Valore predefinito Descrizione
id No assegnato p e un numero, ad esempio p2
tiles No [] I widget della pagina, in ordine, al massimo 100
{
  "format": 1,
  "name": "Two pages",
  "home": {
    "name": "Home",
    "panels": [
      { "tiles": [{ "type": "switch", "name": "Hall light", "command": "1/0/1" }] },
      { "tiles": [{ "type": "switch", "name": "Porch light", "command": "1/0/5" }] }
    ]
  }
}

ID e collegamenti

Ogni spazio, pagina e widget ha un ID: r per gli spazi, p per le pagine, t per i widget, seguito da un numero fino a 999999. Gli ID sono univoci all’interno di una dashboard, non tra dashboard diverse.

  • Se ometti gli ID, l’importazione li assegna proseguendo oltre l’ID più alto del file.
  • Scrivi un ID quando qualcosa vi fa riferimento: uno spazio aperto da un widget di navigazione e un widget elencato in favorites.
  • Un collegamento o preferito deve indicare un ID scritto nel file. Un ID mai dichiarato nel file è un errore, anche se l’importazione avrebbe assegnato quell’ID a un altro elemento.
  • Un file esportato contiene sempre tutti gli ID.

Widget

Campi comuni a tutti i widget:

Campo Obbligatorio Valore predefinito Descrizione
type Sì (nessuno) Il tipo di widget. Vedi Tipi di widget
name Sì (nessuno) Mostrato sul widget, al massimo 50 caratteri
id No assegnato t e un numero, ad esempio t12
icon No quello del tipo Un nome di icona. Vedi Colori e icone
size No quello del tipo Celle della griglia, larghezza × altezza: 1x1, 2x1, 3x1, 2x2, 3x2 o 3x3. Ogni tipo consente alcune dimensioni
Tipo Funzione Dimensioni Dimensione predefinita
navigation Apre uno spazio 2x1, 3x1, 2x2 2x1
switch Accende e spegne qualcosa 1x1, 2x1, 2x2 2x1
statusIndicator Mostra uno stato acceso/spento 1x1, 2x1 1x1
valueDisplay Mostra un numero 1x1, 2x1, 3x1, 2x2, secondo la vista 2x1
valueControl Invia un numero 1x1, 2x1, 3x1, 2x2 3x1 (2x1 senza comando)
modeStatus Mostra un byte come stati con nome 1x1, 2x1, 3x1 2x1
dimmer Una luce dimmerabile 1x1, 2x1, 3x1, 2x2 2x2
blind Una veneziana o tapparella 1x1, 2x1, 3x1, 2x2, 3x2 2x2
scene Richiama una scena o alterna tra due 1x1, 2x1, 2x2 2x1
scenes Una fila di pulsanti scena 2x1, 2x2, 3x2, 3x3 2x2
tunableWhite Una luce con temperatura di colore 1x1, 2x1, 3x1, 2x2, 3x2 2x2
colorLight Una luce RGB, RGBW o RGB + bianco 1x1, 2x1, 3x1, 2x2, 3x2 2x1
thermostat Un setpoint di temperatura ambiente 1x1, 2x1, 3x1, 2x2 2x2
fanCoil Un ventilconvettore 1x1, 2x1, 3x1, 2x2, 3x2 (3x3 con funzioni integrate) 2x1
airConditioner Un’unità split o VRV tramite il suo gateway KNX 1x1, 2x1, 3x1, 2x2, 3x3 2x2

Un file con un tipo non riconosciuto da questa versione di SharKNX non viene importato.


Indirizzi di gruppo

Un widget invia ad alcuni indirizzi (comando) e mostra altri (stato). Gli indirizzi di gruppo si scrivono su tre livelli, ad esempio "1/2/3". Un DPT si scrive con tipo principale e sottotipo, ad esempio "1.001" o "9.001".

Forma breve. Scrivi solo l’indirizzo e verrà usato il DPT della sua funzione: 1.001 per un comando di accensione, 5.001 per la luminosità di un dimmer, il DPT di valueType per la visualizzazione di un valore. Ogni tipo di widget indica i propri valori predefiniti sotto.

{ "type": "switch", "name": "Hall light", "command": "1/0/1", "status": "1/0/2" }

Forma completa. Per usare un altro DPT dello stesso tipo principale (1.019 per un contatto finestra, 9.004 per un valore in lux), inviare un comando a più indirizzi o evitare la lettura di uno stato all’apertura della dashboard:

{
  "type": "switch",
  "name": "All lights",
  "command": { "targets": ["1/0/1", "1/1/1", "1/4/1"], "dpt": "1.001" },
  "status": { "address": "1/0/2", "dpt": "1.001", "readOnOpen": false }
}
Campo Utilizzo Obbligatorio Valore predefinito Descrizione
address Comandi e stati Uno dei due (nessuno) Un indirizzo di gruppo
targets Comandi Uno dei due (nessuno) Più indirizzi di gruppo che ricevono lo stesso valore
dpt Comandi e stati No quello della funzione Il DPT con cui viene codificato il valore
readOnOpen Stati No true false: non leggere lo stato all’apertura della dashboard; attendere il bus

Un DPT deve corrispondere alla funzione: un interruttore accetta qualsiasi DPT 1 (1.001 commutazione, 1.008 su/giù, …), la luminosità di un dimmer usa DPT 5.001.


Colori e icone

I colori sono nomi: red, orange, yellow, green, blue, purple o grey. Ognuno ha una tonalità chiara e una scura, scelta dal tema.

Le icone sono nomi del catalogo dell’app, ad esempio light_group, floor_lamp, table_lamp, wall_lamp, socket, shutter, curtains, heating, cooling, window, door, temperature, humidity, relax, dinner, all_off. Le icone degli spazi includono home, living, kitchen, dining, bedroom, bathroom, office, hallway, garage, garden e terrace. Il selettore di icone dell’app mostra tutti i nomi.

Un nome di colore o icona sconosciuto viene conservato e visualizzato con il valore predefinito, così un file di una versione più recente di SharKNX rimane importabile.


Tipi di widget

Navigazione

Apre un altro spazio.

Campo Obbligatorio Valore predefinito Descrizione
target Sì (nessuno) L’ID dello spazio aperto, ad esempio r1. Lo spazio deve dichiarare questo ID nel file
{
  "format": 1,
  "name": "Links",
  "home": {
    "name": "Home",
    "tiles": [{ "type": "navigation", "name": "Kitchen", "icon": "kitchen", "target": "r1" }],
    "rooms": [{ "id": "r1", "name": "Kitchen", "tiles": [] }]
  }
}

Interruttore

Un tocco alterna tra acceso e spento oppure invia sempre lo stesso valore.

Campo Obbligatorio Valore predefinito Descrizione
command Sì (nessuno) Comando, DPT 1 (1.001 se omesso)
status No (nessuno) Stato, DPT 1 (1.001 se omesso). In assenza di stato, il widget mostra l’ultimo valore inviato o ricevuto su command
fixed No (nessuno) 1 o 0: ogni tocco invia questo valore invece di alternare
invertCommand No false true invia 0 per acceso e 1 per spento. Non con fixed
invertStatus No false true interpreta 0 come acceso
zeroLabel, oneLabel No Spento, Acceso I nomi degli stati mostrati per 0 e 1
offIcon No l’icona L’icona mostrata quando è spento
onColor, offColor No quello del tema Il colore dell’icona quando è acceso e spento
{ "type": "switch", "name": "Garden pump", "icon": "valve", "command": "1/5/1", "status": "1/5/2", "zeroLabel": "Stopped", "oneLabel": "Running" }

Indicatore di stato

Mostra uno stato acceso/spento; un tocco non fa nulla.

Campo Obbligatorio Valore predefinito Descrizione
status Sì (nessuno) Stato, qualsiasi DPT 1 (1.001 se omesso)
invertStatus, zeroLabel, oneLabel, offIcon, onColor, offColor No Come per Interruttore
{ "type": "statusIndicator", "name": "Window", "icon": "window", "status": { "address": "6/1/1", "dpt": "1.019" }, "zeroLabel": "Closed", "oneLabel": "Open" }

Visualizzazione del valore

Mostra un numero o byte grezzi così come arrivano. Il suo type è valueDisplay.

Campo Obbligatorio Valore predefinito Descrizione
status Sì (nessuno) Stato. Il DPT deve corrispondere a valueType; se omesso si usa quello del tipo (nessuno per hex)
valueType No f16 Come viene decodificato il valore, con il DPT usato se omesso: percent (5.001), u8 (5.010), s8 (6.010), u16 (7.001), s16 (8.001), f16 (9.001), u32 (12.001), s32 (13.001), f32 (14.056), s64 (29.010) o hex (byte grezzi). Un DPT esplicito può essere qualsiasi sottotipo dello stesso tipo principale (per u8, non 5.001 o 5.003)
view No number number, bar o gauge. Barra: 2x1 o 3x1. Indicatore: 1x1 o 2x2. Non per hex
unit No (nessuno) Mostrato dopo il valore, ad esempio °C
decimals No come ricevuto 0 a 2
displayMin, displayMax No l’intervallo del tipo L’intervallo di una barra o indicatore
scaleColors No quello del tema Colori di una barra o indicatore: coolWarm, greenRed, redGreen o neutral
displayScale No 1 Il valore ricevuto viene diviso per questo numero prima della visualizzazione, ad esempio 1000 per mostrare Wh come kWh

La dimensione 1x1 è adatta solo a valori di 1 o 2 byte.

{ "type": "valueDisplay", "name": "Power", "icon": "electricity", "valueType": "s32", "unit": "kW", "decimals": 2, "displayScale": 1000, "status": { "address": "9/1/1", "dpt": "13.010" } }

Comando del valore

Invia un numero: con − e +, un cursore o pulsanti per valori predefiniti.

Campo Obbligatorio Valore predefinito Descrizione
command Sì (nessuno) Comando. Il DPT deve corrispondere a valueType; se omesso si usa quello del tipo
status No (nessuno) Stato, come command
valueType No f16 Come per Visualizzazione del valore, eccetto hex
control No stepper Cosa mostra il widget: stepper (− e +), slider, buttons o none
min, max No l’intervallo del tipo L’intervallo in cui opera il comando
step No 0.5 per valori in virgola mobile, 10 per percentuali, altrimenti 1 Il passo di − e +
unit No (nessuno) Mostrato dopo il valore
decimals No come ricevuto 0 a 2
choices Con buttons [] Fino a 8 pulsanti: {"value": 21, "name": "Comfort"}, ogni valore nell’intervallo e usato una sola volta
color No quello del tema Il colore dell’icona
{
  "type": "valueControl",
  "name": "Hood fan",
  "valueType": "percent",
  "control": "buttons",
  "command": { "address": "6/2/1", "dpt": "5.001" },
  "status": { "address": "6/2/2", "dpt": "5.001" },
  "choices": [{ "value": 0, "name": "Off" }, { "value": 50, "name": "Half" }, { "value": 100, "name": "Full" }]
}

Visualizzazione della modalità

Mostra un byte come stati con nome, ad esempio una modalità HVAC.

Campo Obbligatorio Valore predefinito Descrizione
status Sì (nessuno) Stato, DPT 5, 17 o 20 (5.010 se omesso)
states Sì (nessuno) 1 a 8 stati: {"value": 1, "name": "Comfort", "icon": "…"}, valori 0–255, senza ripetizioni
color No quello del tema Il colore dell’icona
{
  "type": "modeStatus",
  "name": "Heating mode",
  "status": { "address": "3/1/9", "dpt": "20.102" },
  "states": [{ "value": 1, "name": "Comfort" }, { "value": 2, "name": "Standby" }, { "value": 3, "name": "Economy" }]
}

Dimmer

Una luce dimmerabile: l’icona la accende o spegne, un cursore imposta la luminosità oppure − e + la regolano.

Campo Obbligatorio Valore predefinito Descrizione
switch No (nessuno) Comando acceso/spento, DPT 1.001
switchStatus No (nessuno) Stato acceso/spento, DPT 1.001
brightness Con slider (nessuno) Comando della luminosità, DPT 5.001
brightnessStatus No (nessuno) Stato della luminosità, DPT 5.001
dimming Con stepper (nessuno) Comando di regolazione relativa, DPT 3.007
control No slider con brightness, altrimenti stepper Il comando 2x2. Può essere indicato solo l’oggetto di invio del comando scelto
stepCode No 5 Passo di regolazione, 1–7: 1 = 100 %, 2 = 50 %, … 5 = 6.25 %, … 7 = 1.56 %
repeatMs No 500 Ripetizione mentre − o + è premuto: 500, 1000 o 1250 ms
offIcon, onColor, offColor No Come per Interruttore
{ "type": "dimmer", "name": "Sofa lamp", "icon": "floor_lamp", "switch": "1/1/10", "switchStatus": "1/1/11", "brightness": "1/1/12", "brightnessStatus": "1/1/13" }

Veneziana

Una veneziana o tapparella: su, stop e giù, oppure una posizione.

Campo Obbligatorio Valore predefinito Descrizione
control No step step (su, stop, giù) o position (un cursore)
move Con step (nessuno) Comando su/giù, qualsiasi DPT 1 (1.008 se omesso)
stop Con step (nessuno) Comando di stop o passo delle lamelle, qualsiasi DPT 1 (1.008 se omesso)
position Con position (nessuno) Comando della posizione, DPT 5.001
slatAdjustment No false true per veneziane con lamelle
slatPosition Con position e lamelle (nessuno) Comando della posizione delle lamelle, DPT 5.001
positionStatus, slatStatus No (nessuno) Stato della posizione e delle lamelle, DPT 5.001
upperEndStatus, lowerEndStatus No (nessuno) Stato delle posizioni di fine corsa, DPT 1 (1.002 se omesso)
windAlarm No (nessuno) Stato dell’allarme vento, DPT 1 (1.005 se omesso). Mostrato come avviso; non blocca mai un comando
invert No false true per attuatori in cui 0 % significa chiuso
offIcon No l’icona L’icona mostrata quando è aperta
onColor, offColor No quello del tema Il colore dell’icona quando è chiusa e aperta

0 % significa aperta e 100 % chiusa. Si possono indicare solo gli oggetti di invio del comando scelto, e quelli delle lamelle solo con slatAdjustment.

{ "type": "blind", "name": "Terrace blind", "move": "2/1/1", "stop": "2/1/2", "positionStatus": "2/1/3" }

Scena

Richiama una scena. In modalità toggle alterna tra due scene; in modalità threshold ne sceglie una in base a un valore, ad esempio la scena A da 20 lux in su.

Campo Obbligatorio Valore predefinito Descrizione
command Sì (nessuno) Comando, DPT 18.001
mode No single single, toggle o threshold
scene No 0 Scena A, come inviata: 0–63. La scena KNX 1 è 0, la scena 64 è 63
sceneB Con toggle e threshold (nessuno) Scena B, 0–63
commandB No command Inviare la scena B al proprio indirizzo, DPT 18.001
nameA, nameB No (nessuno) I nomi delle due scene, solo con toggle
iconB No l’icona L’icona della scena B
activation No tap tap, oppure hold per richiamare solo dopo una pressione prolungata
holdMilliseconds No 500 Durata della pressione prolungata: 200, 300, 400, 500, 1000, 2000 o 3000
saveOnLongPress No false true: una pressione lunga salva lo stato attuale come scena
value Con threshold (nessuno) Stato usato per scegliere la scena. Il DPT deve corrispondere a valueType; se omesso si usa quello del tipo
valueType No f16 Come viene decodificato value, come per Visualizzazione del valore, eccetto hex
threshold No 0 Scena A da questo valore in su, scena B al di sotto
defaultScene No a a o b: la scena richiamata prima dell’arrivo di un valore
flagAbove, flagBelow No (nessuno) Icone che indicano il lato attivo
color No quello del tema Il colore dell’icona
{ "type": "scene", "name": "Cinema", "icon": "relax", "mode": "toggle", "command": "4/2/1", "scene": 4, "sceneB": 5, "nameA": "Movie", "nameB": "Lights up" }

Scene

Un insieme di pulsanti scena su un indirizzo.

Campo Obbligatorio Valore predefinito Descrizione
command Sì (nessuno) Comando, DPT 18.001
scenes Sì (nessuno) 1 a 9 pulsanti: {"name": "Relax", "scene": 0, "icon": "relax"}. scene è il numero inviato, 0–63, senza ripetizioni
color No quello del tema Il colore delle icone
{
  "type": "scenes",
  "name": "Moods",
  "command": "4/1/1",
  "scenes": [{ "name": "Relax", "scene": 0, "icon": "relax" }, { "name": "Dinner", "scene": 1, "icon": "dinner" }]
}

Bianco regolabile

Una luce con luminosità e temperatura di colore in una delle tre disposizioni di oggetti.

Campo Obbligatorio Valore predefinito Descrizione
objects No brightnessTemperature brightnessTemperature, combined (un oggetto DPT 249.600) o warmCold (due livelli)
switch, switchStatus No (nessuno) Acceso/spento, DPT 1.001
brightness, brightnessStatus brightnessTemperature con slider (nessuno) Luminosità, DPT 5.001
dimming brightnessTemperature con stepper (nessuno) Regolazione relativa, DPT 3.007
temperature, temperatureStatus brightnessTemperature (nessuno) Temperatura di colore: DPT 7.600 (Kelvin) o 5.001 (percentuale dell’intervallo), secondo temperatureAs
temperatureAs No kelvin kelvin o percent
combined, combinedStatus combined (nessuno) Luminosità e temperatura insieme, DPT 249.600
warm, warmStatus, cold, coldStatus warmCold (nessuno) I due livelli di bianco, DPT 5.001
warmestK, coolestK No 2700, 6500 L’intervallo di temperatura, 1000–20000 K. Non con warmCold
control, stepCode, repeatMs No Come per Dimmer
offIcon, onColor, offColor No Come per Interruttore

Gli oggetti di invio obbligatori e i relativi stati, se presenti, dipendono da objects; gli oggetti di un’altra disposizione sono un errore.

{ "type": "tunableWhite", "name": "Reading light", "switch": "1/2/1", "brightness": "1/2/2", "temperature": "1/2/3", "temperatureStatus": "1/2/4" }

Luce colorata

Una luce RGB, RGBW o RGB + bianco regolabile.

Campo Obbligatorio Valore predefinito Descrizione
light No rgb rgb, rgbw o rgbTunableWhite
control No la prima disposizione della luce Come viene inviato il colore: oneObject, rgbAndWhite o separate, secondo la tabella seguente
white No temperature rgbTunableWhite con rgbAndWhite: temperature o warmCold
switch, switchStatus No (nessuno) Acceso/spento, DPT 1.001
brightness, brightnessStatus No (nessuno) La luminosità complessiva della luce, DPT 5.001
onFrom No switchStatus Cosa indica che la luce è accesa: switchStatus o switchOrLevels
temperatureAs, warmestK, coolestK No Con un oggetto di temperatura, come per Bianco regolabile
offIcon, onColor, offColor No Come per Interruttore
light control Oggetti di invio
rgb oneObject rgb (DPT 232.600)
rgb separate red, green, blue (DPT 5.001)
rgbw oneObject rgbw (DPT 251.600)
rgbw rgbAndWhite rgb, whiteLevel (5.001)
rgbw separate red, green, blue, whiteLevel
rgbTunableWhite rgbAndWhite rgb, poi temperature, oppure warm e cold (secondo white)
rgbTunableWhite separate red, green, blue, warm, cold

Ogni oggetto di invio ha uno stato con lo stesso nome seguito da Status (rgbStatus, redStatus, …; quello del livello bianco è whiteStatus). Gli stati colore sono indicati tutti o nessuno.

{ "type": "colorLight", "name": "Accent strip", "light": "rgb", "switch": "1/3/1", "rgb": "1/3/2", "rgbStatus": "1/3/3" }

Termostato

Mostra il setpoint o la temperatura ambiente e modifica il setpoint.

Campo Obbligatorio Valore predefinito Descrizione
shows No setpoint Cosa mostra il widget in grande: setpoint o roomTemperature
unit No celsius celsius (DPT 9.001) o fahrenheit (9.027). I valori non vengono mai convertiti
control No absolute absolute (invia una temperatura) o increaseDecrease (invia passi di 1 bit)
setpoint Con absolute (nessuno) Comando del setpoint, con il DPT di unit
increase, decrease Con increaseDecrease (nessuno) Inviare passi, DPT 1. Può essere lo stesso indirizzo
increaseValue, decreaseValue No true, false Il bit inviato da increase e decrease
setpointStatus Con increaseDecrease quando è mostrato il setpoint (nessuno) Stato del setpoint
roomTemperature Quando è mostrato (nessuno) Stato della temperatura ambiente
step No 0.5 Con absolute: 0.1, 0.2, 0.5 o 1
min, max No 7–35 °C, 45–95 °F I limiti del setpoint
color No quello del tema Il colore dell’icona
{ "type": "thermostat", "name": "Living room", "setpoint": "3/1/1", "setpointStatus": "3/1/2", "roomTemperature": "3/1/3" }

Ventilconvettore

Le velocità di un ventilconvettore, con acceso/spento, automatico/manuale, caldo/freddo, modalità HVAC e termostato opzionali. Le impostazioni determinano gli oggetti del widget; tutti gli oggetti di invio presenti sono obbligatori, gli stati sono facoltativi.

Campo Obbligatorio Valore predefinito Descrizione
fanSpeed, fanSpeedStatus fanSpeed (nessuno) La velocità della ventola: DPT 5.001 per percent, altrimenti 5.010
stages No 3 Velocità della ventola, 1–5
controlAs No percent Come viene inviata una velocità: percent (percentuale), value (byte) o stageNumber (1, 2, 3 …)
statusAs No controlAs Come viene letto lo stato, come controlAs
percentStages, valueStages No distribuiti uniformemente Il valore di ogni velocità, ad esempio [33, 67, 100] o [85, 170, 255]
speedZero No nothing Cosa significa la velocità 0: nothing, auto o manual
onOff No false true aggiunge switchCommand e switchStatus (DPT 1.001)
autoManualObjects No (disattivato) one: autoManual (+ autoManualStatus). two: auto e manual (+ stati). DPT 1
autoManualInvert No false Con one: true se 1 significa manuale
heatCoolObjects No (disattivato) one: heatCool (+ heatCoolStatus), DPT 1.100. two: heat e cool (+ stati), DPT 1
heatCoolInvert No false Con one: true se 1 significa freddo
hvacObjects No (disattivato) byte: hvacMode (+ hvacModeStatus), DPT 20.102. bits: un oggetto per modalità disponibile, hvacAuto, hvacComfort, hvacStandby, hvacEconomy, hvacProtection (+ stati), DPT 1
hvacModes No tutte tranne auto Modalità disponibili: auto, comfort, standby, economy, buildingProtection
thermostat No (disattivato) Un oggetto con shows, unit, control, step, min, max, increaseValue e decreaseValue del Termostato. Aggiunge setpoint oppure increase e decrease, oltre a setpointStatus e roomTemperature
offIcon, onColor, offColor No Come per Interruttore
{ "type": "fanCoil", "name": "Office fan coil", "fanSpeed": "7/1/1", "fanSpeedStatus": "7/1/2", "onOff": true, "switchCommand": "7/1/3", "switchStatus": "7/1/4" }

Condizionatore

Un’unità split o VRV tramite il suo gateway KNX. Il suo type è airConditioner.

Campo Obbligatorio Valore predefinito Descrizione
kind No split split o vrv
switchCommand, switchStatus Sì (nessuno) Acceso/spento, DPT 1.001
setpoint, setpointStatus setpoint (nessuno) Setpoint, con il DPT di unit
roomTemperature Quando è mostrato (nessuno) Stato della temperatura ambiente
mode, modeStatus mode (nessuno) Modalità di funzionamento, DPT 20.105
fanSpeed, fanSpeedStatus fanSpeed (nessuno) Velocità della ventola, DPT 5.010
shows, unit, step No setpoint, celsius, 1 Come per Termostato
min, max No 16–30 °C, 61–86 °F I limiti del setpoint
modes No tutte per split; caldo, freddo, ventilazione e deumidificazione per vrv Modalità disponibili: auto, heat, cool, fan, dry
modeValues No automatico 0, caldo 1, freddo 3, ventilazione 9, deumidificazione 14 Il byte inviato da ogni modalità, ad esempio {"dry": 4}
fanStages No 3 Velocità della ventola
fanValues No [1, 2, 3] Il byte inviato da ogni velocità
fanAutoValue No (nessuno) Se indicato, la ventola offre Auto e invia questo byte per tale modalità
faultAs No (nessuno) Se indicato, fault è obbligatorio: bit (DPT 1.005), code (un byte, DPT 5.010) o text (DPT 16.000)
fault Con faultAs (nessuno) Stato di guasto
faultInvert No false Con bit: true se 0 significa un guasto
faultCodes No [] Con code: {"value": 3, "text": "Filter"}, testi mostrati per codici noti
offIcon, onColor, offColor No Come per Interruttore
{ "type": "airConditioner", "name": "Bedroom AC", "switchCommand": "8/1/1", "switchStatus": "8/1/2", "setpoint": "8/1/3", "mode": "8/1/4", "fanSpeed": "8/1/5" }

Connessione

Come la dashboard si connette all’apertura. Se omessa è automatica: mantiene una connessione esistente dell’app, altrimenti usa il gateway selezionato, altrimenti esegue una ricerca.

Campo Obbligatorio Valore predefinito Descrizione
mode Sì (nessuno) automatic, gateway o multicast
gateway No (nessuno) Con gateway: il gateway a cui si connette. Se omesso, la dashboard non può avviarsi finché non ne viene scelto uno nelle impostazioni
secure No false Con multicast: true per KNX IP Secure Routing

L’oggetto gateway:

Campo Obbligatorio Valore predefinito Descrizione
host Sì (nessuno) Indirizzo IP o nome host
port No 3671 Porta UDP o TCP
name No (nessuno) Un nome da mostrare
transport No udp udp, tcp o auto (prima TCP, poi UDP)
nat No false true per un gateway dietro NAT
knxAddress No (nessuno) L’indirizzo fisico del gateway, ad esempio 1.1.250. Secure Tunneling lo usa per trovare le credenziali
secure No false true per KNX IP Secure Tunneling
serial, mac No (nessuno) Il numero di serie e l’indirizzo MAC rilevati del gateway
{
  "format": 1,
  "name": "Office",
  "connection": { "mode": "gateway", "gateway": { "name": "Office router", "host": "10.0.0.5", "transport": "tcp" } },
  "home": { "name": "Home", "tiles": [] }
}

Le esportazioni dell’opzione JSON non protetto non contengono chiavi o credenziali. JSON non protetto e Con chiavi usano entrambi l’estensione .json; l’importazione riconosce la protezione dal contenuto.

JSON protetto da password

L’opzione Con chiavi cifra l’intero contenuto. Il contenitore JSON può essere aperto in un editor di testo, ma la definizione della dashboard e le chiavi devono essere decifrate per leggerle o modificarle. La password di esportazione è richiesta per importare e non viene mai salvata.

Campo del contenitore Valore o scopo nella versione 1
format 1
protected.version 1
protected.cipher AES-256-GCM
protected.kdf PBKDF2-HMAC-SHA256
protected.iterations 600000; fisso in questa versione di protezione
protected.salt Base64 di 16 byte casuali
protected.nonce Base64 del nonce di cifratura di 12 byte
protected.ciphertext Base64 del contenuto cifrato
protected.tag Base64 del tag di autenticazione di 16 byte

L’autenticazione vincola il contenuto anche a SharKNX dashboard protected JSON v1. Password errate o testo cifrato alterato non possono produrre una dashboard importata. Il file selezionato è limitato a 32 MiB; il contenuto decifrato a 16 MiB.

Il contenuto decifrato contiene dashboard (la definizione descritta qui) e, solo per una fonte di chiavi propria, keys. Senza keys, il progetto rimane automatico: l’app ricevente fornisce la propria sicurezza. Un pacchetto proprio, anche vuoto, diventa Chiavi importate, salvate cifrate con questa dashboard sotto una nuova identità locale. Il riferimento al progetto originale e la password di esportazione non vengono mai salvati nell’app.

keys.groupKeys associa numeri decimali di indirizzi di gruppo KNX (0–65535, scritti come stringhe) a chiavi esadecimali di 32 cifre. Sono conservati solo gli indirizzi usati. Il campo opzionale keys.credentials contiene devices per un gateway sicuro configurato, con address, deviceAuthCode opzionale e interfaces (userId, individualAddress, password); il multicast sicuro contiene invece backboneKeyHex e backboneSecurityEnabled. Sono esclusi Tool Keys, indirizzi e gateway non pertinenti e nomi dei progetti.

La connessione e il progetto automatici usano la configurazione dell’app ricevente. Non contengono mai una copia della connessione o del progetto dell’app esportatrice. Una dashboard con chiavi proprie e connessione automatica può contenere le chiavi di gruppo usate, ma nessuna credenziale del gateway. Le impostazioni del progetto mostrano Chiavi importate finché non salvi Automatico o un altro progetto; scegliere un progetto abilita anche la sua lista di indirizzi e l’aggiornamento delle chiavi. Le chiavi importate possono essere esportate di nuovo.

L’importazione si trova in + → Aggiungi → Importa dashboard. Al termine rimani in Dashboard; in caso di nome uguale puoi scegliere Importa come copia o Sostituisci. Gli errori appaiono in un dialogo con una sezione di codice scorrevole e Copia dettagli.


Esempio completo

La casa di esempio: Home con collegamenti a due spazi, un soggiorno con due pagine e una cucina, un widget di scene Moods, due preferiti e un gateway configurato.

{
  "format": 1,
  "name": "Villa",
  "theme": "night",
  "keepScreenOn": true,
  "favorites": ["t1", "t4"],
  "connection": { "mode": "gateway", "gateway": { "name": "Main gateway", "host": "192.168.1.20" } },
  "home": {
    "name": "Home",
    "icon": "home",
    "tiles": [
      { "type": "navigation", "name": "Living room", "icon": "living", "target": "r1" },
      { "type": "navigation", "name": "Kitchen", "icon": "kitchen", "target": "r2" },
      { "type": "valueDisplay", "name": "Outdoor", "icon": "temperature", "valueType": "f16", "unit": "°C", "decimals": 1, "status": { "address": "5/1/1", "dpt": "9.001" } }
    ],
    "rooms": [
      {
        "id": "r1",
        "name": "Living room",
        "icon": "living",
        "panels": [
          {
            "tiles": [
              { "id": "t1", "type": "switch", "name": "Ceiling light", "icon": "light_group", "command": "1/1/1", "status": "1/1/2" },
              { "type": "dimmer", "name": "Sofa lamp", "icon": "floor_lamp", "switch": "1/1/10", "brightness": "1/1/12", "brightnessStatus": "1/1/13" },
              { "type": "blind", "name": "Terrace blind", "move": "2/1/1", "stop": "2/1/2", "positionStatus": "2/1/3" },
              { "id": "t4", "type": "thermostat", "name": "Living room", "setpoint": "3/1/1", "setpointStatus": "3/1/2", "roomTemperature": "3/1/3" }
            ]
          },
          {
            "tiles": [
              { "type": "tunableWhite", "name": "Reading light", "switch": "1/2/1", "brightness": "1/2/2", "temperature": "1/2/3" }
            ]
          }
        ]
      },
      {
        "id": "r2",
        "name": "Kitchen",
        "icon": "kitchen",
        "tiles": [
          { "type": "switch", "name": "Counter light", "command": "1/4/1", "status": "1/4/2" },
          { "type": "statusIndicator", "name": "Window", "icon": "window", "status": { "address": "6/1/1", "dpt": "1.019" }, "zeroLabel": "Closed", "oneLabel": "Open" }
        ]
      }
    ]
  }
}

Validazione

L’importazione verifica l’intero file ed elenca ogni problema con la sua posizione, ad esempio $.home.rooms[1].tiles[3].status.address. Un file con un problema non viene importato; non viene salvato nulla.

Problema Esempio
Non è JSON Una virgola o virgoletta mancante
Manca un campo obbligatorio Un widget senza name
Un campo ha un valore del tipo errato "size": 2 invece di "2x1"
Un valore sconosciuto "control": "slide"
Un tipo di widget non riconosciuto dall’app Un file di una versione più recente di SharKNX
A un widget manca un indirizzo necessario Un dimmer con control slider ma senza brightness
Un widget non rispetta le proprie regole Un DPT non adatto alla funzione, una dimensione non consentita dal tipo o un numero di scena superiore a 63
Un collegamento o preferito punta a un elemento inesistente "target": "r9" senza spazio r9
Un ID è usato due volte Due widget t4
La forma completa e quella breve insieme tiles e panels in uno spazio; address e targets in un oggetto di invio
Un formato file più recente "format": 2

Limiti

Elemento Limite
Nomi (dashboard, spazi, widget, stati, pulsanti) 50 caratteri
Spazi in una dashboard, Home incluso 500
Nidificazione degli spazi sotto Home 8 livelli
Pagine in uno spazio 10
Widget in una pagina 100
Widget in una dashboard 5000
Numeri negli ID 0–999999

Versioni

Ogni file esportato inizia con "format": 1. Senza questo campo viene letto come formato attuale. Un file con un numero superiore proviene da una versione più recente di SharKNX e non viene importato; aggiorna l’app.

I file rimangono importabili con l’evoluzione di SharKNX: i nuovi campi hanno valori predefiniti, quindi un file precedente può semplicemente non contenerli. Un campo non cambia mai significato mantenendo lo stesso nome. Un file nuovo in un’app precedente perde solo i campi che quell’app non riconosce.

PrecedenteFormato File di Alias e ScriptSuccessivoFormati di Esportazione

In questa pagina

  1. Struttura
  2. Dashboard
  3. Spazi e pagine
  4. ID e collegamenti
  5. Widget
  6. Indirizzi di gruppo
  7. Colori e icone
  8. Tipi di widget
  9. Connessione
  10. Esempio completo
  11. Validazione
  12. Versioni

← SharKNX product page

logo

Solutions

  • Services
  • Products
  • HaaS

Company

  • About Us
  • Contact

Legal

  • Privacy Policy
  • Cookie Policy
  • Terms & Conditions

Contact

  • info@owl-automata.com
  • Athens, Greece

© 2026 OWL-Automata.com. All rights reserved OWL Automata

  • Terms & Conditions
  • Privacy Policy
  • Cookie Policy