[ { "name": "systemName", "label": "system name", "type": "string", "default": "ESP32NMEA2K", "check": "checkSystemName", "description": "system name, used for the access point and for services", "category": "system" }, { "name": "stopApTime", "type": "number", "default": "0", "check": "checkMinMax", "description": "stop the access point after that many minutes if not used", "category": "system" }, { "name": "apPassword", "type": "password", "default": "esp32nmea2k", "check": "checkApPass", "description": "set the password for the Wifi access point", "category": "system", "capabilities":{"apPwChange":["true"]} }, { "name": "apIp", "type": "string", "default":"192.168.15.1", "check": "checkApIp", "description": "The IP address for the access point. Clients will get addresses within the same subnet.", "category":"system" }, { "name": "apMask", "type": "string", "default":"255.255.255.0", "check": "checkNetMask", "description": "The net mask for the access point", "category":"system" }, { "name": "useAdminPass", "type": "boolean", "default": "true", "description": "use a password for config modifications", "category": "system" }, { "name": "adminPassword", "type": "password", "default": "esp32admin", "check": "checkAdminPass", "description": "set the password for config modifications", "category": "system" }, { "name": "showInvalidData", "label": "show all data", "type": "boolean", "default": "true", "description": "show also not received items on data page", "category": "system" }, { "name":"logLevel", "label": "log level", "type":"list", "default":"0", "list": [ {"l":"off","v":"-1"}, {"l":"error","v":"0"}, {"l":"log","v":"1"}, {"l":"debug","v":"3"} ], "description": "log level at the USB port", "category":"system" }, { "name":"ledBrightness", "label":"led brightness", "type":"number", "default":64, "min":0, "max":255, "description":"the brightness of the led (0..255)", "category":"system" }, { "name": "talkerId", "label": "NMEA0183 ID", "type": "list", "default": "GP", "list": [ "AB", "AD", "AG", "AP", "AI", "AN", "AR", "AS", "AT", "AX", "BI", "BN", "CA", "CD", "CR", "CS", "CT", "CV", "CX", "DF", "DU", "DP", "EC", "EI", "EP", "ER", "FD", "FE", "FR", "FS", "GA", "GB", "GI", "GL", "GN", "GP", "GQ", "HC", "HE", "HF", "HN", "HD", "HS", "II", "IN", "JA", "JB", "JC", "JD", "JE", "JF", "JG", "JH", "LC", "NL", "NV", "RA", "RB", "RC", "RI", "SA", "SC", "SD", "SG", "SN", "SS", "TC", "TI", "UP", "VD", "VM", "VW", "VA", "VS", "VT", "VR", "WD", "WI", "WL", "YX", "ZA", "ZC", "ZQ", "ZV" ], "description": "the talkerId used in generated NMEA0183 records", "category": "converter" }, { "name": "minXdrInterval", "label":"min XDR interval", "type": "number", "default": "100", "check": "checkMinMax", "min": 10, "description": "min interval in ms between 2 XDR records with the same transducer (> 10)", "category": "converter" }, { "name": "min2KInterval", "label":"min N2K interval", "type": "number", "default": "50", "check": "checkMinMax", "min": 5, "description": "min interval in ms between 2 NMEA 2000 records with the same PGN and the same source (> 5)", "category": "converter" }, { "name":"sendN2k", "label":"NMEA2000 out", "type":"boolean", "default":"true", "description":"send out the converted data on the NMEA2000 bus\nIf set to off the converted data will still be shown at the data tab.", "category":"converter" }, { "name":"unknownXdr", "label":"show unknown XDR", "type":"boolean", "default":"false", "description":"show received XDR transducer values in data display if there is no XDR mapping for them", "category":"converter" }, { "name":"sendRMCi", "label":"send RMC interval", "type": "number", "description":"interval (ms) to automatically send an RMC if we have valid position data (min 100ms, set to 0 to disable)", "default":"1000", "category":"converter" }, { "name": "checkRMCt", "label": "check RMC time", "type": "number", "description": "start sending RMC if we did not see an external RMC after this much ms", "default": "4000", "min": 1000, "check": "checkMinMax", "category": "converter" }, { "name": "timeouts", "type": "array", "replace": [ { "n": "Default", "d": "4000", "l": "default", "t": "NMEA" }, { "n": "Sensor", "d": "60000", "l": "sensor", "t": "sensor" }, { "n": "Long", "d": "32000", "l": "long", "t": "special NMEA" }, { "n": "Ais", "d": "120000", "l": "ais", "t": "ais" } ], "children": [ { "name": "timo$n", "label": "timeout $l", "default": "$d", "type": "number", "description": "data timeouts(ms) for $t data", "category": "converter" } ] }, { "name": "stbRudderI", "label":"stb rudder instance", "type": "number", "default": "0", "check": "checkMinMax", "min": 0, "max": 253, "description": "the n2k instance to be used as starboard(main) rudder 0...253", "category": "converter" }, { "name": "portRudderI", "label":"port rudder instance", "type": "number", "default": "-1", "check": "checkMinMax", "min": -1, "max": 253, "description": "the n2k instance to be used as port rudder 0...253, -1 to disable", "category": "converter" }, { "name": "windmappings", "type": "array", "replace":[ { "n": "tng", "l": "true north ground", "t": "True_North=0", "d": "twa_tws" }, { "n": "mgd", "l": "magnetic ground dir", "t": "Magnetic=1", "d":"" }, { "n": "awa", "l": "apparent angle", "t": "Apparent=2", "d":"awa_aws" }, { "n": "gna", "l": "ground angle", "t": "True_boat=3", "d": "" }, { "n": "tra", "l": "true angle", "t": "True_water=4", "d":"" } ], "children":[ { "name":"windm$n", "type":"list", "description": "mapping of the PGN 130306 wind reference $t", "label":"wind $l", "list":[ {"l": "-unset-","v":""}, {"l": "TWA/TWS","v":"twa_tws"}, {"l": "AWA/AWS", "v":"awa_aws"}, {"l": "TWD/TWS","v":"twd_tws"} ], "category":"converter", "default":"$d" } ] }, { "name": "winst312", "label": "130312 WTemp iid", "type": "number", "check": "checkMinMax", "min": -1, "max": 256, "description": "the temp instance of PGN 130312 used for water temperature (0...255), use -1 for none, 256 for any", "default": "256", "category":"converter" }, { "name": "usbActisense", "label": "USB mode", "type": "list", "default": "false", "description": "send/receive NMEA0183 or actisense format on USB", "list": [ {"l":"actisense","v":"true"}, {"l":"nmea0183","v":"false"} ], "category": "usb port" }, { "name": "usbBaud", "label": "USB baud rate", "type": "list", "default": "115200", "description": "baud rate for the USB port", "list": [ 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600, 115200, 230400, 460800 ], "category": "usb port" }, { "name": "sendUsb", "label": "NMEA to USB", "type": "boolean", "default": "true", "description": "send out NMEA data on the USB port", "category": "usb port", "condition":{"usbActisense":"false"} }, { "name": "receiveUsb", "label": "NMEA from USB", "type": "boolean", "default": "true", "description": "receive NMEA data on the USB port", "category": "usb port", "condition":{"usbActisense":"false"} }, { "name": "usbToN2k", "label": "USB to NMEA2000", "type": "boolean", "default": "true", "description": "convert NMEA0183 from the USB port to NMEA2000", "category": "usb port", "condition":{"usbActisense":"false"} }, { "name": "usbReadFilter", "label": "USB read Filter", "type": "filter", "default": "", "description": "filter for NMEA0183 data when reading from USB\nselect aison|aisoff, set a whitelist or a blacklist with NMEA sentences like RMC,RMB", "category": "usb port", "condition":{"usbActisense":"false"} }, { "name": "usbWriteFilter", "label": "USB write Filter", "type": "filter", "default": "", "description": "filter for NMEA0183 data when writing to USB\nselect aison|aisoff, set a whitelist or a blacklist with NMEA sentences like RMC,RMB", "category": "usb port", "condition":{"usbActisense":"false"} }, { "name": "usbActSend", "label": "N2K to USB actisense", "type": "boolean", "default": "true", "description": "send out N2k data on the USB port in actisense format", "category": "usb port", "condition":{"usbActisense":"true"} }, { "name": "serialDirection", "label": "serial direction", "type": "list", "default": "receive", "list": [ "send", "receive", "off" ], "description": "use the serial port to send or receive data", "capabilities": { "serialmode": [ "UNI" ] }, "category": "serial port" }, { "name": "serialBaud", "label": "serial baud rate", "type": "list", "default": "115200", "description": "baud rate for the serial port", "list": [ 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600, 115200, 230400, 460800 ], "capabilities": { "serialmode": [ "RX", "TX", "UNI", "BI" ] }, "category": "serial port" }, { "name": "sendSerial", "label": "NMEA to Serial", "type": "boolean", "default": "true", "description": "send out NMEA data on the serial port", "capabilities": { "serialmode": [ "TX", "BI" ] }, "category": "serial port" }, { "name": "receiveSerial", "label": "NMEA from Serial", "type": "boolean", "default": "true", "description": "receive NMEA data on the serial port", "capabilities": { "serialmode": [ "RX", "BI" ] }, "category": "serial port" }, { "name": "serialToN2k", "label": "serial to NMEA2000", "type": "boolean", "default": "true", "description": "convert NMEA0183 from the serial port to NMEA2000", "capabilities": { "serialmode": [ "RX", "BI", "UNI" ] }, "category": "serial port" }, { "name": "serialReadF", "label": "serial read Filter", "type": "filter", "default": "", "description": "filter for NMEA0183 data when reading from serial\nselect aison|aisoff, set a whitelist or a blacklist with NMEA sentences like RMC,RMB", "capabilities": { "serialmode": [ "RX", "BI", "UNI" ] }, "category": "serial port" }, { "name": "serialWriteF", "label": "serial write Filter", "type": "filter", "default": "", "description": "filter for NMEA0183 data when writing to serial\nselect aison|aisoff, set a whitelist or a blacklist with NMEA sentences like RMC,RMB", "capabilities": { "serialmode": [ "TX", "BI", "UNI" ] }, "category": "serial port" } , { "name": "serial2Dir", "label": "serial2 direction", "type": "list", "default": "receive", "list": [ "send", "receive", "off" ], "description": "use the serial2 port to send or receive data", "capabilities": { "serial2mode": [ "UNI" ] }, "category": "serial2 port" }, { "name": "serial2Baud", "label": "serial2 baud rate", "type": "list", "default": "115200", "description": "baud rate for the serial port 2", "list": [ 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600, 115200, 230400, 460800 ], "capabilities": { "serial2mode": [ "RX", "TX", "UNI", "BI" ] }, "category": "serial2 port" }, { "name": "sendSerial2", "label": "NMEA to Serial2", "type": "boolean", "default": "true", "description": "send out NMEA data on the serial port 2", "capabilities": { "serial2mode": [ "TX", "BI" ] }, "category": "serial2 port" }, { "name": "receiveSerial2", "label": "NMEA from Serial2", "type": "boolean", "default": "true", "description": "receive NMEA data on the serial port 2", "capabilities": { "serial2mode": [ "RX", "BI" ] }, "category": "serial2 port" }, { "name": "serial2ToN2k", "label": "serial2 to NMEA2000", "type": "boolean", "default": "true", "description": "convert NMEA0183 from the serial port 2 to NMEA2000", "capabilities": { "serial2mode": [ "RX", "BI", "UNI" ] }, "category": "serial2 port" }, { "name": "serial2ReadF", "label": "serial2 read Filter", "type": "filter", "default": "", "description": "filter for NMEA0183 data when reading from serial2\nselect aison|aisoff, set a whitelist or a blacklist with NMEA sentences like RMC,RMB", "capabilities": { "serial2mode": [ "RX", "BI", "UNI" ] }, "category": "serial2 port" }, { "name": "serial2WriteF", "label": "serial2 write Filter", "type": "filter", "default": "", "description": "filter for NMEA0183 data when writing to serial2\nselect aison|aisoff, set a whitelist or a blacklist with NMEA sentences like RMC,RMB", "capabilities": { "serial2mode": [ "TX", "BI", "UNI" ] }, "category": "serial2 port" }, { "name": "serverPort", "label": "TCP port", "type": "number", "default": "10110", "check":"checkPort", "description": "the TCP port we listen on", "category": "TCP server" }, { "name": "maxClients", "label": "max. TCP clients", "type": "number", "default": "6", "check": "checkMinMax", "min": 0, "max": 6, "description": "the number of clients we allow to connect to us", "category": "TCP server" }, { "name": "sendTCP", "label": "NMEA0183 out", "type": "boolean", "default": "true", "description": "send out NMEA data to connected TCP clients", "category": "TCP server" }, { "name": "readTCP", "label": "NMEA0183 in", "type": "boolean", "default": "true", "description": "receive NMEA data from connected TCP clients", "category": "TCP server" }, { "name": "tcpToN2k", "label": "to NMEA2000", "type": "boolean", "default": "true", "description": "convert NMEA0183 from TCP clients to NMEA2000", "category": "TCP server" }, { "name": "tcpReadFilter", "label": "NMEA read Filter", "type": "filter", "default": "", "description": "filter for NMEA0183 data when reading from TCP\nselect aison|aisoff, set a whitelist or a blacklist with NMEA sentences like RMC,RMB", "category": "TCP server" }, { "name": "tcpWriteFilter", "label": "NMEA write Filter", "type": "filter", "default": "", "description": "filter for NMEA0183 data when writing to TCP\nselect aison|aisoff, set a whitelist or a blacklist with NMEA sentences like RMC,RMB", "category": "TCP server" }, { "name": "sendSeasmart", "label": "Seasmart out", "type": "boolean", "default": "false", "description": "send NMEA2000 as seasmart to connected TCP clients", "category": "TCP server" }, { "name": "tclEnabled", "label": "enable", "type": "boolean", "default": "false", "description":"enable the TCP client", "category":"TCP client" }, { "name": "remotePort", "label": "remote port", "type": "number", "default": "10110", "check":"checkPort", "description": "the TCP port we connect to", "category": "TCP client", "condition":{ "tclEnabled":"true" } }, { "name": "remoteAddress", "label": "remote address", "type": "string", "default": "", "check": "checkIpAddress", "description": "the IP address we connect to in the form 192.168.1.2\nor an MDNS name like ESP32NMEA2K.local", "category": "TCP client", "condition":{ "tclEnabled":"true" } }, { "name": "sendTCL", "label": "NMEA0183 out", "type": "boolean", "default": "true", "description": "send out NMEA data to remote TCP server", "category": "TCP client", "condition":{ "tclEnabled":"true" } }, { "name": "readTCL", "label": "NMEA0183 in", "type": "boolean", "default": "true", "description": "receive NMEA data from remote TCP server", "category": "TCP client", "condition":{ "tclEnabled":"true" } }, { "name": "tclToN2k", "label": "to NMEA2000", "type": "boolean", "default": "true", "description": "convert NMEA0183 from remote TCP server to NMEA2000", "category": "TCP client", "condition":{ "tclEnabled":"true" } }, { "name": "tclReadFilter", "label": "NMEA read Filter", "type": "filter", "default": "", "description": "filter for NMEA0183 data when reading from remote TCP server\nselect aison|aisoff, set a whitelist or a blacklist with NMEA sentences like RMC,RMB", "category": "TCP client", "condition":{ "tclEnabled":"true" } }, { "name": "tclWriteFilter", "label": "NMEA write Filter", "type": "filter", "default": "", "description": "filter for NMEA0183 data when writing to remote TCP server\nselect aison|aisoff, set a whitelist or a blacklist with NMEA sentences like RMC,RMB", "category": "TCP client", "condition":{ "tclEnabled":"true" } }, { "name": "tclSeasmart", "label": "Seasmart out", "type": "boolean", "default": "false", "description": "send NMEA2000 as seasmart to remote TCP server", "category": "TCP client", "condition":{ "tclEnabled":"true" } }, { "name": "udpwEnabled", "label": "enable", "type": "boolean", "default": "false", "description":"enable the UDP writer", "category":"UDP writer" }, { "name": "udpwPort", "label": "remote port", "type": "number", "default": "10110", "description": "the UDP port we send to", "check":"checkPort", "category": "UDP writer", "condition":{ "udpwEnabled":"true" } }, { "name": "udpwType", "label": "remote address type", "type": "list", "default": "0", "description": "to which networks/addresses do we send\nbc-all: send broadcast to AP and wifi client network\nbc-ap: send broadcast to access point only\nbc-cli: send broadcast to wifi client network\nnormal: normal target address\nmc-all: multicast to AP and wifi client network\nmc-ap:multicast to AP network\nmc-cli: muticast to wifi client network", "list":[ {"l":"bc-all","v":"0"}, {"l":"bc-ap","v":"1"}, {"l":"bc-cli","v":"2"}, {"l":"normal","v":"3"}, {"l":"mc-all","v":"4"}, {"l":"mc-ap","v":"5"}, {"l":"mc-cli","v":"6"} ], "category": "UDP writer", "condition":{ "udpwEnabled":"true" } }, { "name": "udpwAddress", "label": "remote address", "type": "string", "default": "", "check": "checkIpAddress", "description": "the IP address we connect to in the form 192.168.1.2", "category": "UDP writer", "condition":{ "udpwType":["3"], "udpwEnabled":"true" } }, { "name": "udpwMC", "label": "multicast address", "type": "string", "default": "224.0.0.1", "check": "checkMCAddress", "description": "the multicast address we send to 224.0.0.0...239.255.255.255", "category": "UDP writer", "condition":{ "udpwType":["4","5","6"], "udpwEnabled":"true" } }, { "name": "udpwWriteFilter", "label": "NMEA write Filter", "type": "filter", "default": "", "description": "filter for NMEA0183 data when writing to remote UDP server\nselect aison|aisoff, set a whitelist or a blacklist with NMEA sentences like RMC,RMB", "category": "UDP writer", "condition":{ "udpwEnabled":"true" } }, { "name": "udpwSeasmart", "label": "Seasmart out", "type": "boolean", "default": "false", "description": "send NMEA2000 as seasmart to remote UDP server", "category": "UDP writer", "condition":{ "udpwEnabled":"true" } }, { "name": "udprEnabled", "label": "enable", "type": "boolean", "default": "false", "description":"enable the UDP reader", "category":"UDP reader" }, { "name": "udprPort", "label": "local port", "type": "number", "default": "10110", "check":"checkPort", "description": "the UDP port we listen on", "category": "UDP reader", "condition":{ "udprEnabled":"true" } }, { "name": "udprType", "label": "local address type", "type": "list", "default": "0", "description": "to which networks/addresses do we listen\nall: listen on AP and wifi client network\nap: listen in access point network only\ncli: listen in wifi client network\nmc-all: receive multicast from AP and wifi client network\nmc-ap:receive multicast from AP network\nmc-cli: receive muticast wifi client network", "list":[ {"l":"all","v":"0"}, {"l":"ap","v":"1"}, {"l":"cli","v":"2"}, {"l":"mc-all","v":"4"}, {"l":"mc-ap","v":"5"}, {"l":"mc-cli","v":"6"} ], "category": "UDP reader", "condition":{ "udprEnabled":"true" } }, { "name": "udprToN2k", "label": "to NMEA2000", "type": "boolean", "default": "true", "description": "convert NMEA0183 from UDP to NMEA2000", "category": "UDP reader", "condition":{ "udprEnabled":"true" } }, { "name": "udprMC", "label": "multicast address", "type": "string", "default": "224.0.0.1", "check": "checkMCAddress", "description": "the multicast address we listen on 224.0.0.0...239.255.255.255", "category": "UDP reader", "condition":{ "udprType":["4","5","6"], "udprEnabled":"true" } }, { "name": "udprReadFilter", "label": "NMEA read Filter", "type": "filter", "default": "", "description": "filter for NMEA0183 data when receiving\nselect aison|aisoff, set a whitelist or a blacklist with NMEA sentences like RMC,RMB", "category": "UDP reader", "condition":{ "udprEnabled":"true" } }, { "name": "wifiClient", "label": "wifi client", "type": "boolean", "default": "false", "description": "connect to an external WIFI network", "category": "wifi client" }, { "name": "wifiSSID", "label": "wifi client SSID", "type": "string", "default": "", "check": "checkSSID", "description": "the SSID for an external WIFI network", "category": "wifi client" }, { "name": "wifiPass", "label": "wifi client password", "type": "password", "default": "", "description": "the password for an external WIFI network", "category": "wifi client" }, { "name": "XDR1", "label": "XDR1", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr1" }, { "name": "XDR2", "label": "XDR2", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr2" }, { "name": "XDR3", "label": "XDR3", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr3" }, { "name": "XDR4", "label": "XDR4", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr4" }, { "name": "XDR5", "label": "XDR5", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr5" }, { "name": "XDR6", "label": "XDR6", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr6" }, { "name": "XDR7", "label": "XDR7", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr7" }, { "name": "XDR8", "label": "XDR8", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr8" }, { "name": "XDR9", "label": "XDR9", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr9" }, { "name": "XDR10", "label": "XDR10", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr10" }, { "name": "XDR11", "label": "XDR11", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr11" }, { "name": "XDR12", "label": "XDR12", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr12" }, { "name": "XDR13", "label": "XDR13", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr13" }, { "name": "XDR14", "label": "XDR14", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr14" }, { "name": "XDR15", "label": "XDR15", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr15" }, { "name": "XDR16", "label": "XDR16", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr16" }, { "name": "XDR17", "label": "XDR17", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr17" }, { "name": "XDR18", "label": "XDR18", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr18" }, { "name": "XDR19", "label": "XDR19", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr19" }, { "name": "XDR20", "label": "XDR20", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr20" }, { "name": "XDR21", "label": "XDR21", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr21" }, { "name": "XDR22", "label": "XDR22", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr22" }, { "name": "XDR23", "label": "XDR23", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr23" }, { "name": "XDR24", "label": "XDR24", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr24" }, { "name": "XDR25", "label": "XDR25", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr25" }, { "name": "XDR26", "label": "XDR26", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr26" }, { "name": "XDR27", "label": "XDR27", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr27" }, { "name": "XDR28", "label": "XDR28", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr28" }, { "name": "XDR29", "label": "XDR29", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr29" }, { "name": "XDR30", "label": "XDR30", "type": "xdr", "default": "", "check": "checkXDR", "category": "xdr30" } ]