From c7f5f4f8bb9f5cf196323f3861c2ad7049f4acc2 Mon Sep 17 00:00:00 2001 From: "Pawel Spychalski (DzikuVx)" Date: Mon, 21 May 2018 21:19:23 +0200 Subject: [PATCH 01/11] work --- README.md | 10 ++++++++++ crossbow/variables.h | 4 +++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 76099d6..d2aa969 100644 --- a/README.md +++ b/README.md @@ -47,6 +47,7 @@ CRC is computed using `crc8_dvb_s2` method. Initial CRC value for each frame CRC | 0100 | 0x4 | Set receiver configuration | TX -> RX | no used | | 0101 | 0x5 | PING frame, uses 9 byte payload | TX -> RX | 4 | | 0110 | 0x6 | PONG frame, the same payload as PING | RX -> TX | 4 | +| 0111 | 0x7 | `BIND` frame, transmitted by TX only during binding | TX -> RX | 4 | ### `RC_DATA` frame format @@ -82,6 +83,15 @@ Total length of `RC_DATA` payload is 9 bytes **TX** sends `PING` frame with curent `micros`. If **RX** receives `PING` frame, it respons its payload as `PONG` frame. +### `BIND` frame format + +| Byte | Description | +| ---- | ---- | +| 1 | Bind key byte 0 | +| 2 | Bind key byte 1 | +| 3 | Bind key byte 2 | +| 4 | Bind key byte 3 | + # RSSI 1. Receiver RSSI for the last received packet is injected as channel 11 diff --git a/crossbow/variables.h b/crossbow/variables.h index 122afa5..1ee74d0 100644 --- a/crossbow/variables.h +++ b/crossbow/variables.h @@ -34,7 +34,8 @@ #define QSP_FRAME_SET_RX_CONFIG 0x4 #define QSP_FRAME_PING 0x5 #define QSP_FRAME_PONG 0x6 -#define QSP_FRAME_COUNT 0x7 +#define QSP_FRAME_BIND 0x7 +#define QSP_FRAME_COUNT 0x8 static const uint8_t qspFrameLengths[QSP_FRAME_COUNT] = { 9, //QSP_FRAME_RC_DATA @@ -44,6 +45,7 @@ static const uint8_t qspFrameLengths[QSP_FRAME_COUNT] = { 0, //QSP_FRAME_SET_RX_CONFIG -> Not used 4, //QSP_FRAME_PING 4, //QSP_FRAME_PONG + 4 //QSP_FRAME_BIND }; #define RX_ADC_PIN_1 A0 From e240fbc412b26609b269d20d5361d48198af2594 Mon Sep 17 00:00:00 2001 From: Pawel Spychalski Date: Wed, 23 May 2018 10:12:54 +0200 Subject: [PATCH 02/11] Bind key initialized and loaded from EEPROM --- crossbow/crossbow.ino | 13 +++++-------- crossbow/platform_config.cpp | 27 +++++++++++++++++++++++++++ crossbow/platform_config.h | 27 +++++++++++++++++++++++++++ 3 files changed, 59 insertions(+), 8 deletions(-) create mode 100644 crossbow/platform_config.cpp create mode 100644 crossbow/platform_config.h diff --git a/crossbow/crossbow.ino b/crossbow/crossbow.ino index 9e29ad0..a8b49f9 100644 --- a/crossbow/crossbow.ino +++ b/crossbow/crossbow.ino @@ -15,6 +15,7 @@ Copyright (c) 20xx, MPL Contributor1 contrib1@example.net #include "qsp.h" #include "sbus.h" #include "platform_node.h" +#include "platform_config.h" #ifdef ARDUINO_AVR_FEATHER32U4 #define LORA_SS_PIN 8 @@ -36,6 +37,7 @@ Copyright (c) 20xx, MPL Contributor1 contrib1@example.net RadioNode radioNode; PlatformNode platformNode; +PlatformConfig platformConfig; /* * Main defines for device working in TX mode @@ -176,6 +178,8 @@ void setup(void) #ifdef DEVICE_MODE_TX + platformConfig.seed(); + #ifdef FEATURE_TX_OLED oled.init(); oled.page(TX_PAGE_INIT); @@ -206,14 +210,7 @@ void setup(void) pinMode(LED_BUILTIN, OUTPUT); - /* - * Setup salt bind key - */ - platformNode.bindKey[0] = 0x12; - platformNode.bindKey[1] = 0x0a; - platformNode.bindKey[2] = 0x36; - platformNode.bindKey[3] = 0xa7; - + platformConfig.loadBindKey(); } uint8_t currentSequenceIndex = 0; diff --git a/crossbow/platform_config.cpp b/crossbow/platform_config.cpp new file mode 100644 index 0000000..3f1243a --- /dev/null +++ b/crossbow/platform_config.cpp @@ -0,0 +1,27 @@ +#include "platform_config.h" +#include "Arduino.h" + +PlatformConfig::PlatformConfig(void) { + randomSeed(analogRead(0)); +}; + +void PlatformConfig::seed(void) { + uint8_t val; + + val = EEPROM.read(EEPROM_ADDRESS_BIND_KEY_SEEDED); + + if (val != 0xf1) { + EEPROM.write(EEPROM_ADDRESS_BIND_0, random(1, 255)); //Yes, from 1 to 254 + EEPROM.write(EEPROM_ADDRESS_BIND_1, random(1, 255)); //Yes, from 1 to 254 + EEPROM.write(EEPROM_ADDRESS_BIND_2, random(1, 255)); //Yes, from 1 to 254 + EEPROM.write(EEPROM_ADDRESS_BIND_3, random(1, 255)); //Yes, from 1 to 254 + EEPROM.write(EEPROM_ADDRESS_BIND_KEY_SEEDED, 0xf1); + } +} + +void PlatformConfig::loadBindKey(void) { + platformNode.bindKey[0] = EEPROM.read(EEPROM_ADDRESS_BIND_0); + platformNode.bindKey[1] = EEPROM.read(EEPROM_ADDRESS_BIND_1); + platformNode.bindKey[2] = EEPROM.read(EEPROM_ADDRESS_BIND_2); + platformNode.bindKey[3] = EEPROM.read(EEPROM_ADDRESS_BIND_3); +} \ No newline at end of file diff --git a/crossbow/platform_config.h b/crossbow/platform_config.h new file mode 100644 index 0000000..1e177e8 --- /dev/null +++ b/crossbow/platform_config.h @@ -0,0 +1,27 @@ +#pragma once + +#ifndef PLATFORM_CONFIG_H +#define PLATFORM_CONFIG_H + +#include +#include "platform_node.h" + +extern PlatformNode platformNode; + +enum platformConfigMemoryLayout { + EEPROM_ADDRESS_BIND_KEY_SEEDED = 0x00, + EEPROM_ADDRESS_BIND_0, + EEPROM_ADDRESS_BIND_1, + EEPROM_ADDRESS_BIND_2, + EEPROM_ADDRESS_BIND_3, + PLATFORM_CONFIG_LAST_BYTE +}; + +class PlatformConfig { + public: + PlatformConfig(void); + void seed(void); + void loadBindKey(); +}; + +#endif \ No newline at end of file From 917b1514fda415d03d4fb72b0b9416376c8bf948 Mon Sep 17 00:00:00 2001 From: Pawel Spychalski Date: Wed, 23 May 2018 11:45:48 +0200 Subject: [PATCH 03/11] Some work, stuck by dependencies --- .vscode/settings.json | 7 ++++++- crossbow/crossbow.ino | 16 +++++++++++----- crossbow/platform_node.cpp | 17 +++++++++++++++++ crossbow/platform_node.h | 3 +++ crossbow/radio_node.cpp | 30 +++++++++++++++++++++++++----- crossbow/radio_node.h | 12 +++++++++--- 6 files changed, 71 insertions(+), 14 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 36dbd1d..96b3b58 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -10,7 +10,12 @@ "__locale": "c", "string": "c", "ios": "cpp", - "locale": "cpp" + "locale": "cpp", + "functional": "cpp", + "numeric": "cpp", + "*.tcc": "cpp", + "bitset": "cpp", + "set": "cpp" }, "files.exclude": { "**/build": true diff --git a/crossbow/crossbow.ino b/crossbow/crossbow.ino index a8b49f9..4109ff0 100644 --- a/crossbow/crossbow.ino +++ b/crossbow/crossbow.ino @@ -102,9 +102,12 @@ void onQspSuccess(QspConfiguration_t *qsp, TxDeviceState_t *txDeviceState, RxDev * RX module hops to next channel after frame has been received */ #ifdef DEVICE_MODE_RX - radioNode.hopFrequency(true, radioNode.lastReceivedChannel, millis()); - radioNode.failedDwellsCount = 0; // We received a frame, so we can just reset this counter - LoRa.receive(); //Put radio back into receive mode + if (!platformNode.isBindMode) { + //We do not hop frequency in bind mode! + radioNode.hopFrequency(true, radioNode.lastReceivedChannel, millis()); + radioNode.failedDwellsCount = 0; // We received a frame, so we can just reset this counter + LoRa.receive(); //Put radio back into receive mode + } #endif //Store the last timestamp when frame was received @@ -269,8 +272,11 @@ void loop(void) #ifdef DEVICE_MODE_RX /* * This routine handles resync of TX/RX while hoppping frequencies + * When not in bind mode. Bind mode is single frequency operation */ - radioNode.handleChannelDwell(); + if (!plaformNode.isBindMode) { + radioNode.handleChannelDwell(); + } /* * Detect the moment when radio module stopped transmittig and put it @@ -302,7 +308,7 @@ void loop(void) serialRestartMillis = currentMillis; } - radioNode.handleTxDoneState(true); + radioNode.handleTxDoneState(!platformNode.isBindMode); #endif radioNode.readAndDecode( diff --git a/crossbow/platform_node.cpp b/crossbow/platform_node.cpp index d822fdd..90762c1 100644 --- a/crossbow/platform_node.cpp +++ b/crossbow/platform_node.cpp @@ -18,4 +18,21 @@ void PlatformNode::setRcChannel(uint8_t channel, int value, int offset) { if (channel < PLATFORM_TOTAL_CHANNEL_COUNT) { _channels[channel] = value + offset; } +} + +void PlatformNode::enterBindMode(void) { + isBindMode = true; + + // radioNode.set( + // 0, // Minimum power + // 125000, // 125kHz bandwidth + // 6, // low spreading factor, we do not need high RX sensitivity + // 5, // same for coding rate + // 868000000 //Fixed frequency while binding + // ); + +} + +void PlatformNode::leaveBindMode(void) { + isBindMode = false; } \ No newline at end of file diff --git a/crossbow/platform_node.h b/crossbow/platform_node.h index 6ac2737..0e8f5b4 100644 --- a/crossbow/platform_node.h +++ b/crossbow/platform_node.h @@ -21,9 +21,12 @@ class PlatformNode { PlatformNode(void); int getRcChannel(uint8_t channel); void setRcChannel(uint8_t channel, int value, int offset); + void enterBindMode(void); + void leaveBindMode(void); uint8_t bindKey[4]; uint32_t nextLedUpdate = 0; uint8_t platformState = DEVICE_STATE_UNDETERMINED; + bool isBindMode = false; private: volatile int _channels[PLATFORM_TOTAL_CHANNEL_COUNT]; }; diff --git a/crossbow/radio_node.cpp b/crossbow/radio_node.cpp index e6f0af5..df2dfbf 100644 --- a/crossbow/radio_node.cpp +++ b/crossbow/radio_node.cpp @@ -31,11 +31,14 @@ void RadioNode::init(uint8_t ss, uint8_t rst, uint8_t di0, void(*callback)(int)) while (true); } - //Configure LoRa module - LoRa.setSignalBandwidth(loraBandwidth); - LoRa.setSpreadingFactor(loraSpreadingFactor); - LoRa.setCodingRate4(loraCodingRate); - LoRa.setTxPower(loraTxPower); + set( + loraTxPower, + loraBandwidth, + loraSpreadingFactor, + loraCodingRate, + getFrequencyForChannel(getChannel()) + ); + LoRa.enableCrc(); //Setup ISR callback and start receiving @@ -159,4 +162,21 @@ void RadioNode::handleTx(QspConfiguration_t *qsp) { //Set state to be able to detect the moment when TX is done radioState = RADIO_STATE_TX; +} + +void RadioNode::set( + uint8_t power, + long bandwidth, + uint8_t spreadingFactor, + uint8_t codingRate, + long frequency +) { + LoRa.sleep(); + + LoRa.setTxPower(power); + LoRa.setSignalBandwidth(bandwidth); + LoRa.setCodingRate4(codingRate); + LoRa.setFrequency(frequency); + + LoRa.idle(); } \ No newline at end of file diff --git a/crossbow/radio_node.h b/crossbow/radio_node.h index 6d3eca1..14b5f01 100644 --- a/crossbow/radio_node.h +++ b/crossbow/radio_node.h @@ -1,8 +1,5 @@ #pragma once -#include "Arduino.h" -#include "qsp.h" - #define RADIO_FREQUENCY_MIN 868000000 #define RADIO_FREQUENCY_MAX 870000000 #define RADIO_FREQUENCY_RANGE (RADIO_FREQUENCY_MAX-RADIO_FREQUENCY_MIN) @@ -13,6 +10,8 @@ #ifndef RADIO_NODE_H #define RADIO_NODE_H +#include "Arduino.h" +#include "qsp.h" #include "variables.h" class RadioNode { @@ -32,6 +31,13 @@ class RadioNode { void handleChannelDwell(void); void handleTxDoneState(bool hop); void handleTx(QspConfiguration_t *qsp); + void set( + uint8_t power, + long bandwidth, + uint8_t spreadingFactor, + uint8_t codingRate, + long frequency + ); volatile int8_t bytesToRead = -1; volatile uint8_t radioState = RADIO_STATE_RX; uint8_t rssi = 0; From bb2317b06a5ad564d5d0b0de0967fe18c61eb98f Mon Sep 17 00:00:00 2001 From: Pawel Spychalski Date: Wed, 23 May 2018 14:15:22 +0200 Subject: [PATCH 04/11] Some dependency pleanup --- .vscode/settings.json | 14 +++++++++++++- crossbow/crossbow.ino | 32 +++++++++++++++++++++++++++----- crossbow/qsp.cpp | 45 ++++++++++++++++++++++++++------------------- crossbow/qsp.h | 10 ++++------ crossbow/radio_node.cpp | 9 +++++---- crossbow/radio_node.h | 7 ++++--- crossbow/sbus.cpp | 27 +++++++++++++-------------- crossbow/sbus.h | 6 ++++-- crossbow/variables.h | 3 +++ 9 files changed, 99 insertions(+), 54 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 96b3b58..af602ab 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -15,7 +15,19 @@ "numeric": "cpp", "*.tcc": "cpp", "bitset": "cpp", - "set": "cpp" + "set": "cpp", + "array": "cpp", + "utility": "cpp", + "__bit_reference": "cpp", + "__functional_base": "cpp", + "atomic": "cpp", + "chrono": "cpp", + "limits": "cpp", + "memory": "cpp", + "ratio": "cpp", + "system_error": "cpp", + "tuple": "cpp", + "vector": "cpp" }, "files.exclude": { "**/build": true diff --git a/crossbow/crossbow.ino b/crossbow/crossbow.ino index 4109ff0..ab8161f 100644 --- a/crossbow/crossbow.ino +++ b/crossbow/crossbow.ino @@ -150,6 +150,16 @@ void onQspFailure(QspConfiguration_t *qsp, TxDeviceState_t *txDeviceState, RxDev } +//I do not get function pointers to object methods, no way... +int getRcChannel_wrapper(uint8_t channel) { + return platformNode.getRcChannel(channel); +} + +//Same here, wrapper just works +void setRcChannel_wrapper(uint8_t channel, int value, int offset) { + platformNode.setRcChannel(channel, value, offset); +} + void setup(void) { #ifdef DEBUG_SERIAL @@ -158,11 +168,16 @@ void setup(void) qsp.onSuccessCallback = onQspSuccess; qsp.onFailureCallback = onQspFailure; + qsp.rcChannelGetCallback = getRcChannel_wrapper; + qsp.setRcChannelCallback = setRcChannel_wrapper; #ifdef DEVICE_MODE_RX platformNode.platformState = DEVICE_STATE_FAILSAFE; #else platformNode.platformState = DEVICE_STATE_OK; + + txInput.setRcChannelCallback = setRcChannel_wrapper; + #endif radioNode.init(LORA_SS_PIN, LORA_RST_PIN, LORA_DI0_PIN, onReceive); @@ -274,7 +289,7 @@ void loop(void) * This routine handles resync of TX/RX while hoppping frequencies * When not in bind mode. Bind mode is single frequency operation */ - if (!plaformNode.isBindMode) { + if (!platformNode.isBindMode) { radioNode.handleChannelDwell(); } @@ -314,7 +329,8 @@ void loop(void) radioNode.readAndDecode( &qsp, &rxDeviceState, - &txDeviceState + &txDeviceState, + platformNode.bindKey ); bool transmitPayload = false; @@ -408,7 +424,13 @@ void loop(void) break; case QSP_FRAME_RX_HEALTH: - encodeRxHealthPayload(&qsp, &rxDeviceState, radioNode.rssi, radioNode.snr); + encodeRxHealthPayload( + &qsp, + &rxDeviceState, + radioNode.rssi, + radioNode.snr, + platformNode.platformState + ); break; } @@ -420,7 +442,7 @@ void loop(void) if (currentMillis > sbusTime) { platformNode.setRcChannel(RSSI_CHANNEL - 1, rxDeviceState.indicatedRssi, 0); - sbusPreparePacket(sbusPacket, false, (platformNode.platformState == DEVICE_STATE_FAILSAFE)); + sbusPreparePacket(sbusPacket, false, (platformNode.platformState == DEVICE_STATE_FAILSAFE), getRcChannel_wrapper); Serial1.write(sbusPacket, SBUS_PACKET_LENGTH); sbusTime = currentMillis + SBUS_UPDATE_RATE; } @@ -437,7 +459,7 @@ void loop(void) if (transmitPayload) { - radioNode.handleTx(&qsp); + radioNode.handleTx(&qsp, platformNode.bindKey); } #ifdef DEVICE_MODE_TX diff --git a/crossbow/qsp.cpp b/crossbow/qsp.cpp index 2e44a16..9f13280 100644 --- a/crossbow/qsp.cpp +++ b/crossbow/qsp.cpp @@ -3,16 +3,16 @@ void qspDecodeRcDataFrame(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceSate) { - platformNode.setRcChannel(0, (uint16_t) (((uint16_t) qsp->payload[0] << 2) & 0x3fc) | ((qsp->payload[1] >> 6) & 0x03), 1000); - platformNode.setRcChannel(1, (uint16_t) (((uint16_t) qsp->payload[1] << 4) & 0x3f0) | ((qsp->payload[2] >> 4) & 0x0F), 1000); - platformNode.setRcChannel(2, (uint16_t) (((uint16_t) qsp->payload[2] << 6) & 0x3c0) | ((qsp->payload[3] >> 2) & 0x3F), 1000); - platformNode.setRcChannel(3, (uint16_t) (((uint16_t) qsp->payload[3] << 8) & 0x300) | ((qsp->payload[4]) & 0xFF), 1000); - platformNode.setRcChannel(4, ((int) qsp->payload[5]) << 2, 1000); - platformNode.setRcChannel(5, ((int) qsp->payload[6]) << 2, 1000); - platformNode.setRcChannel(6, ((int) ((qsp->payload[7] >> 4) & 0b00001111)) << 6, 1000); - platformNode.setRcChannel(7, ((int) (qsp->payload[7] & 0b00001111)) << 6, 1000); - platformNode.setRcChannel(8, ((int) ((qsp->payload[8] >> 4) & 0b00001111)) << 6, 1000); - platformNode.setRcChannel(9, ((int) (qsp->payload[8] & 0b00001111)) << 6, 1000); + qsp->setRcChannelCallback(0, (uint16_t) (((uint16_t) qsp->payload[0] << 2) & 0x3fc) | ((qsp->payload[1] >> 6) & 0x03), 1000); + qsp->setRcChannelCallback(1, (uint16_t) (((uint16_t) qsp->payload[1] << 4) & 0x3f0) | ((qsp->payload[2] >> 4) & 0x0F), 1000); + qsp->setRcChannelCallback(2, (uint16_t) (((uint16_t) qsp->payload[2] << 6) & 0x3c0) | ((qsp->payload[3] >> 2) & 0x3F), 1000); + qsp->setRcChannelCallback(3, (uint16_t) (((uint16_t) qsp->payload[3] << 8) & 0x300) | ((qsp->payload[4]) & 0xFF), 1000); + qsp->setRcChannelCallback(4, ((int) qsp->payload[5]) << 2, 1000); + qsp->setRcChannelCallback(5, ((int) qsp->payload[6]) << 2, 1000); + qsp->setRcChannelCallback(6, ((int) ((qsp->payload[7] >> 4) & 0b00001111)) << 6, 1000); + qsp->setRcChannelCallback(7, ((int) (qsp->payload[7] & 0b00001111)) << 6, 1000); + qsp->setRcChannelCallback(8, ((int) ((qsp->payload[8] >> 4) & 0b00001111)) << 6, 1000); + qsp->setRcChannelCallback(9, ((int) (qsp->payload[8] & 0b00001111)) << 6, 1000); } uint8_t get10bitHighShift(uint8_t channel) { @@ -41,7 +41,7 @@ void qspComputeCrc(QspConfiguration_t *qsp, uint8_t dataByte) qsp->crc = crc8_dvb_s2(qsp->crc, dataByte); } -void encodeRxHealthPayload(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceState, uint8_t rssi, uint8_t snr) { +void encodeRxHealthPayload(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceState, uint8_t rssi, uint8_t snr, uint8_t platformState) { qsp->payload[0] = rssi; qsp->payload[1] = snr; qsp->payload[2] = rxDeviceState->rxVoltage; @@ -50,7 +50,7 @@ void encodeRxHealthPayload(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceSta uint8_t flags = 0; - if (platformNode.platformState == DEVICE_STATE_FAILSAFE) { + if (platformState == DEVICE_STATE_FAILSAFE) { flags |= 0x01 << 0; } @@ -75,7 +75,7 @@ void encodeRcDataPayload(QspConfiguration_t *qsp, uint8_t noOfChannels) { for (uint8_t i = 0; i < noOfChannels; i++) { - int cV = constrain(platformNode.getRcChannel(i), 1000, 2000) - 1000; + int cV = constrain(qsp->rcChannelGetCallback(i), 1000, 2000) - 1000; uint16_t channelValue10 = cV & 0x03ff; uint8_t channelValue8 = (cV >> 2) & 0xff; @@ -133,10 +133,10 @@ void qspClearPayload(QspConfiguration_t *qsp) /** * Init CRC with salt based on 4 byte bind key */ -void qspInitCrc(QspConfiguration_t *qsp) { +void qspInitCrc(QspConfiguration_t *qsp, uint8_t bindKey[]) { qsp->crc = 0; for (uint8_t i = 0; i < 4; i++) { - qspComputeCrc(qsp, platformNode.bindKey[i]); + qspComputeCrc(qsp, bindKey[i]); } } @@ -144,7 +144,8 @@ void qspDecodeIncomingFrame( QspConfiguration_t *qsp, uint8_t incomingByte, RxDeviceState_t *rxDeviceState, - TxDeviceState_t *txDeviceState + TxDeviceState_t *txDeviceState, + uint8_t bindKey[] ) { static uint8_t frameId; static uint8_t payloadLength; @@ -153,7 +154,7 @@ void qspDecodeIncomingFrame( if (qsp->protocolState == QSP_STATE_IDLE) { - qspInitCrc(qsp); + qspInitCrc(qsp, bindKey); qspClearPayload(qsp); receivedPayload = 0; qsp->frameDecodingStartedAt = millis(); @@ -201,9 +202,15 @@ void qspDecodeIncomingFrame( /** * Encode frame is corrent format and write to hardware */ -void qspEncodeFrame(QspConfiguration_t *qsp, uint8_t buffer[], uint8_t *size, uint8_t radioChannel) { +void qspEncodeFrame( + QspConfiguration_t *qsp, + uint8_t buffer[], + uint8_t *size, + uint8_t radioChannel, + uint8_t bindKey[] +) { //Salt CRC with bind key - qspInitCrc(qsp); + qspInitCrc(qsp, bindKey); //Write frame type and length // We are no longer sending payload length, so 4 bits are now free for other usages diff --git a/crossbow/qsp.h b/crossbow/qsp.h index 45fe66c..c23f18b 100644 --- a/crossbow/qsp.h +++ b/crossbow/qsp.h @@ -1,9 +1,6 @@ #include "Arduino.h" #include "variables.h" #include "radio_node.h" -#include "platform_node.h" - -extern PlatformNode platformNode; void qspDecodeRcDataFrame(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceSate); void decodeRxHealthPayload(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceState); @@ -11,15 +8,16 @@ void decodeRxHealthPayload(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceSta uint8_t get10bitHighShift(uint8_t channel); uint8_t get10bitLowShift(uint8_t channel); void qspComputeCrc(QspConfiguration_t *qsp, uint8_t dataByte); -void encodeRxHealthPayload(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceState, uint8_t rssi, uint8_t snr); +void encodeRxHealthPayload(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceState, uint8_t rssi, uint8_t snr, uint8_t platformState); void encodeRcDataPayload(QspConfiguration_t *qsp, uint8_t noOfChannels); void qspDecodeIncomingFrame( QspConfiguration_t *qsp, uint8_t incomingByte, RxDeviceState_t *rxDeviceState, - TxDeviceState_t *txDeviceState + TxDeviceState_t *txDeviceState, + uint8_t bindKey[] ); void qspClearPayload(QspConfiguration_t *qsp); -void qspEncodeFrame(QspConfiguration_t *qsp, uint8_t buffer[], uint8_t *size, uint8_t radioChannel); +void qspEncodeFrame(QspConfiguration_t *qsp, uint8_t buffer[], uint8_t *size, uint8_t radioChannel, uint8_t bindKey[]); void encodePingPayload(QspConfiguration_t *qsp, uint32_t currentMicros); \ No newline at end of file diff --git a/crossbow/radio_node.cpp b/crossbow/radio_node.cpp index df2dfbf..5413c41 100644 --- a/crossbow/radio_node.cpp +++ b/crossbow/radio_node.cpp @@ -68,7 +68,8 @@ uint32_t RadioNode::getChannelEntryMillis(void) { void RadioNode::readAndDecode( QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceState, - TxDeviceState_t *txDeviceState + TxDeviceState_t *txDeviceState, + uint8_t bindKey[] ) { uint8_t tmpBuffer[MAX_PACKET_SIZE]; /* @@ -78,7 +79,7 @@ void RadioNode::readAndDecode( LoRa.read(tmpBuffer, bytesToRead); for (int i = 0; i < bytesToRead; i++) { - qspDecodeIncomingFrame(qsp, tmpBuffer[i], rxDeviceState, txDeviceState); + qspDecodeIncomingFrame(qsp, tmpBuffer[i], rxDeviceState, txDeviceState, bindKey); } //After reading, flush radio buffer, we have no need for whatever might be over there @@ -144,7 +145,7 @@ void RadioNode::handleTxDoneState(bool hop) { } } -void RadioNode::handleTx(QspConfiguration_t *qsp) { +void RadioNode::handleTx(QspConfiguration_t *qsp, uint8_t bindKey[]) { if (!canTransmit) { return; @@ -155,7 +156,7 @@ void RadioNode::handleTx(QspConfiguration_t *qsp) { LoRa.beginPacket(); //Prepare packet - qspEncodeFrame(qsp, tmpBuffer, &size, getChannel()); + qspEncodeFrame(qsp, tmpBuffer, &size, getChannel(), bindKey); //Sent it to radio in one SPI transaction LoRa.write(tmpBuffer, size); LoRa.endPacketAsync(); diff --git a/crossbow/radio_node.h b/crossbow/radio_node.h index 14b5f01..0d31a40 100644 --- a/crossbow/radio_node.h +++ b/crossbow/radio_node.h @@ -24,18 +24,19 @@ class RadioNode { void readAndDecode( QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceState, - TxDeviceState_t *txDeviceState + TxDeviceState_t *txDeviceState, + uint8_t bindKey[] ); uint8_t getChannel(void); uint32_t getChannelEntryMillis(void); void handleChannelDwell(void); void handleTxDoneState(bool hop); - void handleTx(QspConfiguration_t *qsp); + void handleTx(QspConfiguration_t *qsp, uint8_t bindKey[]); void set( uint8_t power, long bandwidth, uint8_t spreadingFactor, - uint8_t codingRate, + uint8_t codingRate, long frequency ); volatile int8_t bytesToRead = -1; diff --git a/crossbow/sbus.cpp b/crossbow/sbus.cpp index 732572c..0097e40 100644 --- a/crossbow/sbus.cpp +++ b/crossbow/sbus.cpp @@ -1,5 +1,4 @@ #include "Arduino.h" -#include "variables.h" #include "sbus.h" #define SBUS_MIN_OFFSET 173 @@ -31,7 +30,7 @@ int mapSbusToChannel(int in) { return (((long) in - 173l) * 1020l / 1638l) + 990; } -void sbusPreparePacket(uint8_t packet[], bool isSignalLoss, bool isFailsafe){ +void sbusPreparePacket(uint8_t packet[], bool isSignalLoss, bool isFailsafe, int (* rcChannelGetCallback)(uint8_t)) { int output[SBUS_CHANNEL_NUMBER]; @@ -40,7 +39,7 @@ void sbusPreparePacket(uint8_t packet[], bool isSignalLoss, bool isFailsafe){ * 173-1811 with middle at 992 S.BUS protocol requires */ for (uint8_t i = 0; i < SBUS_CHANNEL_NUMBER; i++) { - output[i] = mapChannelToSbus(platformNode.getRcChannel(i)); + output[i] = mapChannelToSbus(rcChannelGetCallback(i)); } uint8_t stateByte = 0x00; @@ -115,18 +114,18 @@ void SbusInput::recoverStuckFrames(void) } } -void sbusToChannels(byte buffer[]) { +void SbusInput::sbusToChannels(byte buffer[]) { - platformNode.setRcChannel(0, mapSbusToChannel((buffer[1] | buffer[2]<<8) & 0x07FF), 0); - platformNode.setRcChannel(1, mapSbusToChannel((buffer[2]>>3 | buffer[3]<<5) & 0x07FF), 0); - platformNode.setRcChannel(2, mapSbusToChannel((buffer[3]>>6 | buffer[4]<<2 | buffer[5]<<10) & 0x07FF), 0); - platformNode.setRcChannel(3, mapSbusToChannel((buffer[5]>>1 | buffer[6]<<7) & 0x07FF), 0); - platformNode.setRcChannel(4, mapSbusToChannel((buffer[6]>>4 | buffer[7]<<4) & 0x07FF), 0); - platformNode.setRcChannel(5, mapSbusToChannel((buffer[7]>>7 | buffer[8]<<1 |buffer[9]<<9) & 0x07FF), 0); - platformNode.setRcChannel(6, mapSbusToChannel((buffer[9]>>2 | buffer[10]<<6) & 0x07FF), 0); - platformNode.setRcChannel(7, mapSbusToChannel((buffer[10]>>5 | buffer[11]<<3) & 0x07FF), 0); - platformNode.setRcChannel(8, mapSbusToChannel((buffer[12] | buffer[13]<<8) & 0x07FF), 0); - platformNode.setRcChannel(9, mapSbusToChannel((buffer[13]>>3 | buffer[14]<<5) & 0x07FF), 0); + setRcChannelCallback(0, mapSbusToChannel((buffer[1] | buffer[2]<<8) & 0x07FF), 0); + setRcChannelCallback(1, mapSbusToChannel((buffer[2]>>3 | buffer[3]<<5) & 0x07FF), 0); + setRcChannelCallback(2, mapSbusToChannel((buffer[3]>>6 | buffer[4]<<2 | buffer[5]<<10) & 0x07FF), 0); + setRcChannelCallback(3, mapSbusToChannel((buffer[5]>>1 | buffer[6]<<7) & 0x07FF), 0); + setRcChannelCallback(4, mapSbusToChannel((buffer[6]>>4 | buffer[7]<<4) & 0x07FF), 0); + setRcChannelCallback(5, mapSbusToChannel((buffer[7]>>7 | buffer[8]<<1 |buffer[9]<<9) & 0x07FF), 0); + setRcChannelCallback(6, mapSbusToChannel((buffer[9]>>2 | buffer[10]<<6) & 0x07FF), 0); + setRcChannelCallback(7, mapSbusToChannel((buffer[10]>>5 | buffer[11]<<3) & 0x07FF), 0); + setRcChannelCallback(8, mapSbusToChannel((buffer[12] | buffer[13]<<8) & 0x07FF), 0); + setRcChannelCallback(9, mapSbusToChannel((buffer[13]>>3 | buffer[14]<<5) & 0x07FF), 0); //We use only 10 channels, so the reset can be just ignored } diff --git a/crossbow/sbus.h b/crossbow/sbus.h index 29ab03b..ca073aa 100644 --- a/crossbow/sbus.h +++ b/crossbow/sbus.h @@ -19,15 +19,17 @@ class SbusInput : public TxInput void loop(void); bool isReceiving(void); void recoverStuckFrames(void); + void (* setRcChannelCallback)(uint8_t channel, int value, int offset); private: HardwareSerial &_serial; uint32_t _frameDecodingStartedAt = 0; uint32_t _frameDecodingEndedAt = 0 ; uint8_t _protocolState = SBUS_DECODING_STATE_IDLE; - void sbusRead(void); + void sbusRead(void); + void sbusToChannels(byte buffer[]); }; -void sbusPreparePacket(uint8_t packet[], bool isSignalLoss, bool isFailsafe); +void sbusPreparePacket(uint8_t packet[], bool isSignalLoss, bool isFailsafe, int (* rcChannelGetCallback)(uint8_t)); #endif diff --git a/crossbow/variables.h b/crossbow/variables.h index 1ee74d0..c62d0e9 100644 --- a/crossbow/variables.h +++ b/crossbow/variables.h @@ -1,5 +1,6 @@ #include "Arduino.h" #include "radio_node.h" +#include "platform_node.h" #pragma once @@ -101,6 +102,8 @@ struct QspConfiguration_t { uint32_t anyFrameRecivedAt = 0; void (* onSuccessCallback)(QspConfiguration_t*, TxDeviceState_t*, RxDeviceState_t*, uint8_t receivedChannel); void (* onFailureCallback)(QspConfiguration_t*, TxDeviceState_t*, RxDeviceState_t*); + int (* rcChannelGetCallback)(uint8_t); + void (* setRcChannelCallback)(uint8_t channel, int value, int offset); bool forcePongFrame = false; uint32_t frameDecodingStartedAt = 0; uint32_t lastTxSlotTimestamp = 0; From 831c97b21949aa5297b52e5f4248f30bb58026af Mon Sep 17 00:00:00 2001 From: Pawel Spychalski Date: Wed, 23 May 2018 14:38:59 +0200 Subject: [PATCH 05/11] and now it should be possible to enter and leave bind mode --- crossbow/crossbow.ino | 2 +- crossbow/platform_node.cpp | 16 ++++++++-------- crossbow/platform_node.h | 3 +++ crossbow/qsp.cpp | 4 ++-- crossbow/qsp.h | 3 +-- crossbow/radio_node.cpp | 19 +++++++++++-------- crossbow/radio_node.h | 1 + crossbow/variables.h | 2 -- 8 files changed, 27 insertions(+), 23 deletions(-) diff --git a/crossbow/crossbow.ino b/crossbow/crossbow.ino index ab8161f..cacdf0a 100644 --- a/crossbow/crossbow.ino +++ b/crossbow/crossbow.ino @@ -429,7 +429,7 @@ void loop(void) &rxDeviceState, radioNode.rssi, radioNode.snr, - platformNode.platformState + (platformNode.platformState == DEVICE_STATE_FAILSAFE) ); break; } diff --git a/crossbow/platform_node.cpp b/crossbow/platform_node.cpp index 90762c1..9ba18dd 100644 --- a/crossbow/platform_node.cpp +++ b/crossbow/platform_node.cpp @@ -23,16 +23,16 @@ void PlatformNode::setRcChannel(uint8_t channel, int value, int offset) { void PlatformNode::enterBindMode(void) { isBindMode = true; - // radioNode.set( - // 0, // Minimum power - // 125000, // 125kHz bandwidth - // 6, // low spreading factor, we do not need high RX sensitivity - // 5, // same for coding rate - // 868000000 //Fixed frequency while binding - // ); - + radioNode.set( + 0, // Minimum power + 125000, // 125kHz bandwidth + 6, // low spreading factor, we do not need high RX sensitivity + 5, // same for coding rate + 868000000 //Fixed frequency while binding + ); } void PlatformNode::leaveBindMode(void) { isBindMode = false; + radioNode.reset(); } \ No newline at end of file diff --git a/crossbow/platform_node.h b/crossbow/platform_node.h index 0e8f5b4..f07146b 100644 --- a/crossbow/platform_node.h +++ b/crossbow/platform_node.h @@ -1,6 +1,7 @@ #pragma once #include "Arduino.h" +#include "radio_node.h" #ifndef PLATFORM_NODE_H #define PLATFORM_NODE_H @@ -9,6 +10,8 @@ #define PLATFORM_CHANNEL_COUNT 10 #define PLATFORM_DEFAULT_CHANNEL_VALUE 1000 +extern RadioNode radioNode; + enum deviceStates { DEVICE_STATE_OK, DEVICE_STATE_FAILSAFE, diff --git a/crossbow/qsp.cpp b/crossbow/qsp.cpp index 9f13280..db6d479 100644 --- a/crossbow/qsp.cpp +++ b/crossbow/qsp.cpp @@ -41,7 +41,7 @@ void qspComputeCrc(QspConfiguration_t *qsp, uint8_t dataByte) qsp->crc = crc8_dvb_s2(qsp->crc, dataByte); } -void encodeRxHealthPayload(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceState, uint8_t rssi, uint8_t snr, uint8_t platformState) { +void encodeRxHealthPayload(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceState, uint8_t rssi, uint8_t snr, bool isFailsafe) { qsp->payload[0] = rssi; qsp->payload[1] = snr; qsp->payload[2] = rxDeviceState->rxVoltage; @@ -50,7 +50,7 @@ void encodeRxHealthPayload(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceSta uint8_t flags = 0; - if (platformState == DEVICE_STATE_FAILSAFE) { + if (isFailsafe) { flags |= 0x01 << 0; } diff --git a/crossbow/qsp.h b/crossbow/qsp.h index c23f18b..9312f11 100644 --- a/crossbow/qsp.h +++ b/crossbow/qsp.h @@ -1,6 +1,5 @@ #include "Arduino.h" #include "variables.h" -#include "radio_node.h" void qspDecodeRcDataFrame(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceSate); void decodeRxHealthPayload(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceState); @@ -8,7 +7,7 @@ void decodeRxHealthPayload(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceSta uint8_t get10bitHighShift(uint8_t channel); uint8_t get10bitLowShift(uint8_t channel); void qspComputeCrc(QspConfiguration_t *qsp, uint8_t dataByte); -void encodeRxHealthPayload(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceState, uint8_t rssi, uint8_t snr, uint8_t platformState); +void encodeRxHealthPayload(QspConfiguration_t *qsp, RxDeviceState_t *rxDeviceState, uint8_t rssi, uint8_t snr, bool isFailsafe); void encodeRcDataPayload(QspConfiguration_t *qsp, uint8_t noOfChannels); void qspDecodeIncomingFrame( QspConfiguration_t *qsp, diff --git a/crossbow/radio_node.cpp b/crossbow/radio_node.cpp index 5413c41..e7b0512 100644 --- a/crossbow/radio_node.cpp +++ b/crossbow/radio_node.cpp @@ -17,6 +17,16 @@ RadioNode::RadioNode(void) { } +void RadioNode::reset(void) { + set( + loraTxPower, + loraBandwidth, + loraSpreadingFactor, + loraCodingRate, + getFrequencyForChannel(getChannel()) + ); +} + void RadioNode::init(uint8_t ss, uint8_t rst, uint8_t di0, void(*callback)(int)) { /* * Setup hardware @@ -31,14 +41,7 @@ void RadioNode::init(uint8_t ss, uint8_t rst, uint8_t di0, void(*callback)(int)) while (true); } - set( - loraTxPower, - loraBandwidth, - loraSpreadingFactor, - loraCodingRate, - getFrequencyForChannel(getChannel()) - ); - + reset(); LoRa.enableCrc(); //Setup ISR callback and start receiving diff --git a/crossbow/radio_node.h b/crossbow/radio_node.h index 0d31a40..164d651 100644 --- a/crossbow/radio_node.h +++ b/crossbow/radio_node.h @@ -39,6 +39,7 @@ class RadioNode { uint8_t codingRate, long frequency ); + void reset(void); volatile int8_t bytesToRead = -1; volatile uint8_t radioState = RADIO_STATE_RX; uint8_t rssi = 0; diff --git a/crossbow/variables.h b/crossbow/variables.h index c62d0e9..f412f6f 100644 --- a/crossbow/variables.h +++ b/crossbow/variables.h @@ -1,6 +1,4 @@ #include "Arduino.h" -#include "radio_node.h" -#include "platform_node.h" #pragma once From 95ecb7c4f9fad4c72e680c085760bb4a15d32d8f Mon Sep 17 00:00:00 2001 From: Pawel Spychalski Date: Wed, 23 May 2018 15:21:11 +0200 Subject: [PATCH 06/11] Outgoing bind frame --- crossbow/crossbow.ino | 9 +++++++++ crossbow/qsp.cpp | 9 +++++++++ crossbow/qsp.h | 3 ++- crossbow/tx_oled.cpp | 14 +++++++++++++- crossbow/tx_oled.h | 2 ++ 5 files changed, 35 insertions(+), 2 deletions(-) diff --git a/crossbow/crossbow.ino b/crossbow/crossbow.ino index cacdf0a..0999751 100644 --- a/crossbow/crossbow.ino +++ b/crossbow/crossbow.ino @@ -263,6 +263,11 @@ int8_t getFrameToTransmit(QspConfiguration_t *qsp) { #ifdef DEVICE_MODE_TX int8_t getFrameToTransmit(QspConfiguration_t *qsp) { + + if (platformNode.isBindMode) { + return QSP_FRAME_BIND; + } + int8_t retVal = txSendSequence[currentSequenceIndex]; currentSequenceIndex++; @@ -380,6 +385,10 @@ void loop(void) case QSP_FRAME_RC_DATA: encodeRcDataPayload(&qsp, PLATFORM_CHANNEL_COUNT); break; + + case QSP_FRAME_BIND: + encodeBindPayload(&qsp, platformNode.bindKey); + break; } transmitPayload = true; diff --git a/crossbow/qsp.cpp b/crossbow/qsp.cpp index db6d479..5642772 100644 --- a/crossbow/qsp.cpp +++ b/crossbow/qsp.cpp @@ -237,4 +237,13 @@ void encodePingPayload(QspConfiguration_t *qsp, uint32_t currentMicros) { qsp->payload[3] = (currentMicros >> 24) & 255; qsp->payloadLength = qspFrameLengths[QSP_FRAME_PING]; +} + +void encodeBindPayload(QspConfiguration_t *qsp, uint8_t bindKey[]) { + + for (uint8_t i = 0; i < qspFrameLengths[QSP_FRAME_PING]; i++) { + qsp->payload[i] = bindKey[i]; + } + + qsp->payloadLength = qspFrameLengths[QSP_FRAME_PING]; } \ No newline at end of file diff --git a/crossbow/qsp.h b/crossbow/qsp.h index 9312f11..26aaab1 100644 --- a/crossbow/qsp.h +++ b/crossbow/qsp.h @@ -19,4 +19,5 @@ void qspDecodeIncomingFrame( void qspClearPayload(QspConfiguration_t *qsp); void qspEncodeFrame(QspConfiguration_t *qsp, uint8_t buffer[], uint8_t *size, uint8_t radioChannel, uint8_t bindKey[]); -void encodePingPayload(QspConfiguration_t *qsp, uint32_t currentMicros); \ No newline at end of file +void encodePingPayload(QspConfiguration_t *qsp, uint32_t currentMicros); +void encodeBindPayload(QspConfiguration_t *qsp, uint8_t bindKey[]); \ No newline at end of file diff --git a/crossbow/tx_oled.cpp b/crossbow/tx_oled.cpp index dbbf784..ee914ce 100644 --- a/crossbow/tx_oled.cpp +++ b/crossbow/tx_oled.cpp @@ -22,6 +22,13 @@ void TxOled::loop() { //Second button has notthing to do over here break; + case TX_PAGE_BIND: + if (button1.getState() == TACTILE_STATE_LONG_PRESS) { + platformNode.isBindMode = !platformNode.isBindMode; + update = true; + } + break; + case TX_PAGE_STATS: //Second button refreshes this page if (button1.getState() == TACTILE_STATE_SHORT_PRESS) { @@ -93,7 +100,12 @@ void TxOled::renderPageBind() { _display.clear(); _display.draw1x2String(0, 0, "Bind"); - snprintf(buf, OLED_COL_COUNT, "Bind?"); + if (platformNode.isBindMode) { + snprintf(buf, OLED_COL_COUNT, "Binding!!"); + } else { + snprintf(buf, OLED_COL_COUNT, "Bind?"); + } + _display.draw1x2String(0, 4, buf); } diff --git a/crossbow/tx_oled.h b/crossbow/tx_oled.h index 7a4191f..86b5a4e 100644 --- a/crossbow/tx_oled.h +++ b/crossbow/tx_oled.h @@ -8,8 +8,10 @@ #include "variables.h" #include "tactile.h" #include "radio_node.h" +#include "platform_node.h" extern RadioNode radioNode; +extern PlatformNode platformNode; extern RxDeviceState_t rxDeviceState; extern TxDeviceState_t txDeviceState; extern Tactile button0; From c5575c9af2365a3b63bef72ce4c9de07e2b6b76a Mon Sep 17 00:00:00 2001 From: Pawel Spychalski Date: Wed, 23 May 2018 16:11:23 +0200 Subject: [PATCH 07/11] fixed travir run define --- crossbow/configurations/config_tx_sbus.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crossbow/configurations/config_tx_sbus.h b/crossbow/configurations/config_tx_sbus.h index b515b8b..123676a 100644 --- a/crossbow/configurations/config_tx_sbus.h +++ b/crossbow/configurations/config_tx_sbus.h @@ -1,7 +1,7 @@ #ifndef CONFIG_H #define CONFIG_H -#define DEVICE_MODE TX +#define DEVICE_MODE_TX #define FEATURE_TX_OLED #define FEATURE_TX_INPUT_SBUS From 71ad7498a5b27e1aa6c139ea7918ce777cbcf6b3 Mon Sep 17 00:00:00 2001 From: "Pawel Spychalski (DzikuVx)" Date: Mon, 28 May 2018 20:46:52 +0200 Subject: [PATCH 08/11] fixed binding key in bind mode --- .vscode/arduino.json | 2 +- crossbow/crossbow.ino | 24 ++++++++++++++++++++---- crossbow/platform_config.cpp | 27 --------------------------- crossbow/platform_config.h | 27 --------------------------- crossbow/platform_node.cpp | 30 ++++++++++++++++++++++++++++++ crossbow/platform_node.h | 13 +++++++++++++ crossbow/tx_oled.cpp | 7 ++++++- 7 files changed, 70 insertions(+), 60 deletions(-) delete mode 100644 crossbow/platform_config.cpp delete mode 100644 crossbow/platform_config.h diff --git a/.vscode/arduino.json b/.vscode/arduino.json index 0ca9fe3..e8e6b14 100644 --- a/.vscode/arduino.json +++ b/.vscode/arduino.json @@ -1,6 +1,6 @@ { "board": "bsfrance:avr:lora32u4", "sketch": "crossbow/crossbow.ino", - "port": "COM5", + "port": "COM7", "output": "../build" } \ No newline at end of file diff --git a/crossbow/crossbow.ino b/crossbow/crossbow.ino index 0999751..9f538f4 100644 --- a/crossbow/crossbow.ino +++ b/crossbow/crossbow.ino @@ -15,7 +15,6 @@ Copyright (c) 20xx, MPL Contributor1 contrib1@example.net #include "qsp.h" #include "sbus.h" #include "platform_node.h" -#include "platform_config.h" #ifdef ARDUINO_AVR_FEATHER32U4 #define LORA_SS_PIN 8 @@ -37,7 +36,6 @@ Copyright (c) 20xx, MPL Contributor1 contrib1@example.net RadioNode radioNode; PlatformNode platformNode; -PlatformConfig platformConfig; /* * Main defines for device working in TX mode @@ -192,11 +190,14 @@ void setup(void) * Prepare Serial1 for S.Bus processing */ Serial1.begin(100000, SERIAL_8E2); + + platformNode.isBindMode = true; + platformNode.bindModeExitMillis = millis() + 1000; #endif #ifdef DEVICE_MODE_TX - platformConfig.seed(); + platformNode.seed(); #ifdef FEATURE_TX_OLED oled.init(); @@ -228,7 +229,13 @@ void setup(void) pinMode(LED_BUILTIN, OUTPUT); - platformConfig.loadBindKey(); + platformNode.loadBindKey(); + + // platformNode.bindKey[0] = 44; + // platformNode.bindKey[1] = 72; + // platformNode.bindKey[2] = 30; + // platformNode.bindKey[3] = 239; + } uint8_t currentSequenceIndex = 0; @@ -287,6 +294,15 @@ int8_t getFrameToTransmit(QspConfiguration_t *qsp) { void loop(void) { + // delay(1000); + // Serial.print(platformNode.bindKey[0]); + // Serial.print(" "); + // Serial.print(platformNode.bindKey[1]); + // Serial.print(" "); + // Serial.print(platformNode.bindKey[2]); + // Serial.print(" "); + // Serial.println(platformNode.bindKey[3]); + uint32_t currentMillis = millis(); #ifdef DEVICE_MODE_RX diff --git a/crossbow/platform_config.cpp b/crossbow/platform_config.cpp deleted file mode 100644 index 3f1243a..0000000 --- a/crossbow/platform_config.cpp +++ /dev/null @@ -1,27 +0,0 @@ -#include "platform_config.h" -#include "Arduino.h" - -PlatformConfig::PlatformConfig(void) { - randomSeed(analogRead(0)); -}; - -void PlatformConfig::seed(void) { - uint8_t val; - - val = EEPROM.read(EEPROM_ADDRESS_BIND_KEY_SEEDED); - - if (val != 0xf1) { - EEPROM.write(EEPROM_ADDRESS_BIND_0, random(1, 255)); //Yes, from 1 to 254 - EEPROM.write(EEPROM_ADDRESS_BIND_1, random(1, 255)); //Yes, from 1 to 254 - EEPROM.write(EEPROM_ADDRESS_BIND_2, random(1, 255)); //Yes, from 1 to 254 - EEPROM.write(EEPROM_ADDRESS_BIND_3, random(1, 255)); //Yes, from 1 to 254 - EEPROM.write(EEPROM_ADDRESS_BIND_KEY_SEEDED, 0xf1); - } -} - -void PlatformConfig::loadBindKey(void) { - platformNode.bindKey[0] = EEPROM.read(EEPROM_ADDRESS_BIND_0); - platformNode.bindKey[1] = EEPROM.read(EEPROM_ADDRESS_BIND_1); - platformNode.bindKey[2] = EEPROM.read(EEPROM_ADDRESS_BIND_2); - platformNode.bindKey[3] = EEPROM.read(EEPROM_ADDRESS_BIND_3); -} \ No newline at end of file diff --git a/crossbow/platform_config.h b/crossbow/platform_config.h deleted file mode 100644 index 1e177e8..0000000 --- a/crossbow/platform_config.h +++ /dev/null @@ -1,27 +0,0 @@ -#pragma once - -#ifndef PLATFORM_CONFIG_H -#define PLATFORM_CONFIG_H - -#include -#include "platform_node.h" - -extern PlatformNode platformNode; - -enum platformConfigMemoryLayout { - EEPROM_ADDRESS_BIND_KEY_SEEDED = 0x00, - EEPROM_ADDRESS_BIND_0, - EEPROM_ADDRESS_BIND_1, - EEPROM_ADDRESS_BIND_2, - EEPROM_ADDRESS_BIND_3, - PLATFORM_CONFIG_LAST_BYTE -}; - -class PlatformConfig { - public: - PlatformConfig(void); - void seed(void); - void loadBindKey(); -}; - -#endif \ No newline at end of file diff --git a/crossbow/platform_node.cpp b/crossbow/platform_node.cpp index 9ba18dd..80f6a32 100644 --- a/crossbow/platform_node.cpp +++ b/crossbow/platform_node.cpp @@ -4,6 +4,29 @@ PlatformNode::PlatformNode(void) { for (uint8_t i = 0; i < PLATFORM_TOTAL_CHANNEL_COUNT; i++) { _channels[i] = PLATFORM_DEFAULT_CHANNEL_VALUE; } + + randomSeed(analogRead(0)); +} + +void PlatformNode::seed(void) { + uint8_t val; + + val = EEPROM.read(EEPROM_ADDRESS_BIND_KEY_SEEDED); + + if (val != 0xf1) { + EEPROM.write(EEPROM_ADDRESS_BIND_0, random(1, 255)); //Yes, from 1 to 254 + EEPROM.write(EEPROM_ADDRESS_BIND_1, random(1, 255)); //Yes, from 1 to 254 + EEPROM.write(EEPROM_ADDRESS_BIND_2, random(1, 255)); //Yes, from 1 to 254 + EEPROM.write(EEPROM_ADDRESS_BIND_3, random(1, 255)); //Yes, from 1 to 254 + EEPROM.write(EEPROM_ADDRESS_BIND_KEY_SEEDED, 0xf1); + } +} + +void PlatformNode::loadBindKey(void) { + bindKey[0] = EEPROM.read(EEPROM_ADDRESS_BIND_0); + bindKey[1] = EEPROM.read(EEPROM_ADDRESS_BIND_1); + bindKey[2] = EEPROM.read(EEPROM_ADDRESS_BIND_2); + bindKey[3] = EEPROM.read(EEPROM_ADDRESS_BIND_3); } int PlatformNode::getRcChannel(uint8_t channel) { @@ -23,6 +46,12 @@ void PlatformNode::setRcChannel(uint8_t channel, int value, int offset) { void PlatformNode::enterBindMode(void) { isBindMode = true; + // Set temporary bind mode + bindKey[0] = 0xf1; + bindKey[0] = 0x1e; + bindKey[0] = 0x07; + bindKey[0] = 0x42; + radioNode.set( 0, // Minimum power 125000, // 125kHz bandwidth @@ -34,5 +63,6 @@ void PlatformNode::enterBindMode(void) { void PlatformNode::leaveBindMode(void) { isBindMode = false; + loadBindKey(); radioNode.reset(); } \ No newline at end of file diff --git a/crossbow/platform_node.h b/crossbow/platform_node.h index f07146b..089acfd 100644 --- a/crossbow/platform_node.h +++ b/crossbow/platform_node.h @@ -2,6 +2,7 @@ #include "Arduino.h" #include "radio_node.h" +#include #ifndef PLATFORM_NODE_H #define PLATFORM_NODE_H @@ -17,6 +18,15 @@ enum deviceStates { DEVICE_STATE_FAILSAFE, DEVICE_STATE_UNDETERMINED }; + +enum platformConfigMemoryLayout { + EEPROM_ADDRESS_BIND_KEY_SEEDED = 0x00, + EEPROM_ADDRESS_BIND_0, + EEPROM_ADDRESS_BIND_1, + EEPROM_ADDRESS_BIND_2, + EEPROM_ADDRESS_BIND_3, + PLATFORM_CONFIG_LAST_BYTE +}; class PlatformNode { @@ -26,10 +36,13 @@ class PlatformNode { void setRcChannel(uint8_t channel, int value, int offset); void enterBindMode(void); void leaveBindMode(void); + void seed(void); + void loadBindKey(); uint8_t bindKey[4]; uint32_t nextLedUpdate = 0; uint8_t platformState = DEVICE_STATE_UNDETERMINED; bool isBindMode = false; + uint32_t bindModeExitMillis; private: volatile int _channels[PLATFORM_TOTAL_CHANNEL_COUNT]; }; diff --git a/crossbow/tx_oled.cpp b/crossbow/tx_oled.cpp index ee914ce..5984f1d 100644 --- a/crossbow/tx_oled.cpp +++ b/crossbow/tx_oled.cpp @@ -24,7 +24,12 @@ void TxOled::loop() { case TX_PAGE_BIND: if (button1.getState() == TACTILE_STATE_LONG_PRESS) { - platformNode.isBindMode = !platformNode.isBindMode; + + if (!platformNode.isBindMode) { + platformNode.enterBindMode(); + } else { + platformNode.leaveBindMode(); + } update = true; } break; From 03882af79107a00cb4eaf25274c300424baf4e93 Mon Sep 17 00:00:00 2001 From: "Pawel Spychalski (DzikuVx)" Date: Thu, 31 May 2018 15:53:52 +0200 Subject: [PATCH 09/11] Correctly working binding mode --- crossbow/config.h | 4 +-- crossbow/crossbow.ino | 70 ++++++++++++++++++++++++++++++---------------- crossbow/platform_node.cpp | 34 ++++++++++++++-------- crossbow/platform_node.h | 3 +- crossbow/qsp.cpp | 2 +- 5 files changed, 73 insertions(+), 40 deletions(-) diff --git a/crossbow/config.h b/crossbow/config.h index 44c13d4..d62968a 100644 --- a/crossbow/config.h +++ b/crossbow/config.h @@ -15,8 +15,8 @@ * DEVICE_MODE_TX * DEVICE_MODE_RX */ -#define DEVICE_MODE_TX -// #define DEVICE_MODE_RX +// #define DEVICE_MODE_TX +#define DEVICE_MODE_RX #define FEATURE_TX_OLED // #define FORCE_TX_WITHOUT_INPUT diff --git a/crossbow/crossbow.ino b/crossbow/crossbow.ino index 9f538f4..f557ee7 100644 --- a/crossbow/crossbow.ino +++ b/crossbow/crossbow.ino @@ -126,6 +126,20 @@ void onQspSuccess(QspConfiguration_t *qsp, TxDeviceState_t *txDeviceState, RxDev qsp->forcePongFrame = true; break; + case QSP_FRAME_BIND: +#ifdef DEVICE_MODE_RX + if (platformNode.isBindMode) { + platformNode.bindKey[0] = qsp->payload[0]; + platformNode.bindKey[1] = qsp->payload[1]; + platformNode.bindKey[2] = qsp->payload[2]; + platformNode.bindKey[3] = qsp->payload[3]; + + platformNode.saveBindKey(platformNode.bindKey); + platformNode.leaveBindMode(); + } +#endif + break; + case QSP_FRAME_PONG: txDeviceState->roundtrip = qsp->payload[0]; txDeviceState->roundtrip += (uint32_t) qsp->payload[1] << 8; @@ -191,12 +205,13 @@ void setup(void) */ Serial1.begin(100000, SERIAL_8E2); - platformNode.isBindMode = true; - platformNode.bindModeExitMillis = millis() + 1000; + platformNode.enterBindMode(); + LoRa.receive(); //TODO this probably should be moved somewhere.... #endif #ifdef DEVICE_MODE_TX + randomSeed(analogRead(A4)); platformNode.seed(); #ifdef FEATURE_TX_OLED @@ -225,17 +240,11 @@ void setup(void) button0.start(); button1.start(); + platformNode.loadBindKey(platformNode.bindKey); + #endif pinMode(LED_BUILTIN, OUTPUT); - - platformNode.loadBindKey(); - - // platformNode.bindKey[0] = 44; - // platformNode.bindKey[1] = 72; - // platformNode.bindKey[2] = 30; - // platformNode.bindKey[3] = 239; - } uint8_t currentSequenceIndex = 0; @@ -294,18 +303,17 @@ int8_t getFrameToTransmit(QspConfiguration_t *qsp) { void loop(void) { - // delay(1000); - // Serial.print(platformNode.bindKey[0]); - // Serial.print(" "); - // Serial.print(platformNode.bindKey[1]); - // Serial.print(" "); - // Serial.print(platformNode.bindKey[2]); - // Serial.print(" "); - // Serial.println(platformNode.bindKey[3]); + static uint32_t nextKey = millis(); uint32_t currentMillis = millis(); #ifdef DEVICE_MODE_RX + + //Make sure to leave bind mode when binding is done + if (platformNode.isBindMode && millis() > platformNode.bindModeExitMillis) { + platformNode.leaveBindMode(); + } + /* * This routine handles resync of TX/RX while hoppping frequencies * When not in bind mode. Bind mode is single frequency operation @@ -403,7 +411,15 @@ void loop(void) break; case QSP_FRAME_BIND: - encodeBindPayload(&qsp, platformNode.bindKey); + + /* + * Key to be transmitted is stored in EEPROM + * During binding different key is used + */ + uint8_t key[4]; + platformNode.loadBindKey(key); + + encodeBindPayload(&qsp, key); break; } @@ -552,11 +568,18 @@ void loop(void) platformNode.nextLedUpdate = currentMillis + 200; } #else - platformNode.nextLedUpdate = currentMillis + 200; - if (platformNode.platformState == DEVICE_STATE_FAILSAFE) { - digitalWrite(LED_BUILTIN, HIGH); - } else { + + if (platformNode.isBindMode) { + platformNode.nextLedUpdate = currentMillis + 50; digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN)); + } else { + platformNode.nextLedUpdate = currentMillis + 200; + + if (platformNode.platformState == DEVICE_STATE_FAILSAFE) { + digitalWrite(LED_BUILTIN, HIGH); + } else { + digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN)); + } } #endif } @@ -570,7 +593,6 @@ void onReceive(int packetSize) * If not reading, then we might start */ if (radioNode.bytesToRead == NO_DATA_TO_READ) { - if (packetSize >= MIN_PACKET_SIZE && packetSize <= MAX_PACKET_SIZE) { //We have a packet candidate that might contain a valid QSP packet radioNode.bytesToRead = packetSize; diff --git a/crossbow/platform_node.cpp b/crossbow/platform_node.cpp index 80f6a32..69fd688 100644 --- a/crossbow/platform_node.cpp +++ b/crossbow/platform_node.cpp @@ -4,10 +4,11 @@ PlatformNode::PlatformNode(void) { for (uint8_t i = 0; i < PLATFORM_TOTAL_CHANNEL_COUNT; i++) { _channels[i] = PLATFORM_DEFAULT_CHANNEL_VALUE; } - - randomSeed(analogRead(0)); } +/** + * Return true if new bind key was generated + */ void PlatformNode::seed(void) { uint8_t val; @@ -19,14 +20,22 @@ void PlatformNode::seed(void) { EEPROM.write(EEPROM_ADDRESS_BIND_2, random(1, 255)); //Yes, from 1 to 254 EEPROM.write(EEPROM_ADDRESS_BIND_3, random(1, 255)); //Yes, from 1 to 254 EEPROM.write(EEPROM_ADDRESS_BIND_KEY_SEEDED, 0xf1); - } + } } -void PlatformNode::loadBindKey(void) { - bindKey[0] = EEPROM.read(EEPROM_ADDRESS_BIND_0); - bindKey[1] = EEPROM.read(EEPROM_ADDRESS_BIND_1); - bindKey[2] = EEPROM.read(EEPROM_ADDRESS_BIND_2); - bindKey[3] = EEPROM.read(EEPROM_ADDRESS_BIND_3); +void PlatformNode::loadBindKey(uint8_t key[]) { + key[0] = EEPROM.read(EEPROM_ADDRESS_BIND_0); + key[1] = EEPROM.read(EEPROM_ADDRESS_BIND_1); + key[2] = EEPROM.read(EEPROM_ADDRESS_BIND_2); + key[3] = EEPROM.read(EEPROM_ADDRESS_BIND_3); +} + +void PlatformNode::saveBindKey(uint8_t key[]) { + EEPROM.write(EEPROM_ADDRESS_BIND_0, key[0]); + EEPROM.write(EEPROM_ADDRESS_BIND_1, key[1]); + EEPROM.write(EEPROM_ADDRESS_BIND_2, key[2]); + EEPROM.write(EEPROM_ADDRESS_BIND_3, key[3]); + EEPROM.write(EEPROM_ADDRESS_BIND_KEY_SEEDED, 0xf1); } int PlatformNode::getRcChannel(uint8_t channel) { @@ -48,9 +57,9 @@ void PlatformNode::enterBindMode(void) { // Set temporary bind mode bindKey[0] = 0xf1; - bindKey[0] = 0x1e; - bindKey[0] = 0x07; - bindKey[0] = 0x42; + bindKey[1] = 0x1e; + bindKey[2] = 0x07; + bindKey[3] = 0x42; radioNode.set( 0, // Minimum power @@ -59,10 +68,11 @@ void PlatformNode::enterBindMode(void) { 5, // same for coding rate 868000000 //Fixed frequency while binding ); + bindModeExitMillis = millis() + 1000; //This happens only on RX } void PlatformNode::leaveBindMode(void) { isBindMode = false; - loadBindKey(); + loadBindKey(bindKey); radioNode.reset(); } \ No newline at end of file diff --git a/crossbow/platform_node.h b/crossbow/platform_node.h index 089acfd..3728c59 100644 --- a/crossbow/platform_node.h +++ b/crossbow/platform_node.h @@ -37,7 +37,8 @@ class PlatformNode { void enterBindMode(void); void leaveBindMode(void); void seed(void); - void loadBindKey(); + void loadBindKey(uint8_t key[]); + void saveBindKey(uint8_t key[]); uint8_t bindKey[4]; uint32_t nextLedUpdate = 0; uint8_t platformState = DEVICE_STATE_UNDETERMINED; diff --git a/crossbow/qsp.cpp b/crossbow/qsp.cpp index 5642772..11ebca4 100644 --- a/crossbow/qsp.cpp +++ b/crossbow/qsp.cpp @@ -244,6 +244,6 @@ void encodeBindPayload(QspConfiguration_t *qsp, uint8_t bindKey[]) { for (uint8_t i = 0; i < qspFrameLengths[QSP_FRAME_PING]; i++) { qsp->payload[i] = bindKey[i]; } - + qsp->payloadLength = qspFrameLengths[QSP_FRAME_PING]; } \ No newline at end of file From 8bb2a403c5762e90a0325384d78906dfb19325f2 Mon Sep 17 00:00:00 2001 From: "Pawel Spychalski (DzikuVx)" Date: Thu, 31 May 2018 16:01:24 +0200 Subject: [PATCH 10/11] Docs for binding --- README.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/README.md b/README.md index d2aa969..aeae34a 100644 --- a/README.md +++ b/README.md @@ -127,6 +127,20 @@ That mean the following: * On F3 or F7 boards flight controller has to be configured not to use inverted SBUS (refer to flight controller docs) * On F4 flight controllers inverios has to be configured only when using dedicated SBUS serial port +# Manual + +## Binding + +After flashing TX and RX, binding is required. + +1. Power up TX module +1. Navigate using button #1 to "Bind" option +1. Long press button #2 to enter _Bind Mode_ +1. Power up RX +1. RX LED flashes quickly when in bind mode +1. After RX receives bind packet, LED goes to constanly _ON_ state +1. When RX LED is solid _ON_, leave bind mode by long pressing button #2 + # TX module connection diagram ![Diagram](docs/TX_module_schem.png) From c297a99f774f2014168e4fab41f8a7b4cb383997 Mon Sep 17 00:00:00 2001 From: "Pawel Spychalski (DzikuVx)" Date: Thu, 31 May 2018 17:54:16 +0200 Subject: [PATCH 11/11] Docs update --- docs/TX_module.fzz | Bin 71895 -> 73293 bytes docs/TX_module_schem.png | Bin 110847 -> 117836 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/TX_module.fzz b/docs/TX_module.fzz index 9e2619ac9647ef5b7a51db6c090760879160a398..3d88d39916623469b72e95c0d2f4d80026aeed14 100644 GIT binary patch delta 11558 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

`Tb*K1?%1h-8Z+p-z-{5w)uIr$vRKQpv} zb52z0ugOHY&IV}uKEh-jdAHB#A#U#Aw}|MZ*t*E_+Uzd;+og*Tc|ev5QK<7|NyuI2 znB3hh*0f-70{y$hD>ETXOtzQp9AW>H`T%zo#n!_t5qf!$v>an->{XAE^ph=Nj}14G z0=4f$cr%^>B}EpELo`-)oG+;baq1iOK1h7hHR^t!e|UioS6*DrK{ZRe%*Xf_QvW*1 zDVZReemL3h3Sn3BUatXtb{f&>Gyx zB-;CK`-%XO8H@rV+?nBW%~n*&S+ZQX&PrHj0`pYlpNw`@J_)pf+@`Hi!WO zcSSsvhK~oPvu}4|VnZ~=#o*2s-H$-$1`YV(yvCs=;D&C;2gV7h>G0c~-&yobj=3+W zP)(tRoMn(v&hK?$C;p&dB=vE(c?X&^q71t!|BcU(GM3;QFEIE|r(DoY^9`DU_N?7s zy)2{^##53{y$6|;hWPY33m&d>zXk@toqk_3S)mn=+T#W-M2!d`Wj$3kUq~IpakVqa z1HRC}M)C{8((cRjBr2*`syx!dO$lIz-DRa=nje5D$h**(N4ThvFMcE=C}F6@HmHqr zX;4wy%o{et6o z5Z?r)DugNxKld8p_bzg-1SOr1fPMla8Youi#>UpGI( zmYA}>WZR9!di<06dC_V+f|q$Ms|jk)Fh;pI@;5#~NYsmzG$mF# zZQ)0@6X&n^2(a|%C8AMEQ>YB)PMi@#d<+nYF6*=-oix2+*H_z>d#=E@a8fs$fjUXg(UKJw{h>^3VaZ5{TI{io)I~;iLCfDzz>lddK zXHZOQss|%Rej^`&qx`e5+z`yZX@2vC2hanvU{7h>Gq?h12#RY|>n3R3XZa|%5C#53 zHT@}ye#E+y!A(;GNPrldMyu&n!0QUq5&X6!LL#ikFPL3c5QKI)&ZmZWzxN;S5;}j= zX8uND4{N(DQU}v$PpAbLN`Cm?yGRL;l&w~v!3q__WY0KJBAMe(QzE&TIG`4i9vM-vqlYWY=+ZiCMW#m#0Z3Lh0Q4u{+?Yla4?^v_G-vXSCYyf|r{^^Yu%Q6#cYf*oR9SEzA+xD%e&O z03q~(h8OGck*hCJK?R~^{;6*_wML_cnjeWeSkgOcw)R}<2`~NR%tnNdQjHgHzBxdf zjFj*+b%uC?Fo%z!f_WTd$_4B%EIl@YOF35(4qWV(J{xw~LOdOT0T@9%P92?DG$srg zkJKmVina1m8C^a6TEp!7fm!3#oCvfNBK+!fy4G4I{4y_<-K zSGRmUtdU$yD``oAB!nvvYCkc5{pr)Jtr4v4&UGA7)8^^ZTIeSQKKizkv%&no=#b?>(H*d~^+D?fy*+D2=P z0dtExOwR@AWdUyy)h6Ftdd)4gNeB=7TXVlImC0K3WrCa>9k1)YB@kqq9;yDw5@3-~tgbKN!s@lG1<5z|uaO;> zniml(>mkLsuuib(5F$KSGuQ)&Hy-RIWSIaK2jYznYxVBf#D{%=a1p^GK-LKU$00)q td-A_0m#yEI(}`ej-mQ3ISoe1ekpwmt>;IoxhUAgJav@O>!@kch|1aO$llTAt delta 10139 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 IV10A{2gT8yRsaA1 diff --git a/docs/TX_module_schem.png b/docs/TX_module_schem.png index 652909c16e30a448f9da47dbf43338b89a1b46ae..47025244bbc3066058e5ee4afecaf8f69ba4e30e 100644 GIT binary patch literal 117836 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 z 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