Commit Graph

161 Commits

Author SHA1 Message Date
Ben Meadors
998013aff3
Add TAK Tracker role behavior (#3233)
* Proto

* Standalone TAK Tracker

* Add log

* Make TAK_Tracker behave like Tracker
2024-02-16 20:04:21 -06:00
Ben Meadors
cb4e1840e3 Revert HW_MODEL name 2024-02-14 07:30:01 -06:00
Ben Meadors
4d18bc0658 V1.1 2024-02-12 07:23:52 -06:00
Ben Meadors
ce8673b6dc
Added RP2040-LoRA target (#3195) 2024-02-10 20:09:51 -06:00
Huston Hedinger
13c8dca6b4
[BOARD]: CanaryOne (#3150)
* compiling w/o e-ink display

* pinout changes

* progress getting LoRa and LCD working

* fix for bootloader, gps pins

* add canary to build matrix

* merge with main

* fix build by excluding BellModem in RadioLib

* fixes for GPS

* Fix LED_BLUE and GPS RX/TX pins

* Variant changes for merge

* make GPS baud rate configurable

* fix debug config

* Canary v1.2 changes

* Fixes for GPS

* pass trunk check

* bump protobufs to master

* update build flags to use CANARYONE enum

* use canaryone throughout for consistency.

* #define 0 is still defined

* add back .vscode/extensions.json

* bump protobufs

* revert manual change to generated file

---------

Co-authored-by: Steven Osborn <steven@lolsborn.com>
2024-02-10 17:55:32 -06:00
todd-herbert
8130b1cf43
feat: initial support for Heltec Wireless Paper v1.0 (#3181)
E-ink panel is DEPG0213BNS800. Otherwise, identical to v1.1 (?)
Partial refresh supported, but not implemented in this commit.

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-02-08 19:00:13 -06:00
Jonathan Bennett
3b0169ba7a
Adafruit display (#3179)
* Use uint8_t instead of char in icon_bits

* Add Adafruit PiTFT support
2024-02-08 16:29:15 -06:00
Ken McGuire
9586c68c65
GPS updates (#3142)
* Portduino multiple logging levels

* Fixes based on GPSFan work

* Fix derped logic

* Correct size field for AID message

* Reformat to add comments, beginning of GPS rework

* Update PM2 message for Neo-6

* Correct ECO mode logic as ECO mode is only for Neo-6

* Cleanup ubx.h add a few more comments

---------

Co-authored-by: Jonathan Bennett <jbennett@incomsystems.biz>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-01-30 17:38:31 -06:00
Jonathan Bennett
a49740cd56
Adds i2c device configuration to native (#3143) 2024-01-28 20:15:29 -06:00
Ken McGuire
ac9c5f81b9
Add CircutMess Chatter 2 (#3125)
* Add Chatter 2 default_envs

* Add Chatter 2 to varients

* Add Chatter 2 specific code to esp32 platform code

* Parameterize TFT_INVERT for Chatter 2 and specify setRotation to 1

* Fix formatting to make Trunk happy

* Remove commented out #define USE_LCC68

* Fix formatting again

* Add chatter2 to the CI matrix

---------

Co-authored-by: code8buster <20384924+code8buster@users.noreply.github.com>
2024-01-26 08:40:16 -06:00
Jonathan Bennett
6b5101ec67
Portduino logging enhancements (#3121)
* Portduino logging enhancements

* Extra debugging for SPI device
2024-01-22 01:27:06 -06:00
Jonathan Bennett
4a867c81c0
Portduino work (#3049)
* Move to Portduino's getMacAddr()

* Add ST7735/S screen support

* Push Raspbian support into native target

* Remove latent pigpio references.

* CardKB defensive programming

* Adds configurable spidev

* Fixes to build on Fedora 40

* ENUMs are not #defines. Pull latest portduino

* Add more configuration options for SPI displays

* Add config.yaml option to set DIO3_TCXO_VOLTAGE

* change tft clear() to fillScreen()
Maintains compatability with ESPI driver.

* Adds TXen and RXen pins to portduino

* Add -c --config options to specify config file

* Fail when a specified config file is unavailable

---------

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-01-12 02:00:31 -06:00
Ben Meadors
674fd32349
RP2040 Enter uf2 DFU mode (#3062)
* Pico enter dfu mode

* Ungaurd pico
2024-01-06 14:39:27 -06:00
Ben Meadors
dbac2b1cad
Implemented enter (Uf2 usb) DFU mode admin message on NRF52 (#3045)
* Added enter DFU mode admin message

* Trunk
2023-12-27 14:26:40 -06:00
GUVWAF
2d35f72d85
SimRadio: send queue status to phone (#3041)
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2023-12-27 08:16:04 -06:00
Mark Trevor Birss
16a3a32f2a
[Add] SX1280 to linux native Portduino (#3023)
* Update PortduinoGlue.cpp

* Update PortduinoGlue.h

* Update main.cpp

* Update config-dist.yaml

* Update config-dist.yaml

* Fix whitespace in main.cpp

---------

Co-authored-by: Jonathan Bennett <jbennett@incomsystems.biz>
2023-12-17 18:05:04 -06:00
Ben Meadors
1c6acfd734
Set NRF cpu brownout at 2.4V instead of running down to the limit (#3016) 2023-12-16 06:57:01 -06:00
Jonathan Bennett
2ebaea317a
Refactor display handling add Raspbian TFT display (#2998)
* Refactor display handling add Raspbian TFT display

* Add missed change

* Add static casts

* Add missed TFT refactor for RAK14014

* Add missed GPIO configuration

* Adds Native keyboard input option

* Get the ifdefs right

* CannedMessage send via queue, not run immediately.

* Fixup systemd service file

* Add display blanking for Raspberry Pi

* Add a couple missed key definitions

---------

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2023-12-12 20:27:31 -06:00
Ben Meadors
abaa37133d
Repeater and other power optimizations (#2999)
* End wire if we find no i2c devices

* Set tx-power to 0 on nrf bluetooth shutdown

* Change polling interval of PowerFSM to 100ms instead of 10ms

* Guard 3v3
2023-12-08 11:13:15 -06:00
Ben Meadors
9188a9a1f2
Makersense RP2040 support (#2996)
* WIP

* Do the right things

* Add to build matrix

* Yaml lint has annoyed me for the final time
2023-12-06 21:42:06 -06:00
GUVWAF
6ff61b3e04
Pico W: Initial Wi-Fi support (#2980)
* Pico W: Initial WiFi support: connects, but freezes after a while

* Update arduino-pico core to fix hang with Wi-Fi

* Add `picow` to workflow since it's different from `pico` now
2023-12-02 14:47:52 -06:00
S5NC
fb89482129
Set default LoRa SPI pins individually on ESP32 architecture (#2971)
* Each pin individually

* Correction

---------

Co-authored-by: Jonathan Bennett <jbennett@incomsystems.biz>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2023-11-30 06:39:46 -06:00
Jonathan Bennett
14d03a2bda Initial implementation of I2C 2023-11-29 20:19:10 -06:00
Jonathan Bennett
423b8ad603 Adds real GPS support to Raspberry Pi arch 2023-11-29 20:19:10 -06:00
Jonathan Bennett
ce8342d3e5 Drop Pi HAL 2023-11-29 20:19:10 -06:00
Jonathan Bennett
57227c0f85 Add gpiochip setting 2023-11-29 20:19:10 -06:00
Jonathan Bennett
102efd4954 Move to portduino GPIO, adding user button support 2023-11-29 20:19:10 -06:00
S5NC
18cf8ca4fa
Generalise SPI pin names (#2970)
* Generalise SPI pin names

* CS not NSS

* trunk fmt

* Update variant.h

---------

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2023-11-29 15:51:05 -06:00
Thomas Göttgens
c7e3485dd7 Revert "same change for STM32WL - also update trunk"
This reverts commit f9fdb0f98d.
2023-11-26 14:49:11 +01:00
Thomas Göttgens
603e564db3 same change for STM32WL - also update trunk 2023-11-26 14:49:11 +01:00
Thomas Göttgens
ac318a9850 Swapped out crypto engine for one that also works with AES-256 2023-11-26 14:49:11 +01:00
Jonathan Bennett
4af90eeb39 Revamp yaml config for Raspbian 2023-11-19 14:53:49 -06:00
Ben Meadors
46bd6ca7ba
YAML based config for PI / Portduino (#2943)
* Add configuration via /etc/meshtastic/config.yaml

* Move example config, support more locations

* Fix config check

* Use access() to check for config file presence

* Throw an error and exit on radio init fail

* Adds error check for reading Bluetooth MAC

* Settle on meshtasticd, add install script

* Shell fixes

* Fine. I'll put it back and then disable you

* Get wrekt, shellchekt

* Firat attempt at adding raspbian CI build

* Tickle the workflow

* Beatings will continue til morale improves

* Permissions are overrated

---------

Co-authored-by: Jonathan Bennett <jbennett@incomsystems.biz>
2023-11-18 08:12:34 -06:00
Jonathan Bennett
a144d5d6cc Clean up, fix reboot, minimize changes 2023-11-15 20:33:53 -06:00
Jonathan Bennett
b1b5bafdda Add PiHal and get Waveshare SX1262 XXXM working 2023-11-15 17:04:41 -06:00
Thomas Göttgens
40395bef01
Merge branch 'master' into raspi-portduino 2023-10-31 14:09:38 +01:00
S5NC
9d1fe8c245
Update architecture.h (#2880) 2023-10-10 15:35:07 -05:00
Ben Meadors
b388f8edcd
Merge branch 'master' into raspi-portduino 2023-10-09 19:45:08 -05:00
Ben Meadors
950d5f0946
Power saving sensor (#2865)
* Trunk

* Again

* This thing just keeps updating itself

* Ignore tools

* Sleepy sensor

* Batrunkadunk
2023-10-05 12:42:03 -05:00
Manuel
94c2ade272
make esp32 deepsleep button wakeup functional again (#2854)
* make deepsleep button wakeup functional again

* Remove unused var

* Cleanup comment

* suppress screen wake on button

* add resume screen

* trunk fmt

* added missing #ifdef

---------

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2023-10-02 16:16:29 -05:00
Ben Meadors
5ecdbd0dbb
Removed non-functional deep sleep button awake functionality (user can RST instead) (#2852)
* Fixed mask length

* Don't want_response if we're a tracker or sensor

* Fixes

* Removing non-functioning deep sleep button awake
2023-10-01 12:48:12 -05:00
Ben Meadors
1552aa0081
Tracker role wakeup and sleep cycle when power.is_power_saving true (#2846)
* WIP

* Sleepy sleepy low power tracker

* Sleepy tracker clear

* NRF52 PoC

* Simplify NRF52 "sleep"

* Trackers aren't polite

* Remove unnecessary include

* Removed accidental commit

* Fixed not-so-sleepy T-Beam due to button gpio mask precendence

* Added sleepOnNextExecution for allowing fulfillment of pending messages before shutting down

* Cleanup

* Don't wantResponse for trackers

* Heltec wireless tracker doesn't like the button interrupt (maybe all s3 because user button press doubles as bootloader mode trigger?)
2023-09-30 21:09:17 -05:00
Thomas Göttgens
7f16b6b342
Merge branch 'master' into raspi-portduino 2023-09-28 09:29:45 +02:00
Jonathan Bennett
8b82ae6fe3
refactor and avoid needless probe (#2799)
* Use UINT32_MAX to indicate no configured GPS

* Refactor GPS to not probe if pins not defined

* Minor cleanups related to rework

* Use Named Constructor to clean up code

* Actually disable the GPS thread

* Don't actually disable the GPS thread

* Move doGPSPowerSave to GPS class

* Make sure to set GPS awake on triple-click

---------

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2023-09-16 23:10:10 -05:00
Mark Trevor Birss
c2ae38405e
Update architecture.h (#2746) 2023-08-24 07:58:24 -05:00
Jonathan Bennett
4767bd5497
Rename utils.h to avoid collision with library. (#2730) 2023-08-17 20:22:34 -05:00
Thomas Göttgens
b5b66f43f2
Merge branch 'master' into raspi-portduino 2023-08-09 11:19:23 +02:00
Thomas Göttgens
402f8ba524 Let's see what this breaks... 2023-08-07 19:34:42 +02:00
Ben Meadors
919b2d1e48
Merge branch 'master' into raspi-portduino 2023-07-31 19:00:00 -05:00
GUVWAF
ffcc1a0275
RP2040: Enable ExternalNotification and RangeTest Module, set randomSeed (#2664)
* Enable ExternalNotification (and RangeTest) Module

* Set a random seed at boot
2023-07-29 07:19:58 -05:00