oceanarray 0.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. oceanarray/__init__.py +20 -0
  2. oceanarray/_version.py +1 -0
  3. oceanarray/cli.py +1343 -0
  4. oceanarray/clock_offset.py +675 -0
  5. oceanarray/config/OS1_sensor_attrs.yaml +49 -0
  6. oceanarray/config/OS1_var_names.yaml +5 -0
  7. oceanarray/config/OS1_vocab_attrs.yaml +84 -0
  8. oceanarray/config/legacy/project_RAPID.yaml +69 -0
  9. oceanarray/config/legacy/rodb_keys.txt +206 -0
  10. oceanarray/config/legacy/rodb_keys.yaml +1012 -0
  11. oceanarray/config/logging.yaml +28 -0
  12. oceanarray/legacy/__init__.py +47 -0
  13. oceanarray/legacy/caldip.py +753 -0
  14. oceanarray/legacy/convertOS.py +527 -0
  15. oceanarray/legacy/find_deployment.py +489 -0
  16. oceanarray/legacy/mooring_rodb.py +429 -0
  17. oceanarray/legacy/process_rodb.py +369 -0
  18. oceanarray/legacy/rodb.py +330 -0
  19. oceanarray/logger.py +192 -0
  20. oceanarray/logsheet/__init__.py +60 -0
  21. oceanarray/logsheet/_columns.py +97 -0
  22. oceanarray/logsheet/_config.py +245 -0
  23. oceanarray/logsheet/_firmware.py +43 -0
  24. oceanarray/logsheet/_latex.py +128 -0
  25. oceanarray/logsheet/_render.py +126 -0
  26. oceanarray/logsheet/builders/__init__.py +13 -0
  27. oceanarray/logsheet/builders/caldip_download.py +195 -0
  28. oceanarray/logsheet/builders/caldip_setup.py +188 -0
  29. oceanarray/logsheet/builders/deployment_setup.py +218 -0
  30. oceanarray/logsheet/builders/mooring_download.py +243 -0
  31. oceanarray/logsheet/builders/recovery.py +157 -0
  32. oceanarray/logsheet/data/column_defs.yaml +686 -0
  33. oceanarray/logsheet/data/latex_templates/_base_instrument.tex.j2 +42 -0
  34. oceanarray/logsheet/data/latex_templates/caldip_download.tex.j2 +47 -0
  35. oceanarray/logsheet/data/latex_templates/caldip_setup.tex.j2 +70 -0
  36. oceanarray/logsheet/data/latex_templates/deployment_setup.tex.j2 +97 -0
  37. oceanarray/logsheet/data/latex_templates/mooring_download.tex.j2 +54 -0
  38. oceanarray/logsheet/data/latex_templates/recovery.tex.j2 +103 -0
  39. oceanarray/mooring_level.py +1368 -0
  40. oceanarray/oceanarray.mplstyle +18 -0
  41. oceanarray/parameters.py +270 -0
  42. oceanarray/plotter.py +942 -0
  43. oceanarray/plotters/__init__.py +97 -0
  44. oceanarray/plotters/_animation.py +261 -0
  45. oceanarray/plotters/_current.py +705 -0
  46. oceanarray/plotters/_diagnostic.py +667 -0
  47. oceanarray/plotters/_helpers.py +57 -0
  48. oceanarray/plotters/_primitives.py +101 -0
  49. oceanarray/plotters/_section.py +16 -0
  50. oceanarray/plotters/_timeseries.py +11 -0
  51. oceanarray/rapid_interp.py +739 -0
  52. oceanarray/read_rbr_hex.py +541 -0
  53. oceanarray/readers.py +303 -0
  54. oceanarray/report/__init__.py +5 -0
  55. oceanarray/report/_array.py +386 -0
  56. oceanarray/report/_grid.py +539 -0
  57. oceanarray/report/_html_helpers.py +1004 -0
  58. oceanarray/report/_instrument.py +853 -0
  59. oceanarray/report/_mooring.py +1385 -0
  60. oceanarray/report/_plots.py +4284 -0
  61. oceanarray/report/_stack.py +941 -0
  62. oceanarray/stage1.py +1959 -0
  63. oceanarray/stage2.py +1160 -0
  64. oceanarray/stage3.py +2494 -0
  65. oceanarray/time_gridding.py +958 -0
  66. oceanarray/tools.py +400 -0
  67. oceanarray/transports.py +1 -0
  68. oceanarray/utilities.py +538 -0
  69. oceanarray/validation.py +389 -0
  70. oceanarray/writers.py +99 -0
  71. oceanarray-0.1.0.dist-info/METADATA +503 -0
  72. oceanarray-0.1.0.dist-info/RECORD +76 -0
  73. oceanarray-0.1.0.dist-info/WHEEL +5 -0
  74. oceanarray-0.1.0.dist-info/entry_points.txt +2 -0
  75. oceanarray-0.1.0.dist-info/licenses/LICENSE +21 -0
  76. oceanarray-0.1.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,686 @@
1
+ # column_defs.yaml
2
+ # Column definitions for each logsheet type x instrument type.
3
+ # Read by sheet_builder.py.
4
+ #
5
+ # COLUMN LIBRARY (top section)
6
+ # ─────────────────────────────
7
+ # All named columns with their default header, width, input type and (where
8
+ # appropriate) example value. Each sheet type below references columns by
9
+ # key. Lists may contain:
10
+ # - plain string : use library entry as-is
11
+ # - {key: {overrides}}: use library entry with field overrides (e.g. width,
12
+ # example, header)
13
+ # - {header: ..., width: ..., input: ...}: inline full definition (bypasses
14
+ # the library entirely; used only where a column is
15
+ # unique to one sheet)
16
+ #
17
+ # width values are RELATIVE weights — sheet_builder.py normalises them to
18
+ # fill A4 landscape text width. Rough scale: 1.0 ≈ normal, 0.7 ≈ narrow
19
+ # tick column, 2.0+ ≈ wide text/date column.
20
+
21
+ # ===========================================================================
22
+ # COLUMN LIBRARY
23
+ # ===========================================================================
24
+
25
+ column_library:
26
+
27
+ # ── Universal ─────────────────────────────────────────────────────────────
28
+ sn:
29
+ header: "SN"
30
+ width: 0.6
31
+ input: readonly
32
+ pc_used:
33
+ header: "PC used"
34
+ width: 0.8
35
+ input: free
36
+ example: "ifm23-w01"
37
+ transfer_to_server:
38
+ header: "Transfer to server?"
39
+ width: 0.7
40
+ input: tick
41
+ example: "\\checkmark"
42
+ date_time_ok:
43
+ header: "Date & time ok?"
44
+ width: 0.6
45
+ input: tick
46
+ example: "\\checkmark"
47
+ startlater:
48
+ header: "STARTLATER sent?"
49
+ width: 0.85
50
+ input: tick
51
+ example: "\\checkmark"
52
+
53
+ # ── Download shared ────────────────────────────────────────────────────────
54
+ visible_defects:
55
+ header: "Visible defects?"
56
+ width: 1.2
57
+ input: free
58
+ example: "--"
59
+ stopped_ok:
60
+ header: "Stopped ok?"
61
+ width: 0.7
62
+ input: tick
63
+ example: "\\checkmark"
64
+ last_sample_num:
65
+ header: "Last sample #"
66
+ width: 1.0
67
+ input: free
68
+ scan_range:
69
+ header: "Scan range (from-to)"
70
+ width: 1.2
71
+ input: free
72
+ download_complete:
73
+ header: "Download complete?"
74
+ width: 0.8
75
+ input: tick
76
+ example: "\\checkmark"
77
+ filename_convention:
78
+ header: "Filename ({download_convention})"
79
+ width: 1.5
80
+ input: free
81
+ convert_to_cnv:
82
+ header: "Convert to CNV?"
83
+ width: 0.7
84
+ input: tick
85
+ example: "\\checkmark"
86
+ convert_to_csv:
87
+ header: "Convert to CSV?"
88
+ width: 0.7
89
+ input: tick
90
+ example: "\\checkmark"
91
+ convert_hex_matlab:
92
+ header: "Convert hex to legacy Matlab (Ruskin)?"
93
+ width: 1.0
94
+ input: tick
95
+ example: "\\checkmark"
96
+ file_size_mb:
97
+ header: "File size (MB)"
98
+ width: 0.8
99
+ input: free
100
+
101
+ # ── Status/clock timing ───────────────────────────────────────────────────
102
+ computer_time_at_ds:
103
+ header: "Computer time at ds"
104
+ width: 0.7
105
+ input: free
106
+ example: "10:23:00"
107
+ instrument_time_at_ds:
108
+ header: "Instrument time at ds"
109
+ width: 0.7
110
+ input: free
111
+ example: "10:23:17"
112
+ computer_time_at_status:
113
+ header: "Computer time at status"
114
+ width: 0.7
115
+ input: free
116
+ example: "10:23:00"
117
+ instrument_time_at_status:
118
+ header: "Instrument time at status"
119
+ width: 0.7
120
+ input: free
121
+ example: "10:23:17"
122
+
123
+ # ── MicroCAT old_seaterm commands ─────────────────────────────────────────
124
+ interval_10s:
125
+ header: "INTERVAL= (10)"
126
+ width: .8
127
+ input: free
128
+ samplenum_no_reset:
129
+ header: "SAMPLENUM= (do NOT reset)"
130
+ width: 1.4
131
+ input: free
132
+ samplenum_reset_0:
133
+ header: "SAMPLENUM=0 sent?"
134
+ width: 1.0
135
+ input: tick
136
+ example: "\\checkmark"
137
+ storetime_y:
138
+ header: "STORETIME= (y)"
139
+ width: 0.85
140
+ input: free
141
+ navg_1:
142
+ header: "NAVG= (1)"
143
+ width: 0.8
144
+ input: free
145
+ start_ddmmyyyy:
146
+ header: "START [DDMMYYYY]"
147
+ width: 1.8
148
+ input: free
149
+ start_hhmmss:
150
+ header: "START [hhmmss]"
151
+ width: 1.8
152
+ input: free
153
+ start_datetime:
154
+ header: "Start date/time"
155
+ width: 2.0
156
+ input: free
157
+
158
+ # ── MicroCAT seaterm_v2 commands ──────────────────────────────────────────
159
+ sampleinterval_10s:
160
+ header: "SAMPLEINTERVAL =(10)"
161
+ width: 1.15
162
+ input: free
163
+ output_settings_v2:
164
+ header: "OutputExecutedTag=n Outputformat=3 BaudRate=38400"
165
+ width: 1.4
166
+ input: tick
167
+ txrealtime_Y:
168
+ header: "TXREALTIME = ?"
169
+ width: 0.85
170
+ input: free
171
+ txrealtime_N:
172
+ header: "TXREALTIME =(N)"
173
+ width: 0.7
174
+ input: free
175
+ samplenumber_no_reset:
176
+ header: "SAMPLENUMBER= (do NOT reset)"
177
+ width: 1.1
178
+ input: free
179
+ samplenumber_reset_0:
180
+ header: "SAMPLENUMBER =0 sent?"
181
+ width: 1.0
182
+ input: tick
183
+ example: "\\checkmark"
184
+ startdatetime:
185
+ header: "STARTDATETIME= [MMDDYYYY][hhmmss]"
186
+ width: 1.8
187
+ input: free
188
+
189
+ # ── MicroCAT seaterm_v2_odo extras ────────────────────────────────────────
190
+ oxntau_1:
191
+ header: "OXNTAU= (1)"
192
+ width: 0.7
193
+ input: free
194
+ oxntau_7:
195
+ header: "OXNTAU= (7)"
196
+ width: 0.7
197
+ input: free
198
+ oxtau20_55:
199
+ header: "OXTAU20= (5.5)"
200
+ width: 0.7
201
+ input: free
202
+ adaptivepump_N:
203
+ header: "ADAPTIVEPUMP CONTROL=N"
204
+ width: 0.8
205
+ input: free
206
+ adaptivepump_Y:
207
+ header: "ADAPTIVEPUMP CONTROL=Y"
208
+ width: 0.8
209
+ input: free
210
+
211
+ # ── Aquadopp ──────────────────────────────────────────────────────────────
212
+ sampling_interval:
213
+ header: "Sampling interval (s)"
214
+ width: .8
215
+ input: free
216
+ average_interval:
217
+ header: "Average interval (s)"
218
+ width: .8
219
+ input: free
220
+ blanking_dist:
221
+ header: "Blanking dist (m)"
222
+ width: 0.8
223
+ input: free
224
+ capture_file:
225
+ header: "Capture file"
226
+ width: .5
227
+ input: free
228
+ compass_update:
229
+ header: "Compass update (s)"
230
+ width: 0.8
231
+ input: free
232
+ coordinate_system:
233
+ header: "Coordinate system"
234
+ width: 0.8
235
+ input: free
236
+ diag_interval:
237
+ header: "Diag interval"
238
+ width: 0.5
239
+ input: free
240
+ diag_samples:
241
+ header: "Diag samples"
242
+ width: 0.7
243
+ input: free
244
+ start_datetime_aq:
245
+ header: "Start date/time [DDMMYYYY hhmmss]"
246
+ width: 2.0
247
+ input: free
248
+ screenshot_file:
249
+ header: "Screenshot file"
250
+ width: 1.5
251
+ input: free
252
+ sos_measured_or_fixed:
253
+ header: "Speed of sound: measured | fixed"
254
+ width: 1.0
255
+ input: free
256
+ sos_fixed:
257
+ header: "Speed of sound measured"
258
+ width: 1.0
259
+ input: free
260
+ sos_salinity:
261
+ header: "If measured, salinity"
262
+ width: 1.0
263
+ input: free
264
+
265
+ # ── RBR ───────────────────────────────────────────────────────────────────
266
+ rbr_model:
267
+ header: "Model"
268
+ width: 1.2
269
+ input: readonly
270
+ sample_interval:
271
+ header: "Sample interval (s)"
272
+ width: 0.8
273
+ input: free
274
+ enabled:
275
+ header: "Enabled?"
276
+ width: 0.7
277
+ input: tick
278
+
279
+ # ===========================================================================
280
+ # CALDIP SETUP
281
+ # ===========================================================================
282
+
283
+ microcat_setup_caldip:
284
+ data_path_note: |
285
+ Data path: {caldip_data}/cal_dip/{cast_label}/
286
+ Firmware < 3.0d: {default_filename}_cal_dip_data.asc
287
+ Firmware >= 3.0d: {default_filename}_cal_dip_data.xml -> Convert XML -> .cnv
288
+
289
+ columns_old_seaterm:
290
+ - sn
291
+ - date_time_ok
292
+ - interval_10s: {example: "10"}
293
+ - samplenum_no_reset: {example: "NO"}
294
+ - storetime_y: {example: "--"}
295
+ - navg_1: {example: "1"}
296
+ - start_ddmmyyyy
297
+ - start_hhmmss
298
+ - startlater
299
+ - transfer_to_server
300
+
301
+ columns_seaterm_v2:
302
+ - sn
303
+ - date_time_ok: {width: 0.55}
304
+ #- output_settings_v2: {example: "\\checkmark"}
305
+ - sampleinterval_10s: {example: "10"}
306
+ - txrealtime_Y: {example: "N"}
307
+ - samplenumber_no_reset: {example: "NO"}
308
+ - startdatetime
309
+ - startlater
310
+ - transfer_to_server
311
+
312
+ columns_seaterm_v2_odo:
313
+ - sn
314
+ - date_time_ok: {width: 0.7}
315
+ - sampleinterval_10s: {width: 1.0, example: "10"}
316
+ - oxntau_1
317
+ - oxtau20_55
318
+ - adaptivepump_N
319
+ # - output_settings_v2: {width: 1.2, example: "\\checkmark"}
320
+ - txrealtime_Y: {width: 0.7, example: "N"}
321
+ - samplenumber_no_reset: {width: 1.3, example: "--"}
322
+ - startdatetime: {width: 2.5}
323
+ - startlater
324
+ - transfer_to_server
325
+
326
+ aquadopp_setup_caldip:
327
+ section_title: "Aquadopp Calibration Dip Setup"
328
+ columns:
329
+ - sn
330
+ - sampling_interval
331
+ - average_interval
332
+ - blanking_dist
333
+ - compass_update
334
+ - coordinate_system
335
+ - diag_interval
336
+ - start_datetime_aq
337
+ - transfer_to_server
338
+
339
+ rbr_setup_caldip:
340
+ section_title: "RBR Thermistor Calibration Dip Setup"
341
+ columns:
342
+ - sn
343
+ - date_time_ok: {width: 0.7}
344
+ - sample_interval: {example: "1"}
345
+ - start_ddmmyyyy: {width: 1.6, header: "START [DD/MM/YYYY]", example: "10/07/2026"}
346
+ - start_hhmmss: {width: 1.4, header: "START [hh:mm:ss]"}
347
+ - enabled: {example: "\\checkmark"}
348
+ - screenshot_file: {header: "Screenshot?", width: 0.8, input: tick, example: "\\checkmark"}
349
+ - transfer_to_server
350
+
351
+ # ===========================================================================
352
+ # CALDIP DOWNLOAD
353
+ # ===========================================================================
354
+
355
+ microcat_download_caldip:
356
+ data_path_note: |
357
+ Data path: {caldip_data}/cal_dip/{cast_label}/
358
+ Firmware < 3.0d: {default_filename}_cal_dip_data.asc
359
+ Firmware >= 3.0d: {default_filename}_cal_dip_data.xml -> Convert XML -> .cnv
360
+
361
+ columns_old_seaterm:
362
+ - sn
363
+ - visible_defects
364
+ - pc_used
365
+ - date_time_ok
366
+ - stopped_ok
367
+ - last_sample_num
368
+ - filename_convention: {header: "Filename ({default_filename}_cal_dip_data.asc)", width: 2.0}
369
+ - scan_range: {width: 1.5}
370
+ - file_size_mb
371
+ - transfer_to_server
372
+
373
+ columns_seaterm_v2:
374
+ - sn
375
+ - visible_defects
376
+ - pc_used
377
+ - date_time_ok
378
+ - stopped_ok
379
+ - last_sample_num
380
+ - filename_convention: {header: "Filename ({default_filename}_cal_dip_data.xml)", width: 2.0}
381
+ - scan_range: {width: 1.5}
382
+ - file_size_mb
383
+ - transfer_to_server
384
+
385
+ columns_seaterm_v2_odo:
386
+ - sn
387
+ - visible_defects
388
+ - pc_used
389
+ - date_time_ok
390
+ - stopped_ok: {width: .5}
391
+ - last_sample_num
392
+ - filename_convention: {header: "Filename ({default_filename}_cal_dip_data.xml)", width: 2.5}
393
+ - scan_range: {width: 1.0}
394
+ - file_size_mb: {width: .5}
395
+ - transfer_to_server
396
+
397
+ aquadopp_download_caldip:
398
+ section_title: "Aquadopp Calibration Dip Download"
399
+ data_path_note: |
400
+ Data path: {caldip_data}/cal_dip/{cast_label}/
401
+ Note: only Aquadopps with a .prf file need converting to csv; others can be transferred as-is.
402
+ columns:
403
+ - sn
404
+ - visible_defects
405
+ - pc_used
406
+ - stopped_ok
407
+ - filename_convention: {header: "Filename ({default_filename}_cal_dip_data)", width: 2.5}
408
+ - download_complete
409
+ - convert_to_csv
410
+ - file_size_mb
411
+ - transfer_to_server
412
+
413
+ rbr_solot_download_caldip:
414
+ section_title: "RBR soloT Calibration Dip Download"
415
+ data_path_note: |
416
+ Data path: {caldip_data}/cal_dip/{cast_label}/
417
+ columns:
418
+ - sn: {example: "101645"}
419
+ - visible_defects: {example: "--"}
420
+ - pc_used
421
+ - stopped_ok
422
+ - download_complete
423
+ - filename_convention: {example: "_cal_dip_data.rsk"}
424
+ - file_size_mb
425
+ - transfer_to_server
426
+
427
+ rbr_tr1050_download_caldip:
428
+ section_title: "RBR TR-1050 Calibration Dip Download"
429
+ data_path_note: |
430
+ Data path: {caldip_data}/cal_dip/{cast_label}/
431
+ Download .hex via Ruskin; convert hex to legacy Matlab before uploading.
432
+ columns:
433
+ - sn: {example: "15576"}
434
+ - visible_defects: {example: "bent thermistor"}
435
+ - pc_used
436
+ - stopped_ok
437
+ - filename_convention: {example: "_cal_dip_data.hex"}
438
+ - download_complete
439
+ - convert_hex_matlab
440
+ - file_size_mb
441
+ - transfer_to_server
442
+
443
+ # ===========================================================================
444
+ # MOORING DOWNLOAD (post-deployment, raw data)
445
+ # ===========================================================================
446
+
447
+ microcat_download_mooring:
448
+ data_path_note: |
449
+ Data path: {raw_data}/{instrument}/{mooring}/
450
+ Filename: {download_convention}
451
+
452
+ columns_old_seaterm:
453
+ - sn: {example: "2941"}
454
+ - visible_defects: {example: "missing cage"}
455
+ - pc_used
456
+ - stopped_ok: {width: 0.6}
457
+ - last_sample_num: {example: "23724"}
458
+ - computer_time_at_ds
459
+ - instrument_time_at_ds
460
+ - scan_range: {example: "0--23724"}
461
+ - filename_convention: {example: "_recovery.asc"}
462
+ - file_size_mb
463
+ - transfer_to_server
464
+
465
+ columns_seaterm_v2:
466
+ - sn: {example: "7507"}
467
+ - visible_defects: {example: "--"}
468
+ - pc_used
469
+ - stopped_ok
470
+ - computer_time_at_ds
471
+ - instrument_time_at_ds
472
+ - last_sample_num: {example: "23724"}
473
+ - filename_convention: {example: "_recovery.xml"}
474
+ - scan_range: {example: "0--23724", width: 1.5}
475
+ - convert_to_cnv
476
+ - file_size_mb
477
+ - transfer_to_server
478
+
479
+ columns_seaterm_v2_odo:
480
+ - sn: {example: "13995"}
481
+ - visible_defects: {example: "--"}
482
+ - pc_used
483
+ - computer_time_at_ds
484
+ - instrument_time_at_ds
485
+ - stopped_ok
486
+ - last_sample_num: {example: "23724"}
487
+ - scan_range: {example: "23000--23724", width: 1.0}
488
+ - filename_convention: {example: "_recovery.xml"}
489
+ - convert_to_cnv
490
+ - file_size_mb
491
+ - transfer_to_server
492
+
493
+ aquadopp_download_mooring:
494
+ section_title: "Aquadopp Download"
495
+ data_path_note: |
496
+ Data path: {raw_data}/{instrument}/{mooring}/
497
+ Filename: {download_convention} (instrument-generated name; rename to this convention)
498
+ columns:
499
+ - sn: {example: "400125"}
500
+ - visible_defects: {example: "--"}
501
+ - pc_used
502
+ - computer_time_at_status
503
+ - instrument_time_at_status
504
+ - download_complete
505
+ - filename_convention: {example: "A400125002_400125_recovery.zip"}
506
+ - convert_to_csv
507
+ - file_size_mb
508
+ - transfer_to_server
509
+
510
+ rbr_tr1050_download_mooring:
511
+ section_title: "RBR TR-1050 Download"
512
+ data_path_note: |
513
+ Data path: {raw_data}/{instrument}/{mooring}/
514
+ Download .hex via Ruskin; convert hex to legacy Matlab before uploading.
515
+ columns:
516
+ - sn: {example: "15576"}
517
+ - visible_defects: {example: "--"}
518
+ - pc_used
519
+ - computer_time_at_status
520
+ - instrument_time_at_status
521
+ - download_complete
522
+ - filename_convention: {example: "_recovery.hex"}
523
+ - convert_hex_matlab
524
+ - file_size_mb
525
+ - transfer_to_server
526
+
527
+ rbr_solot_download_mooring:
528
+ section_title: "RBR soloT Download"
529
+ data_path_note: |
530
+ Data path: {raw_data}/{instrument}/{mooring}/
531
+ Filename: {download_convention}
532
+ columns:
533
+ - sn: {example: "101645"}
534
+ - visible_defects: {example: "--"}
535
+ - pc_used
536
+ - computer_time_at_status
537
+ - instrument_time_at_status
538
+ - download_complete
539
+ - filename_convention: {example: "_recovery.rsk"}
540
+ - file_size_mb
541
+ - transfer_to_server
542
+
543
+ adcp_download_mooring:
544
+ section_title: "ADCP Download"
545
+ data_path_note: |
546
+ Data path: {raw_data}/{instrument}/{mooring}/
547
+ Download via TRDI software; confirm file size before disconnecting.
548
+ columns:
549
+ - sn: {example: "16430"}
550
+ - download_complete
551
+ - filename_convention: {header: "Filename", example: "16430_recovery.000"}
552
+ - file_size_mb: {example: "142"}
553
+ - pc_used
554
+ - transfer_to_server
555
+
556
+ # ===========================================================================
557
+ # DEPLOYMENT SETUP
558
+ # ===========================================================================
559
+
560
+ microcat_setup_deployment:
561
+ section_title: "SeaBird SBE37 Deployment Setup"
562
+ data_path_note: |
563
+ Capture files: {raw_data}/{instrument}/{mooring}/
564
+
565
+ columns_old_seaterm:
566
+ - sn: {example: "2941"}
567
+ - pc_used
568
+ - date_time_ok
569
+ - interval_10s: {header: "INTERVAL= {sint}", example: "30"}
570
+ - samplenum_reset_0
571
+ - storetime_y
572
+ - navg_1
573
+ - start_ddmmyyyy: {example: "07102026"}
574
+ - start_hhmmss: {example: "230000"}
575
+ - startlater
576
+ - transfer_to_server
577
+
578
+ columns_seaterm_v2:
579
+ - sn: {example: "7507"}
580
+ - pc_used
581
+ - date_time_ok: {width: .5}
582
+ # - output_settings_v2: {width: 1.2}
583
+ - sampleinterval_10s: {header: "SAMPLEINTERVAL= {sint}", example: "30"}
584
+ - txrealtime_N: {example: "N"}
585
+ - samplenumber_reset_0
586
+ - startdatetime: {width: 1.8, example: "07102026230000"}
587
+ - startlater: {width: .7}
588
+ - transfer_to_server
589
+
590
+ columns_seaterm_v2_odo:
591
+ - sn: {example: "13995"}
592
+ - pc_used
593
+ - date_time_ok
594
+ - sint_s
595
+ - sampleinterval_10s: {header: "SAMPLEINTERVAL= {sint}", example: "30"}
596
+ - oxntau_7
597
+ - oxtau20_55
598
+ - adaptivepump_Y
599
+ #- output_settings_v2: {width: 1.2}
600
+ - txrealtime_N: {example: "N"}
601
+ - samplenumber_reset_0
602
+ - startdatetime: {width: 2.5, example: "07102026230000"}
603
+ - startlater
604
+ - transfer_to_server
605
+
606
+ aquadopp_setup_deployment:
607
+ section_title: "Aquadopp Deployment Setup"
608
+ data_path_note: |
609
+ Capture files: {raw_data}/{instrument}/{mooring}/
610
+ columns:
611
+ - sn: {example: "10145"}
612
+ - pc_used
613
+ - date_time_ok
614
+ - sampling_interval: {example: "120"}
615
+ - average_interval: {example: "3"}
616
+ - blanking_dist: {example: "0.5"}
617
+ - compass_update: {example: "5s"}
618
+ - sos_measured_or_fixed: {example: "measured"}
619
+ - sos_salinity: {example: "35.0"}
620
+ - coordinate_system: {example: "beam"}
621
+ - diag_interval: {example: "720"}
622
+ - diag_samples: {example: "enable"}
623
+ - start_datetime_aq
624
+ - capture_file
625
+ - transfer_to_server
626
+
627
+ rbr_solot_setup_deployment:
628
+ section_title: "RBR soloT Deployment Setup"
629
+ data_path_note: |
630
+ Capture files: {raw_data}/{instrument}/{mooring}/
631
+ columns:
632
+ - sn: {example: "10145"}
633
+ - pc_used
634
+ - date_time_ok: {width: 0.7}
635
+ - sample_interval: {example: "1sec"}
636
+ - start_datetime
637
+ - enabled: {example: "\\checkmark"}
638
+ - screenshot_file: {header: "Screenshot?", width: 0.8, input: tick, example: "\\checkmark"}
639
+ - transfer_to_server
640
+
641
+ # ===========================================================================
642
+ # RECOVERY
643
+ # ===========================================================================
644
+
645
+ recovery:
646
+ section_title: "Mooring Recovery Log"
647
+ # Header block fields (not table columns -- rendered as form fields)
648
+ header_fields:
649
+ - label: "Mooring"
650
+ width: 2.5
651
+ - label: "Cruise"
652
+ width: 2.5
653
+ - label: "Date"
654
+ width: 2.5
655
+ - label: "Site arrival time"
656
+ width: 2.5
657
+ - label: "Time of first ranging"
658
+ width: 2.5
659
+
660
+ # Component table: inline defs (unique to this sheet)
661
+ columns_component:
662
+ - header: "ITEM"
663
+ width: 2.0
664
+ input: free
665
+ align: left
666
+ - header: "SER NO"
667
+ width: 1.5
668
+ input: free
669
+ - header: "COMMENT"
670
+ width: 5.0
671
+ input: free
672
+ - header: "TIME"
673
+ width: 1.5
674
+ input: free
675
+
676
+ # Ranging table: inline defs
677
+ columns_ranging:
678
+ - header: "Time"
679
+ width: 1.5
680
+ input: free
681
+ - header: "Range 1"
682
+ width: 1
683
+ input: free
684
+ - header: "Command / comment"
685
+ width: 9.0
686
+ input: free