Przejdź do głównej zawartości

Settings

Ta treść nie jest jeszcze dostępna w Twoim języku.

Read settings from active or saved area.

  • Active area: Current settings the device is working with.
  • Saved area: Settings saved in non-volatile memory, applied at next startup.

GET /api/settings/active/get/?key1&key2... GET /api/settings/saved/get/?key1&key2...

Access Level: 🟨 1 / 🟥 2

Example Response:

{
"key1": "value1",
"key2": "value2"
}

Write settings to the saved area.

POST /api/settings/saved/set/

Access Level: 🟥 2

Example Request:

{
"key": "value"
}

Response:

Empty JSON upon success.

{}

The following keys can be used with GET and POST requests for settings.

KeyDescriptionAccess Level
timeGmtGMT time offset correction🟨 1
ethernetEthernet interface settings🟨 1
gsmGSM module settings🟨 1
ownSrvConnection to own server🟥 2
wgCloudCloud VPN connection settings🟨 1
wgManualCustom WireGuard VPN parameters🟥 2
cbCloudCloud Modbus connection settings🟨 1
aresetAutomatic reset settings🟨 1
protectDevice protection parameters🟥 2
downloadFile server settings🟨 1
firmwareFirmware management🟨 1
httpdBuilt-in HTTP server parameters🟨 1
languageInterface language🟨 1
serialSerial port settings🟥 2
astroAstronomical settings (sunrise/sunset)🟥 2
ntpNTP time synchronization settings🟨 1
tsModeDaylight saving time mode🟨 1
tsManualManual daylight saving time settings🟨 1
logFlagsLogging flags🟨 1
rmSrvRemote control server🟥 2
bodVoltageBrown-Out Detect voltage🟨 1
forwardingPort forwarding table🟥 2

Time zone management (GMT offset).

Request Parameters:

ParameterTypeDescription
timeGmtintegerGMT offset in 15-minute intervals (from -96 to +96).

Example Request:

{
"timeGmt": 8
}

Note: 8 means +2 hours offset (8 × 15 minutes).

Ethernet interface settings.

Request Parameters:

ParameterTypeDescription
ethernetobject
dhcpEnablebooleantrue — enable DHCP on Ethernet interface; false — disable.
macManualEnablebooleantrue — use custom MAC address.
dnssGateEnablebooleantrue — use gateway address as primary DNS.
ipstringEthernet interface IP address.
maskstringEthernet interface subnet mask.
gatestringEthernet interface gateway.
ipDnssarrayArray of DNS server IP addresses for Ethernet.
macManualstringCustom MAC address for Ethernet interface.

Example Request:

{
"ethernet": {
"dhcpEnable": true,
"macManualEnable": false,
"dnssGateEnable": true,
"ip": "192.168.0.115",
"mask": "255.255.255.0",
"gate": "192.168.0.1",
"ipDnss": ["8.8.8.8", "8.8.4.4"],
"macManual": "01:02:03:04:05:06"
}
}

GSM module settings.

Request Parameters:

ParameterTypeDescription
gsmobject
apnAutodetectEnablebooleantrue — automatically configure APN settings based on SIM card code.
tcpInRoamingEnablebooleantrue — allow TCP/UDP data transfer in roaming.
smsInRoamingEnablebooleantrue — allow SMS sending in roaming. (SMS reception is always allowed).
pinCodeinteger / nullPIN code (0000-9999), or null if not set.
apnHoststringAPN host name for manual configuration (max 34 chars).
apnLoginstringAPN login for manual configuration (max 40 chars).
apnPasswordstringAPN password for manual configuration (max 24 chars).
balanceUssdReqstringUSSD request for balance check (max 12 chars, e.g., *111#).
phonesarrayArray of 4 phone number strings.

Example Request:

{
"gsm": {
"apnAutodetectEnable": true,
"tcpInRoamingEnable": true,
"smsInRoamingEnable": false,
"pinCode": null,
"apnHost": "",
"apnLogin": "",
"apnPassword": "",
"balanceUssdReq": "*111#",
"phones": ["+48123456789", "", "", ""]
}
}

Connection to own server.

Request Parameters:

ParameterTypeDescription
ownSrvobject
vUidinteger / nullVirtual Modbus device address (1-255), or null to disable.
mbeRointeger / nullModbus exception code for access denied (1-255), or null to disable response.
mbeTointeger / nullModbus exception code for timeout (1-255), or null to disable response.
mbePuinteger / nullModbus exception code for send error (1-255), or null to disable response.
ethListenPortintegerTCP server port on Ethernet interface (1-65535).
delayForKeepaliveSecinteger / nullTCP server keep-alive time (0-36000 sec), or null to disable.
atmListenPortinteger / nullTCP server port on GSM interface (1-65535), or null to disable.
ethClientsProtocolintegerData protocol for Ethernet TCP server: 1 - RAW, 2 - ModbusTCP.
atmClientsProtocolintegerData protocol for GSM TCP server: 1 - RAW, 2 - ModbusTCP.

Example Request:

{
"ownSrv": {
"vUid": 111,
"mbeRo": 1,
"mbeTo": 11,
"mbePu": 10,
"ethListenPort": 502,
"delayForKeepaliveSec": 90,
"atmListenPort": null,
"ethClientsProtocol": 2,
"atmClientsProtocol": 2
}
}

Cloud VPN connection settings.

Request Parameters:

ParameterTypeDescription
wgCloudobject
hostnamestringVPN server hostname (max 46 chars).
connPortintegerVPN server TCP port (1-65535).
connModeinteger / nullConnection mode: null (disabled), 1 (Eth pref), 2 (GSM pref), 3 (Eth only), 4 (GSM only).
delayForKeepaliveSecintegerVPN server keep-alive time (0-36000 sec).
delayForConnSecintegerDelay between connection attempts (1-30000 sec).

Example Request:

{
"wgCloud": {
"hostname": "",
"connPort": 34967,
"connMode": 1,
"delayForKeepaliveSec": 20,
"delayForConnSec": 5
}
}

Custom WireGuard VPN settings.

Request Parameters:

ParameterTypeDescription
wgManualobject
hostnamestringVPN server hostname (max 46 chars).
connPortintegerVPN server TCP port (1-65535).
connModeinteger / nullConnection mode: null (disabled), 1 (Eth pref), 2 (GSM pref), 3 (Eth only), 4 (GSM only).
ipstringDevice IP address in VPN network.
maskstringDevice subnet mask.
deviceKeystringDevice private key (base64).
peerPublicKeystringRemote peer public key (base64).

Example Request:

{
"wgManual": {
"hostname": "",
"connPort": 34967,
"connMode": 1,
"delayForKeepaliveSec": 20,
"delayForConnSec": 5,
"deviceIp": "10.0.0.111",
"deviceMask": "255.255.255.0",
"deviceKey": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=",
"peerPublicKey": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="
}
}

Cloud Modbus connection settings.

Request Parameters:

ParameterTypeDescription
cbCloudobject
hostnamestringServer hostname (max 46 chars).
connPortintegerServer TCP port (1-65535).
connModeinteger / nullConnection mode: null (disabled), 1 (Eth pref), 2 (GSM pref), 3 (Eth only), 4 (GSM only).
delayForKeepaliveSecintegerServer keep-alive time (0-36000 sec).
delayForConnSecintegerDelay between connection attempts (1-240 sec).

Example Request:

{
"cbCloud": {
"hostname": "",
"connPort": 8502,
"connMode": 1,
"delayForKeepaliveSec": 120,
"delayForConnSec": 5
}
}

Automatic reset settings.

Request Parameters:

ParameterTypeDescription
aresetobject
delayMinintegerTime before automatic restart (5-7200 min).
modeinteger / nullnull - Disabled; 1 - Reset after delayMin uptime; 2 - Reset after delayMin of no Modbus activity.

Example Request:

{
"areset": {
"delayMin": 120,
"mode": 2
}
}

Device protection parameters.

Request Parameters:

ParameterTypeDescription
protectobject
smsWriteEnablebooleanfalse - disable SMS write.
smsReadEnablebooleanfalse - disable SMS read.
mbGateWriteEnablebooleanfalse - disable write to connected Modbus devices.
mbGateReadEnablebooleanfalse - disable Modbus read.
wgCloudAdminAuthEnablebooleantrue - grant Admin (🟥 2) access to all Cloud requests.
wgManualAdminAuthEnablebooleantrue - grant Admin (🟥 2) access to all WireGuard VPN requests.
passwordAdminstringDevice administrator password (5-10 ASCII chars, no spaces).
passwordMbGateWritestringPassword for writing to connected Modbus devices (0-10 chars). "" disables check.
passwordMbReadstringPassword for Modbus read (0-10 chars). "" disables check.
passwordSmsWritestringPassword for SMS write (3-10 chars).
passwordSmsReadstringPassword for SMS read (3-10 chars).

Example Request:

{
"protect": {
"smsWriteEnable": true,
"smsReadEnable": true,
"mbGateWriteEnable": true,
"mbGateReadEnable": true,
"wgCloudAdminAuthEnable": true,
"wgManualAdminAuthEnable": false,
"passwordAdmin": "11111",
"passwordMbGateWrite": "",
"passwordMbRead": "",
"passwordSmsWrite": "gap",
"passwordSmsRead": "gap"
}
}

File server settings.

Request Parameters:

ParameterTypeDescription
downloadobject
connModeinteger / nullConnection mode: null (disabled), 1 (Eth pref), 2 (GSM pref), 3 (Eth only), 4 (GSM only).
loadRatiointegerDownload speed limit (1-50 % of max bandwidth).
delayForConnSecintegerDelay between connection attempts (1-30000 sec).

Example Request:

{
"download": {
"connMode": 1,
"loadRatio": 15,
"delayForConnSec": 60
}
}

Firmware management.

Request Parameters:

ParameterTypeDescription
firmwareobject
checkPeriodSecinteger / nullUpdate check period (1-1000000 sec), or null to disable.
downloadPeriodHrinteger / nullAutomatic download period (0-1439 hours), or null to disable.
updateHourinteger / nullHour of day for automatic update (0-23), or null to disable.
urlstringUpdate source URL (1-96 ASCII chars, no spaces).

Example Request:

{
"firmware": {
"checkPeriodSec": 900,
"downloadPeriodHr": 6,
"updateHour": 3,
"url": "static.mcdownloads.com/firmware/mc251-6-1-current.fus"
}
}

Built-in HTTP server parameters.

Request Parameters:

ParameterTypeDescription
httpdobject
portintegerWeb interface port (1-65535).
freeAccessSecintegerOpen access time after button press (5-3600 sec).

Example Request:

{
"httpd": {
"port": 80,
"freeAccessSec": 600
}
}

Interface language code.

Note: If the display does not support the specified code, English will be used.

Request Parameters:

ParameterTypeDescription
languagestringLanguage code: en - English; ua - Ukrainian.

Example Request:

{
"language": "en"
}

Serial interface settings.

Request Parameters:

ParameterTypeDescription
serialobject
uidRangestringModbus UID address range (e.g., 112-255).
hdxModeintegerHalf-duplex mode: 0 - slave; 1 - master; 2 - raw mode.
charFormatintegerByte format: 0-5 (see Modbus section).
baudRateintegerBaud rate (75-230400 bps).
frameModeintegerFrame format: 0 - RTU, 1 - ASCII.
delayForRtuQintegerRTU character delay multiplier (2ⁿ): 0-5.
delayForRtuMsintegerRTU response delay (0-60000 ms).
delayForAsciiMsintegerASCII character delay (0-60000 ms).

Example Request:

{
"serial": {
"baudRate": 38400,
"charFormat": 3,
"frameMode": 1,
"delayForRtuMs": 200,
"delayForAsciiMs": 1000,
"hdxMode": 1,
"uidRange": "112-255",
"delayForRtuQ": 1
}
}

Astronomical settings (sunrise/sunset).

Request Parameters:

ParameterTypeDescription
astroobject
longDegintegerLongitude degrees (0-179).
longMinintegerLongitude minutes (0-59).
longSecintegerLongitude seconds (0-59).
latDegintegerLatitude degrees (0-179).
latMinintegerLatitude minutes (0-59).
latSecintegerLatitude seconds (0-59).
quadrantintegerQuadrant: 0 - N/E; 1 - N/W; 2 - S/E; 3 - S/W.
sunZenithTypeintegerZenith type: 0 - Official; 1 - Civil; 2 - Nautical; 3 - Astronomical.

Example Request:

{
"astro": {
"longDeg": 30,
"longMin": 19,
"longSec": 0,
"latDeg": 59,
"latMin": 57,
"latSec": 0,
"quadrant": 0,
"sunZenithType": 2
}
}

NTP time synchronization settings.

Request Parameters:

ParameterTypeDescription
ntpobject
hostnamesarrayArray of NTP server hostnames (max 20 chars each).
connModeinteger / nullConnection mode: null (disabled), 1 (Eth pref), 2 (GSM pref), 3 (Eth only), 4 (GSM only).
syncPeriodHrintegerSynchronization period (0-240 hours).
syncDiffSecintegerSynchronization threshold (0-180 sec).

Example Request:

{
"ntp": {
"hostnames": ["ntp.time.in.ua", "ntp2.stratum1.ru"],
"connMode": 1,
"syncPeriodHr": 24,
"syncDiffSec": 1
}
}

Daylight saving time mode.

Request Parameters:

ParameterTypeDescription
tsModeinteger / nullDST Mode: null (Disabled), 1 (Brazil), 2 (UK), 3 (Germany), 4 (Greece), 5 (Jordan), 6 (Italy), 7 (Namibia), 8 (Poland), 9 (Portugal), 10 (USA), 11 (Turkey), 12 (Ukraine), 13 (Finland), 14 (France), 15 (Manual - see tsManual).

Example Request:

{
"tsMode": 12
}

Manual daylight saving time settings.

Request Parameters:

ParameterTypeDescription
tsManualobject
bwdDowintegerWinter time transition day of week (1-7, Mon-Sun).
bwdHourintegerWinter time transition hour (0-23).
bwdMonthintegerWinter time transition month (1-12).
bwdWeekintegerWinter time transition week (1-5, 6=last).
fwdDowintegerSummer time transition day of week (1-7, Mon-Sun).
fwdHourintegerSummer time transition hour (0-23).
fwdMonthintegerSummer time transition month (1-12).
fwdWeekintegerSummer time transition week (1-5, 6=last).

Example Request:

{
"tsManual": {
"bwdDow": 7,
"bwdHour": 2,
"bwdMonth": 10,
"bwdWeek": 6,
"fwdDow": 7,
"fwdHour": 2,
"fwdMonth": 3,
"fwdWeek": 6
}
}

Logging settings.

Request Parameters:

ParameterTypeDescription
logFlagsobject
atmbooleanGSM interface logging (true/false).
systembooleanSystem event logging (true/false).
lwipbooleanLWIP protocol logging (true/false).
forwardingbooleanPort forwarding logging (true/false).
wireguardbooleanWireGuard logging (true/false).

Example Request:

{
"logFlags": {
"atm": true,
"system": true,
"lwip": false,
"forwarding": false,
"wireguard": true
}
}

TCP client settings (Remote Servers).

Request Parameters:

ParameterTypeDescription
rmSrvarrayArray of 3 server objects.
ipstringServer IP address.
connPortintegerConnection port (1-65535).
delayForRcvMsintegerReceive delay (1-60000 ms).
delayForConnSecintegerDelay between connections (1-30000 sec).
connModeinteger / nullConnection mode: null (disabled), 1 (Eth pref), 2 (GSM pref), 3 (Eth only), 4 (GSM only).
gateUidinteger / nullMC-251 compatible gateway UID (1-255), or null if unknown.
uidRangestringUID range (e.g., 1-110).
passwordstringPassword for MC-251 compatible gateway.
protocolintegerProtocol: 1 - RAW, 2 - ModbusTCP.
virtualUidsbooleanVirtual UIDs (true/false).

Example Request:

{
"rmSrv": [
{
"ip": "192.168.0.102",
"connPort": 502,
"delayForRcvMs": 1000,
"delayForConnSec": 20,
"connMode": 3,
"gateUid": 112,
"uidRange": "1-110",
"password": "11111",
"protocol": 2,
"virtualUids": false
},
{
"ip": "192.168.0.113",
"connPort": 502,
"delayForRcvMs": 1000,
"delayForConnSec": 20,
"connMode": null,
"gateUid": null,
"uidRange": "1-255",
"password": "",
"protocol": 2,
"virtualUids": false
},
{
"ip": "192.168.0.114",
"connPort": 502,
"delayForRcvMs": 1000,
"delayForConnSec": 20,
"connMode": null,
"gateUid": null,
"uidRange": "1-255",
"password": "",
"protocol": 2,
"virtualUids": false
}
]
}

Minimum supply voltage (Brown-Out Detect). If voltage drops below this value, the SD card will be safely unmounted.

Request Parameters:

ParameterTypeDescription
bodVoltageintegerVoltage in mV (e.g., 9000).

Example Request:

{
"bodVoltage": 9000
}

Port forwarding settings (Ethernet to GSM only).

Request Parameters:

ParameterTypeDescription
fwdarrayArray of 4 forwarding objects.
listenPortinteger / nullLocal listening port (null to disable, or 1-65535).
isUdpbooleantrue for UDP, false for TCP.
serverAddrstringRemote server host address. (If listenPort: 53 & isUdp: true & serverAddr: "", uses DNS settings).
serverPortintegerRemote server port (1-65535).

Example Request:

{
"fwd": [
{
"serverAddr": "www.cameronsworld.net",
"serverPort": 443,
"listenPort": 443,
"isUdp": false
},
{
"serverAddr": "",
"serverPort": 0,
"listenPort": null,
"isUdp": false
},
{
"serverAddr": "",
"serverPort": 0,
"listenPort": 53,
"isUdp": true
},
{
"serverAddr": "time.google.com",
"serverPort": 123,
"listenPort": 123,
"isUdp": true
}
]
}

Saves settings to a file in the root folder / of the SD card.

POST /api/cmd/settings/export/

Request Parameters:

FieldTypeDescription
filenamestringFilename in FAT-32 DOS (8.3) format.

Example Request:

{
"filename": "sgs.bin"
}

Loads settings from a file in the root folder / of the SD card.

POST /api/cmd/settings/import/

Request Parameters:

FieldTypeDescription
filenamestringFilename in FAT-32 DOS (8.3) format.

Example Request:

{
"filename": "sgs.bin"
}

Resets all device settings to default values.

POST /api/cmd/settings/reset/

Example Request:

{}