Bunch of changes

This commit is contained in:
2026-08-01 18:19:21 -06:00
parent 04f3e2ba07
commit 7102175711
9 changed files with 184 additions and 50 deletions
+34 -35
View File
@@ -48,16 +48,8 @@ func _process(delta: float) -> void:
ServerSignals.sensor_request_received.emit(signal_data[1], signal_data[2])
elif signal_data[0] == "on_time_data_received":
TimeHelpers.on_time_data_received(signal_data[1])
elif signal_data[0] == "gps_data_received":
DataSignals.gps_data_received.emit(signal_data[1], signal_data[2], signal_data[3], signal_data[4], signal_data[5])
elif signal_data[0] == "sat_data_received":
DataSignals.sat_data_received.emit(signal_data[1], signal_data[2], signal_data[3], signal_data[4])
elif signal_data[0] == "accelerometer_data_received":
DataSignals.accelerometer_data_received.emit(signal_data[1], signal_data[2], signal_data[3], signal_data[4], signal_data[5])
elif signal_data[0] == "magnetometer_data_received":
DataSignals.magnetometer_data_received.emit(signal_data[1], signal_data[2], signal_data[3])
elif signal_data[0] == "lidar_2d_data_received":
DataSignals.lidar_2d_data_received.emit(signal_data[1], signal_data[2], signal_data[3], signal_data[4])
elif signal_data[0] == "raw_data_received":
DataSignals.raw_data_received.emit(signal_data[1], signal_data[2], signal_data[3], signal_data[4])
func _exit_tree() -> void:
if use_thread:
@@ -226,20 +218,18 @@ func _handle_position_packet(peer_ip: String, packet: PackedByteArray):
mutex.lock()
signal_queue.append(["on_time_data_received", timestamp_list])
mutex.unlock()
var lat: float = (float(packet.decode_u64(11)) / 10.**9) - 90
var lon: float = (float(packet.decode_u64(19)) / 10.**9) - 180
var alt_neg = packet.decode_u8(27)
var alt_m: float = packet.decode_u32(28) / 1000.0 * (-1. ** alt_neg)
var geoid_neg = packet.decode_u8(32)
var goid_m: float = packet.decode_u16(33) / 100 * (-1. ** geoid_neg)
var speed_neg = packet.decode_u8(35)
var speed_kmh: float = packet.decode_u32(36) / 1000000.0 * (-1 ** speed_neg)
var pdop: float = packet.decode_u32(40) / 1000.0
var hdop: float = packet.decode_u32(44) / 1000.0
var vdop: float = packet.decode_u32(49) / 1000.0
var data = [
packet.decode_u64(11),
packet.decode_u64(19),
packet.decode_u32(28) * (-1. ** packet.decode_u8(27)),
packet.decode_u16(33)* (-1. ** packet.decode_u8(32)),
packet.decode_u32(36) * (-1 ** packet.decode_u8(35)),
packet.decode_u32(40),
packet.decode_u32(44),
packet.decode_u32(49)
]
mutex.lock()
signal_queue.append(["gps_data_received", peer_ip, timestamp_list, [lat, lon, alt_m, goid_m], speed_kmh, [pdop, hdop, vdop]])
signal_queue.append(["raw_data_received", peer_ip, "GPS", timestamp_list, {"lat": lat, "lon": lon, "alt_m": alt_m, "speed_kmh": speed_kmh, "pdop": pdop, "hdop": hdop, "vdop": vdop}])
signal_queue.append(["raw_data_received", peer_ip, "GPS", timestamp_list, data])
mutex.unlock()
func _handle_gps_sats_packet(peer_ip: String, packet: PackedByteArray):
@@ -259,14 +249,17 @@ func _handle_gps_sats_packet(peer_ip: String, packet: PackedByteArray):
var el_offset = 4
var az_offset = 5
var sat_data = []
var data = [ga, gb, gi, gl, gp, gq, gn]
for i in range(num_entries):
var start_offset = sats_offset + (i * 7)
var sat_name = packet.slice(start_offset, start_offset + el_offset).get_string_from_ascii()
var elevation = packet.decode_u8(start_offset+el_offset)
var azimuth = packet.decode_u16(start_offset+az_offset)
sat_data.append([sat_name, elevation, azimuth])
data.append(sat_name)
data.append(elevation)
data.append(azimuth)
mutex.lock()
signal_queue.append(["sat_data_received", peer_ip, timestamp_list, [ga, gb, gi, gl, gp, gq, gn], sat_data])
signal_queue.append(["raw_data_received", peer_ip, "SATS", timestamp_list, data])
mutex.unlock()
func _handle_accel_packet(peer_ip: String, packet: PackedByteArray):
@@ -275,28 +268,34 @@ func _handle_accel_packet(peer_ip: String, packet: PackedByteArray):
signal_queue.append(["on_time_data_received", timestamp_list])
mutex.unlock()
var neg = packet.decode_u8(11)
var x = (packet.decode_s32(12) / 1000000.0) * (-1 ** neg)
var x = packet.decode_s32(12) * (-1 ** neg)
neg = packet.decode_u8(16)
var y = (packet.decode_s32(17) / 1000000.0) * (-1 ** neg)
var y = packet.decode_s32(17) * (-1 ** neg)
neg = packet.decode_u8(21)
var z = (packet.decode_s32(22) / 1000000.0) * (-1 ** neg)
var z = packet.decode_s32(22) * (-1 ** neg)
neg = packet.decode_u8(26)
var lin_x = (packet.decode_s32(27) / 1000000.0) * (-1 ** neg)
var lin_x = packet.decode_s32(27) * (-1 ** neg)
neg = packet.decode_u8(31)
var lin_y = (packet.decode_s32(32) / 1000000.0) * (-1 ** neg)
var lin_y = packet.decode_s32(32) * (-1 ** neg)
neg = packet.decode_u8(36)
var lin_z = (packet.decode_s32(37) / 1000000.0) * (-1 ** neg)
var lin_z = packet.decode_s32(37) * (-1 ** neg)
neg = packet.decode_u8(41)
var g_x = (packet.decode_s32(42) / 1000000.0) * (-1 ** neg)
var g_x = packet.decode_s32(42) * (-1 ** neg)
neg = packet.decode_u8(46)
var g_y = (packet.decode_s32(47) / 1000000.0) * (-1 ** neg)
var g_y = packet.decode_s32(47) * (-1 ** neg)
neg = packet.decode_u8(51)
var g_z = (packet.decode_s32(52) / 1000000.0) * (-1 ** neg)
var g_z = packet.decode_s32(52) * (-1 ** neg)
var data = [
x, y, z,
lin_x, lin_y, lin_z,
g_x, g_y, g_z
]
mutex.lock()
signal_queue.append(["accelerometer_data_received", peer_ip, timestamp_list, Vector3(x, y, z), Vector3(lin_x, lin_y, lin_z), Vector3(g_x, g_y, g_z)])
signal_queue.append(["raw_data_received", peer_ip, "ACCEL", timestamp_list, data])
mutex.unlock()
func _handle_magnetic_packet(peer_ip: String, packet: PackedByteArray):