mirror of
https://github.com/markqvist/RNode_Firmware.git
synced 2024-10-01 03:15:39 -04:00
commit
9dbba03a67
@ -363,7 +363,7 @@ void transmit(uint16_t size) {
|
||||
LoRa.beginPacket();
|
||||
LoRa.write(header); written++;
|
||||
|
||||
for (uint16_t i; i < size; i++) {
|
||||
for (int i=0; i < size; i++) {
|
||||
LoRa.write(tbuf[i]);
|
||||
|
||||
written++;
|
||||
@ -400,7 +400,7 @@ void transmit(uint16_t size) {
|
||||
LoRa.beginPacket(size);
|
||||
}
|
||||
|
||||
for (uint16_t i; i < size; i++) {
|
||||
for (int i=0; i < size; i++) {
|
||||
LoRa.write(tbuf[i]);
|
||||
|
||||
written++;
|
||||
@ -422,7 +422,7 @@ void serialCallback(uint8_t sbyte) {
|
||||
|
||||
if (!fifo16_isfull(&packet_starts) && queued_bytes < CONFIG_QUEUE_SIZE) {
|
||||
uint16_t s = current_packet_start;
|
||||
uint16_t e = queue_cursor-1; if (e == -1) e = CONFIG_QUEUE_SIZE-1;
|
||||
int e = queue_cursor-1; if (e == -1) e = CONFIG_QUEUE_SIZE-1;
|
||||
uint16_t l;
|
||||
|
||||
if (s != e) {
|
||||
@ -631,9 +631,9 @@ void serialCallback(uint8_t sbyte) {
|
||||
void updateModemStatus() {
|
||||
uint8_t status = LoRa.modemStatus();
|
||||
last_status_update = millis();
|
||||
if (status & SIG_DETECT == SIG_DETECT) { stat_signal_detected = true; } else { stat_signal_detected = false; }
|
||||
if (status & SIG_SYNCED == SIG_SYNCED) { stat_signal_synced = true; } else { stat_signal_synced = false; }
|
||||
if (status & RX_ONGOING == RX_ONGOING) { stat_rx_ongoing = true; } else { stat_rx_ongoing = false; }
|
||||
if ((status & SIG_DETECT) == SIG_DETECT) { stat_signal_detected = true; } else { stat_signal_detected = false; }
|
||||
if ((status & SIG_SYNCED) == SIG_SYNCED) { stat_signal_synced = true; } else { stat_signal_synced = false; }
|
||||
if ((status & RX_ONGOING) == RX_ONGOING) { stat_rx_ongoing = true; } else { stat_rx_ongoing = false; }
|
||||
|
||||
if (stat_signal_detected || stat_signal_synced || stat_rx_ongoing) {
|
||||
if (dcd_count < dcd_threshold) {
|
||||
@ -805,7 +805,7 @@ void buffer_serial() {
|
||||
// Discard GPS data for now
|
||||
c = 0;
|
||||
while (c < MAX_CYCLES && Serial1.available()) {
|
||||
uint8_t void_c = Serial1.read();
|
||||
Serial1.read();
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -849,4 +849,4 @@ void serial_interrupt_init() {
|
||||
ISR(TIMER3_CAPT_vect) {
|
||||
buffer_serial();
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
42
Utilities.h
42
Utilities.h
@ -210,10 +210,10 @@ int8_t led_standby_direction = 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
void escapedSerialWrite(uint8_t byte) {
|
||||
if (byte == FEND) { Serial.write(FESC); byte = TFEND; }
|
||||
if (byte == FESC) { Serial.write(FESC); byte = TFESC; }
|
||||
Serial.write(byte);
|
||||
void escapedSerialWrite(uint8_t vbyte) {
|
||||
if (vbyte == FEND) { Serial.write(FESC); vbyte = TFEND; }
|
||||
if (vbyte == FESC) { Serial.write(FESC); vbyte = TFESC; }
|
||||
Serial.write(vbyte);
|
||||
}
|
||||
|
||||
void kiss_indicate_reset() {
|
||||
@ -327,10 +327,10 @@ void kiss_indicate_frequency() {
|
||||
Serial.write(FEND);
|
||||
}
|
||||
|
||||
void kiss_indicate_random(uint8_t byte) {
|
||||
void kiss_indicate_random(uint8_t vbyte) {
|
||||
Serial.write(FEND);
|
||||
Serial.write(CMD_RANDOM);
|
||||
Serial.write(byte);
|
||||
Serial.write(vbyte);
|
||||
Serial.write(FEND);
|
||||
}
|
||||
|
||||
@ -474,22 +474,22 @@ bool eeprom_info_locked() {
|
||||
|
||||
void eeprom_dump_info() {
|
||||
for (int addr = ADDR_PRODUCT; addr <= ADDR_INFO_LOCK; addr++) {
|
||||
uint8_t byte = EEPROM.read(eeprom_addr(addr));
|
||||
escapedSerialWrite(byte);
|
||||
uint8_t vbyte = EEPROM.read(eeprom_addr(addr));
|
||||
escapedSerialWrite(vbyte);
|
||||
}
|
||||
}
|
||||
|
||||
void eeprom_dump_config() {
|
||||
for (int addr = ADDR_CONF_SF; addr <= ADDR_CONF_OK; addr++) {
|
||||
uint8_t byte = EEPROM.read(eeprom_addr(addr));
|
||||
escapedSerialWrite(byte);
|
||||
uint8_t vbyte = EEPROM.read(eeprom_addr(addr));
|
||||
escapedSerialWrite(vbyte);
|
||||
}
|
||||
}
|
||||
|
||||
void eeprom_dump_all() {
|
||||
for (int addr = 0; addr < EEPROM_RESERVED; addr++) {
|
||||
uint8_t byte = EEPROM.read(eeprom_addr(addr));
|
||||
escapedSerialWrite(byte);
|
||||
uint8_t vbyte = EEPROM.read(eeprom_addr(addr));
|
||||
escapedSerialWrite(vbyte);
|
||||
}
|
||||
}
|
||||
|
||||
@ -500,21 +500,21 @@ void kiss_dump_eeprom() {
|
||||
Serial.write(FEND);
|
||||
}
|
||||
|
||||
void eeprom_update(int mapped_addr, uint8_t byte) {
|
||||
void eeprom_update(int mapped_addr, uint8_t vbyte) {
|
||||
#if MCU_VARIANT == MCU_1284P || MCU_VARIANT == MCU_2560
|
||||
EEPROM.update(mapped_addr, byte);
|
||||
EEPROM.update(mapped_addr, vbyte);
|
||||
#elif MCU_VARIANT == MCU_ESP32
|
||||
if (EEPROM.read(mapped_addr) != byte) {
|
||||
EEPROM.write(mapped_addr, byte);
|
||||
if (EEPROM.read(mapped_addr) != vbyte) {
|
||||
EEPROM.write(mapped_addr, vbyte);
|
||||
EEPROM.commit();
|
||||
}
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
void eeprom_write(uint8_t addr, uint8_t byte) {
|
||||
if (!eeprom_info_locked() && addr >= 0 && addr < EEPROM_RESERVED) {
|
||||
eeprom_update(eeprom_addr(addr), byte);
|
||||
void eeprom_write(int addr, uint8_t vbyte) {
|
||||
if (!eeprom_info_locked() && (addr >= 0) && (addr < EEPROM_RESERVED)) {
|
||||
eeprom_update(eeprom_addr(addr), vbyte);
|
||||
} else {
|
||||
kiss_indicate_error(ERROR_EEPROM_LOCKED);
|
||||
}
|
||||
@ -565,8 +565,8 @@ bool eeprom_hwrev_valid() {
|
||||
bool eeprom_checksum_valid() {
|
||||
char *data = (char*)malloc(CHECKSUMMED_SIZE);
|
||||
for (uint8_t i = 0; i < CHECKSUMMED_SIZE; i++) {
|
||||
char byte = EEPROM.read(eeprom_addr(i));
|
||||
data[i] = byte;
|
||||
char vbyte = EEPROM.read(eeprom_addr(i));
|
||||
data[i] = vbyte;
|
||||
}
|
||||
|
||||
unsigned char *hash = MD5::make_hash(data, CHECKSUMMED_SIZE);
|
||||
|
Loading…
Reference in New Issue
Block a user