diff options
author | cnlohr <lohr85@gmail.com> | 2017-02-14 10:03:18 -0500 |
---|---|---|
committer | cnlohr <lohr85@gmail.com> | 2017-02-14 10:03:18 -0500 |
commit | 119a205619632076c7b258eaa6c28dd7bcd2c294 (patch) | |
tree | d99f9611314c7a565190570e2c337f8ffc6ae9c3 /tools/ootx_decode/ootx_decoder.h | |
parent | 1f760c1341cd170f3cf519b5b01c1fa8c5b9c610 (diff) | |
download | libsurvive-119a205619632076c7b258eaa6c28dd7bcd2c294.tar.gz libsurvive-119a205619632076c7b258eaa6c28dd7bcd2c294.tar.bz2 |
integrate josh's new work. It works! #19 is just about solved!
Diffstat (limited to 'tools/ootx_decode/ootx_decoder.h')
-rw-r--r-- | tools/ootx_decode/ootx_decoder.h | 68 |
1 files changed, 0 insertions, 68 deletions
diff --git a/tools/ootx_decode/ootx_decoder.h b/tools/ootx_decode/ootx_decoder.h deleted file mode 100644 index c707159..0000000 --- a/tools/ootx_decode/ootx_decoder.h +++ /dev/null @@ -1,68 +0,0 @@ -// (C) 2017 Joshua Allen, MIT/x11 License. -// -//All MIT/x11 Licensed Code in this file may be relicensed freely under the GPL or LGPL licenses. - -#ifndef OOTX_DECODER_H -#define OOTX_DECODER_H - -#include <stddef.h> -#include <stdint.h> - -typedef struct { - uint16_t length; - uint8_t* data; - uint32_t crc32; -} ootx_packet; - -typedef struct { - uint8_t* buffer; - uint16_t buf_offset; - uint8_t bits_written; - uint16_t* payload_size; - - uint32_t preamble; - uint8_t bits_processed; - uint8_t found_preamble; - - uint8_t bit_count[2]; -} ootx_decoder_context; - - -typedef float float16; - -typedef struct { - uint16_t fw_version;//Firmware version (bit 15..6), protocol version (bit 5..0) - uint32_t id; //Unique identifier of the base station - float16 fcal_0_phase; //"phase" for rotor 0 - float16 fcal_1_phase; //"phase" for rotor 1 - float16 fcal_0_tilt; //"tilt" for rotor 0 - float16 fcal_1_tilt; //"tilt" for rotor 1 - uint8_t sys_unlock_count; //Lowest 8 bits of the rotor desynchronization counter - uint8_t hw_version; //Hardware version - float16 fcal_0_curve; //"curve" for rotor 0 - float16 fcal_1_curve; //"curve" for rotor 1 - int8_t accel_dir_x; //"orientation vector" - int8_t accel_dir_y; //"orientation vector" - int8_t accel_dir_z; //"orientation vector" - float16 fcal_0_gibphase; //"gibbous phase" for rotor 0 (normalized angle) - float16 fcal_1_gibphase; //"gibbous phase" for rotor 1 (normalized angle) - float16 fcal_0_gibmag; //"gibbous magnitude" for rotor 0 - float16 fcal_1_gibmag; //"gibbous magnitude" for rotor 1 - uint8_t mode_current; //Currently selected mode (default: 0=A, 1=B, 2=C) - uint8_t sys_faults; //"fault detect flags" (should be 0) -} lighthouse_info_v6; - -void init_lighthouse_info_v6(lighthouse_info_v6* lhi, uint8_t* data); -void print_lighthouse_info_v6(lighthouse_info_v6* lhi); - -void ootx_init_decoder_context(ootx_decoder_context *ctx); -void ootx_free_decoder_context(ootx_decoder_context *ctx); - -uint8_t ootx_process_bit(ootx_decoder_context *ctx, uint32_t length); - -uint8_t ootx_decode_bit(uint32_t length); - -extern void (*ootx_packet_clbk)(ootx_packet* packet); -extern void (*ootx_bad_crc_clbk)(ootx_packet* packet, uint32_t crc); - -#endif
\ No newline at end of file |