Compare commits

..

5 Commits

Author SHA1 Message Date
Ben Meadors
1253abd138 Syntax error 2022-08-14 15:56:55 -05:00
Ben Meadors
80e3cee006 NimBLE enhanced logging (do not merge) (#1629)
* Change log level to debug

* Don't reinit active bluetooth services

* Chmod +x before zip and adding to release
2022-08-14 15:27:21 -05:00
Ben Meadors
ca9113ad05 Update version.properties 2022-08-14 15:16:47 -05:00
GUVWAF
63c8f15d38 Resend implicit ACK for a repeated broadcast (#1628) 2022-08-13 10:09:43 -05:00
Ben Meadors
73a1ea59f4 Update BMP280Sensor.cpp (#1627) 2022-08-12 20:11:32 -05:00
7 changed files with 28 additions and 7 deletions

View File

@@ -425,6 +425,11 @@ jobs:
with:
name: firmware-${{ steps.version.outputs.version }}
path: ./output
- name: Device scripts permissions
run: |
chmod +x ./output/device-install.sh
chmod +x ./output/device-update.sh
- name: Zip firmware
run: zip -j -r ./firmware-${{ steps.version.outputs.version }}.zip ./output

View File

@@ -67,6 +67,12 @@ bool ReliableRouter::shouldFilterReceived(MeshPacket *p)
sendAckNak(Routing_Error_NONE, getFrom(p), p->id, p->channel);
DEBUG_MSG("acking a repeated want_ack packet\n");
}
} else if (wasSeenRecently(p, false) && p->hop_limit == HOP_RELIABLE) {
// retransmission on broadcast has hop_limit still equal to HOP_RELIABLE
DEBUG_MSG("Resending implicit ack for a repeated floodmsg\n");
MeshPacket *tosend = packetPool.allocCopy(*p);
tosend->hop_limit--; // bump down the hop count
Router::send(tosend);
}
return FloodingRouter::shouldFilterReceived(p);

View File

@@ -6,7 +6,7 @@
#include <typeinfo>
BMP280Sensor::BMP280Sensor() :
TelemetrySensor(TelemetrySensorType_BME280, "BMP280")
TelemetrySensor(TelemetrySensorType_BMP280, "BMP280")
{
}
@@ -27,4 +27,4 @@ bool BMP280Sensor::getMetrics(Telemetry *measurement) {
measurement->variant.environment_metrics.barometric_pressure = bmp280.readPressure() / 100.0F;
return true;
}
}

View File

@@ -56,7 +56,8 @@ class ESP32BluetoothToRadioCallback : public NimBLECharacteristicCallbacks
}
};
class ESP32BluetoothFromRadioCallback : public NimBLECharacteristicCallbacks {
class ESP32BluetoothFromRadioCallback : public NimBLECharacteristicCallbacks
{
virtual void onRead(NimBLECharacteristic *pCharacteristic) {
DEBUG_MSG("From Radio onread\n");
uint8_t fromRadioBytes[FromRadio_size];
@@ -91,7 +92,8 @@ class ESP32BluetoothServerCallback : public NimBLEServerCallbacks
return passkey;
}
virtual void onAuthenticationComplete(ble_gap_conn_desc *desc) {
virtual void onAuthenticationComplete(ble_gap_conn_desc *desc)
{
DEBUG_MSG("BLE authentication complete\n");
if (passkeyShowing) {
@@ -100,7 +102,8 @@ class ESP32BluetoothServerCallback : public NimBLEServerCallbacks
}
}
virtual void onDisconnect(NimBLEServer* pServer, ble_gap_conn_desc *desc) {
virtual void onDisconnect(NimBLEServer* pServer, ble_gap_conn_desc *desc)
{
DEBUG_MSG("BLE disconnect\n");
}
};
@@ -118,6 +121,12 @@ void ESP32Bluetooth::shutdown()
pAdvertising->stop();
}
bool ESP32Bluetooth::isActive()
{
NimBLEAdvertising *pAdvertising = NimBLEDevice::getAdvertising();
return bleServer && (bleServer->getConnectedCount() > 0 || pAdvertising->isAdvertising());
}
void ESP32Bluetooth::setup()
{
DEBUG_MSG("Initialise the ESP32 bluetooth module\n");

View File

@@ -8,6 +8,7 @@ class ESP32Bluetooth
void setup();
void shutdown();
void clearBonds();
bool isActive();
private:
void setupService();

View File

@@ -46,7 +46,7 @@ void setBluetoothEnable(bool on) {
if (!esp32Bluetooth) {
esp32Bluetooth = new ESP32Bluetooth();
}
if (on) {
if (on && !esp32Bluetooth->isActive()) {
esp32Bluetooth->setup();
} else {
esp32Bluetooth->shutdown();

View File

@@ -1,4 +1,4 @@
[VERSION]
major = 1
minor = 3
build = 37
build = 38