pyfastnet 2.0.4__tar.gz → 2.0.6__tar.gz

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 (26) hide show
  1. {pyfastnet-2.0.4/pyfastnet.egg-info → pyfastnet-2.0.6}/PKG-INFO +1 -1
  2. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/fastnet_decoder/mappings.py +26 -1
  3. {pyfastnet-2.0.4 → pyfastnet-2.0.6/pyfastnet.egg-info}/PKG-INFO +1 -1
  4. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/setup.py +1 -1
  5. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/LICENSE +0 -0
  6. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/MANIFEST.in +0 -0
  7. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/README.md +0 -0
  8. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/fastnet_decoder/__init__.py +0 -0
  9. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/fastnet_decoder/decode_fastnet.py +0 -0
  10. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/fastnet_decoder/frame_buffer.py +0 -0
  11. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/fastnet_decoder/logger.py +0 -0
  12. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/fastnet_decoder/utils.py +0 -0
  13. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/pyfastnet.egg-info/SOURCES.txt +0 -0
  14. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/pyfastnet.egg-info/dependency_links.txt +0 -0
  15. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/pyfastnet.egg-info/top_level.txt +0 -0
  16. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/setup.cfg +0 -0
  17. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/tests/test_apparent_frame.py +0 -0
  18. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/tests/test_autopilot_frame.py +0 -0
  19. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/tests/test_channels.py +0 -0
  20. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/tests/test_depth_frame.py +0 -0
  21. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/tests/test_format07_msb_regression.py +0 -0
  22. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/tests/test_format08_layout.py +0 -0
  23. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/tests/test_heel_frame.py +0 -0
  24. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/tests/test_rudder_frame.py +0 -0
  25. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/tests/test_tide_frame.py +0 -0
  26. {pyfastnet-2.0.4 → pyfastnet-2.0.6}/tests/test_true_frame.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyfastnet
3
- Version: 2.0.4
3
+ Version: 2.0.6
4
4
  Summary: A Python library for decoding FastNet protocol data streams.
5
5
  Home-page: https://github.com/ghotihook/pyfastnet
6
6
  Author: Alex Salmon
@@ -282,11 +282,36 @@ SEGMENT_A = {
282
282
  0x8c: "=[data]", 0x0c: "[data]=",
283
283
  0xf3: "H[data]", 0x73: "[data]H",
284
284
  0x00: " ",
285
+
286
+ # Plain-positive layout codes (no sign decoration) confirmed from raw log replay
287
+ 0x80: " ", # depth channels (0xC1/C2/C3)
288
+ 0x5c: " ", # sea temperature °C
289
+ 0x74: " ", # sea temperature °F
290
+ 0x58: " ", # autopilot compass target (0–360° bearing)
291
+ 0x99: " ", # VMG positive direction
292
+ 0xbb: " ", # VMG / tidal drift positive
293
+ 0xd8: " ", # leeway (always 0.0 in captured data; defaulted to plain)
294
+ 0x54: " ", # true wind angle positive (starboard tack)
295
+ 0x01: " ", # linear sensor null/zero state
285
296
  }
286
297
 
287
298
  SEGMENT_B = {
288
299
  0xBE: "O", 0xE8: "F", 0x62: "n",
289
300
  0x72: "o", 0x40: "-", 0x00: " ",
301
+
302
+ # Digits confirmed from 7-segment encoding (e=bit7,g=bit6,f=bit5,d=bit4,a=bit3,b=bit2,c=bit1,dp=bit0)
303
+ # and verified against sea-temperature display context (format 0x06 on channel 0x1F)
304
+ 0x06: "1",
305
+ 0xFA: "6", # a,c,d,e,f,g — also confirmed by -6°C display context
306
+ 0x0E: "7", # a,b,c
307
+ 0xFE: "8", # all segments
308
+
309
+ # B&G variant digit encoding (non-standard segment activation):
310
+ 0xDA: "2", # a,c,d,e,g (uses lower-right c instead of standard upper-right b)
311
+ 0xDE: "3", # a,b,c,d,e,g (standard 3 + lower-left e)
312
+ 0xC6: "4", # b,c,e,g (uses lower-left e instead of standard upper-left f; 2 occurrences)
313
+
314
+ 0xB8: "C", # Celsius label — a,d,e,f segments
290
315
  }
291
316
 
292
317
  AUTOPILOT_MODES = {
@@ -302,7 +327,7 @@ FORMAT_SIZE_MAP = {
302
327
  0x04: 4, # 32 bits (4 bytes)
303
328
  0x05: 4, # 32 bits (4 bytes)
304
329
  0x06: 4, # 32 bits (4 bytes)
305
- 0x07: 4, # 16 bits (2 bytes)
330
+ 0x07: 4, # 32 bits (4 bytes)
306
331
  0x08: 2, # 16 bits (2 bytes)
307
332
  0x0A: 4 # 32 bits (4 bytes)
308
333
  }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyfastnet
3
- Version: 2.0.4
3
+ Version: 2.0.6
4
4
  Summary: A Python library for decoding FastNet protocol data streams.
5
5
  Home-page: https://github.com/ghotihook/pyfastnet
6
6
  Author: Alex Salmon
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name="pyfastnet",
5
- version="2.0.4", # Ensure this matches your intended version
5
+ version="2.0.6", # Ensure this matches your intended version
6
6
  author="Alex Salmon",
7
7
  author_email="alex@ivila.net",
8
8
  description="A Python library for decoding FastNet protocol data streams.",
File without changes
File without changes
File without changes
File without changes