Skip to content

faisalthaheem/python-stanag-4586-EDA-v1

Repository files navigation

Python package for STANAG 4586 Edition A Version 1

Tested with python 3.8x

Published branch Development branch
build status main branch build status development branch

This repository conotains code that will enable encoding/decoding of STANAG messages. So far the following messages have been implemented which should enable basic communication with a platform, messages are being continually added, please check back soon for updates.

  • Message wrapper
  • 01
  • 20
  • 21
  • 200
  • 201
  • 300
  • 301
  • 302
  • 1200
  • 20000 [Private message for EO Pan and Tilt functionality]
  • 20010 [Private message for query request]
  • 20020 [Private message for query response]
  • 20030 [Private message for mast command]
  • 20040 [Private message for mast status]

See further below for simple usage.

Important note

Please note this is a low level library and does not provide any network I/O or message assembly/disassembly.

Take a look at the python-stanag-4586-vsm library which provides a basic implementation of a vehicle specific module (VSM) and uses this library to respond to discover, authorization and control messages.

Simple usage example

Assuming you would have already parsed the message wrapper and know what message is contained in the byte array, save the following in a file called stanag-test.py

from stanag4586edav1.message01 import *

# We create a dummy byte stream containing only Message 01 contents
PACKET_TO_DECODE = b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x50\x00\x00\x00\xA0\x00\x00\x00\x00" \
b"\x00\x00\x00\x00\x00\x39\x00\x00\x01\x00\x00\x00\x00\x01\x00"


def decode_message01():
    msg01 = Message01(PACKET_TO_DECODE)
    
    print(msg01.time_stamp)
    print(msg01.cucs_id)

decode_message01()

Executing the above code will produce output as follows

$ python stanag-test.py
0.0
160

About

Python implementation of STANAG 4586 Edition A V1

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published