diff --git a/Meshtastic/Helpers/MeshPackets.swift b/Meshtastic/Helpers/MeshPackets.swift
index bc1a9f26..555ee3d6 100644
--- a/Meshtastic/Helpers/MeshPackets.swift
+++ b/Meshtastic/Helpers/MeshPackets.swift
@@ -635,6 +635,8 @@ func telemetryPacket(packet: MeshPacket, connectedNode: Int64, context: NSManage
telemetry.voltage = telemetryMessage.environmentMetrics.voltage
telemetry.metricsType = 1
}
+ telemetry.snr = packet.rxSnr
+ telemetry.rssi = packet.rxRssi
telemetry.time = Date(timeIntervalSince1970: TimeInterval(Int64(telemetryMessage.time)))
guard let mutableTelemetries = fetchedNode[0].telemetries!.mutableCopy() as? NSMutableOrderedSet else {
return
@@ -716,6 +718,7 @@ func textMessageAppPacket(packet: MeshPacket, connectedNode: Int64, context: NSM
newMessage.messageTimestamp = Int32(bitPattern: packet.rxTime)
newMessage.receivedACK = false
newMessage.snr = packet.rxSnr
+ newMessage.rssi = packet.rxRssi
newMessage.isEmoji = packet.decoded.emoji == 1
newMessage.channel = Int32(packet.channel)
diff --git a/Meshtastic/Meshtastic.xcdatamodeld/MeshtasticDataModelV12.xcdatamodel/contents b/Meshtastic/Meshtastic.xcdatamodeld/MeshtasticDataModelV12.xcdatamodel/contents
index 7110885f..2a40082b 100644
--- a/Meshtastic/Meshtastic.xcdatamodeld/MeshtasticDataModelV12.xcdatamodel/contents
+++ b/Meshtastic/Meshtastic.xcdatamodeld/MeshtasticDataModelV12.xcdatamodel/contents
@@ -198,6 +198,7 @@
+
@@ -243,6 +244,7 @@
+
@@ -295,6 +297,8 @@
+
+
diff --git a/Meshtastic/Persistence/UpdateCoreData.swift b/Meshtastic/Persistence/UpdateCoreData.swift
index 0a4b06a3..4b01476c 100644
--- a/Meshtastic/Persistence/UpdateCoreData.swift
+++ b/Meshtastic/Persistence/UpdateCoreData.swift
@@ -117,6 +117,7 @@ func upsertNodeInfoPacket (packet: MeshPacket, context: NSManagedObjectContext)
newNode.num = Int64(packet.from)
newNode.lastHeard = Date(timeIntervalSince1970: TimeInterval(Int64(packet.rxTime)))
newNode.snr = packet.rxSnr
+ newNode.rssi = packet.rxRssi
if let nodeInfoMessage = try? NodeInfo(serializedData: packet.decoded.payload) {
newNode.channel = Int32(nodeInfoMessage.channel)
@@ -138,6 +139,7 @@ func upsertNodeInfoPacket (packet: MeshPacket, context: NSManagedObjectContext)
fetchedNode[0].num = Int64(packet.from)
fetchedNode[0].lastHeard = Date(timeIntervalSince1970: TimeInterval(Int64(packet.rxTime)))
fetchedNode[0].snr = packet.rxSnr
+ fetchedNode[0].rssi = packet.rxRssi
if let nodeInfoMessage = try? NodeInfo(serializedData: packet.decoded.payload) {
@@ -210,6 +212,7 @@ func upsertPositionPacket (packet: MeshPacket, context: NSManagedObjectContext)
let position = PositionEntity(context: context)
position.latest = true
position.snr = packet.rxSnr
+ position.rssi = packet.rxRssi
position.seqNo = Int32(positionMessage.seqNumber)
position.latitudeI = positionMessage.latitudeI
position.longitudeI = positionMessage.longitudeI
@@ -230,6 +233,7 @@ func upsertPositionPacket (packet: MeshPacket, context: NSManagedObjectContext)
fetchedNode[0].num = Int64(packet.from)
fetchedNode[0].lastHeard = Date(timeIntervalSince1970: TimeInterval(Int64(positionMessage.time)))
fetchedNode[0].snr = packet.rxSnr
+ fetchedNode[0].rssi = packet.rxRssi
fetchedNode[0].positions = mutablePositions.copy() as? NSOrderedSet
do {