Network is the most basic configuration for the gateway to communicate with a device.
As of the gateway V1.1, only the IPv4 configuration is supported. IPv6 will be supported in the future versions.
IP
message IPConfig {
bool useDHCP;
string IPAddr;
string gateway;
string subnetMask;
int32 port;
connect.ConnectionMode connectionMode;
string serverAddr;
int32 serverPort;
int32 SSLServerPort;
bool useDNS;
string DNSServer;
string serverURL;
int32 MTUSize;
EthernetBaseband baseband;
}
- useDHCP
- If true, try to acquire an IP address from DHCP servers. If it is true, IPAddr, gateway, and subnetMask parameters will be automatically set by DHCP.
- port
- Used only when connectionMode is SERVER_TO_DEVICE. The default is 51211.
- connectionMode
- SERVER_TO_DEVICE(default) or DEVICE_TO_SERVER. The serverAddr, serverPort, SSLServerPort, useDNS, DNSServer, and serverURL are used only if the connectionMode is DEVICE_TO_SERVER.
- serverAddr
- The IP address of the device gateway. Please refer to the gateway configuration.
- serverPort
- The port of the device gateway. The default is 51212.
- SSLServerPort
- The SSL port of the device gateway. The default is 51213.
- useDNS
- If it is true, the device will try to acquire the IP address of the gateway from the DNS server. Check if the device supports DNS with CapabilityInfo.DNSSupported.
- DNSServer
- The IP address of a DNS server.
- serverURL
- The URL of the device gateway.
enum EthernetBaseband {
BASEBAND_10BASE_T = 0;
BASEBAND_100BASE_T = 1;
}
GetIPConfig
Get the IP configuration of a device.
| Parameter |
Type |
Description |
| deviceID |
uint32 |
The ID of the device |
| Parameter |
Type |
Description |
| config |
IPConfig |
The IP configuration read from the device |
SetIPConfig
Set the IP configuration of a device.
| Parameter |
Type |
Description |
| deviceID |
uint32 |
The ID of the device |
| config |
IPConfig |
The IP configuration to be written to the device |
SetIPConfigMulti
Set the IP configurations of multiple devices.
This function should be used only if IPConfig.useDHCP is true for all the devices. Otherwise, you have to use SetIPConfig per device.
| Parameter |
Type |
Description |
| deviceIDs |
uint32[] |
The ID of the devices |
| config |
IPConfig |
The IP configuration to be written to the devices |
WLAN
Check Capability.WLANSupported before using these APIs.
message WLANConfig {
bool enabled;
WLANOperationMode opMode;
WLANAuthType authType;
WLANEncryptionType encType;
string ESSID;
string authKey;
}
enum WLANOperationMode {
WLAN_OPMODE_MANAGED = 0;
WLAN_OPMODE_ADHOC = 1;
}
enum WLANAuthType {
WLAN_AUTH_OPEN = 0;
WLAN_AUTH_SHARED = 1;
WLAN_AUTH_WPA_PSK = 2;
WLAN_AUTH_WPA2_PSK = 3;
}
enum WLANEncryptionType {
WLAN_ENC_NONE = 0;
BS2_WLAN_ENC_WEP = 1;
BS2_WLAN_ENC_TKIP_AES = 2;
BS2_WLAN_ENC_AES = 3;
BS2_WLAN_ENC_TKIP = 4;
}
GetWLANConfig
Get the WLAN configuration of a device.
| Parameter |
Type |
Description |
| deviceID |
uint32 |
The ID of the device |
| Parameter |
Type |
Description |
| config |
WLANConfig |
The WLAN configuration read from the device |
SetWLANConfig
Set the WLAN configuration of a device.
Due to a FW issue, only WLANConfig.enabled will be written. To change the other parameters, you have to use the device UI directly.
| Parameter |
Type |
Description |
| deviceID |
uint32 |
The ID of the device |
| config |
WLANConfig |
The WLAN configuration to be written to the device |
SetWLANConfigMulti
Set the WLAN configurations of multiple devices.
| Parameter |
Type |
Description |
| deviceIDs |
uint32[] |
The IDs of the devices |
| config |
WLANConfig |
The WLAN configuration to be written to the devices |