From 19a147605796bddeec913fca3e9d8cc1728e807e Mon Sep 17 00:00:00 2001 From: OneOfEleven Date: Sat, 21 Oct 2023 09:14:46 +0100 Subject: [PATCH] closer to MDC1200 working --- app/aircopy.c | 2 +- driver/bk4819.c | 141 ++++++++++++++++---------------- driver/crc.c | 1 + firmware.bin | Bin 60444 -> 60516 bytes firmware.packed.bin | Bin 60462 -> 60534 bytes mdc1200.c | 192 +++++++++++++++++++++++++++++--------------- 6 files changed, 199 insertions(+), 137 deletions(-) diff --git a/app/aircopy.c b/app/aircopy.c index db9f076..08bffec 100644 --- a/app/aircopy.c +++ b/app/aircopy.c @@ -48,7 +48,7 @@ #define AIRCOPY_MAGIC_END_REQ 0xCDBA // used to request a block resend #define AIRCOPY_MAGIC_START 0xABCD // normal start value -#define AIRCOPY_MAGIC_END 0xDCBA // normal end value +#define AIRCOPY_MAGIC_END 0xDCBA // normal end value #define AIRCOPY_LAST_EEPROM_ADDR 0x1E00 // size of eeprom transferred diff --git a/driver/bk4819.c b/driver/bk4819.c index a9b6b78..850cc6a 100644 --- a/driver/bk4819.c +++ b/driver/bk4819.c @@ -1747,7 +1747,8 @@ uint8_t BK4819_GetCTCType(void) ( 0u << 15) | ( 0u << 8) | ( 1u << 7) | - (96u << 0)); +// (96u << 0)); + (127u << 0)); // best waveform // REG_72 // @@ -1759,11 +1760,11 @@ uint8_t BK4819_GetCTCType(void) // BK4819_WriteRegister(BK4819_REG_72, ((1200u * 103244) + 5000) / 10000); // with rounding - // these settings don't match the documentation at all ??? + // aircopy is done in direct FM mode // BK4819_WriteRegister(BK4819_REG_58, // 0x00C1); // 000 000 00 11 00 000 1 (0u << 13) | // 1 FSK TX mode selection - // 0 = FSK 1.2K and FSK 2.4K TX .. no tones, pure data + // 0 = FSK 1.2K and FSK 2.4K TX .. no tones, direct FM // 1 = FFSK 1200 / 1800 TX // 2 = ??? // 3 = FFSK 1200 / 2400 TX @@ -1773,7 +1774,7 @@ uint8_t BK4819_GetCTCType(void) // 7 = ??? // (0u << 10) | // 0 FSK RX mode selection - // 0 = FSK 1.2K, FSK 2.4K RX and NOAA same RX + // 0 = FSK 1.2K, FSK 2.4K RX and NOAA SAME RX .. no tones, direct FM // 1 = ??? // 2 = ??? // 3 = ??? @@ -1795,9 +1796,9 @@ uint8_t BK4819_GetCTCType(void) // 3 = 0xAA // (0u << 1) | // 1 FSK RX bandwidth setting - // 0 = FSK 1.2K + // 0 = FSK 1.2K .. no tones, direct FM // 1 = FFSK 1200 / 1800 - // 2 = NOAA same RX + // 2 = NOAA SAME RX // 3 = ??? // 4 = FSK 2.4K and FFSK 1200 / 2400 // 5 = ??? @@ -1925,34 +1926,19 @@ void BK4819_start_fsk_rx(const unsigned int packet_size) BK4819_WriteRegister(BK4819_REG_59, (1u << 13) | (1u << 12) | fsk_reg59); // enable scrambler, enable RX } +#ifdef ENABLE_MDC1200 + void BK4819_PlayRogerMDC1200(void) { uint16_t fsk_reg59; + uint8_t packet[40]; - #ifdef ENABLE_MDC1200 + const uint8_t op = MDC1200_OP_CODE_POST_ID; + const uint8_t arg = 0x80; + const uint16_t id = 0xB183; - const uint8_t op = MDC1200_OP_CODE_POST_ID; - const uint8_t arg = 0x00; - const uint16_t id = 0xB183; - - uint8_t packet[8 + 40]; - memset(packet + 0, 0x00, 4); - memset(packet + 4, 0xff, 4); - const unsigned int size = 8 + 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 + // create the MDC1200 packet + const unsigned int size = MDC1200_encode_single_packet(packet, op, arg, id); BK4819_SetAF(BK4819_AF_MUTE); // BK4819_SetAF(BK4819_AF_BEEP); @@ -1960,26 +1946,28 @@ void BK4819_PlayRogerMDC1200(void) BK4819_EnableTXLink(); SYSTEM_DelayMs(10); + // MDC1200 uses 1200/1800 Hz FSK tone frequencies 1200 bits/s + // BK4819_WriteRegister(BK4819_REG_58, // 0x37C3); // 001 101 11 11 00 001 1 (1u << 13) | // 1 FSK TX mode selection - // 0 = FSK 1.2K and FSK 2.4K TX .. no tones, pure data - // 1 = FFSK 1200 / 1800 TX + // 0 = FSK 1.2K and FSK 2.4K TX .. no tones, direct FM + // 1 = FFSK 1200/1800 TX // 2 = ??? - // 3 = FFSK 1200 / 2400 TX + // 3 = FFSK 1200/2400 TX // 4 = ??? // 5 = NOAA SAME TX // 6 = ??? // 7 = ??? // - (0u << 10) | // 0 FSK RX mode selection - // 0 = FSK 1.2K, FSK 2.4K RX and NOAA same RX + (7u << 10) | // 0 FSK RX mode selection + // 0 = FSK 1.2K, FSK 2.4K RX and NOAA SAME RX .. no tones, direct FM // 1 = ??? // 2 = ??? // 3 = ??? - // 4 = FFSK 1200 / 2400 RX + // 4 = FFSK 1200/2400 RX // 5 = ??? // 6 = ??? - // 7 = FFSK 1200 / 1800 RX + // 7 = FFSK 1200/1800 RX // (0u << 8) | // 0 FSK RX gain // 0 ~ 3 @@ -1994,11 +1982,11 @@ void BK4819_PlayRogerMDC1200(void) // 3 = 0xAA // (1u << 1) | // 1 FSK RX bandwidth setting - // 0 = FSK 1.2K - // 1 = FFSK 1200 / 1800 - // 2 = NOAA same RX + // 0 = FSK 1.2K .. no tones, direct FM + // 1 = FFSK 1200/1800 + // 2 = NOAA SAME RX // 3 = ??? - // 4 = FSK 2.4K and FFSK 1200 / 2400 + // 4 = FSK 2.4K and FFSK 1200/2400 // 5 = ??? // 6 = ??? // 7 = ??? @@ -2035,14 +2023,11 @@ void BK4819_PlayRogerMDC1200(void) // enable tone-2, set gain // BK4819_WriteRegister(BK4819_REG_70, // 0 0000000 1 1100000 - ( 0u << 15) | - ( 0u << 8) | - ( 1u << 7) | -// ( 0u << 7) | - (96u << 0)); - - // Set FSK data length - BK4819_WriteRegister(BK4819_REG_5D, ((size - 1) << 8)); + ( 0u << 15) | // 0 + ( 0u << 8) | // 0 + ( 1u << 7) | // 1 +// (96u << 0)); // 96 + (127u << 0)); // produces the best undistorted waveform, this is not gain but affects filtering // REG_59 // @@ -2081,36 +2066,39 @@ void BK4819_PlayRogerMDC1200(void) // // <2:0> 0 ??? // - fsk_reg59 = (0u << 15) | // 0 or 1 1 = clear TX FIFO - (0u << 14) | // 0 or 1 1 = clear RX FIFO - (0u << 13) | // 0 or 1 1 = scramble - (0u << 12) | // 0 or 1 1 = enable RX - (0u << 11) | // 0 or 1 1 = enable TX - (0u << 10) | // 0 or 1 1 = invert data when RX - (0u << 9) | // 0 or 1 1 = invert data when TX - (0u << 8) | // 0 or 1 ??? - (0u << 4) | // 0 ~ 15 preamble length selection - (0u << 3) | // 0 or 1 sync length selection - (0u << 0); // 0 ~ 7 ??? + fsk_reg59 = (0u << 15) | // 0 ~ 1 1 = clear TX FIFO + (0u << 14) | // 0 ~ 1 1 = clear RX FIFO + (0u << 13) | // 0 ~ 1 1 = scramble + (0u << 12) | // 0 ~ 1 1 = enable RX + (0u << 11) | // 0 ~ 1 1 = enable TX + (0u << 10) | // 0 ~ 1 1 = invert data when RX + (0u << 9) | // 0 ~ 1 1 = invert data when TX + (0u << 8) | // 0 ~ 1 ??? + (0u << 4) | // 0 ~ 15 preamble length + (0u << 3) | // 0 ~ 1 sync length + (0u << 0); // 0 ~ 7 ??? - BK4819_WriteRegister(BK4819_REG_59, (1u << 15) | fsk_reg59); // clear TX fifo - BK4819_WriteRegister(BK4819_REG_59, fsk_reg59); + // Set entire packet length (not including the pre-amble and sync bytes we can't seem to disable) + BK4819_WriteRegister(BK4819_REG_5D, ((size - 1) << 8)); + + BK4819_WriteRegister(BK4819_REG_59, (1u << 15) | fsk_reg59); // clear TX fifo by setting the FIFO reset bit + BK4819_WriteRegister(BK4819_REG_59, (0u << 15) | fsk_reg59); // release the reset bit // REG_5A + // // <15:8> 0x55 FSK Sync Byte 0 (Sync Byte 0 first, then 1,2,3) // <7:0> 0x55 FSK Sync Byte 1 // -// BK4819_WriteRegister(BK4819_REG_5A, 0x5555); -// BK4819_WriteRegister(BK4819_REG_5A, 0xAAAA); - BK4819_WriteRegister(BK4819_REG_5A, 0); + BK4819_WriteRegister(BK4819_REG_5A, 0); // can be any bit pattern you like // REG_5B + // // <15:8> 0x55 FSK Sync Byte 2 (Sync Byte 0 first, then 1,2,3) // <7:0> 0xAA FSK Sync Byte 3 // -// BK4819_WriteRegister(BK4819_REG_5B, 0x55AA); + BK4819_WriteRegister(BK4819_REG_5B, 0); // bytes 2 & 3 not sent/used - // Enable CRC among other things we don't know yet + // CRC setting (plus other stuff we don't know what) // // REG_5C // @@ -2124,13 +2112,14 @@ void BK4819_PlayRogerMDC1200(void) // // disable CRC // - BK4819_WriteRegister(BK4819_REG_5C, 0xAA30); // 101010100 0 110000 +// BK4819_WriteRegister(BK4819_REG_5C, 0xAA30); // 101010100 0 110000 + BK4819_WriteRegister(BK4819_REG_5C, 0); // setting to '0' doesn't make any difference ! - { // load the packet data into the TX FIFO buffer + { // load the entire 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]); + for (i = 0; i < (size / sizeof(p[0])); i++) + BK4819_WriteRegister(BK4819_REG_5F, p[i]); // load 16-bits at a time } // enable tx interrupt @@ -2139,8 +2128,14 @@ void BK4819_PlayRogerMDC1200(void) // enable TX BK4819_WriteRegister(BK4819_REG_59, (1u << 11) | fsk_reg59); - { // a small packet takes 175ms long - unsigned int timeout = 500 / 5; // allow up to 500ms for the TX to complete + { // packet time is .. + // 173ms for PTT ID, acks, emergency + // 266ms for call alert and sel-calls + + // allow up to 350ms for the TX to complete + // if it takes any longer then somethings gone wrong, we shut the TX down + unsigned int timeout = 350 / 5; + while (timeout-- > 0) { SYSTEM_DelayMs(5); @@ -2161,6 +2156,8 @@ void BK4819_PlayRogerMDC1200(void) BK4819_WriteRegister(BK4819_REG_58, 0); } +#endif + void BK4819_Enable_AfDac_DiscMode_TxDsp(void) { BK4819_WriteRegister(BK4819_REG_30, 0x0000); diff --git a/driver/crc.c b/driver/crc.c index 800d7d2..855eb42 100644 --- a/driver/crc.c +++ b/driver/crc.c @@ -27,6 +27,7 @@ void CRC_Init(void) | CRC_CR_OUTPUT_INV_BITS_NORMAL | CRC_CR_DATA_WIDTH_BITS_8 | CRC_CR_CRC_SEL_BITS_CRC_16_CCITT; + CRC_IV = 0; } diff --git a/firmware.bin b/firmware.bin index 9cb35368cd1a4f909436d89608bab1010f3a14ff..523382dae96f5d8cba5f652b986b0748bb9611b1 100644 GIT binary patch delta 9551 zcmZ8HdtB7T_A|2!EDsSuaCv`s7ZF%QU;zOY5e$I^RMbM$#8<6Yxu_{V5)`s5OLNMr zL1w=4RVu4J%m?<=)Y`4Qq4uy+G4po!8Z!Ic@9THI*u8)J_fNGiT1y z-le(GrP(wRzw*kcYxtxi62F1*bjSN79Fqzc{Yn#I{LP>`VfNzQ| zakWL0#?%$}>I);ABR!|o+N-p`c6j({F%0DW5C@zBkk0^oj84;Ls|q)3Ye<+(?`qR= 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 delta 9457 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 LZdPf@ukrs2WR3H2 diff --git a/firmware.packed.bin b/firmware.packed.bin index 152296ed73153897503ca2a027274aed0ebf2d42..710d30d566770fbffde1e125285b914e5372eb54 100644 GIT binary patch delta 56194 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�aV!;#2z?aTk+=_}l-`kt?8 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 delta 56152 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 Mdo4&|=oZrX5AU0 +#include "bsp/dp32g030/crc.h" #include "mdc1200.h" +#include "misc.h" + /* uint8_t bitReverse8(uint8_t n) { @@ -30,12 +33,12 @@ uint32_t bitReverse32(uint32_t n) return n; } */ -uint16_t reverse_bits(const uint16_t bits_in, const unsigned int bit_num) +uint16_t reverse_bits(const uint16_t bits_in, const unsigned int num_bits) { uint16_t i; uint16_t bit; uint16_t bits_out; - for (i = 1u << (bit_num - 1), bit = 1u, bits_out = 0u; i > 0u; i >>= 1) + for (i = 1u << (num_bits - 1), bit = 1u, bits_out = 0u; i != 0; i >>= 1) { if (bits_in & i) bits_out |= bit; @@ -46,27 +49,58 @@ uint16_t reverse_bits(const uint16_t bits_in, const unsigned int bit_num) uint16_t compute_crc(const uint8_t *data, const unsigned int data_len) { + + // this can be done using the CPU's own CRC calculator once we know we're ok + unsigned int i; - uint16_t crc = 0x0000; + + #if 0 + uint16_t crc; + + CRC_CR = (CRC_CR & ~CRC_CR_CRC_EN_MASK) | CRC_CR_CRC_EN_BITS_ENABLE; + #else + uint16_t crc = 0x0000; + #endif for (i = 0; i < data_len; i++) { - uint16_t mask; - - const uint16_t b = reverse_bits(*data++, 8); // bit reverse each data byte - - for (mask = 0x0080; mask > 0; mask >>= 1) - { - uint16_t bit = crc & 0x8000; - crc <<= 1; - if (b & mask) - bit ^= 0x8000; - if (bit) - crc ^= 0x1021; - } + #if 0 + + // bit reverse each data byte before adding it to the CRC + // the cortex CPU might have an instruction to bit reverse for us ? + // + CRC_DATAIN = reverse_bits(*data++, 8); + //CRC_DATAIN = bitReverse8(*data++); + + #else + uint8_t mask; + + // bit reverse each data byte before adding it to the CRC + // the cortex CPU might have an instruction to bit reverse for us ? + // + const uint8_t bits = reverse_bits(*data++, 8); + //const uint8_t bits = bitReverse8(*data++); + + for (mask = 0x0080; mask != 0; mask >>= 1) + { + uint16_t msb = crc & 0x8000; + if (bits & mask) + msb ^= 0x8000; + crc <<= 1; + if (msb) + crc ^= 0x1021; + } + #endif } - return reverse_bits(crc, 16) ^ 0xffff; // bit reverse and invert the CRC + #if 0 + crc = (uint16_t)CRC_DATAOUT; + CRC_CR = (CRC_CR & ~CRC_CR_CRC_EN_MASK) | CRC_CR_CRC_EN_BITS_DISABLE; + #endif + + // bit reverse and invert the final CRC + return reverse_bits(crc, 16) ^ 0xffff; +// return bitReverse16(crc) ^ 0xffff; } uint8_t * encode_data(uint8_t *data) @@ -74,101 +108,123 @@ uint8_t * encode_data(uint8_t *data) unsigned int i; unsigned int k; unsigned int m; - int csr[7]; - int lbits[112]; + uint8_t csr[7]; + uint8_t lbits[(ARRAY_SIZE(csr) * 2) * 8]; - const 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++) + for (i = 0; i < ARRAY_SIZE(csr); i++) csr[i] = 0; - for (i = 0; i < 7; i++) + for (i = 0; i < ARRAY_SIZE(csr); i++) { - unsigned int j; - data[i + 7] = 0; - for (j = 0; j <= 7; j++) + unsigned int bit; + data[i + ARRAY_SIZE(csr)] = 0; + for (bit = 0; bit < 8; bit++) { - unsigned int b; + uint8_t b; for (k = 6; k > 0; k--) csr[k] = csr[k - 1]; - csr[0] = (data[i] >> j) & 1u; + csr[0] = (data[i] >> bit) & 1u; b = csr[0] + csr[2] + csr[5] + csr[6]; - data[i + 7] |= (b & 1u) << j; + data[i + ARRAY_SIZE(csr)] |= (b & 1u) << bit; } } - k = 0; - m = 0; - for (i = 0; i < 14; i++) + for (i = 0, k = 0, m = 0; i < (ARRAY_SIZE(csr) * 2); i++) { - unsigned int j; - for (j = 0; j <= 7; j++) + unsigned int bit; + for (bit = 0; bit < 8; bit++) { - lbits[k] = 1u & (data[i] >> j); + lbits[k] = (data[i] >> bit) & 1u; k += 16; - if (k > 111) + if (k >= ARRAY_SIZE(lbits)) k = ++m; } } - k = 0; - for (i = 0; i < 14; i++) + for (i = 0, k = 0; i < (ARRAY_SIZE(csr) * 2); i++) { - int j; + int bit; data[i] = 0; - for (j = 7; j >= 0; j--) + for (bit = 7; bit >= 0; bit--) if (lbits[k++]) - data[i] |= 1u << j; + data[i] |= 1u << bit; } - return &data[14]; + return data + 14; } -const uint8_t header[] = {0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x09, 0x2a, 0x44, 0x6f}; +// MDC1200 sync bit reversals and packet header +static const uint8_t header[] = {0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x09, 0x2a, 0x44, 0x6f}; + +void delta_modulation(uint8_t *data, const unsigned int size) +{ // xor succesive bits in the entire packet, including the bit reversing pre-amble + uint8_t b1; + unsigned int toggle_delay; + unsigned int i; + for (i = 0, toggle_delay = 27, b1 = 1u; i < size; i++) + { + int bit_num; + uint8_t in = data[i]; + uint8_t out = 0; + for (bit_num = 7; bit_num >= 0; bit_num--) + { + const uint8_t b2 = (in >> bit_num) & 1u; + if (toggle_delay > 0) + toggle_delay--; + if (b1 != b2 && toggle_delay == 0) + out |= 1u << bit_num; // previous bit and new bit are different +// out |= 1u << (7 - bit_num); + b1 = b2; + } + data[i] = out; + } +} unsigned int MDC1200_encode_single_packet(uint8_t *data, const uint8_t op, const uint8_t arg, const uint16_t unit_id) { - uint8_t *p = data; + unsigned int size; + uint8_t *p = data; + uint16_t crc; - #if 0 - memcpy(p, header, sizeof(header)); - p += sizeof(header); - #else - memcpy(p + 7, header, sizeof(header)); - p += sizeof(header) - 7; - #endif + memcpy(p, header, sizeof(header)); + p += sizeof(header); p[0] = op; p[1] = arg; p[2] = (unit_id >> 8) & 0x00ff; p[3] = (unit_id >> 0) & 0x00ff; + crc = compute_crc(p, 4); + p[4] = (crc >> 0) & 0x00ff; + p[5] = (crc >> 8) & 0x00ff; + p[6] = 0; p = encode_data(p); - return (unsigned int)(p - data); + size = (unsigned int)(p - data); + + delta_modulation(data, size); + + return size; // return 26; } unsigned 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) { + unsigned int size; uint8_t *p = data; + uint16_t crc; - #if 0 - memcpy(p, header, sizeof(header)); - p += sizeof(header); - #else - memcpy(p + 7, header, sizeof(header)); - p += sizeof(header) - 7; - #endif + memcpy(p, header, sizeof(header)); + p += sizeof(header); p[0] = op; p[1] = arg; p[2] = (unit_id >> 8) & 0x00ff; p[3] = (unit_id >> 0) & 0x00ff; + crc = compute_crc(p, 4); + p[4] = (crc >> 0) & 0x00ff; + p[5] = (crc >> 8) & 0x00ff; + p[6] = 0; p = encode_data(p); @@ -176,11 +232,19 @@ unsigned int MDC1200_encode_double_packet(uint8_t *data, const uint8_t op, const p[1] = b1; p[2] = b2; p[3] = b3; + crc = compute_crc(p, 4); + p[4] = (crc >> 0) & 0x00ff; + p[5] = (crc >> 8) & 0x00ff; + p[6] = 0; p = encode_data(p); + size = (unsigned int)(p - data); + + delta_modulation(data, size); + // return 40; - return (unsigned int)(p - data); + return size; } /* void test(void)