diff --git a/applications/gonk/fpga_blinky.bin b/applications/gonk/fpga_blinky.bin
deleted file mode 100644
index 442d775..0000000
--- a/applications/gonk/fpga_blinky.bin
+++ /dev/null
Binary files differ
diff --git a/applications/gonk/main.cc b/applications/gonk/main.cc
index ebbebca..645ab9b 100644
--- a/applications/gonk/main.cc
+++ b/applications/gonk/main.cc
@@ -170,7 +170,7 @@
     // Init ADCs
     fpga_adc.InitAdcs();
     fpga_adc.CheckAllAdcs();
-    // Select the first five ADC channels.
+    // Select 7 ADC channels.
     fpga_adc.SelectContinuousReadAdcs(0b011100111001);
 
     fpga_adc.SetContinuousReadMode();
diff --git a/tools/gonk_tools/gonk_log_stream.py b/tools/gonk_tools/gonk_log_stream.py
index edba465..f02379c 100644
--- a/tools/gonk_tools/gonk_log_stream.py
+++ b/tools/gonk_tools/gonk_log_stream.py
@@ -210,14 +210,17 @@
             vbus_values.append(adc_measure.vbus_value)
             vshunt_values.append(adc_measure.vshunt_value)
 
+        delta_micros_str = str(delta_micros)
+        vshunt_list_str = ', '.join(str(value) for value in vshunt_values)
+        vbus_list_str = ', '.join(str(value) for value in vbus_values)
         _DEVICE_LOG.info(
             'host_time: %s size: %s delta_microseconds: %s '
             'vbus: %s vshunt: %s',
             host_time,
             str(packet_size),
-            str(delta_micros),
-            ','.join(str(value) for value in vshunt_values),
-            ','.join(str(value) for value in vbus_values),
+            delta_micros_str,
+            vbus_list_str,
+            vshunt_list_str,
             extra=dict(
                 extra_metadata_fields={
                     'host_time': host_time,
diff --git a/tools/gonk_tools/plot.py b/tools/gonk_tools/plot.py
index cc80441..ee5156f 100644
--- a/tools/gonk_tools/plot.py
+++ b/tools/gonk_tools/plot.py
@@ -189,11 +189,8 @@
 
             # Save the timestamp and vbus vshunt values for plotting.
             time_values.append((current_time - start_time).total_seconds())
-            # vshunt and vbus fields appear to be flipped in the log stream
-            #  coming from the gonk.  These two fields (12,14) are flipped here
-            #  to compensate. b/349079209
-            vshunt = list(int(i) for i in parts[12].split(','))
-            vbus = list(int(i) for i in parts[14].split(','))
+            vshunt = list(int(i) for i in parts[14].split(','))
+            vbus = list(int(i) for i in parts[12].split(','))
 
             ishunt: list[float] = get_shunt_currents(CHANNEL_MASK, vshunt)
             bus_voltages = get_bus_voltages(vbus)
