pull/136/head
geeksville 2020-05-10 14:17:05 -07:00
rodzic 8b911aba7f
commit c12fb69ca2
4 zmienionych plików z 31 dodań i 38 usunięć

Wyświetl plik

@ -5,20 +5,14 @@ Items to complete soon (next couple of alpha releases).
- lower wait_bluetooth_secs to 30 seconds once we have the GPS power on (but GPS in sleep mode) across light sleep. For the time - lower wait_bluetooth_secs to 30 seconds once we have the GPS power on (but GPS in sleep mode) across light sleep. For the time
being I have it set at 2 minutes to ensure enough time for a GPS lock from scratch. being I have it set at 2 minutes to ensure enough time for a GPS lock from scratch.
- remeasure wake time power draws now that we run CPU down at 80MHz
# AXP192 tasks
- figure out why this fixme is needed: "FIXME, disable wake due to PMU because it seems to fire all the time?"
- "AXP192 interrupt is not firing, remove this temporary polling of battery state"
- make debug info screen show real data (including battery level & charging) - close corresponding github issue
# Medium priority # Medium priority
Items to complete before the first beta release. Items to complete before the first beta release.
- Use 32 bits for message IDs
- Use fixed32 for node IDs
- Don't store position packets in the to phone fifo if we are disconnected. The phone will get that info for 'free' when it - Don't store position packets in the to phone fifo if we are disconnected. The phone will get that info for 'free' when it
fetches the fresh nodedb. fetches the fresh nodedb.
- Use the RFM95 sequencer to stay in idle mode most of the time, then automatically go to receive mode and automatically go from transmit to receive mode. See 4.2.8.2 of manual. - Use the RFM95 sequencer to stay in idle mode most of the time, then automatically go to receive mode and automatically go from transmit to receive mode. See 4.2.8.2 of manual.
- possibly switch to https://github.com/SlashDevin/NeoGPS for gps comms - possibly switch to https://github.com/SlashDevin/NeoGPS for gps comms
- good source of battery/signal/gps icons https://materialdesignicons.com/ - good source of battery/signal/gps icons https://materialdesignicons.com/
@ -204,3 +198,7 @@ Items after the first final candidate release.
- enable fast lock and low power inside the gps chip - enable fast lock and low power inside the gps chip
- Make a FAQ - Make a FAQ
- add a SF12 transmit option for _super_ long range - add a SF12 transmit option for _super_ long range
- figure out why this fixme is needed: "FIXME, disable wake due to PMU because it seems to fire all the time?"
- "AXP192 interrupt is not firing, remove this temporary polling of battery state"
- make debug info screen show real data (including battery level & charging) - close corresponding github issue
- remeasure wake time power draws now that we run CPU down at 80MHz

2
proto

@ -1 +1 @@
Subproject commit 5e2df6c9986cd75f0af4eab1ba0d2aacf258aaab Subproject commit 4840493693d5799ebd451f6857ecbbc5c9157348

Wyświetl plik

@ -69,9 +69,9 @@ typedef struct _MyNodeInfo {
typedef struct _Position { typedef struct _Position {
int32_t altitude; int32_t altitude;
int32_t battery_level; int32_t battery_level;
uint32_t time;
int32_t latitude_i; int32_t latitude_i;
int32_t longitude_i; int32_t longitude_i;
uint32_t time;
} Position; } Position;
typedef struct _RadioConfig_UserPreferences { typedef struct _RadioConfig_UserPreferences {
@ -125,16 +125,16 @@ typedef struct _SubPacket {
typedef PB_BYTES_ARRAY_T(256) MeshPacket_encrypted_t; typedef PB_BYTES_ARRAY_T(256) MeshPacket_encrypted_t;
typedef struct _MeshPacket { typedef struct _MeshPacket {
int32_t from; uint32_t from;
int32_t to; uint32_t to;
pb_size_t which_payload; pb_size_t which_payload;
union { union {
SubPacket decoded; SubPacket decoded;
MeshPacket_encrypted_t encrypted; MeshPacket_encrypted_t encrypted;
}; };
uint32_t rx_time;
uint32_t id; uint32_t id;
float rx_snr; float rx_snr;
uint32_t rx_time;
} MeshPacket; } MeshPacket;
typedef struct _DeviceState { typedef struct _DeviceState {
@ -246,7 +246,7 @@ typedef struct _ToRadio {
#define Position_longitude_i_tag 8 #define Position_longitude_i_tag 8
#define Position_altitude_tag 3 #define Position_altitude_tag 3
#define Position_battery_level_tag 4 #define Position_battery_level_tag 4
#define Position_time_tag 6 #define Position_time_tag 9
#define RadioConfig_UserPreferences_position_broadcast_secs_tag 1 #define RadioConfig_UserPreferences_position_broadcast_secs_tag 1
#define RadioConfig_UserPreferences_send_owner_interval_tag 2 #define RadioConfig_UserPreferences_send_owner_interval_tag 2
#define RadioConfig_UserPreferences_num_missed_to_fail_tag 3 #define RadioConfig_UserPreferences_num_missed_to_fail_tag 3
@ -278,7 +278,7 @@ typedef struct _ToRadio {
#define MeshPacket_encrypted_tag 8 #define MeshPacket_encrypted_tag 8
#define MeshPacket_from_tag 1 #define MeshPacket_from_tag 1
#define MeshPacket_to_tag 2 #define MeshPacket_to_tag 2
#define MeshPacket_rx_time_tag 4 #define MeshPacket_rx_time_tag 9
#define MeshPacket_id_tag 6 #define MeshPacket_id_tag 6
#define MeshPacket_rx_snr_tag 7 #define MeshPacket_rx_snr_tag 7
#define DeviceState_radio_tag 1 #define DeviceState_radio_tag 1
@ -305,9 +305,9 @@ typedef struct _ToRadio {
#define Position_FIELDLIST(X, a) \ #define Position_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, INT32, altitude, 3) \ X(a, STATIC, SINGULAR, INT32, altitude, 3) \
X(a, STATIC, SINGULAR, INT32, battery_level, 4) \ X(a, STATIC, SINGULAR, INT32, battery_level, 4) \
X(a, STATIC, SINGULAR, UINT32, time, 6) \
X(a, STATIC, SINGULAR, SINT32, latitude_i, 7) \ X(a, STATIC, SINGULAR, SINT32, latitude_i, 7) \
X(a, STATIC, SINGULAR, SINT32, longitude_i, 8) X(a, STATIC, SINGULAR, SINT32, longitude_i, 8) \
X(a, STATIC, SINGULAR, FIXED32, time, 9)
#define Position_CALLBACK NULL #define Position_CALLBACK NULL
#define Position_DEFAULT NULL #define Position_DEFAULT NULL
@ -342,13 +342,13 @@ X(a, STATIC, SINGULAR, BOOL, want_response, 5)
#define SubPacket_user_MSGTYPE User #define SubPacket_user_MSGTYPE User
#define MeshPacket_FIELDLIST(X, a) \ #define MeshPacket_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, INT32, from, 1) \ X(a, STATIC, SINGULAR, UINT32, from, 1) \
X(a, STATIC, SINGULAR, INT32, to, 2) \ X(a, STATIC, SINGULAR, UINT32, to, 2) \
X(a, STATIC, ONEOF, MESSAGE, (payload,decoded,decoded), 3) \ X(a, STATIC, ONEOF, MESSAGE, (payload,decoded,decoded), 3) \
X(a, STATIC, ONEOF, BYTES, (payload,encrypted,encrypted), 8) \ X(a, STATIC, ONEOF, BYTES, (payload,encrypted,encrypted), 8) \
X(a, STATIC, SINGULAR, UINT32, rx_time, 4) \
X(a, STATIC, SINGULAR, UINT32, id, 6) \ X(a, STATIC, SINGULAR, UINT32, id, 6) \
X(a, STATIC, SINGULAR, FLOAT, rx_snr, 7) X(a, STATIC, SINGULAR, FLOAT, rx_snr, 7) \
X(a, STATIC, SINGULAR, FIXED32, rx_time, 9)
#define MeshPacket_CALLBACK NULL #define MeshPacket_CALLBACK NULL
#define MeshPacket_DEFAULT NULL #define MeshPacket_DEFAULT NULL
#define MeshPacket_payload_decoded_MSGTYPE SubPacket #define MeshPacket_payload_decoded_MSGTYPE SubPacket
@ -493,21 +493,21 @@ extern const pb_msgdesc_t ToRadio_msg;
#define ToRadio_fields &ToRadio_msg #define ToRadio_fields &ToRadio_msg
/* Maximum encoded size of messages (where known) */ /* Maximum encoded size of messages (where known) */
#define Position_size 40 #define Position_size 39
#define Data_size 256 #define Data_size 256
#define User_size 72 #define User_size 72
/* RouteDiscovery_size depends on runtime parameters */ /* RouteDiscovery_size depends on runtime parameters */
#define SubPacket_size 377 #define SubPacket_size 376
#define MeshPacket_size 419 #define MeshPacket_size 407
#define ChannelSettings_size 60 #define ChannelSettings_size 60
#define RadioConfig_size 136 #define RadioConfig_size 136
#define RadioConfig_UserPreferences_size 72 #define RadioConfig_UserPreferences_size 72
#define NodeInfo_size 132 #define NodeInfo_size 131
#define MyNodeInfo_size 85 #define MyNodeInfo_size 85
#define DeviceState_size 18552 #define DeviceState_size 18124
#define DebugString_size 258 #define DebugString_size 258
#define FromRadio_size 428 #define FromRadio_size 416
#define ToRadio_size 422 #define ToRadio_size 410
#ifdef __cplusplus #ifdef __cplusplus
} /* extern "C" */ } /* extern "C" */

Wyświetl plik

@ -16,15 +16,12 @@
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/ */
#ifndef _VARIANT_PCA10056_ #pragma once
#define _VARIANT_PCA10056_
/** Master clock frequency */ /** Master clock frequency */
#define VARIANT_MCK (64000000ul) #define VARIANT_MCK (64000000ul)
// This file is the same as the standard pac10056 variant, except that @geeksville broke the xtal on his devboard so // This board does not have a 32khz crystal
// he has to use a RC clock.
// #define USE_LFXO // Board uses 32khz crystal for LF // #define USE_LFXO // Board uses 32khz crystal for LF
#define USE_LFRC // Board uses RC for LF #define USE_LFRC // Board uses RC for LF
@ -157,5 +154,3 @@ static const uint8_t SCK = PIN_SPI_SCK;
/*---------------------------------------------------------------------------- /*----------------------------------------------------------------------------
* Arduino objects - C++ only * Arduino objects - C++ only
*----------------------------------------------------------------------------*/ *----------------------------------------------------------------------------*/
#endif