Commit Graph

439 Commits

Author SHA1 Message Date
geeksville
976bdad067 sniffReceived now allows router to inspect packets not destined for this node 2020-05-18 17:57:58 -07:00
geeksville
26d3ef529e Use the hop_limit field of MeshPacket to limit max delivery depth in
the mesh.
2020-05-18 17:35:23 -07:00
geeksville
19f5a5ef79 oops - use correct battery shutoff voltage 2020-05-17 05:12:16 -07:00
geeksville
ef831a0b4d Fix leaving display on in deep sleep.
We shutoff screen immediately, rather than waiting for our loop call()
2020-05-17 05:11:32 -07:00
geeksville
efc239533c Fix #133 - force deep sleep if battery reaches 10% 2020-05-17 05:10:51 -07:00
geeksville
ef1463a6a9 have tbeam charge at max rate (450mA) 2020-05-17 04:44:48 -07:00
geeksville
6961853ed7 ble software update fixes 2020-05-15 10:16:10 -07:00
geeksville
5ec5248fe4 complete ble ota move 2020-05-14 14:22:11 -07:00
geeksville
14fdd33972 move bluetooth OTA back into main tree for now 2020-05-14 14:20:05 -07:00
geeksville
140e29840a fix rare gurumeditation if we are unlucky and some ISR code is in serial flash 2020-05-14 12:46:29 -07:00
geeksville
a0b43b9a95 Send "unset" for hwver and swver if they were unset 2020-05-12 17:57:51 -07:00
geeksville
b6a202d68e runs again with new protobufs 2020-05-12 13:35:22 -07:00
geeksville
9f05ad2927 remove random delay hack from broadcast, since we now do that for all transmits 2020-05-11 16:19:44 -07:00
geeksville
86ae69d360 refactor so I can track and ignore recent packets of any type 2020-05-11 16:14:53 -07:00
geeksville
c12fb69ca2 update protos 2020-05-10 14:17:05 -07:00
geeksville
8b911aba7f Cleanup build for NRF52 targets 2020-05-10 12:33:17 -07:00
geeksville
2fa595523f minor fixups to get nrf52 building again 2020-05-09 21:02:56 -07:00
geeksville
3e356e5866 Crypto works! 2020-05-09 19:08:04 -07:00
geeksville
1cc24de787 stub encryptor seems nicely backwards compatible with old devices and apps 2020-05-09 17:51:20 -07:00
geeksville
e6875d559c Remove MeshRadio wrapper class - we don't need it anymore. 2020-05-09 16:32:26 -07:00
geeksville
28d21ecdcc begin work on crypto 2020-05-09 16:15:01 -07:00
geeksville
8bfe9fa8fc 0.6.3 - fix the problem of BLE message receiption being busted in 0.6.2 2020-05-05 18:40:17 -07:00
geeksville
dcd1f7478a fix 124 - we now fallback to nema if we can't talk ublox protocol to
the GPS.  Though we are super power inefficient about it so TODO/FIXME
someday to decrease our power draw.
2020-05-04 20:02:43 -07:00
geeksville
c2be6c4068 WIP on #124 2020-05-04 17:39:57 -07:00
geeksville
101eef5495 oops lat/lon need to be signed ;-) 2020-05-04 11:21:24 -07:00
geeksville
933d5424da abstract out the UBlox GPS driver 2020-05-04 11:15:05 -07:00
geeksville
ecf528f9b6 move gps before refactoring 2020-05-04 10:23:47 -07:00
geeksville
9b309fe0a0 Use int based lat/long from now on in the device code
for https://github.com/meshtastic/Meshtastic-device/issues/124
2020-05-04 08:09:08 -07:00
geeksville
624b95782d fix missing carriage returns. thanks to @gregwalters in #119 2020-05-02 20:21:42 -07:00
geeksville
1d9290afc0 now that the rfinterfaces are smarter, no need to do backoff in
the flood router.  the interfaces will handle it.
2020-05-02 19:53:58 -07:00
geeksville
ad2f639195 don't leak messages if they are handled locally 2020-05-02 19:53:13 -07:00
geeksville
07b4eea037 fix log msg 2020-05-02 19:52:54 -07:00
geeksville
79c61cf0e0 limit max power on rf95 to 17 (rather than 20, because 20 can...
burn up parts if you exceed 1% duty cycle)
2020-05-02 19:52:37 -07:00
geeksville
80268ea56a send() is supposed to always free buffers, even if it returns an error 2020-05-02 19:51:55 -07:00
geeksville
bb9f595b8b Fix #11 2020-05-02 19:51:25 -07:00
geeksville
2ad314f150 we now always listen before transmit - even if we have just completed a packet 2020-05-02 08:29:51 -07:00
geeksville
4f7a25f562 remove unneeded include 2020-05-01 16:33:40 -07:00
geeksville
4176d79ee9 fix warnings 2020-05-01 16:33:26 -07:00
geeksville
e084699704 SNR is now a float, fix the screen display 2020-05-01 12:31:36 -07:00
geeksville
50213d8323 move packet handling into its own thread 2020-05-01 12:11:04 -07:00
geeksville
71fcdba017 cleanup directory structure 2020-05-01 09:04:00 -07:00
geeksville
5a4fab2506 start msg sequence numbers with a random number each boot 2020-05-01 08:51:53 -07:00
geeksville
31eb2f5337 very important: don't allow immediate sends if we have pending ISRs 2020-05-01 08:32:16 -07:00
geeksville
82c1752d85 less logspam 2020-05-01 08:31:52 -07:00
geeksville
49a13bbfd3 increase gps config timeout, could take up to 2.5 secs 2020-05-01 08:31:31 -07:00
geeksville
0096f54ae9 better debug output 2020-04-30 22:53:21 -07:00
geeksville
4e106f4098 remove radiohead 2020-04-30 21:42:11 -07:00
geeksville
1f1d683f4f add back the old code that checked if the radio was actvively receiving 2020-04-30 21:29:51 -07:00
geeksville
a8f64c3cc8 make a custom version fo rf95 class, so we can can deal with
chips that have bad version codes.
2020-04-30 21:11:03 -07:00
geeksville
968a2d7fbc store SNR in received packets 2020-04-30 19:58:10 -07:00
geeksville
1fab9c5aac temp hack to get new rf95 driver working 2020-04-30 19:31:17 -07:00
geeksville
22bca31ce3 properly set the RF95 iface 2020-04-30 18:05:06 -07:00
geeksville
48c045a253 move SPI init into main 2020-04-30 17:56:30 -07:00
geeksville
e9ca7792eb new RF95 driver is written 2020-04-30 17:43:29 -07:00
geeksville
b1a55b4576 old RF95 API works again 2020-04-30 16:47:56 -07:00
geeksville
dd7452ad96 old RF95 code builds again 2020-04-30 16:36:59 -07:00
geeksville
d7d8188093 implement most of sleep handling for the new radio stack 2020-04-30 15:50:07 -07:00
geeksville
62a893c760 SX1262 approximately works top-to-bottom, but need to add sleep modes 2020-04-30 15:43:41 -07:00
geeksville
a2ba9d3c44 new receive code works a little better 2020-04-30 13:50:40 -07:00
geeksville
22720e9f63 ex1262 receiving kinda works 2020-04-30 12:37:58 -07:00
geeksville
11b79a942d add todos 2020-04-30 10:54:53 -07:00
geeksville
3c3e722181 new sending kinda works 2020-04-30 10:00:40 -07:00
geeksville
fce31560c6 the mountain of changes needed to kinda make tx work compiles. 2020-04-30 09:44:16 -07:00
geeksville
2982e197e0 radio settings now work on real sx1262 hw 2020-04-29 19:04:59 -07:00
geeksville
f69ddf168b we now hopefully apply the same radio settings as we did for the RF95 2020-04-29 18:46:32 -07:00
geeksville
8d985cfd37 cleanup so eventually rf95 can share common msg code with sx1262 2020-04-29 16:28:11 -07:00
geeksville
4693302d82 crummy sx1262 fake init kinda works 2020-04-29 16:06:23 -07:00
geeksville
814c126e67 ugly WIP on switching to RadioLib, still need to set freq etc... 2020-04-29 14:54:03 -07:00
geeksville
2ab34357d5 emit FromRadio.rebooted to serial test harness can detect reboots 2020-04-28 17:43:16 -07:00
geeksville
b704911603 minor protobuf update 2020-04-28 11:20:00 -07:00
geeksville
59086fd477 fixes after testing stream protocol with python client 2020-04-27 18:52:57 -07:00
geeksville
88a704c4d3 for now, allow debug out to be interleaved with protobufs 2020-04-27 09:46:06 -07:00
geeksville
cceecf5f8e New serial protobuf transport approximately works and is backward
compatiable with the text debug output.
2020-04-27 09:36:39 -07:00
geeksville
eb40013ddc Create RedirectablePrint and NoopPrint for serial debug redirection 2020-04-27 09:01:25 -07:00
geeksville
dda946d933 Stream API coded but not tested 2020-04-27 08:45:39 -07:00
geeksville
178e800969 add beginnings of StreamAPI 2020-04-27 08:10:17 -07:00
geeksville
dec4870649 begin cleaning up mesh library layer so that it could be split someday 2020-04-27 07:54:19 -07:00
geeksville
15cb599cd1 move nrf52 stuff to correct directory name 2020-04-27 07:39:50 -07:00
geeksville
def86131f0 Merge branch 'master' into nrf52
# Conflicts:
#	src/main.cpp
2020-04-26 18:34:41 -07:00
geeksville
8f1c1a9049 move debug msg 2020-04-25 11:46:46 -07:00
geeksville
3f3a1a11df when flooding, randomly delay sent packets to decrease chances of...
stomping on other senders that we can't even hear.
2020-04-25 11:43:28 -07:00
geeksville
64f6c0f5c0 clean up PeriodicTask so I can eventually use it with a scheduler 2020-04-25 10:59:40 -07:00
geeksville
db11d9280c add nrf52 DFU app helper 2020-04-24 21:08:16 -07:00
geeksville
ca03110932 Update ESP32 build to work with latest NRF52 changes 2020-04-24 14:55:51 -07:00
geeksville
bebaa838c4 no need for LightSleep state on NRF52 CPUs 2020-04-24 11:21:10 -07:00
geeksville
7fa9d09d9f placeholder guess at PMU code until I have HW 2020-04-24 09:33:45 -07:00
geeksville
7bc299573f move esp32 specific code into esp32 land 2020-04-24 08:52:49 -07:00
geeksville
5e75beff3f don't block but queue log messages for the ICE (and eventual crash reports) 2020-04-24 08:06:29 -07:00
geeksville
4f7e85c1a4 cleanup serial instanciation on boards where we might not use it 2020-04-24 08:05:56 -07:00
geeksville
d445cbe083 fix device name 2020-04-23 21:22:58 -07:00
geeksville
3c9c01189d old RF95 driver probably works on NRF52 now 2020-04-23 18:47:27 -07:00
geeksville
4f3a9d8646 example BLE code approximately works 2020-04-23 18:11:32 -07:00
geeksville
0c7c3f17e5 fix nrf52 macaddr byte order 2020-04-23 18:06:46 -07:00
geeksville
5b0451f25c add NRF52 BLE example code 2020-04-23 18:02:28 -07:00
geeksville
8f3b33c84c use a real macaddr on the nrf52 2020-04-23 16:55:25 -07:00
geeksville
2fdb75efdf make GPS 'work' on nrf52 2020-04-23 16:20:07 -07:00
geeksville
fbd12e1929 oled screen probably works now on nrf52 2020-04-23 13:56:15 -07:00
geeksville
ffe95f62ab no need to pass in scl & sda into screen constructor 2020-04-23 13:53:51 -07:00
geeksville
3e4ccef992 fix warnings 2020-04-23 13:53:29 -07:00
geeksville
f0f6c4950b on NRF52 use the Segger debug console for debug logging 2020-04-23 13:27:16 -07:00