async writeProperty(siid, piid, value) {
        const res = await this.robot.sendCommand("set_properties", [
            {
                did: this.robot.deviceId,
                siid: siid,
                piid: piid,
                value: value
            }
        ]);

        if (res?.length === 1) {
            if (res[0].code !== 0) {
                throw new RobotFirmwareError("Error code " + res[0].code);
            }
        } else {
            throw new Error("Received invalid response");
        }
    }
@param {number} siid
@param {number} piid
@param {*} value
@returns {Promise<void>}