From 0c231148fead0cdbb3c690fc4770b3bb146d98f1 Mon Sep 17 00:00:00 2001 From: OneOfEleven Date: Fri, 20 Oct 2023 19:37:03 +0100 Subject: [PATCH] added mdc1200 packet encoder --- Makefile | 7 +++ driver/bk4819.c | 45 ++++++++----- firmware.bin | Bin 60052 -> 60432 bytes firmware.packed.bin | Bin 60070 -> 60450 bytes mdc1200.c | 150 ++++++++++++++++++++++++++++++++++++++++++++ mdc1200.h | 10 +++ 6 files changed, 198 insertions(+), 14 deletions(-) create mode 100644 mdc1200.c create mode 100644 mdc1200.h diff --git a/Makefile b/Makefile index 0a9f563..aa089f4 100644 --- a/Makefile +++ b/Makefile @@ -31,6 +31,7 @@ ENABLE_REDUCE_LOW_MID_TX_POWER := 1 # Tx Alarm 0.6 kB ENABLE_ALARM := 0 ENABLE_TX1750 := 0 +ENABLE_MDC1200 := 1 ENABLE_PWRON_PASSWORD := 0 ENABLE_RESET_AES_KEY := 1 ENABLE_BIG_FREQ := 0 @@ -180,6 +181,9 @@ OBJS += frequencies.o OBJS += functions.o OBJS += helper/battery.o OBJS += helper/boot.o +ifeq ($(ENABLE_MDC1200),1) + OBJS += mdc1200.o +endif OBJS += misc.o OBJS += radio.o OBJS += scheduler.o @@ -317,6 +321,9 @@ endif ifeq ($(ENABLE_TX1750),1) CFLAGS += -DENABLE_TX1750 endif +ifeq ($(ENABLE_MDC1200),1) + CFLAGS += -DENABLE_MDC1200 +endif ifeq ($(ENABLE_PWRON_PASSWORD),1) CFLAGS += -DENABLE_PWRON_PASSWORD endif diff --git a/driver/bk4819.c b/driver/bk4819.c index 50b2e87..2f13dfd 100644 --- a/driver/bk4819.c +++ b/driver/bk4819.c @@ -14,7 +14,7 @@ * limitations under the License. */ -#include // NULL +#include // NULL and memset #include "bk4819.h" #include "bsp/dp32g030/gpio.h" @@ -23,6 +23,9 @@ #include "driver/system.h" #include "driver/systick.h" #include "misc.h" +#ifdef ENABLE_MDC1200 + #include "mdc1200.h" +#endif #ifndef ARRAY_SIZE #define ARRAY_SIZE(x) (sizeof(x) / sizeof(x[0])) @@ -1924,14 +1927,28 @@ void BK4819_start_fsk_rx(const unsigned int packet_size) void BK4819_PlayRogerMDC1200(void) { - static const uint8_t MDC1200_DATA[] = { - 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0xff, - // this needs properly computing for MDC1200 - 0xA2, 0xF1, 0x46, 0x74, 0xA4, 0x61, 0x44, 0x65, 0x8A, 0x4E, 0x44, 0xE0, 0x84, 0xEA - }; uint16_t fsk_reg59; + #ifdef ENABLE_MDC1200 + const uint8_t op = 0x12; + const uint8_t arg = 0x34; + const uint16_t id = 0x5678; + + uint8_t packet[8 + 40]; + memset(packet + 0, 0x00, 4); + memset(packet + 4, 0xff, 4); + const unsigned int size = MDC1200_encode_single_packet(packet + 8, op, arg, id); + + #else + static const uint8_t packet[] = { + 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, + // this needs properly computing for MDC1200 + 0xA2, 0xF1, 0x46, 0x74, 0xA4, 0x61, 0x44, 0x65, 0x8A, 0x4E, 0x44, 0xE0, 0x84, 0xEA + const unsigned int size = sizeof(packet); + }; + #endif + BK4819_SetAF(BK4819_AF_MUTE); // BK4819_SetAF(BK4819_AF_BEEP); @@ -2020,7 +2037,7 @@ void BK4819_PlayRogerMDC1200(void) (96u << 0)); // Set FSK data length - BK4819_WriteRegister(BK4819_REG_5D, ((sizeof(MDC1200_DATA) - 1) << 8)); + BK4819_WriteRegister(BK4819_REG_5D, ((size - 1) << 8)); // REG_59 // @@ -2103,10 +2120,10 @@ void BK4819_PlayRogerMDC1200(void) // BK4819_WriteRegister(BK4819_REG_5C, 0xAA30); // 101010100 0 110000 - { // load the packet data - unsigned int i; - const uint16_t *p = (const uint16_t *)MDC1200_DATA; - for (i = 0; i < (sizeof(MDC1200_DATA) / 2); i++) + { // load the packet data into the TX FIFO buffer + unsigned int i; + const uint16_t *p = (const uint16_t *)packet; + for (i = 0; i < (size / 2); i++) BK4819_WriteRegister(BK4819_REG_5F, p[i]); } @@ -2116,8 +2133,8 @@ void BK4819_PlayRogerMDC1200(void) // enable TX BK4819_WriteRegister(BK4819_REG_59, (1u << 11) | fsk_reg59); - { // packet is 175ms long - unsigned int timeout = 250 / 5; // allow up to 250ms for the TX to complete + { // packet takes 175ms long + unsigned int timeout = 250 / 5; // allow up to 250ms for the TX to complete while (timeout-- > 0) { SYSTEM_DelayMs(5); diff --git a/firmware.bin b/firmware.bin index c9ad9f0b3d6db8b319a66925990d022d3e8a8ce1..975e9f0fcab9c5611a978435655e4bb2e95a9980 100644 GIT binary patch delta 9384 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 S8qWg%mb`hpzz^=;?fd^?0I6{R diff --git a/firmware.packed.bin b/firmware.packed.bin index b8d143cf77d9e9af693e7589491ed233ad6bd379..07e9fd933cf88adbf130a9aa4cdb6ba7df7c6fd0 100644 GIT binary patch delta 56069 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 delta 55686 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 diff --git a/mdc1200.c b/mdc1200.c new file mode 100644 index 0000000..79258da --- /dev/null +++ b/mdc1200.c @@ -0,0 +1,150 @@ + +#include + +#include "mdc1200.h" + +uint16_t flip_crc(const uint16_t crc, const unsigned int bit_num) +{ + uint16_t i; + uint16_t bit; + uint16_t crc_out; + for (i = 1u << (bit_num - 1), bit = 1u, crc_out = 0u; i > 0u; i >>= 1) + { + if (crc & i) + crc_out |= bit; + bit <<= 1; + } + return crc_out; +} + +uint16_t compute_crc(const uint8_t *data, const unsigned int data_len) +{ + unsigned int i; + uint16_t crc = 0x0000; + + for (i = 0; i < data_len; i++) + { + unsigned int mask; + const uint16_t c = flip_crc(*data++, 8); + for (mask = 0x80; mask > 0; mask >>= 1) + { + uint16_t bit = crc & 0x8000; + crc <<= 1; + if (c & mask) + bit ^= 0x8000; + if (bit) + crc ^= 0x1021; + } + } + + return ~flip_crc(crc, 16); +} + +uint8_t * encode_data(uint8_t *data) +{ + unsigned int i; + unsigned int k; + unsigned int m; + int csr[7]; + int lbits[112]; + + uint16_t ccrc = compute_crc(data, 4); + + data[4] = (ccrc >> 0) & 0x00ff; + data[5] = (ccrc >> 8) & 0x00ff; + + data[6] = 0; + + for (i = 0; i < 7; i++) + csr[i] = 0; + + for (i = 0; i < 7; i++) + { + unsigned int j; + data[i + 7] = 0; + for (j = 0; j <= 7; j++) + { + unsigned int b; + for (k = 6; k > 0; k--) + csr[k] = csr[k - 1]; + csr[0] = (data[i] >> j) & 1u; + b = csr[0] + csr[2] + csr[5] + csr[6]; + data[i + 7] |= (b & 1u) << j; + } + } + + k = 0; + m = 0; + for (i = 0; i < 14; i++) + { + unsigned int j; + for (j = 0; j <= 7; j++) + { + lbits[k] = 1u & (data[i] >> j); + k += 16; + if (k > 111) + k = ++m; + } + } + + k = 0; + for (i = 0; i < 14; i++) + { + int j; + data[i] = 0; + for (j = 7; j >= 0; j--) + if (lbits[k++]) + data[i] |= 1u << j; + } + + return &data[14]; +} + +const uint8_t header[] = {0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x09, 0x2a, 0x44, 0x6f}; + +int MDC1200_encode_single_packet(uint8_t *data, const uint8_t op, const uint8_t arg, const uint16_t unit_id) +{ + memcpy(data, header, sizeof(header)); + data += sizeof(header); + + data[0] = op; + data[1] = arg; + data[2] = (unit_id >> 8) & 0x00ff; + data[3] = (unit_id >> 0) & 0x00ff; + + encode_data(data); + + return 26; +} + +int MDC1200_encode_double_packet(uint8_t *data, const uint8_t op, const uint8_t arg, const uint16_t unit_id, const uint8_t b0, const uint8_t b1, const uint8_t b2, const uint8_t b3) +{ + memcpy(data, header, sizeof(header)); + data += sizeof(header); + + data[0] = op; + data[1] = arg; + data[2] = (unit_id >> 8) & 0x00ff; + data[3] = (unit_id >> 0) & 0x00ff; + + data = encode_data(data); + + data[0] = b0; + data[1] = b1; + data[2] = b2; + data[3] = b3; + + encode_data(data); + + return 40; +} +/* +void test(void) +{ + uint8_t data[14 + 14 + 5 + 7]; + + const int size = MDC1200_encode_single_packet(data, 0x12, 0x34, 0x5678); + +// const int size = MDC1200_encode_double_packet(data, 0x55, 0x34, 0x5678, 0x0a, 0x0b, 0x0c, 0x0d); +} +*/ \ No newline at end of file diff --git a/mdc1200.h b/mdc1200.h new file mode 100644 index 0000000..3681193 --- /dev/null +++ b/mdc1200.h @@ -0,0 +1,10 @@ + +#ifndef MDC1200H +#define MDC1200H + +#include + +int MDC1200_encode_single_packet(uint8_t *data, const uint8_t op, const uint8_t arg, const uint16_t unit_id); +int MDC1200_encode_double_packet(uint8_t *data, const uint8_t op, const uint8_t arg, const uint16_t unit_id, const uint8_t b0, const uint8_t b1, const uint8_t b2, const uint8_t b3); + +#endif