private async Task <string> QueryParameterID(int mId, ParameterID parameterId) { parameterId.Machinevalue = await bluetoothSerialClient.WriteReadAsync(string.Format("{0}{1}{2}", mId.ToString("00"), parameterId.Pid.ToString("X2"), "\r")); parameterId.Calculate(); return(parameterId.HumanValue); }
//mode = 1, pid = 0x0D public async Task <string> QueryModeParameterId(int mId, int pId) { if (mId <= Modes.Count) { Mode mode = Modes[mId]; if (mode.IsSupported(pId)) { ParameterID parameterId = mode.Get(pId); return(await QueryParameterID(mode.Id, parameterId)); } } return(string.Empty); }
public static Mode createMode1() { try { Mode mode1 = new Mode(1); ParameterID m01pid00 = new ParameterID(0x00, 4, "Reset", 0, 65535, "", Formula.Blank); ParameterID m01pid0C = new ParameterID(0x0C, 2, "Engine RPM", 0, 16383.75, "rpm", Formula.Rpm); ParameterID m01pid0D = new ParameterID(0x0D, 1, "Vehicle speed", 0, 255, "km/h", Formula.Speed); mode1.ParameterIDs.Add(m01pid00); mode1.ParameterIDs.Add(m01pid0C); mode1.ParameterIDs.Add(m01pid0D); return(mode1); } catch (Exception) { throw; } }