Skip to content

Commit e0d463b

Browse files
authored
Merge pull request #103 from meshtastic/wip
Update
2 parents 78dd4ad + 63b5e22 commit e0d463b

File tree

9 files changed

+866
-326
lines changed

9 files changed

+866
-326
lines changed

Directory.Packages.props

+4-5
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,12 @@
22
<PropertyGroup>
33
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
44
</PropertyGroup>
5-
65
<ItemGroup>
76
<PackageVersion Include="coverlet.collector" Version="6.0.1" />
87
<PackageVersion Include="FluentAssertions" Version="6.12.0" />
98
<PackageVersion Include="ILogger.Moq" Version="1.1.10" />
10-
<PackageVersion Include="Google.Protobuf" Version="3.25.3" />
11-
<PackageVersion Include="Google.Protobuf.Tools" Version="3.25.3" />
9+
<PackageVersion Include="Google.Protobuf" Version="3.28.3" />
10+
<PackageVersion Include="Google.Protobuf.Tools" Version="3.28.3" />
1211
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="8.0.1" />
1312
<PackageVersion Include="Microsoft.Extensions.Logging" Version="8.0.1" />
1413
<PackageVersion Include="Microsoft.Extensions.Logging.Console" Version="8.0.1" />
@@ -19,8 +18,8 @@
1918
<PackageVersion Include="NUnit" Version="4.1.0" />
2019
<PackageVersion Include="NUnit3TestAdapter" Version="4.5.0" />
2120
<PackageVersion Include="NUnit.Analyzers" Version="4.0.1" />
22-
<PackageVersion Include="MQTTnet" Version="4.3.3.952" />
23-
<PackageVersion Include="QRCoder" Version="1.4.3" />
21+
<PackageVersion Include="MQTTnet" Version="4.3.7.1207" />
22+
<PackageVersion Include="QRCoder" Version="1.6.0" />
2423
<PackageVersion Include="SimpleExec" Version="12.0.0" />
2524
<PackageVersion Include="Spectre.Console" Version="0.49.1" />
2625
<PackageVersion Include="Spectre.Console.Json" Version="0.49.1" />

Meshtastic.Cli/CommandHandlers/RegisterCommandHandler.cs

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
using System.Security.Cryptography;
21
using Meshtastic.Data;
32
using Meshtastic.Data.MessageFactories;
43
using Meshtastic.Protobufs;

Meshtastic.Test/CommandHandlers/CommandHandlerTests.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ namespace Meshtastic.Test.CommandHandlers;
99
[TestFixture]
1010
[Category(TestCategories.SimulatedDeviceTests)]
1111
[NonParallelizable]
12-
[Timeout(10000)]
12+
[CancelAfter(10000)]
1313
public class CommandHandlerTests : CommandHandlerTestBase
1414
{
1515
[SetUp]

Meshtastic/Generated/Admin.cs

+117-28
Large diffs are not rendered by default.

Meshtastic/Generated/DeviceUi.cs

+65-18
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public static partial class DeviceUiReflection {
2424
static DeviceUiReflection() {
2525
byte[] descriptorData = global::System.Convert.FromBase64String(
2626
string.Concat(
27-
"ChptZXNodGFzdGljL2RldmljZV91aS5wcm90bxIKbWVzaHRhc3RpYyKBAwoO",
27+
"ChptZXNodGFzdGljL2RldmljZV91aS5wcm90bxIKbWVzaHRhc3RpYyKbAwoO",
2828
"RGV2aWNlVUlDb25maWcSDwoHdmVyc2lvbhgBIAEoDRIZChFzY3JlZW5fYnJp",
2929
"Z2h0bmVzcxgCIAEoDRIWCg5zY3JlZW5fdGltZW91dBgDIAEoDRITCgtzY3Jl",
3030
"ZW5fbG9jaxgEIAEoCBIVCg1zZXR0aW5nc19sb2NrGAUgASgIEhAKCHBpbl9j",
@@ -33,26 +33,27 @@ static DeviceUiReflection() {
3333
"EhQKDHJpbmdfdG9uZV9pZBgKIAEoDRImCghsYW5ndWFnZRgLIAEoDjIULm1l",
3434
"c2h0YXN0aWMuTGFuZ3VhZ2USKwoLbm9kZV9maWx0ZXIYDCABKAsyFi5tZXNo",
3535
"dGFzdGljLk5vZGVGaWx0ZXISMQoObm9kZV9oaWdobGlnaHQYDSABKAsyGS5t",
36-
"ZXNodGFzdGljLk5vZGVIaWdobGlnaHQilgEKCk5vZGVGaWx0ZXISFgoOdW5r",
37-
"bm93bl9zd2l0Y2gYASABKAgSFgoOb2ZmbGluZV9zd2l0Y2gYAiABKAgSGQoR",
38-
"cHVibGljX2tleV9zd2l0Y2gYAyABKAgSEQoJaG9wc19hd2F5GAQgASgFEhcK",
39-
"D3Bvc2l0aW9uX3N3aXRjaBgFIAEoCBIRCglub2RlX25hbWUYBiABKAkifgoN",
40-
"Tm9kZUhpZ2hsaWdodBITCgtjaGF0X3N3aXRjaBgBIAEoCBIXCg9wb3NpdGlv",
41-
"bl9zd2l0Y2gYAiABKAgSGAoQdGVsZW1ldHJ5X3N3aXRjaBgDIAEoCBISCgpp",
42-
"YXFfc3dpdGNoGAQgASgIEhEKCW5vZGVfbmFtZRgFIAEoCSolCgVUaGVtZRII",
43-
"CgREQVJLEAASCQoFTElHSFQQARIHCgNSRUQQAirtAQoITGFuZ3VhZ2USCwoH",
44-
"RU5HTElTSBAAEgoKBkZSRU5DSBABEgoKBkdFUk1BThACEgsKB0lUQUxJQU4Q",
45-
"AxIOCgpQT1JUVUdVRVNFEAQSCwoHU1BBTklTSBAFEgsKB1NXRURJU0gQBhIL",
46-
"CgdGSU5OSVNIEAcSCgoGUE9MSVNIEAgSCwoHVFVSS0lTSBAJEgsKB1NFUkJJ",
47-
"QU4QChILCgdSVVNTSUFOEAsSCQoFRFVUQ0gQDBIJCgVHUkVFSxANEhYKElNJ",
48-
"TVBMSUZJRURfQ0hJTkVTRRAeEhcKE1RSQURJVElPTkFMX0NISU5FU0UQH0Jj",
49-
"ChNjb20uZ2Vla3N2aWxsZS5tZXNoQg5EZXZpY2VVSVByb3Rvc1oiZ2l0aHVi",
50-
"LmNvbS9tZXNodGFzdGljL2dvL2dlbmVyYXRlZKoCFE1lc2h0YXN0aWMuUHJv",
51-
"dG9idWZzugIAYgZwcm90bzM="));
36+
"ZXNodGFzdGljLk5vZGVIaWdobGlnaHQSGAoQY2FsaWJyYXRpb25fZGF0YRgO",
37+
"IAEoDCKWAQoKTm9kZUZpbHRlchIWCg51bmtub3duX3N3aXRjaBgBIAEoCBIW",
38+
"Cg5vZmZsaW5lX3N3aXRjaBgCIAEoCBIZChFwdWJsaWNfa2V5X3N3aXRjaBgD",
39+
"IAEoCBIRCglob3BzX2F3YXkYBCABKAUSFwoPcG9zaXRpb25fc3dpdGNoGAUg",
40+
"ASgIEhEKCW5vZGVfbmFtZRgGIAEoCSJ+Cg1Ob2RlSGlnaGxpZ2h0EhMKC2No",
41+
"YXRfc3dpdGNoGAEgASgIEhcKD3Bvc2l0aW9uX3N3aXRjaBgCIAEoCBIYChB0",
42+
"ZWxlbWV0cnlfc3dpdGNoGAMgASgIEhIKCmlhcV9zd2l0Y2gYBCABKAgSEQoJ",
43+
"bm9kZV9uYW1lGAUgASgJKiUKBVRoZW1lEggKBERBUksQABIJCgVMSUdIVBAB",
44+
"EgcKA1JFRBACKvwBCghMYW5ndWFnZRILCgdFTkdMSVNIEAASCgoGRlJFTkNI",
45+
"EAESCgoGR0VSTUFOEAISCwoHSVRBTElBThADEg4KClBPUlRVR1VFU0UQBBIL",
46+
"CgdTUEFOSVNIEAUSCwoHU1dFRElTSBAGEgsKB0ZJTk5JU0gQBxIKCgZQT0xJ",
47+
"U0gQCBILCgdUVVJLSVNIEAkSCwoHU0VSQklBThAKEgsKB1JVU1NJQU4QCxIJ",
48+
"CgVEVVRDSBAMEgkKBUdSRUVLEA0SDQoJTk9SV0VHSUFOEA4SFgoSU0lNUExJ",
49+
"RklFRF9DSElORVNFEB4SFwoTVFJBRElUSU9OQUxfQ0hJTkVTRRAfQmMKE2Nv",
50+
"bS5nZWVrc3ZpbGxlLm1lc2hCDkRldmljZVVJUHJvdG9zWiJnaXRodWIuY29t",
51+
"L21lc2h0YXN0aWMvZ28vZ2VuZXJhdGVkqgIUTWVzaHRhc3RpYy5Qcm90b2J1",
52+
"ZnO6AgBiBnByb3RvMw=="));
5253
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
5354
new pbr::FileDescriptor[] { },
5455
new pbr::GeneratedClrTypeInfo(new[] {typeof(global::Meshtastic.Protobufs.Theme), typeof(global::Meshtastic.Protobufs.Language), }, null, new pbr::GeneratedClrTypeInfo[] {
55-
new pbr::GeneratedClrTypeInfo(typeof(global::Meshtastic.Protobufs.DeviceUIConfig), global::Meshtastic.Protobufs.DeviceUIConfig.Parser, new[]{ "Version", "ScreenBrightness", "ScreenTimeout", "ScreenLock", "SettingsLock", "PinCode", "Theme", "AlertEnabled", "BannerEnabled", "RingToneId", "Language", "NodeFilter", "NodeHighlight" }, null, null, null, null),
56+
new pbr::GeneratedClrTypeInfo(typeof(global::Meshtastic.Protobufs.DeviceUIConfig), global::Meshtastic.Protobufs.DeviceUIConfig.Parser, new[]{ "Version", "ScreenBrightness", "ScreenTimeout", "ScreenLock", "SettingsLock", "PinCode", "Theme", "AlertEnabled", "BannerEnabled", "RingToneId", "Language", "NodeFilter", "NodeHighlight", "CalibrationData" }, null, null, null, null),
5657
new pbr::GeneratedClrTypeInfo(typeof(global::Meshtastic.Protobufs.NodeFilter), global::Meshtastic.Protobufs.NodeFilter.Parser, new[]{ "UnknownSwitch", "OfflineSwitch", "PublicKeySwitch", "HopsAway", "PositionSwitch", "NodeName" }, null, null, null, null),
5758
new pbr::GeneratedClrTypeInfo(typeof(global::Meshtastic.Protobufs.NodeHighlight), global::Meshtastic.Protobufs.NodeHighlight.Parser, new[]{ "ChatSwitch", "PositionSwitch", "TelemetrySwitch", "IaqSwitch", "NodeName" }, null, null, null, null)
5859
}));
@@ -156,6 +157,11 @@ public enum Language {
156157
[pbr::OriginalName("GREEK")] Greek = 13,
157158
/// <summary>
158159
///
160+
/// Norwegian
161+
/// </summary>
162+
[pbr::OriginalName("NORWEGIAN")] Norwegian = 14,
163+
/// <summary>
164+
///
159165
/// Simplified Chinese (experimental)
160166
/// </summary>
161167
[pbr::OriginalName("SIMPLIFIED_CHINESE")] SimplifiedChinese = 30,
@@ -216,6 +222,7 @@ public DeviceUIConfig(DeviceUIConfig other) : this() {
216222
language_ = other.language_;
217223
nodeFilter_ = other.nodeFilter_ != null ? other.nodeFilter_.Clone() : null;
218224
nodeHighlight_ = other.nodeHighlight_ != null ? other.nodeHighlight_.Clone() : null;
225+
calibrationData_ = other.calibrationData_;
219226
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
220227
}
221228

@@ -417,6 +424,22 @@ public uint RingToneId {
417424
}
418425
}
419426

427+
/// <summary>Field number for the "calibration_data" field.</summary>
428+
public const int CalibrationDataFieldNumber = 14;
429+
private pb::ByteString calibrationData_ = pb::ByteString.Empty;
430+
/// <summary>
431+
///
432+
/// 8 integers for screen calibration data
433+
/// </summary>
434+
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
435+
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
436+
public pb::ByteString CalibrationData {
437+
get { return calibrationData_; }
438+
set {
439+
calibrationData_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
440+
}
441+
}
442+
420443
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
421444
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
422445
public override bool Equals(object other) {
@@ -445,6 +468,7 @@ public bool Equals(DeviceUIConfig other) {
445468
if (Language != other.Language) return false;
446469
if (!object.Equals(NodeFilter, other.NodeFilter)) return false;
447470
if (!object.Equals(NodeHighlight, other.NodeHighlight)) return false;
471+
if (CalibrationData != other.CalibrationData) return false;
448472
return Equals(_unknownFields, other._unknownFields);
449473
}
450474

@@ -465,6 +489,7 @@ public override int GetHashCode() {
465489
if (Language != global::Meshtastic.Protobufs.Language.English) hash ^= Language.GetHashCode();
466490
if (nodeFilter_ != null) hash ^= NodeFilter.GetHashCode();
467491
if (nodeHighlight_ != null) hash ^= NodeHighlight.GetHashCode();
492+
if (CalibrationData.Length != 0) hash ^= CalibrationData.GetHashCode();
468493
if (_unknownFields != null) {
469494
hash ^= _unknownFields.GetHashCode();
470495
}
@@ -535,6 +560,10 @@ public void WriteTo(pb::CodedOutputStream output) {
535560
output.WriteRawTag(106);
536561
output.WriteMessage(NodeHighlight);
537562
}
563+
if (CalibrationData.Length != 0) {
564+
output.WriteRawTag(114);
565+
output.WriteBytes(CalibrationData);
566+
}
538567
if (_unknownFields != null) {
539568
_unknownFields.WriteTo(output);
540569
}
@@ -597,6 +626,10 @@ public void WriteTo(pb::CodedOutputStream output) {
597626
output.WriteRawTag(106);
598627
output.WriteMessage(NodeHighlight);
599628
}
629+
if (CalibrationData.Length != 0) {
630+
output.WriteRawTag(114);
631+
output.WriteBytes(CalibrationData);
632+
}
600633
if (_unknownFields != null) {
601634
_unknownFields.WriteTo(ref output);
602635
}
@@ -646,6 +679,9 @@ public int CalculateSize() {
646679
if (nodeHighlight_ != null) {
647680
size += 1 + pb::CodedOutputStream.ComputeMessageSize(NodeHighlight);
648681
}
682+
if (CalibrationData.Length != 0) {
683+
size += 1 + pb::CodedOutputStream.ComputeBytesSize(CalibrationData);
684+
}
649685
if (_unknownFields != null) {
650686
size += _unknownFields.CalculateSize();
651687
}
@@ -703,6 +739,9 @@ public void MergeFrom(DeviceUIConfig other) {
703739
}
704740
NodeHighlight.MergeFrom(other.NodeHighlight);
705741
}
742+
if (other.CalibrationData.Length != 0) {
743+
CalibrationData = other.CalibrationData;
744+
}
706745
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
707746
}
708747

@@ -776,6 +815,10 @@ public void MergeFrom(pb::CodedInputStream input) {
776815
input.ReadMessage(NodeHighlight);
777816
break;
778817
}
818+
case 114: {
819+
CalibrationData = input.ReadBytes();
820+
break;
821+
}
779822
}
780823
}
781824
#endif
@@ -849,6 +892,10 @@ public void MergeFrom(pb::CodedInputStream input) {
849892
input.ReadMessage(NodeHighlight);
850893
break;
851894
}
895+
case 114: {
896+
CalibrationData = input.ReadBytes();
897+
break;
898+
}
852899
}
853900
}
854901
}

0 commit comments

Comments
 (0)