Beispiel #1
0
        //--- (generated code: YWireless implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("linkQuality"))
            {
                _linkQuality = json_val.getInt("linkQuality");
            }
            if (json_val.has("ssid"))
            {
                _ssid = json_val.getString("ssid");
            }
            if (json_val.has("channel"))
            {
                _channel = json_val.getInt("channel");
            }
            if (json_val.has("security"))
            {
                _security = json_val.getInt("security");
            }
            if (json_val.has("message"))
            {
                _message = json_val.getString("message");
            }
            if (json_val.has("wlanConfig"))
            {
                _wlanConfig = json_val.getString("wlanConfig");
            }
            if (json_val.has("wlanState"))
            {
                _wlanState = json_val.getInt("wlanState");
            }
            base.imm_parseAttr(json_val);
        }
        //--- (generated code: YMessageBox implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("slotsInUse"))
            {
                _slotsInUse = json_val.getInt("slotsInUse");
            }
            if (json_val.has("slotsCount"))
            {
                _slotsCount = json_val.getInt("slotsCount");
            }
            if (json_val.has("slotsBitmap"))
            {
                _slotsBitmap = json_val.getString("slotsBitmap");
            }
            if (json_val.has("pduSent"))
            {
                _pduSent = json_val.getInt("pduSent");
            }
            if (json_val.has("pduReceived"))
            {
                _pduReceived = json_val.getInt("pduReceived");
            }
            if (json_val.has("command"))
            {
                _command = json_val.getString("command");
            }
            base.imm_parseAttr(json_val);
        }
        //--- (YGenericSensor implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("signalValue"))
            {
                _signalValue = Math.Round(json_val.getDouble("signalValue") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("signalUnit"))
            {
                _signalUnit = json_val.getString("signalUnit");
            }
            if (json_val.has("signalRange"))
            {
                _signalRange = json_val.getString("signalRange");
            }
            if (json_val.has("valueRange"))
            {
                _valueRange = json_val.getString("valueRange");
            }
            if (json_val.has("signalBias"))
            {
                _signalBias = Math.Round(json_val.getDouble("signalBias") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("signalSampling"))
            {
                _signalSampling = json_val.getInt("signalSampling");
            }
            base.imm_parseAttr(json_val);
        }
Beispiel #4
0
        //--- (YRangeFinder implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("rangeFinderMode"))
            {
                _rangeFinderMode = json_val.getInt("rangeFinderMode");
            }
            if (json_val.has("timeFrame"))
            {
                _timeFrame = json_val.getLong("timeFrame");
            }
            if (json_val.has("quality"))
            {
                _quality = json_val.getInt("quality");
            }
            if (json_val.has("hardwareCalibration"))
            {
                _hardwareCalibration = json_val.getString("hardwareCalibration");
            }
            if (json_val.has("currentTemperature"))
            {
                _currentTemperature = Math.Round(json_val.getDouble("currentTemperature") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("command"))
            {
                _command = json_val.getString("command");
            }
            base.imm_parseAttr(json_val);
        }
Beispiel #5
0
        //--- (YPowerSupply implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("voltageSetPoint"))
            {
                _voltageSetPoint = Math.Round(json_val.getDouble("voltageSetPoint") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("currentLimit"))
            {
                _currentLimit = Math.Round(json_val.getDouble("currentLimit") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("powerOutput"))
            {
                _powerOutput = json_val.getInt("powerOutput") > 0 ? 1 : 0;
            }
            if (json_val.has("voltageSense"))
            {
                _voltageSense = json_val.getInt("voltageSense");
            }
            if (json_val.has("measuredVoltage"))
            {
                _measuredVoltage = Math.Round(json_val.getDouble("measuredVoltage") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("measuredCurrent"))
            {
                _measuredCurrent = Math.Round(json_val.getDouble("measuredCurrent") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("inputVoltage"))
            {
                _inputVoltage = Math.Round(json_val.getDouble("inputVoltage") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("vInt"))
            {
                _vInt = Math.Round(json_val.getDouble("vInt") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("ldoTemperature"))
            {
                _ldoTemperature = Math.Round(json_val.getDouble("ldoTemperature") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("voltageTransition"))
            {
                _voltageTransition = json_val.getString("voltageTransition");
            }
            if (json_val.has("voltageAtStartUp"))
            {
                _voltageAtStartUp = Math.Round(json_val.getDouble("voltageAtStartUp") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("currentAtStartUp"))
            {
                _currentAtStartUp = Math.Round(json_val.getDouble("currentAtStartUp") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("command"))
            {
                _command = json_val.getString("command");
            }
            base.imm_parseAttr(json_val);
        }
Beispiel #6
0
        //--- (YGps implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("isFixed"))
            {
                _isFixed = json_val.getInt("isFixed") > 0 ? 1 : 0;
            }
            if (json_val.has("satCount"))
            {
                _satCount = json_val.getLong("satCount");
            }
            if (json_val.has("coordSystem"))
            {
                _coordSystem = json_val.getInt("coordSystem");
            }
            if (json_val.has("latitude"))
            {
                _latitude = json_val.getString("latitude");
            }
            if (json_val.has("longitude"))
            {
                _longitude = json_val.getString("longitude");
            }
            if (json_val.has("dilution"))
            {
                _dilution = Math.Round(json_val.getDouble("dilution") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("altitude"))
            {
                _altitude = Math.Round(json_val.getDouble("altitude") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("groundSpeed"))
            {
                _groundSpeed = Math.Round(json_val.getDouble("groundSpeed") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("direction"))
            {
                _direction = Math.Round(json_val.getDouble("direction") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("unixTime"))
            {
                _unixTime = json_val.getLong("unixTime");
            }
            if (json_val.has("dateTime"))
            {
                _dateTime = json_val.getString("dateTime");
            }
            if (json_val.has("utcOffset"))
            {
                _utcOffset = json_val.getInt("utcOffset");
            }
            if (json_val.has("command"))
            {
                _command = json_val.getString("command");
            }
            base.imm_parseAttr(json_val);
        }
Beispiel #7
0
        //--- (end of generated code: YWlanRecord definitions)

        internal YWlanRecord(string json_str)
        {
            YJSONObject json = new YJSONObject(json_str);

            json.parse();
            _ssid    = json.getString("ssid");
            _channel = json.getInt("channel");
            _sec     = json.getString("sec");
            _rssi    = json.getInt("rssi");
        }
Beispiel #8
0
        //--- (generated code: YFunction implementation)
#pragma warning disable 1998
        internal virtual void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("logicalName"))
            {
                _logicalName = json_val.getString("logicalName");
            }
            if (json_val.has("advertisedValue"))
            {
                _advertisedValue = json_val.getString("advertisedValue");
            }
        }
Beispiel #9
0
        //--- (YArithmeticSensor implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("description"))
            {
                _description = json_val.getString("description");
            }
            if (json_val.has("command"))
            {
                _command = json_val.getString("command");
            }
            base.imm_parseAttr(json_val);
        }
Beispiel #10
0
        // YDataSet parser for stream list
        protected internal virtual async Task <int> _parse(string json_str)
        {
            YJSONObject json;
            YJSONArray  jstreams;
            double      streamStartTime;
            double      streamEndTime;

            json = new YJSONObject(json_str);
            json.parse();
            _functionId = json.getString("id");
            _unit       = json.getString("unit");
            if (json.has("calib"))
            {
                _calib    = YAPIContext.imm_decodeFloats(json.getString("calib"));
                _calib[0] = _calib[0] / 1000;
            }
            else
            {
                _calib = YAPIContext.imm_decodeWords(json.getString("cal"));
            }
            _streams  = new List <YDataStream>();
            _preview  = new List <YMeasure>();
            _measures = new List <YMeasure>();
            jstreams  = json.getYJSONArray("streams");
            for (int i = 0; i < jstreams.Length; i++)
            {
                YDataStream stream = _parent.imm_findDataStream(this, jstreams.getString(i));
                // the timestamp in the data streams is the end of the measure, so the actual
                // measurement start time is computed as one interval before the first timestamp
                streamStartTime = await stream.get_realStartTimeUTC() * 1000;

                streamEndTime = streamStartTime + await stream.get_realDuration() * 1000;

                if (_startTimeMs > 0 && streamEndTime <= _startTimeMs)
                {
                    // this stream is too early, drop it
                }
                else if (_endTimeMs > 0 && streamStartTime >= _endTimeMs)
                {
                    // this stream is too late, drop it
                }
                else
                {
                    _streams.Add(stream);
                }
            }
            _progress = 0;
            return(await this.get_progress());
        }
        //--- (generated code: YDisplay implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("enabled"))
            {
                _enabled = json_val.getInt("enabled") > 0 ? 1 : 0;
            }
            if (json_val.has("startupSeq"))
            {
                _startupSeq = json_val.getString("startupSeq");
            }
            if (json_val.has("brightness"))
            {
                _brightness = json_val.getInt("brightness");
            }
            if (json_val.has("orientation"))
            {
                _orientation = json_val.getInt("orientation");
            }
            if (json_val.has("displayWidth"))
            {
                _displayWidth = json_val.getInt("displayWidth");
            }
            if (json_val.has("displayHeight"))
            {
                _displayHeight = json_val.getInt("displayHeight");
            }
            if (json_val.has("displayType"))
            {
                _displayType = json_val.getInt("displayType");
            }
            if (json_val.has("layerWidth"))
            {
                _layerWidth = json_val.getInt("layerWidth");
            }
            if (json_val.has("layerHeight"))
            {
                _layerHeight = json_val.getInt("layerHeight");
            }
            if (json_val.has("layerCount"))
            {
                _layerCount = json_val.getInt("layerCount");
            }
            if (json_val.has("command"))
            {
                _command = json_val.getString("command");
            }
            base.imm_parseAttr(json_val);
        }
        //--- (YWeighScale implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("excitation"))
            {
                _excitation = json_val.getInt("excitation");
            }
            if (json_val.has("compTempAdaptRatio"))
            {
                _compTempAdaptRatio = Math.Round(json_val.getDouble("compTempAdaptRatio") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("compTempAvg"))
            {
                _compTempAvg = Math.Round(json_val.getDouble("compTempAvg") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("compTempChg"))
            {
                _compTempChg = Math.Round(json_val.getDouble("compTempChg") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("compensation"))
            {
                _compensation = Math.Round(json_val.getDouble("compensation") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("zeroTracking"))
            {
                _zeroTracking = Math.Round(json_val.getDouble("zeroTracking") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("command"))
            {
                _command = json_val.getString("command");
            }
            base.imm_parseAttr(json_val);
        }
Beispiel #13
0
        //--- (YBuzzer implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("frequency"))
            {
                _frequency = Math.Round(json_val.getDouble("frequency") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("volume"))
            {
                _volume = json_val.getInt("volume");
            }
            if (json_val.has("playSeqSize"))
            {
                _playSeqSize = json_val.getInt("playSeqSize");
            }
            if (json_val.has("playSeqMaxSize"))
            {
                _playSeqMaxSize = json_val.getInt("playSeqMaxSize");
            }
            if (json_val.has("playSeqSignature"))
            {
                _playSeqSignature = json_val.getInt("playSeqSignature");
            }
            if (json_val.has("command"))
            {
                _command = json_val.getString("command");
            }
            base.imm_parseAttr(json_val);
        }
        //--- (YBluetoothLink implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("ownAddress"))
            {
                _ownAddress = json_val.getString("ownAddress");
            }
            if (json_val.has("pairingPin"))
            {
                _pairingPin = json_val.getString("pairingPin");
            }
            if (json_val.has("remoteAddress"))
            {
                _remoteAddress = json_val.getString("remoteAddress");
            }
            if (json_val.has("remoteName"))
            {
                _remoteName = json_val.getString("remoteName");
            }
            if (json_val.has("mute"))
            {
                _mute = json_val.getInt("mute") > 0 ? 1 : 0;
            }
            if (json_val.has("preAmplifier"))
            {
                _preAmplifier = json_val.getInt("preAmplifier");
            }
            if (json_val.has("volume"))
            {
                _volume = json_val.getInt("volume");
            }
            if (json_val.has("linkState"))
            {
                _linkState = json_val.getInt("linkState");
            }
            if (json_val.has("linkQuality"))
            {
                _linkQuality = json_val.getInt("linkQuality");
            }
            if (json_val.has("command"))
            {
                _command = json_val.getString("command");
            }
            base.imm_parseAttr(json_val);
        }
Beispiel #15
0
        //--- (end of generated code: YFileRecord definitions)

        public YFileRecord(string json_str)
        {
            YJSONObject json;

            json = new YJSONObject(json_str);
            json.parse();
            _name = json.getString("name");
            _crc  = json.getInt("crc");
            _size = json.getInt("size");
        }
        //--- (YTemperature implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("sensorType"))
            {
                _sensorType = json_val.getInt("sensorType");
            }
            if (json_val.has("signalValue"))
            {
                _signalValue = Math.Round(json_val.getDouble("signalValue") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("signalUnit"))
            {
                _signalUnit = json_val.getString("signalUnit");
            }
            if (json_val.has("command"))
            {
                _command = json_val.getString("command");
            }
            base.imm_parseAttr(json_val);
        }
Beispiel #17
0
        //--- (end of generated code: YSnoopingRecord definitions)

        internal YSnoopingRecord(string json_str)
        {
            YJSONObject json = new YJSONObject(json_str);

            json.parse();
            _tim = json.getInt("t");
            string m = json.getString("m");

            _dir = (m[0] == '<' ? 1 : 0);
            _msg = m.Substring(1);
        }
Beispiel #18
0
        public YPEntry(YJSONObject json)
        {
            string hardwareId = json.getString("hardwareId");
            int    pos        = hardwareId.IndexOf('.');

            _serial          = hardwareId.Substring(0, pos);
            _funcId          = hardwareId.Substring(pos + 1);
            _classname       = YAPIContext.imm_functionClass(_funcId);
            _logicalName     = json.getString("logicalName");
            _advertisedValue = json.getString("advertisedValue");
            _index           = json.getInt("index");

            if (json.has("baseType"))
            {
                _baseclass = BaseClass.values()[json.getInt("baseType")];
            }
            else
            {
                _baseclass = BaseClass.Function;
            }
        }
Beispiel #19
0
        //--- (YCarbonDioxide implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("abcPeriod"))
            {
                _abcPeriod = json_val.getInt("abcPeriod");
            }
            if (json_val.has("command"))
            {
                _command = json_val.getString("command");
            }
            base.imm_parseAttr(json_val);
        }
Beispiel #20
0
        //--- (YAltitude implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("qnh"))
            {
                _qnh = Math.Round(json_val.getDouble("qnh") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("technology"))
            {
                _technology = json_val.getString("technology");
            }
            base.imm_parseAttr(json_val);
        }
        //--- (YSegmentedDisplay implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("displayedText"))
            {
                _displayedText = json_val.getString("displayedText");
            }
            if (json_val.has("displayMode"))
            {
                _displayMode = json_val.getInt("displayMode");
            }
            base.imm_parseAttr(json_val);
        }
        //--- (YVoltageOutput implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("currentVoltage"))
            {
                _currentVoltage = Math.Round(json_val.getDouble("currentVoltage") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("voltageTransition"))
            {
                _voltageTransition = json_val.getString("voltageTransition");
            }
            if (json_val.has("voltageAtStartUp"))
            {
                _voltageAtStartUp = Math.Round(json_val.getDouble("voltageAtStartUp") * 1000.0 / 65536.0) / 1000.0;
            }
            base.imm_parseAttr(json_val);
        }
Beispiel #23
0
        protected internal virtual string imm_json_get_key(byte[] json, string key)
        {
            YJSONObject obj = new YJSONObject(YAPI.DefaultEncoding.GetString(json));

            obj.parse();
            if (obj.has(key))
            {
                string val = obj.getString(key);
                if (val == null)
                {
                    val = obj.ToString();
                }
                return(val);
            }
            throw new YAPI_Exception(YAPI.INVALID_ARGUMENT, "No key " + key + "in JSON struct");
        }
        //--- (YMultiAxisController implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("nAxis"))
            {
                _nAxis = json_val.getInt("nAxis");
            }
            if (json_val.has("globalState"))
            {
                _globalState = json_val.getInt("globalState");
            }
            if (json_val.has("command"))
            {
                _command = json_val.getString("command");
            }
            base.imm_parseAttr(json_val);
        }
Beispiel #25
0
        //--- (YCurrentLoopOutput implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("current"))
            {
                _current = Math.Round(json_val.getDouble("current") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("currentTransition"))
            {
                _currentTransition = json_val.getString("currentTransition");
            }
            if (json_val.has("currentAtStartUp"))
            {
                _currentAtStartUp = Math.Round(json_val.getDouble("currentAtStartUp") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("loopPower"))
            {
                _loopPower = json_val.getInt("loopPower");
            }
            base.imm_parseAttr(json_val);
        }
Beispiel #26
0
        //--- (YRealTimeClock implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("unixTime"))
            {
                _unixTime = json_val.getLong("unixTime");
            }
            if (json_val.has("dateTime"))
            {
                _dateTime = json_val.getString("dateTime");
            }
            if (json_val.has("utcOffset"))
            {
                _utcOffset = json_val.getInt("utcOffset");
            }
            if (json_val.has("timeSet"))
            {
                _timeSet = json_val.getInt("timeSet") > 0 ? 1 : 0;
            }
            base.imm_parseAttr(json_val);
        }
        //--- (YMultiSensController implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("nSensors"))
            {
                _nSensors = json_val.getInt("nSensors");
            }
            if (json_val.has("maxSensors"))
            {
                _maxSensors = json_val.getInt("maxSensors");
            }
            if (json_val.has("maintenanceMode"))
            {
                _maintenanceMode = json_val.getInt("maintenanceMode") > 0 ? 1 : 0;
            }
            if (json_val.has("command"))
            {
                _command = json_val.getString("command");
            }
            base.imm_parseAttr(json_val);
        }
Beispiel #28
0
        //--- (YMotor implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("motorStatus"))
            {
                _motorStatus = json_val.getInt("motorStatus");
            }
            if (json_val.has("drivingForce"))
            {
                _drivingForce = Math.Round(json_val.getDouble("drivingForce") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("brakingForce"))
            {
                _brakingForce = Math.Round(json_val.getDouble("brakingForce") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("cutOffVoltage"))
            {
                _cutOffVoltage = Math.Round(json_val.getDouble("cutOffVoltage") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("overCurrentLimit"))
            {
                _overCurrentLimit = json_val.getInt("overCurrentLimit");
            }
            if (json_val.has("frequency"))
            {
                _frequency = Math.Round(json_val.getDouble("frequency") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("starterTime"))
            {
                _starterTime = json_val.getInt("starterTime");
            }
            if (json_val.has("failSafeTimeout"))
            {
                _failSafeTimeout = json_val.getInt("failSafeTimeout");
            }
            if (json_val.has("command"))
            {
                _command = json_val.getString("command");
            }
            base.imm_parseAttr(json_val);
        }
#pragma warning restore 1998

        /// <summary>
        /// Test if the byn file is valid for this module. It is possible to pass a directory instead of a file.
        /// In that case, this method returns the path of the most recent appropriate byn file. This method will
        /// ignore any firmware older than minrelease.
        /// </summary>
        /// <param name="serial"> : the serial number of the module to update </param>
        /// <param name="path"> : the path of a byn file or a directory that contains byn files </param>
        /// <param name="minrelease"> : a positive integer
        /// </param>
        /// <returns> : the path of the byn file to use, or an empty string if no byn files matches the requirement
        ///
        /// On failure, returns a string that starts with "error:". </returns>
        public static async Task <string> CheckFirmwareEx(string serial, string path, int minrelease, bool force)
        {
            string link     = "";
            int    best_rev = 0;

            if (path.StartsWith("www.yoctopuce.com", StringComparison.Ordinal) || path.StartsWith("http://www.yoctopuce.com", StringComparison.Ordinal))
            {
                byte[] json = await YFirmwareUpdate._downloadfile("http://www.yoctopuce.com//FR/common/getLastFirmwareLink.php?serial=" + serial);

                YJSONObject obj;
                obj = new YJSONObject(YAPI.DefaultEncoding.GetString(json));
                obj.parse();
                link     = obj.getString("link");
                best_rev = obj.getInt("version");
            }
            else
            {
                YFirmwareFile firmware = await YFirmwareUpdate.checkFirmware_r(path, serial.Substring(0, YAPI.YOCTO_BASE_SERIAL_LEN));

                if (firmware != null)
                {
                    best_rev = firmware.FirmwareReleaseAsInt;
                    link     = firmware.Path;
                }
            }
            if (minrelease != 0)
            {
                if (minrelease < best_rev)
                {
                    return(link);
                }
                else
                {
                    return("");
                }
            }
            return(link);
        }
Beispiel #30
0
        //--- (YPwmOutput implementation)
#pragma warning disable 1998
        internal override void imm_parseAttr(YJSONObject json_val)
        {
            if (json_val.has("enabled"))
            {
                _enabled = json_val.getInt("enabled") > 0 ? 1 : 0;
            }
            if (json_val.has("frequency"))
            {
                _frequency = Math.Round(json_val.getDouble("frequency") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("period"))
            {
                _period = Math.Round(json_val.getDouble("period") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("dutyCycle"))
            {
                _dutyCycle = Math.Round(json_val.getDouble("dutyCycle") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("pulseDuration"))
            {
                _pulseDuration = Math.Round(json_val.getDouble("pulseDuration") * 1000.0 / 65536.0) / 1000.0;
            }
            if (json_val.has("pwmTransition"))
            {
                _pwmTransition = json_val.getString("pwmTransition");
            }
            if (json_val.has("enabledAtPowerOn"))
            {
                _enabledAtPowerOn = json_val.getInt("enabledAtPowerOn") > 0 ? 1 : 0;
            }
            if (json_val.has("dutyCycleAtPowerOn"))
            {
                _dutyCycleAtPowerOn = Math.Round(json_val.getDouble("dutyCycleAtPowerOn") * 1000.0 / 65536.0) / 1000.0;
            }
            base.imm_parseAttr(json_val);
        }