mirror of
https://github.com/meshtastic/firmware.git
synced 2025-08-04 12:44:40 +00:00
Merge branch 'master' into dismiss_frames
This commit is contained in:
commit
f3ffc476fe
@ -1 +1 @@
|
|||||||
Subproject commit 9bac2886f9344f25716921467a82e8b0326107cd
|
Subproject commit 1ecf94da9898ea0b8f2745bfe6bda2a8f2ca4073
|
@ -31,6 +31,9 @@
|
|||||||
#include "Throttle.h"
|
#include "Throttle.h"
|
||||||
#include <RTC.h>
|
#include <RTC.h>
|
||||||
|
|
||||||
|
// Flag to indicate a heartbeat was received and we should send queue status
|
||||||
|
bool heartbeatReceived = false;
|
||||||
|
|
||||||
PhoneAPI::PhoneAPI()
|
PhoneAPI::PhoneAPI()
|
||||||
{
|
{
|
||||||
lastContactMsec = millis();
|
lastContactMsec = millis();
|
||||||
@ -155,6 +158,7 @@ bool PhoneAPI::handleToRadio(const uint8_t *buf, size_t bufLength)
|
|||||||
#endif
|
#endif
|
||||||
case meshtastic_ToRadio_heartbeat_tag:
|
case meshtastic_ToRadio_heartbeat_tag:
|
||||||
LOG_DEBUG("Got client heartbeat");
|
LOG_DEBUG("Got client heartbeat");
|
||||||
|
heartbeatReceived = true;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
// Ignore nop messages
|
// Ignore nop messages
|
||||||
@ -194,6 +198,17 @@ size_t PhoneAPI::getFromRadio(uint8_t *buf)
|
|||||||
// In case we send a FromRadio packet
|
// In case we send a FromRadio packet
|
||||||
memset(&fromRadioScratch, 0, sizeof(fromRadioScratch));
|
memset(&fromRadioScratch, 0, sizeof(fromRadioScratch));
|
||||||
|
|
||||||
|
// Respond to heartbeat by sending queue status
|
||||||
|
if (heartbeatReceived) {
|
||||||
|
memset(&fromRadioScratch, 0, sizeof(fromRadioScratch));
|
||||||
|
fromRadioScratch.which_payload_variant = meshtastic_FromRadio_queueStatus_tag;
|
||||||
|
fromRadioScratch.queueStatus = router->getQueueStatus();
|
||||||
|
heartbeatReceived = false;
|
||||||
|
size_t numbytes = pb_encode_to_bytes(buf, meshtastic_FromRadio_size, &meshtastic_FromRadio_msg, &fromRadioScratch);
|
||||||
|
LOG_DEBUG("FromRadio=STATE_SEND_QUEUE_STATUS, numbytes=%u", numbytes);
|
||||||
|
return numbytes;
|
||||||
|
}
|
||||||
|
|
||||||
// Advance states as needed
|
// Advance states as needed
|
||||||
switch (state) {
|
switch (state) {
|
||||||
case STATE_SEND_NOTHING:
|
case STATE_SEND_NOTHING:
|
||||||
|
@ -267,6 +267,9 @@ typedef enum _meshtastic_HardwareModel {
|
|||||||
meshtastic_HardwareModel_RAK3312 = 106,
|
meshtastic_HardwareModel_RAK3312 = 106,
|
||||||
/* Elecrow ThinkNode M5 https://www.elecrow.com/wiki/ThinkNode_M5_Meshtastic_LoRa_Signal_Transceiver_ESP32-S3.html */
|
/* Elecrow ThinkNode M5 https://www.elecrow.com/wiki/ThinkNode_M5_Meshtastic_LoRa_Signal_Transceiver_ESP32-S3.html */
|
||||||
meshtastic_HardwareModel_THINKNODE_M5 = 107,
|
meshtastic_HardwareModel_THINKNODE_M5 = 107,
|
||||||
|
/* MeshSolar is an integrated power management and communication solution designed for outdoor low-power devices.
|
||||||
|
https://heltec.org/project/meshsolar/ */
|
||||||
|
meshtastic_HardwareModel_HELTEC_MESH_SOLAR = 108,
|
||||||
/* ------------------------------------------------------------------------------------------------------------------------------------------
|
/* ------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
Reserved ID For developing private Ports. These will show up in live traffic sparsely, so we can use a high number. Keep it within 8 bits.
|
Reserved ID For developing private Ports. These will show up in live traffic sparsely, so we can use a high number. Keep it within 8 bits.
|
||||||
------------------------------------------------------------------------------------------------------------------------------------------ */
|
------------------------------------------------------------------------------------------------------------------------------------------ */
|
||||||
|
@ -82,7 +82,10 @@ typedef enum _meshtastic_ModuleConfig_SerialConfig_Serial_Mode {
|
|||||||
meshtastic_ModuleConfig_SerialConfig_Serial_Mode_WS85 = 6,
|
meshtastic_ModuleConfig_SerialConfig_Serial_Mode_WS85 = 6,
|
||||||
/* VE.Direct is a serial protocol used by Victron Energy products
|
/* VE.Direct is a serial protocol used by Victron Energy products
|
||||||
https://beta.ivc.no/wiki/index.php/Victron_VE_Direct_DIY_Cable */
|
https://beta.ivc.no/wiki/index.php/Victron_VE_Direct_DIY_Cable */
|
||||||
meshtastic_ModuleConfig_SerialConfig_Serial_Mode_VE_DIRECT = 7
|
meshtastic_ModuleConfig_SerialConfig_Serial_Mode_VE_DIRECT = 7,
|
||||||
|
/* Used to configure and view some parameters of MeshSolar.
|
||||||
|
https://heltec.org/project/meshsolar/ */
|
||||||
|
meshtastic_ModuleConfig_SerialConfig_Serial_Mode_MS_CONFIG = 8
|
||||||
} meshtastic_ModuleConfig_SerialConfig_Serial_Mode;
|
} meshtastic_ModuleConfig_SerialConfig_Serial_Mode;
|
||||||
|
|
||||||
/* TODO: REPLACE */
|
/* TODO: REPLACE */
|
||||||
@ -472,8 +475,8 @@ extern "C" {
|
|||||||
#define _meshtastic_ModuleConfig_SerialConfig_Serial_Baud_ARRAYSIZE ((meshtastic_ModuleConfig_SerialConfig_Serial_Baud)(meshtastic_ModuleConfig_SerialConfig_Serial_Baud_BAUD_921600+1))
|
#define _meshtastic_ModuleConfig_SerialConfig_Serial_Baud_ARRAYSIZE ((meshtastic_ModuleConfig_SerialConfig_Serial_Baud)(meshtastic_ModuleConfig_SerialConfig_Serial_Baud_BAUD_921600+1))
|
||||||
|
|
||||||
#define _meshtastic_ModuleConfig_SerialConfig_Serial_Mode_MIN meshtastic_ModuleConfig_SerialConfig_Serial_Mode_DEFAULT
|
#define _meshtastic_ModuleConfig_SerialConfig_Serial_Mode_MIN meshtastic_ModuleConfig_SerialConfig_Serial_Mode_DEFAULT
|
||||||
#define _meshtastic_ModuleConfig_SerialConfig_Serial_Mode_MAX meshtastic_ModuleConfig_SerialConfig_Serial_Mode_VE_DIRECT
|
#define _meshtastic_ModuleConfig_SerialConfig_Serial_Mode_MAX meshtastic_ModuleConfig_SerialConfig_Serial_Mode_MS_CONFIG
|
||||||
#define _meshtastic_ModuleConfig_SerialConfig_Serial_Mode_ARRAYSIZE ((meshtastic_ModuleConfig_SerialConfig_Serial_Mode)(meshtastic_ModuleConfig_SerialConfig_Serial_Mode_VE_DIRECT+1))
|
#define _meshtastic_ModuleConfig_SerialConfig_Serial_Mode_ARRAYSIZE ((meshtastic_ModuleConfig_SerialConfig_Serial_Mode)(meshtastic_ModuleConfig_SerialConfig_Serial_Mode_MS_CONFIG+1))
|
||||||
|
|
||||||
#define _meshtastic_ModuleConfig_CannedMessageConfig_InputEventChar_MIN meshtastic_ModuleConfig_CannedMessageConfig_InputEventChar_NONE
|
#define _meshtastic_ModuleConfig_CannedMessageConfig_InputEventChar_MIN meshtastic_ModuleConfig_CannedMessageConfig_InputEventChar_NONE
|
||||||
#define _meshtastic_ModuleConfig_CannedMessageConfig_InputEventChar_MAX meshtastic_ModuleConfig_CannedMessageConfig_InputEventChar_BACK
|
#define _meshtastic_ModuleConfig_CannedMessageConfig_InputEventChar_MAX meshtastic_ModuleConfig_CannedMessageConfig_InputEventChar_BACK
|
||||||
|
@ -235,6 +235,11 @@ bool isWifiAvailable()
|
|||||||
#ifdef USE_WS5500
|
#ifdef USE_WS5500
|
||||||
} else if (config.network.eth_enabled) {
|
} else if (config.network.eth_enabled) {
|
||||||
return true;
|
return true;
|
||||||
|
#endif
|
||||||
|
#ifndef ARCH_PORTDUINO
|
||||||
|
} else if (WiFi.status() == WL_CONNECTED) {
|
||||||
|
// it's likely we have wifi now, but user intends to turn it off in config!
|
||||||
|
return true;
|
||||||
#endif
|
#endif
|
||||||
} else {
|
} else {
|
||||||
return false;
|
return false;
|
||||||
|
Loading…
Reference in New Issue
Block a user