Mike
ee4c4ae6c9
Allow setting hopLimit for MQTT json sendtext and sendposition ( #3735 )
...
* Fix channel name extraction
* Allow setting hopLimit for mqtt sendtext and sendposition
2024-04-27 18:15:54 -05:00
Arkadiusz Miśkiewicz
c14043f196
Split warning into two messages, so we know which one is the case. ( #3710 )
2024-04-25 06:47:39 -05:00
Ben Meadors
2450031b1b
Add device metrics uptime to MQTT JSON ( #3643 )
...
* Add device metrics uptime to MQTT JSON
* Cast a spell
2024-04-17 07:00:18 -05:00
Jim Whitelaw
acc32916c3
Add multiple configuration options for a minimized build (GPS,WiFi,BT,MQTT,Screen). ( #3469 )
...
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-03-25 06:33:57 -05:00
GUVWAF
71ca6f768f
Actually update last_report_to_map
2024-03-23 19:35:12 +01:00
GUVWAF
155df45d92
Add sanity check for map report interval and position precision ( #3459 )
...
* Add sanity check for map report interval and position precision
* Use new `Default::` methods
2024-03-21 16:20:20 -05:00
GUVWAF
4debcd5ccd
Set default position precision of mapReport to 14 ( #3456 )
2024-03-21 14:35:17 -05:00
Jonathan Bennett
dfcd0d14f6
Add MaxNodes to Native config ( #3427 )
...
* Add MaxNodes to Native
* It compiles...
* Convert nodedb to use new
* Closer but still broken.
* Finally working
* Remove unintended lines
* Don't include a pointer
* Capitalization matters.
* avoid rename in protocol regen
* When trimming the nodeDB, start with a cleanup
* Remove extra cleanupMeshDB() call for now
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-03-21 09:06:37 -05:00
Ben Meadors
0d1d79b6d1
Extract default intervals and coalesce methods into their own file / static class methods ( #3425 )
...
* Extract default intervals and coalesce methods into their own file / static class methods
* Missed pax
* Still managed to miss one
2024-03-17 08:18:30 -05:00
Ben Meadors
52cfec29fc
More comprehensive client proxy queue guards ( #3414 )
...
* More comprehensive MQTT thread and queue guards
* Consolidate logic
* Remove channel check
* Check for map_reporting_enabled as well
* Update message
* Remove channel check from here as well
* One liner
* Start the mqtt thread back up when channels change and we want mqtt
2024-03-15 16:17:47 -05:00
Andre K
9d2fcbe1e1
use decoded packets in public MQTT range test/detection sensor filter ( #3404 )
...
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-03-13 18:24:49 -05:00
AeroXuk
affbd7f2b9
Update MQTT.cpp
...
Bug fix for #3382
2024-03-12 02:13:52 +00:00
GUVWAF
5f47ca1f32
Don't spam logs if no position with map reporting ( #3378 )
2024-03-11 15:58:45 -05:00
GUVWAF
b45a912409
Use dedicated map
topic
2024-03-10 15:56:00 +01:00
GUVWAF
084b01715e
Merge remote-tracking branch 'origin/master' into mapReport
2024-03-10 14:54:41 +01:00
GUVWAF
af9d14c370
Periodic reporting of device information to a map via MQTT
2024-03-10 14:52:37 +01:00
Jonathan Bennett
dced888492
Add precision_bit sto json
2024-03-09 15:34:01 -06:00
GUVWAF
3da7c0dba7
Add hops_away to JSON output ( #3357 )
2024-03-09 11:32:49 -06:00
Ben Meadors
0f1bc98305
Update MQTT topic to match ( #3353 )
2024-03-08 20:15:00 -06:00
GUVWAF
0f27992c5a
Ignore JSON enabled setting on nRF52 platforms ( #3286 )
...
Not supported, see #2804
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-02-25 07:44:08 -06:00
GUVWAF
eb8a12e5a2
Refactor MQTT: only publish on LoRa Tx if packet is from us and on Rx if not ( #3245 )
...
Such that direct message to MQTT node gets published and we get rid of always rebroadcasting when MQTT is enabled
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-02-21 13:00:14 -06:00
GUVWAF
a40b4e4d69
MQTT JSON downlink fixes ( #3183 )
...
* Fix getting channel name from MQTT topic
* Allow specifying channel index in JSON field "channel" for downlink
Still requires JSON message to be published to channel named "mqtt"
* Make non-breaking if someone adds another slash
2024-02-08 15:43:24 -06:00
GUVWAF
0c0a3c4b55
Fix: mark packet sent to MQTT as ACKed only after we sent it out via LoRa ( #3155 )
...
* Fix: mark packet via MQTT as ACKed only after we sent it out via LoRa
* Don't need to check for broadcast, DMs also get implicit ACKs
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-01-31 14:04:52 -06:00
GUVWAF
af52dcecdf
Restrict MQTT JSON downlink messages ( #3141 )
...
Channel needs to be named "mqtt"
"from" field should be set to the node number of the transmitter
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-01-29 06:13:56 -06:00
Andre K
d6fa190025
fix: allow MQTT encryption_enabled
with json_enabled
( #3126 )
...
* fix: allow MQTT `encryption_enabled` with `json_enabled`
* fix: copy decoded MeshPacket and release memory after use
* fix: use `packetPool` allocCopy and release methods
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-01-25 08:42:34 -06:00
Manuel
f2c04c5504
fix MQTT crash ( #3127 )
2024-01-24 14:01:50 -06:00
GUVWAF
8f6a2836b8
Mark packets received via MQTT and add option to ignore them ( #3117 )
...
* Mark packets received via MQTT and add option to ignore them
* Don't send packets received via MQTT back into MQTT
Generate implicit ACK for packets we as an MQTT gateway sent
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-01-20 14:22:09 -06:00
GUVWAF
943367edd0
Fix "watch GPIOs" feature of Remote Hardware module ( #3047 )
...
* Fix watch GPIO feature of Remote Hardware
* Add Remote Hardware messages to JSON output
* Add curly brackets
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-01-03 15:08:28 -06:00
GUVWAF
16c18d0da9
Add Traceroute, DetectionSensor and Paxcounter to MQTT JSON ( #3043 )
...
* Add Traceroute, DetectionSensor and Paxcounter to MQTT JSON
* Guard Paxcounter for ESP32 only
2023-12-27 08:14:25 -06:00
GUVWAF
d88baea627
Make implicit ACKs work on MQTT ( #3028 )
...
Don't filter out messages we originally sent via LoRa
2023-12-21 14:59:16 -06:00
Ben Meadors
4720b2874f
Cpp-check warnings cleanup ( #3014 )
...
* cpp-check warnings cleanup
* Supressions and more fixes
2023-12-14 07:35:46 -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
Ric In New Mexico
f57020412e
INA3221 / Power Telemetry Payload Variant Implementation ( #2916 )
...
* INA3221 / Power Telemetry Variant Implementation
modified: platformio.ini
modified: src/configuration.h
modified: src/detect/ScanI2C.h
modified: src/detect/ScanI2CTwoWire.cpp
modified: src/main.cpp
modified: src/modules/Modules.cpp
new file: src/modules/Telemetry/PowerTelemetry.cpp
new file: src/modules/Telemetry/PowerTelemetry.h
new file: src/modules/Telemetry/Sensor/INA3221Sensor.cpp
new file: src/modules/Telemetry/Sensor/INA3221Sensor.h
modified: src/mqtt/MQTT.cpp
* ifdef for portduino / linux native
modified: src/modules/Telemetry/PowerTelemetry.cpp
* try #2
modified: src/modules/Modules.cpp
modified: src/modules/Telemetry/PowerTelemetry.cpp
deleted: variants/xiao_ble/1.0.0/libraries/SPI/SPI.cpp
* try #3
modified: src/modules/Modules.cpp
* try #4
modified: src/modules/Telemetry/PowerTelemetry.cpp
* try #5 ?
modified: src/modules/Telemetry/PowerTelemetry.cpp
* try #6
modified: src/modules/Telemetry/PowerTelemetry.cpp
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2023-11-04 20:07:00 -05:00
Tavis
092e6f2424
add rssi and snr to json output ( #2894 )
...
* add rssi and snr to json output
* explicitly cast to int and float
2023-10-17 06:50:36 -05:00
Andre K
2c625f6ba1
fix: channel routing for decoded MQTT packets ( #2892 )
...
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2023-10-15 06:41:40 -05:00
GUVWAF
37c3d15978
Check if packet is decrypted before using portnum when converting to JSON ( #2857 )
...
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2023-10-03 06:39:35 -05:00
Ben Meadors
b5e952db24
No more goober traffic on public mqtt ( #2831 )
...
* No more goober traffic on public mqtt
* Oops
2023-09-26 06:19:17 -05:00
GUVWAF
6d93fab495
Add neighbor IDs to MQTT JSON ( #2756 )
...
* Add neighbor IDs to JSON
* Limit #neighbors to what we can actually save
* Put neighbor IDs in an array
* Add SNR to neighbors in nested objects
2023-09-01 14:35:57 -05:00
Ben Meadors
6e0b6684ee
Extend node max to 100 and remove mesh_sds_timeout_secs ( #2713 )
...
* Extend node max to 100 and remove mesh_sds_timeout_secs
* Const pointers for you and you and you
* Fixes and supressions
* Missed it
* uint
* Resize
* Derp
2023-08-12 09:29:19 -05:00
Ben Meadors
0821cff1c8
Merge remote-tracking branch 'origin/master' into 2.2-working-changes
2023-07-31 18:54:53 -05:00
Jonathan Bennett
939a359e7e
Adds DOP fields to JSON MQTT output ( #2671 )
...
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2023-07-31 15:19:36 -05:00
GUVWAF
32246850aa
Convert protobuf values that are unsigned properly to uint in JSON ( #2659 )
2023-07-27 13:53:20 -05:00
Ben Meadors
146ed067a1
Merge branch 'master' into neighborinfo
2023-07-25 16:14:50 -05:00
Ben Meadors
96c6a20e03
Ensure that MQTT is enabled and log initialization ( #2643 )
2023-07-24 12:33:01 -05:00
Ben Meadors
41b07de5a2
Merge branch 'master' into neighborinfo
2023-07-17 09:21:08 -05:00
luzpaz
003047baaf
Fix various typos ( #2607 )
...
* Fix various typos
Found via `codespell -q 3 -L acount,clen,dout`
* Trunk reformatting
---------
Co-authored-by: code8buster <communismisgreat@national.shitposting.agency>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2023-07-14 16:25:20 -05:00
Ben Meadors
6e96216ba3
MQTT client proxying ( #2587 )
...
* WIP on MQTT proxy message queue
* Fix copy paste goof
* Progress on uplink
* Has packets
* Avoid trying to connect if we're proxying
* Pointer correctly
* Remove wifi guards
* Client proxy subscribe
* Fixed method that got bababababorked somehow... personally I blame CoPilot
* Short circuit logic
* Remove canned settings
* Missed some stuff in the move
* Guard pubsub client for non-networked variants
* Has networking guard
* else
* Return statement for fall-thru
* More gaurd removals
* Removed source filters. No wonder I was confused
* Bounding
* Scope guard around else and fix return
* Portduino
* Defs instead
* Move macro up to actually fix portduino
* Size_t
* Unsigned int
* Thread interval
* Protos
* Protobufs ref
2023-07-08 20:37:04 -05:00
Thomas Göttgens
61661aed50
Broadcast neighbor info
...
also update trunk
2023-05-31 13:18:43 +02:00
Thomas Göttgens
f9b2556cd4
add optional GPS fields to JSON
2023-05-15 15:40:22 +02:00
IhorNehrutsa
9c683f4c87
Fix LOG_DEBUG messages when no DEBUG_PORT. ( #2485 )
...
* Fix LOG_DEBUG messages when no DEBUG_PORT.
* Fix LOG_DEBUG messages when no DEBUG_PORT.
* Fix LOG_DEBUG messages when no DEBUG_PORT.
* Fix LOG_DEBUG messages when no DEBUG_PORT.
2023-05-13 05:33:14 -05:00
Thomas Göttgens
b43a5bc4f8
Fix missing msh default topic.
2023-04-13 23:17:05 +02:00
Thomas Göttgens
43cff7adc9
Implement #2380 ( #2418 )
2023-04-07 07:52:23 -05:00
ghostop14
990d418dc8
Add MQTT TLS Support for WIFI-Enabled Devices ( #2410 )
...
* Testing TLS MQTT Support
* Working TLS connections
* Testing TLS MQTT Support
* Working TLS connections
* Added protobuf support for mqtt.tls_enabled
* fix 'em up good
* don't commit this stuff, jeeez
* there i fixed it
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
2023-04-04 08:14:47 -05:00
Thomas Göttgens
5044169e8d
fixes #2330
2023-03-06 14:12:24 +01:00
Thomas Göttgens
b07904fe77
Merge remote-tracking branch 'remotes/origin/master' into rsyslog-client
2023-02-05 01:21:30 +01:00
Thomas Göttgens
22500a6c34
tryfix for #2242
2023-02-04 11:36:35 +01:00
Thomas Göttgens
090d399843
hook up additional rsyslog output if debug printing is active
2023-02-01 15:09:07 +01:00
Thomas Göttgens
81854a173a
fix #2109 json mqtt on secondary channel
2023-01-23 21:57:41 +01:00
Thomas Göttgens
cdf379616c
whatever makes trunk happy.
2023-01-21 21:23:24 +01:00
Thomas Göttgens
6fdb93cd16
re-add namespacing in protobufs. Let's see what i missed. Portduino likely ...
...
Checking in generated on purpose.
2023-01-21 21:23:24 +01:00
Thomas Göttgens
51b2c431d9
trunk roundhouse kick
2023-01-21 21:23:24 +01:00
Ben Meadors
9046dacec8
I don't like this formatting but I need trunk to STFU
2023-01-18 14:51:48 -06:00
Ben Meadors
4d4af7de59
generated paths experiment
2023-01-18 08:56:47 -06:00
Ben Meadors
cc0cccbd1b
Coerce int
2023-01-16 12:26:10 -06:00
Ben Meadors
34b2d51113
Patch locked_to
2023-01-16 11:05:36 -06:00
Thomas Göttgens
867e55b9e7
sync mqtt with develop
2023-01-12 16:09:03 +01:00
Thomas Göttgens
42122f3d0f
Merge branch 'master' into develop
2023-01-12 15:01:56 +01:00
Thomas Göttgens
1fc5d70221
let the library handle the reconnect, manually do it after 5 seconds
2023-01-09 23:26:47 +01:00
Thomas Göttgens
5cec370cf5
getByName was not used anywhere in the code so that change is safe.
...
Please TEST this as i don't have a working Json setup in mqtt at the moment.
2023-01-09 11:28:21 +01:00
Thomas Göttgens
d9f0dc7ea4
add MQTT outqueue back in (still broken)
2023-01-04 14:41:58 +01:00
pavelb-techspark
30ae4c2a38
Add QueueStatus sending to the firmware ( #1820 )
...
* Yank mqtt service envelope queue
* trybuildfix mqtt system
* removed too much
* no excessive heap debugging on release builds
* send QueueStatus messages
The QueueStatus message is sent as a response to the attempt to queue
an outgoing MeshPacket and contains statuses of the last queue
attempt, TX Queue space and capacity and MeshPacket.id that was
queued.
When TX Queue changes status from completely full to at least
a single slot free a QueueStatus message is also sent to notify
that user can queue more messages.
Signed-off-by: Pavel Boldin <pavel.b@techspark.engineering>
* WIP: update protobufs
Signed-off-by: Pavel Boldin <pavel.b@techspark.engineering>
* update protobufs
* regen protos
Signed-off-by: Pavel Boldin <pavel.b@techspark.engineering>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
Co-authored-by: Sacha Weatherstone <sachaw100@hotmail.com>
2023-01-04 23:56:52 +11:00
Thomas Göttgens
cad5c9b70c
removed too much
2023-01-03 22:17:04 +01:00
Thomas Göttgens
5867038abf
trybuildfix mqtt system
2023-01-03 22:09:35 +01:00
Ben Meadors
42b24d4510
Yank mqtt service envelope queue
2023-01-03 14:32:28 -06:00
Thomas Göttgens
8a9af37d82
Merge branch 'develop' into nice-threads
2022-12-30 20:18:19 +01:00
joshpirihi
11f1508d85
Merge branch 'meshtastic:develop' into develop
2022-12-31 06:40:25 +13:00
Joshua Pirihi
19436b7d54
Increase MQTT buffer size
2022-12-31 06:40:02 +13:00
Ben Meadors
f1cdfd163d
Replaced all of the logging with proper log levels
2022-12-30 10:27:07 -06:00
Ben Meadors
0b5cae5393
Log levels refactoring
2022-12-29 20:41:37 -06:00
Ben Meadors
110c80d045
Make disable return an int32_t for runOnce usage
2022-12-29 16:54:39 -06:00
Ben Meadors
38a1315599
Refactor OSThread consumers to use disable()
2022-12-29 16:26:25 -06:00
Thomas Göttgens
41a1dfec79
a lot of thread housekeeping. Switch them off when not needed / disabled.
2022-12-29 15:45:49 +01:00
Thomas Göttgens
2ac2b6d1b6
replace PB03 compat macros with the real deal.
2022-12-23 10:00:34 +01:00
Thomas Göttgens
bbaeeb7ce9
fixing portduino is getting old ...
2022-12-16 20:46:43 +01:00
Thomas Göttgens
68f6cfde0c
Improve Wifi Reconnect handling and add outgoing queue for MQTT packets to bridge short connection issues.
2022-12-16 20:28:28 +01:00
Thomas Göttgens
a00187b97f
manual master merge
2022-12-06 16:56:38 +01:00
arduinoGP
8ff5dacc3c
Update MQTT.cpp
...
case Portnum_POSITION_APP adjusted so the various options allways get encoded into JSON as long as lat and long are present. There are circumstances where timestamp, time, or altitude might be missing and this causes silent failures of JSON encoding..
2022-12-01 15:44:47 -05:00
Thomas Göttgens
679e346bcb
change old field denominator
2022-11-22 16:47:54 +01:00
Thomas Göttgens
71c2af04ec
why is this working on pio/windows?
2022-11-22 15:03:01 +01:00
Thomas Göttgens
23466d8eee
yank that dreaded json11 - first try
2022-11-22 14:29:00 +01:00
Ben Meadors
abf8fdb661
Merge branch 'master' into develop
2022-11-21 09:39:22 -06:00
Ben Meadors
1c5292ac86
Init default mqtt configurations
2022-11-20 12:29:10 -06:00
Thomas Göttgens
95cc328b5c
That wifi update didn't go down well.
2022-11-18 19:37:56 +01:00
Thomas Göttgens
990c0119a7
fix portduino - again
2022-11-18 18:22:35 +01:00
Thomas Göttgens
144afee29e
trigger wifi reconnect by mqtt or ntp failures.
2022-11-18 18:03:30 +01:00
Thomas Göttgens
9665c08b59
MQTT: don't subscribe to JSON topic if JSON is disabled in config.
2022-11-17 21:14:49 +01:00
Thomas Göttgens
7a3ad0afba
fix #1916
2022-11-08 22:32:53 +01:00
Thomas Göttgens
b7ebe03ca8
API Server and DHCP Lease Management
2022-10-26 11:09:59 +02:00
Thomas Göttgens
a66538fe55
MQTT is working over ethernet
2022-10-26 00:07:02 +02:00
Thomas Göttgens
075a53ced0
Update MQTT.cpp
2022-10-19 11:04:13 +02:00