diff --git a/lib/foreground_task/task_handler.dart b/lib/foreground_task/task_handler.dart
index ac566817e2571cae021b5805a20af226f499e426..e40b84a17f542dfa20a00149b718979c0071d172 100644
--- a/lib/foreground_task/task_handler.dart
+++ b/lib/foreground_task/task_handler.dart
@@ -399,7 +399,7 @@ class ForegroundTaskHandler extends TaskHandler {
       ..sensorTwoDistances = s2Data
       ..sensorOneDistances = s1Data
       ..confirmedIdx = confirmedIdx
-      ..timestamp = now
+      ..timestamp = now.toUtc()
       ..batteryVoltage = 4.0 // TODO: get the battery voltage via ble
       ..latitude = location.latitude
       ..longitude = location.longitude
diff --git a/lib/manager/upload_manger.dart b/lib/manager/upload_manger.dart
index 9fa1f93dd950406b86fd198aa1ff0199eec76de9..0bd673ea1dacb9091d6d641ccef002008030aa55 100644
--- a/lib/manager/upload_manger.dart
+++ b/lib/manager/upload_manger.dart
@@ -4,6 +4,7 @@ import 'package:app/manager/settings_manager.dart';
 import 'package:http/http.dart' as http;
 import 'package:http_parser/http_parser.dart';
 import 'package:isar/isar.dart';
+import 'package:package_info_plus/package_info_plus.dart';
 import 'package:sentry_flutter/sentry_flutter.dart';
 import 'package:shared_preferences/shared_preferences.dart';
 
@@ -82,20 +83,21 @@ class UploadManager {
   }
 
   String _genMetadataHeader(Trip trip, int maxMeasurements,
-      int handlebarDistance, int maxFlightTimeinMicroSec) {
+      int handlebarDistance, int maxFlightTimeinMicroSec, String appVersion) {
     // https://github.com/openbikesensor/OpenBikeSensorFirmware/blob/main/docs/software/firmware/csv_format.md#metadata
     final fields = [
       "OBSFirmwareVersion=${trip.obsFirmwareRevision}",
       "OBSDataFormat=2",
       "DataPerMeasurement=3",
       "MaximumMeasurementsPerLine=$maxMeasurements",
-      "OffsetLeft=${handlebarDistance / 2}",
-      "OffsetRight=${handlebarDistance / 2}",
+      "OffsetLeft=$handlebarDistance",
+      "OffsetRight=$handlebarDistance",
       "NumberOfDefinedPrivacyAreas=0", // can be 0 as we do not record in privacy areas
       "PrivacyLevelApplied=AbsolutePrivacy",
       "MaximumValidFlightTimeMicroseconds=$maxFlightTimeinMicroSec",
       "DistanceSensorsUsed=HC-SR04/JSN-SR04T", // TODO read from db
-      "DeviceId=obs-app"
+      "DeviceId=obs-app-$appVersion",
+      "TimeZone=UTC"
     ];
     return fields.join("&");
   }
@@ -193,11 +195,16 @@ class UploadManager {
     return fields.join(";");
   }
 
-  String _genCSVFile(
-      Trip trip, int handlebarDistance, int maxFlightTimeinMicroSec) {
+  String _genCSVFile(Trip trip, int handlebarDistance, String appVersion,
+      int maxFlightTimeinMicroSec) {
     final maxMeasurements = _maxDistanceForTrip(trip);
     final metadata = _genMetadataHeader(
-        trip, maxMeasurements, handlebarDistance, maxFlightTimeinMicroSec);
+      trip,
+      maxMeasurements,
+      handlebarDistance,
+      maxFlightTimeinMicroSec,
+      appVersion,
+    );
     final header = _genCSVHeader(trip, maxMeasurements);
 
     final List<String> rows = [];
@@ -226,7 +233,9 @@ class UploadManager {
       throw Exception("No portal key set");
     }
 
-    String csvContent = _genCSVFile(trip, handlebarDistance,
+    final appVersion = (await PackageInfo.fromPlatform()).version;
+
+    String csvContent = _genCSVFile(trip, handlebarDistance, appVersion,
         maxMeasurements * MICRO_SEC_TO_CM_DIVIDER.toInt());
 
     String filename = "${trip.trackID}_${trip.createdAt.toString()}.csv";