geeksville
fefd3d78f3
Portduino WIP now compiles but does not link
2020-09-05 12:34:48 -07:00
Jm Casler
f41a77c46d
Initial add of status screen
...
Initial add of the status screen.
TODO:
- Get status of the BT Radio
- Display something on line 3
2020-09-05 09:30:18 -07:00
geeksville
6a475d8288
WIP
2020-09-04 17:23:17 -07:00
geeksville
dffb6c2f06
If display is on on the @BigCorvus board and we xmit the board browns out?
2020-08-28 17:38:23 -07:00
geeksville
e049eac38a
TFT display kinda draws stuff (badly)
2020-08-28 15:06:52 -07:00
geeksville
ff885ef215
Merge remote-tracking branch 'root/post1'
2020-08-21 10:50:49 -07:00
geeksville
d7a1cef046
fix #327 always factory reset the GPS once
2020-08-21 10:14:03 -07:00
geeksville
ca75dcd64d
Add support for SX1262 based TBEAMs, see below for more details.
...
We probe dynamically for the SX1262 or RF95 based radios on TBEAM1.0
boards now. If either is present it will be used.
2020-08-20 15:42:36 -07:00
geeksville
6a402b13fa
Add battery sensing (mostly) for TBEAM0.7
...
However, disabled until someone with suitable hardware can test and report
back.
@slavino and @tschundler would you be willing to try it with your boards?
You'll need to uncomment the following line in configuration.h
// #define BATTERY_PIN 35 // A battery voltage measurement pin, voltage divider connected here to measure battery voltage
2020-08-12 17:03:36 -07:00
geeksville
55dafcbecb
fix #269 see below
...
/**
* Generate a short suffix used to disambiguate channels that might have the same "name" entered by the human but different PSKs.
* The ideas is that the PSK changing should be visible to the user so that they see they probably messed up and that's why they
their nodes
* aren't talking to each other.
*
* This string is of the form "#name-XY".
*
* Where X is a letter from A to Z (base26), and formed by xoring all the bytes of the PSK together.
* Y is not yet used but should eventually indicate 'speed/range' of the link
*
* This function will also need to be implemented in GUI apps that talk to the radio.
*
* https://github.com/meshtastic/Meshtastic-device/issues/269
*/
const char *getChannelName();
2020-08-12 11:04:03 -07:00
geeksville
0415a3c369
Clean up nimble files
2020-07-23 08:10:36 -07:00
geeksville
b6a3deb341
nimble WIP - writes kinda work now
2020-07-22 12:08:54 -07:00
geeksville
e12c057c31
RAK815 lora works
2020-07-10 14:37:01 -07:00
geeksville
fb4ac82d45
fix rf95 renaming
2020-07-10 12:47:10 -07:00
geeksville
63474dd952
Only try for NEMA if we have serial
2020-07-10 12:16:10 -07:00
geeksville
1415f2bed7
WIP add support for i2C GPS
2020-07-10 11:43:14 -07:00
geeksville
b00a936f41
WIP RAK815 support
2020-07-10 11:02:29 -07:00
geeksville
80b14c0a6f
add support for adafruit feather nrf52832 - which is close to a RAK815
2020-07-09 21:27:34 -07:00
geeksville
c7290e6ccc
don't turn wifi on yet, because my fixes for arduino-esp32 haven't been pushed
2020-07-09 20:11:33 -07:00
geeksville
ed589727d6
Update NRF52 build to work again
2020-07-09 19:57:55 -07:00
geeksville
62c9bad183
WIP TCP API server over wifi
2020-07-07 18:37:42 -07:00
geeksville
616da8228e
enable wifi for ESP32
2020-07-07 17:41:35 -07:00
grcasanova
37d9fb2dad
just a cleanup of the graphics
2020-07-07 10:46:49 +02:00
grcasanova
9803141fe7
merged with master
2020-07-06 21:53:10 +02:00
grcasanova
92b30ebec6
fixes now compiles
2020-07-06 10:45:55 +02:00
grcasanova
d5b8038457
fixes
2020-07-06 00:54:30 +02:00
geeksville
a4f53270e8
fix heltec build (and fix formatting)
2020-07-01 10:08:38 -07:00
Professr
f2e6c6de58
Fixed filename case sensitivity
2020-06-28 19:03:39 -07:00
Professr
f5b7c33d4e
Refactored status handlers and merged
2020-06-28 18:17:52 -07:00
Professr
542b8b26ce
Abstracted statuses, made display event-driven
2020-06-27 21:19:49 -07:00
Professr
ec10e784e1
Fix #207 adjust OLED Brightness by attachDuringLongPress
...
adjust the OLED Brightness by "attachDuringLongPress" from "OneButton". It will cycle trough 0 to 254 as long as the button is pressed
2020-06-24 22:58:20 +02:00
Professr
6a09ddef18
Resolved merge conflict
2020-06-22 12:25:59 -07:00
Professr
cfcaf28ace
Switched user button to OneButton, added alt button GPIO for #162
2020-06-22 11:09:26 -07:00
geeksville
0c0b2446b7
Merge remote-tracking branch 'root/master' into dev
2020-06-22 09:22:54 -07:00
Professr
d8287e9cdb
Removed DOP to string utility function from GPS.cpp since it's now drawn directly in screen.cpp
2020-06-21 17:43:34 -07:00
geeksville
982b2e33ff
Merge remote-tracking branch 'root/master' into dev
2020-06-21 14:11:53 -07:00
geeksville
8190098bb8
experiment with wifi connections for nodes
2020-06-21 14:11:38 -07:00
Professr
da8a048dce
Added GPS DOP support ( #199 )
2020-06-20 18:59:41 -07:00
geeksville
3005373760
fix wording of GPS screen messages to be less confusing. Now:
...
No GPS
No Sats
GPS OK
2020-06-17 17:26:37 -07:00
geeksville
a47524b762
cubecell wip
2020-06-16 17:13:26 -07:00
geeksville
9ad14ad98b
Cleanup to merge NR52 support back into mainline
2020-06-15 14:47:14 -07:00
geeksville
114e0c4ada
Merge branch 'master' into bringup
2020-06-15 12:41:22 -07:00
geeksville
dc7469c64b
useful bluetooth debugging output
2020-06-13 08:29:25 -07:00
geeksville
03cb3c2145
basic stack debugging - we are okay for now
2020-06-12 16:37:03 -07:00
geeksville
4db176867b
WIP - bringup on PPR
2020-06-05 11:00:58 -07:00
geeksville
f56ff2ca20
DSR WIP
2020-05-27 15:31:32 -07:00
geeksville
5d1614989e
Only add interfaces to the router if they can be initied
2020-05-25 15:47:45 -07:00
geeksville
8bf4919576
wip reliable unicast (1 hop)
2020-05-19 11:56:17 -07:00
geeksville
a0b43b9a95
Send "unset" for hwver and swver if they were unset
2020-05-12 17:57:51 -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
8b911aba7f
Cleanup build for NRF52 targets
2020-05-10 12:33:17 -07:00
geeksville
e6875d559c
Remove MeshRadio wrapper class - we don't need it anymore.
2020-05-09 16:32:26 -07:00
geeksville
c2be6c4068
WIP on #124
2020-05-04 17:39:57 -07:00
geeksville
933d5424da
abstract out the UBlox GPS driver
2020-05-04 11:15:05 -07:00
geeksville
48c045a253
move SPI init into main
2020-04-30 17:56:30 -07:00
geeksville
dd7452ad96
old RF95 code builds again
2020-04-30 16:36: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
814c126e67
ugly WIP on switching to RadioLib, still need to set freq etc...
2020-04-29 14:54:03 -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
def86131f0
Merge branch 'master' into nrf52
...
# Conflicts:
# src/main.cpp
2020-04-26 18:34:41 -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
ca03110932
Update ESP32 build to work with latest NRF52 changes
2020-04-24 14:55:51 -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
8f3b33c84c
use a real macaddr on the nrf52
2020-04-23 16:55:25 -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
b77c068881
create MeshRadio even on NRF52 (though it is currently using a Sim interface)
2020-04-23 12:50:54 -07:00
geeksville
db766f18ed
Fix #99 : move spi ISR operations into helper thread. SPI from ISR is bad!
2020-04-18 14:56:09 -07:00
geeksville
65406eaa08
mesh flooding seems to work pretty well!
2020-04-17 12:41:01 -07:00
geeksville
ea24394110
add first cut of mesh naive flooding
2020-04-17 11:52:20 -07:00
geeksville
6afeb3e456
ok - new router seems to approximately work
2020-04-17 10:38:44 -07:00
geeksville
f108c576a7
massive WIP updates to create a clean Router abstraction for mesh
2020-04-17 09:48:54 -07:00
geeksville
0a6af936ed
Get build (kinda, not really) running on a NRF52
...
Lots of NO_ESP32 to remove later...
2020-04-14 20:22:27 -07:00
geeksville
4757b6807e
lots of changes:
...
* preflightSleep, notifySleep, notifyDeepSleep now allow arbitrary
drivers/devices/software to register for sleep notification.
* Use the proceeding to clean up MeshRadio - now the mesh radio is more
like an independent driver that doesn't care so much about other systems
* clean up MeshService so that it can work with zero MeshRadios added.
This is a prelude to supporting boards with multiple interfaces (wifi,
extra LORA radios etc) and allows development/testing in sim with a bare
ESP32 board
* Remove remaining ESP32 dependencies from the bare simulation target
this allows running on anything that implements the arduino API
2020-04-14 11:40:49 -07:00
geeksville
6ad451eb5f
move bluetooth code into something that is architecture specific...
...
because the ESP32 implementation will be different from NRF52
to make this possible I needed to decouple knowlege about bluetooth from
our mesh service. Instead mesh service now uses the Obserable pattern
to let any interested consumer get notified of important mesh changes
(currently that is only bluetooth, but really we should do the same
thing for decoupling the GUI 'app' from the mesh service)
@girtsf would you mind reviewing my Observer changes? I haven't written
C++ code in a long time ;-)
2020-04-10 12:18:48 -07:00
geeksville
c22df18e28
fix collision avoidance for transmit - substantially improves lora tx success
2020-04-06 09:39:44 -07:00
geeksville
ea250d9cd3
add initial guess at TBEAM 0.7 hardware support
2020-03-28 15:31:22 -07:00
geeksville
d1387be015
Merge remote-tracking branch 'root/master'
...
# Conflicts:
# src/main.cpp
# src/screen.cpp
2020-03-27 14:18:07 -07:00
geeksville
d831beab3d
moving build selection into platformio.ini rather than nasty #defines. thanks to @sensorslot
...
for the pointer to https://github.com/arendst/Tasmota - where I just borrowed heavily ;-)
2020-03-27 14:03:58 -07:00
geeksville
5c4ae6c042
now that axp192 interrups work, no need to poll over i2c. #48
2020-03-27 14:03:58 -07:00
geeksville
cc3bac7ea0
Fix AXP192 handling by @spattinson. yay! fix #48
...
Also - now that he fixed that, we can leave PMU interrupts on across sleep
Hopefully the following line will properly credit him in the magic github
universe...
Co-authored-by: spattinson <spattinson@users.noreply.github.com>
2020-03-27 12:29:51 -07:00
Girts Folkmanis
54cd082bfe
fix #49 : make debug screen show real data
...
* Break out debug screen to a separate class and make it thread-safe.
* Break out power state to a separate class.
* Show battery voltage, charging & USB status on debug screen.
* Show GPS lock / no lock
* Fix an off-by-one that I introduced earlier in `drawRows`.
2020-03-26 22:17:47 -07:00
Girts Folkmanis
dee3e530de
fix #52 : bluetooth not pairing
...
Silly type error on my part - PIN was always truncated to lower 8 bits.
😬
Tested: Pairing now works from both nRF Connect and phone.
2020-03-22 19:18:49 -07:00
geeksville
32ac5ac9ae
reformat everything
...
using @girtsf clang-format prefs settings. This should allow us to turn
on auto format in our editors without causing spurious file changes.
2020-03-18 19:15:51 -07:00
geeksville
534691f0c2
Merge remote-tracking branch 'root/master'
...
# Conflicts:
# src/main.cpp
# src/screen.cpp
# src/screen.h
2020-03-18 18:44:12 -07:00
Girts Folkmanis
daf8594b99
Screen cleanups and refactoring
...
Work towards separating out how Screen interacts with other stuff.
* `Screen` should now be thread-safe. All commands to it are put in a
queue and handled in `doTask` from the `loop()` task.
* Break dependency from `BluetoothUtil` to `Screen` by changing the
pairing request into a callback.
* All accesses to screen now happen through the class.
* Fix `drawRows` so that the text scrolls along with frame animations.
* Remove example code that wasn't used.
2020-03-18 18:11:35 -07:00
geeksville
53765298e1
add a real BOOT state, to avoid glitch from redrawing bootscreen twice
...
also its the right thing to do ;-)
2020-03-18 15:00:17 -07:00
geeksville
dbbb62f63e
fix press to properly force any node we are watching to send us a new
...
position report
2020-03-18 13:51:32 -07:00
Girts Folkmanis
b5201f928b
fix the build: remove includes for TinyGPS that's not longer used or in deps
2020-03-15 13:27:00 -07:00
geeksville
1107c6d23d
Fix serious bug: button presses were not waking from light-sleep on TBEAM
...
Root cause seems to be the axp192 interrupt, which on some boards fires
during sleep. I'm not sure why, but we don't need this yet, so leaving
masked during sleep.
2020-03-13 22:42:43 -07:00
geeksville
d1b7b6c5c5
oops - I was previously stopping bluetooth before stopping the mesh bluetooth service
...
which was bad bad
2020-03-04 16:10:36 -08:00
Kevin Hester
28588f6730
send hw version info via protobufs
2020-03-03 08:23:58 -08:00
Kevin Hester
bb0b2e72c8
stop using ino files, visual studio doesn't like them
2020-03-03 07:34:05 -08:00