Mark Qvist
a37e039424
Check input_file attribut
2024-01-14 18:57:23 +01:00
Mark Qvist
8e1e2a9c54
Added debug function
2024-01-14 18:56:20 +01:00
Mark Qvist
b007530123
Adjusted resource timeout calculation
2024-01-14 01:06:43 +01:00
Mark Qvist
4066bba303
Merge branch 'master' of github.com:markqvist/Reticulum
2024-01-14 00:48:14 +01:00
Mark Qvist
8951517d01
Updated version
2024-01-14 00:47:45 +01:00
Mark Qvist
ae1d962b9b
Fixed large resource transfers failing under some conditions
2024-01-14 00:46:55 +01:00
Mark Qvist
9f43da9105
Fixed rnprobe formatting issue
2024-01-13 16:37:48 +01:00
Mark Qvist
038c696db9
Fixed missing check on malformed advertisement packets
2024-01-13 16:36:11 +01:00
Juraj Bednar
bec3cee425
Fix typo
2023-12-30 23:47:51 +01:00
Mark Qvist
d67c8eb1cd
Fixed potential division by zero
2023-12-25 11:39:24 +01:00
Mark Qvist
6b3f3a37f0
Updated version
2023-12-06 00:07:06 +01:00
Mark Qvist
60a604f635
Carrier change flag on listener replace
2023-12-06 00:06:45 +01:00
Mark Qvist
2dbde13321
Added identity import and export in hex, base32 and base64 formats
2023-12-02 02:10:22 +01:00
Mark Qvist
7b9526b4ed
Updated version
2023-11-13 23:23:40 +01:00
Mark Qvist
676074187a
Added timeout and wait options to rnprobe and improved output formatting
2023-11-13 23:22:58 +01:00
Mark Qvist
5dd2c31caf
Generate receipts prior to raw transmit
2023-11-13 23:12:59 +01:00
Mark Qvist
b68dbaf15e
Updated log levels
2023-11-08 15:23:29 +01:00
Mark Qvist
58b5501e17
Cleanup
2023-11-06 11:08:31 +01:00
Mark Qvist
b584832b8f
Fixed logging error messages when a local client connects while instance is starting up
2023-11-06 11:06:14 +01:00
Mark Qvist
001dd369ec
Updated version
2023-11-05 23:37:38 +01:00
Mark Qvist
eec8814c22
Updated version
2023-11-05 23:29:06 +01:00
Mark Qvist
7a6ed68482
Set socket options
2023-11-05 22:57:03 +01:00
Mark Qvist
2ba5843f22
Updated version
2023-11-04 18:05:42 +01:00
Mark Qvist
c4d0f08767
Improved resource transfers over unreliable links
2023-11-04 18:05:20 +01:00
Mark Qvist
db1cdec2a2
Fixed premature request timeout
2023-11-04 17:59:27 +01:00
Mark Qvist
a6126a6bc5
Updated version
2023-11-02 21:37:16 +01:00
Mark Qvist
957c2b3bc1
Fixed invalid reference
2023-11-02 21:33:21 +01:00
Mark Qvist
5e39136dff
Fixed missing path state resetting on stale path rediscovery
2023-11-02 16:15:42 +01:00
Mark Qvist
4b26a86a73
Added probe count option to rnprobe
2023-11-02 16:14:38 +01:00
Mark Qvist
43a6e280c0
Fixed bluetooth read timeouts on Android in environments with hight 2.4G noise
2023-11-02 16:08:49 +01:00
Mark Qvist
237a45b2ca
Don't send rediscovery requests on local originator
2023-11-02 13:33:12 +01:00
Mark Qvist
b161650ced
Adjusted link timings
2023-11-02 13:04:09 +01:00
Mark Qvist
24975eac31
Updated version
2023-11-02 13:03:53 +01:00
Mark Qvist
628777900e
Fixed attribute
2023-11-02 12:44:57 +01:00
Mark Qvist
12e87425dc
Adjusted timings
2023-11-02 12:24:42 +01:00
Mark Qvist
873f049e20
Fixed redundant rediscovery path request
2023-11-02 04:35:57 +01:00
Mark Qvist
2ea963ed03
Fixed missing timeout calculation
2023-11-02 04:35:10 +01:00
Mark Qvist
a4143cfe6d
Improved link error handling. Fixes #387 .
2023-10-31 11:44:12 +01:00
Mark Qvist
3d645ae2f4
Updated documentation
2023-10-31 11:09:54 +01:00
Mark Qvist
798dfb1727
Added ability to query physical layer stats on links
2023-10-28 00:05:35 +02:00
Mark Qvist
f01074e5b8
Implemented link establishment on ultra low bandwidth links
2023-10-27 18:16:52 +02:00
Mark Qvist
0e12442a28
Local interface bitrate simulation
2023-10-27 18:12:53 +02:00
Mark Qvist
38236366cf
Improved pretty print output
2023-10-24 13:24:40 +02:00
Mark Qvist
af3cc3c5dd
Updated version
2023-10-24 01:45:07 +02:00
Mark Qvist
35ed1f950c
Updated version
2023-10-24 01:43:50 +02:00
Mark Qvist
c050ef945e
Updated pretty-print functions
2023-10-24 01:41:49 +02:00
Mark Qvist
bed71fa3f8
Added physical layer link stats to link and packet classes
2023-10-24 01:41:12 +02:00
Mark Qvist
cf125daf5c
Added link quality calculation to RNode interface
2023-10-24 01:40:17 +02:00
Mark Qvist
9f425c2e8d
Updated exceptions
2023-10-24 01:39:25 +02:00
Mark Qvist
0dc78241ac
Updated version
2023-10-19 01:39:47 +02:00
Mark Qvist
b3731524ac
Improved path re-discovery in changing topographies
2023-10-19 00:38:41 +02:00
Mark Qvist
67c7395ea7
Improved shared interface reconnection on service restart
2023-10-18 23:18:59 +02:00
Mark Qvist
4f561a8c0c
Added exception handling to interface detach
2023-10-16 18:54:36 +02:00
Mark Qvist
1abacca9bf
Fixed missing command definition
2023-10-08 18:02:38 +02:00
Mark Qvist
f1d107846f
Updated version
2023-10-07 13:00:16 +02:00
Mark Qvist
cc951dcb53
Added RPC key configuration option to manual
2023-10-07 12:40:30 +02:00
Mark Qvist
b5856a3706
Added configuration option to specify shared instance RPC key
2023-10-07 12:34:10 +02:00
Mark Qvist
ed3479da9a
Reordered airtime stats
2023-10-04 23:46:35 +02:00
Mark Qvist
0a9366ba6e
Updated Android log level on bluetooth failure
2023-10-02 17:39:19 +02:00
Mark Qvist
9f58860842
Added missing super init on Android interfaces
2023-10-02 17:36:33 +02:00
Mark Qvist
f79f190525
Changed ir utility name to rnir. Closes #377 .
2023-10-01 23:39:43 +02:00
Mark Qvist
f85dda1829
Fixed typos in examples
2023-10-01 11:46:30 +02:00
Mark Qvist
fb4e53f6e3
Configured announce ingress limit defaults
2023-10-01 11:39:24 +02:00
Mark Qvist
03340ed091
Added ability to drop all paths via a specific transport instance to rnpath
2023-10-01 11:39:07 +02:00
Mark Qvist
fcdb455d73
Added sort mode to rnstatus
2023-10-01 01:08:19 +02:00
Mark Qvist
492573f9fe
Added ingress control interface configuraion options
2023-10-01 00:43:26 +02:00
Mark Qvist
c5d30f8ee6
Cleanup
2023-10-01 00:24:03 +02:00
Mark Qvist
3c4791a622
Implemented announce ingress control
2023-10-01 00:16:32 +02:00
Mark Qvist
803a5736c9
Added held announce stats to rnstatus
2023-10-01 00:12:49 +02:00
Mark Qvist
267ffbdf5f
Updated version
2023-09-30 22:37:43 +02:00
Mark Qvist
52028aa44c
Added ingress control config option
2023-09-30 21:07:22 +02:00
Mark Qvist
c5248d53d6
Fixed frequency pretty print function
2023-09-30 19:22:39 +02:00
Mark Qvist
2d2f0947ac
Fixed frequency pretty print function
2023-09-30 19:18:30 +02:00
Mark Qvist
4fa616a326
Added interface sorting and announce rate display to rnstatus
2023-09-30 19:14:39 +02:00
Mark Qvist
136713eec1
Added announce frequency stats
2023-09-30 19:13:58 +02:00
Mark Qvist
0fd75cb819
Added announce frequency sampling to interfaces
2023-09-30 19:11:10 +02:00
Mark Qvist
ea52153969
Added convenience function for printing frequencies
2023-09-30 19:09:26 +02:00
Mark Qvist
b5cb3a65dd
Fixed announce queue not clearing all announces with exceeded retry limit at the same time
2023-09-30 00:25:47 +02:00
Mark Qvist
c79cb3aa20
Resolver skeleton
2023-09-29 23:18:30 +02:00
Mark Qvist
8bff119691
Added Identity Resolver skeleton
2023-09-29 12:44:03 +02:00
Mark Qvist
5e0b2c5b42
Allow rnid aspect lengths of 1
2023-09-29 12:29:37 +02:00
Mark Qvist
8908022b88
Updated license headers
2023-09-29 10:31:20 +02:00
Mark Qvist
b0dda0ed86
Added Resolver class
2023-09-29 10:31:00 +02:00
Mark Qvist
6ae72d4225
Updated exit codes
2023-09-29 10:30:19 +02:00
Mark Qvist
0a188a2d39
Fixed output formatting in rncp
2023-09-25 15:29:41 +02:00
Mark Qvist
036abb28fe
Added timeout option to rnprobe
2023-09-25 15:27:24 +02:00
Mark Qvist
a732767a28
Fixed local RSSI and SNR cache pop order
2023-09-25 14:17:58 +02:00
Mark Qvist
5872108da3
Added timeout to rnprobe
2023-09-22 10:04:37 +02:00
Mark Qvist
82f204fb44
Added ability to enable a built-in probe responder destination for Transport Instances
2023-09-21 18:48:08 +02:00
Mark Qvist
f8a53458d6
Added respond_to_probes option to example config
2023-09-21 18:33:14 +02:00
Mark Qvist
4be2ae6c70
Fixed verbose output bug in rnprobe
2023-09-21 18:32:36 +02:00
Mark Qvist
dbdeba2fe0
Updated rnprobe utility
2023-09-21 17:49:14 +02:00
Mark Qvist
7e34b61f37
Added link status check on identify
2023-09-21 14:12:32 +02:00
Mark Qvist
bf726ed2c7
Fixed missing timeout check in rncp
2023-09-21 14:12:14 +02:00
Mark Qvist
62e1d0e554
Updated version
2023-09-21 13:46:51 +02:00
Mark Qvist
9c823a038b
Impproved path re-discovery on Transport Instances when local nodes roam to other network segments
2023-09-21 13:46:28 +02:00
Mark Qvist
1e6cd50f46
Updated rnstatus output
2023-09-21 12:07:11 +02:00
Mark Qvist
06716e4873
Disabled caching until redesign
2023-09-21 12:05:37 +02:00
Mark Qvist
8e4a1e3ffa
Increased AutoInterface peering timeout on Android
2023-09-20 00:53:51 +02:00
Mark Qvist
07938ba111
Added ability to set custom RNode display address to rnodeconf
2023-09-19 18:33:37 +02:00
Mark Qvist
5bac38a752
Updated rncp output
2023-09-19 10:14:02 +02:00
Mark Qvist
b8c6ea015e
Fixed missing attribute check
2023-09-19 10:13:27 +02:00
Mark Qvist
ffe1beb7ae
Updated log statement
2023-09-19 10:13:04 +02:00
Mark Qvist
21c6dbfce0
Added check for destination direction on annonuce
2023-09-19 10:11:45 +02:00
Mark Qvist
334f2a364d
Added fetch mode to rncp
2023-09-18 22:40:29 +02:00
Mark Qvist
b477354235
Added fetch mode to rncp
2023-09-18 22:22:44 +02:00
Mark Qvist
254c966159
Fixed potential None reference
2023-09-18 20:52:36 +02:00
Mark Qvist
7ee9b07d9c
Added silent mode to rncp
2023-09-18 16:36:58 +02:00
Mark Qvist
839b72469c
Added allowed_identities file support to rncp
2023-09-18 16:12:45 +02:00
Mark Qvist
874d76b343
Added Transport Instance uptime to rnstatut output
2023-09-18 15:45:55 +02:00
Mark Qvist
e37ec654ee
Fixed rnid output bug
2023-09-18 12:07:30 +02:00
Mark Qvist
b237d51276
Cleanup
2023-09-18 11:00:36 +02:00
Mark Qvist
155ea24008
Added channel CSMA parameter stats to RNode Interface
2023-09-18 00:45:38 +02:00
Mark Qvist
8c8affc800
Improved Channel sequencing, retries and transfer efficiency
2023-09-18 00:42:54 +02:00
Mark Qvist
481062fca1
Added adaptive compression to Buffer class
2023-09-18 00:39:27 +02:00
Mark Qvist
ffcc5560dc
Updated version
2023-09-18 00:34:15 +02:00
Mark Qvist
4c6b04ff69
Fixed invalid path for firmware hash generation while using extracted firmware to autoinstall
2023-09-15 13:49:15 +02:00
Mark Qvist
9889b479d1
Fixed inadverdent AutoInterface multi-IF deque hit for resource transfer retries
2023-09-14 22:14:31 +02:00
Mark Qvist
13c45cc59a
Added channel stat reporting and airtime controls to RNode interface
2023-09-13 21:15:32 +02:00
Mark Qvist
67c468884f
Added channel load and airtime stats to rnstatus output
2023-09-13 20:07:53 +02:00
Mark Qvist
18b952e612
Added airtime config options, improved periodic data persist
2023-09-13 20:07:07 +02:00
Mark Qvist
1c0b7c00fd
Updated version
2023-09-13 13:24:50 +02:00
Mark Qvist
2439761529
Prevent answering path requests on roaming-mode interfaces for next-hop instances on same roaming-mode interface
2023-09-13 13:03:22 +02:00
Mark Qvist
8803dd5b65
Catch error when undefined next-hop path data is returned
2023-09-13 13:02:05 +02:00
Mark Qvist
d15d04eae5
Updated debug logging
2023-09-13 13:01:14 +02:00
Mark Qvist
97153ad59d
Updated explanation text
2023-08-15 10:30:49 +02:00
markqvist
3320cf8da8
Merge pull request #363 from blackjack75/master
...
Added suggestion to use lower baudrate if flashing fails on ESP32
2023-08-15 10:26:57 +02:00
Santiago Lema
91ede52634
Added suggestion to use lower baudrate if flashing fails on ESP32
2023-08-14 20:47:40 +02:00
Dionysis Grigoropoulos
93f13a98b2
rnodeconf: Dump eeprom under specific directory
2023-08-14 20:08:40 +03:00
markqvist
b0c6c53430
Merge pull request #360 from Erethon/set-baud-rate-when-flashing
...
rnodeconf: Add option to set baud when flashing
2023-08-14 16:42:26 +02:00
Mark Qvist
94a5222390
Updated version
2023-08-13 20:38:41 +02:00
Dionysis Grigoropoulos
98bb304060
rnodeconf: Add option to set baud when flashing
2023-08-12 02:37:05 +03:00
Mark Qvist
08bfd923ea
Fixed possible invalid comparison in link watchdog job
2023-08-05 15:10:00 +02:00
Mark Qvist
ae28f04ce4
Added bytes input to destination hash convenience functions
2023-07-10 00:54:02 +02:00
Mark Qvist
5542410afa
Updated version
2023-07-09 16:45:52 +02:00
Mark Qvist
99205cdc0f
Fixed typo in rnid
2023-07-09 16:29:40 +02:00
markqvist
6d551578c3
Merge pull request #325 from npetrangelo/patch-3
...
Update __init__.py
2023-06-22 20:05:37 +02:00
Dionysis Grigoropoulos
743736b376
Fix bug in device selection of rnodeconf
2023-06-21 00:02:11 +03:00
Mark Qvist
049733c4b6
Fixed race condition for link initiators on timed out link establishment
2023-06-13 19:20:54 +02:00
Mark Qvist
420d58527d
Merge branch 'master' of github.com:markqvist/Reticulum
2023-06-13 16:11:28 +02:00
Mark Qvist
bab779a34c
Fixed race condition for link initiators on timed out link establishment
2023-06-13 16:10:47 +02:00
SebastianObi
6dcfe2cad6
Fixed missing init of 'r_stat_snr'.
...
This this will otherwise lead to the error:
AttributeError: 'RNodeInterface' object has no attribute 'r_stat_snr'
2023-06-07 17:43:14 +02:00
SebastianObi
f206047908
Fixed missing init of 'r_stat_snr'.
...
This this will otherwise lead to the error:
AttributeError: 'RNodeInterface' object has no attribute 'r_stat_snr'
2023-06-07 17:42:44 +02:00
Nathan Petrangelo
6ce979a7de
Update __init__.py
...
Auto convert log messages to strings on the way in
2023-06-05 17:31:52 -04:00
Mark Qvist
f9f623dfa5
Updated version and changelog
2023-06-03 15:52:44 +02:00
Mark Qvist
ffa6bec3b4
Updated parser
2023-06-02 21:24:57 +02:00
Mark Qvist
4f78973751
Fixed race condition when timed-out link receives a late establishment proof a few milliseconds after it has timed out
2023-06-02 21:24:49 +02:00
Mark Qvist
a8a7af4b74
Handle missing identity file in rncp. Fixes #317 .
2023-05-31 15:39:55 +02:00
Mark Qvist
9294ab4f97
Updated version
2023-05-19 11:31:36 +02:00
Mark Qvist
d7375bc4c3
Fixed callback invocation on channel receive
2023-05-19 01:58:28 +02:00
Mark Qvist
1a860c6ffd
Add EOF signal on buffer close
2023-05-19 01:57:20 +02:00
Mark Qvist
800ed3af7a
Fixed ready callback invocation
2023-05-18 23:35:28 +02:00
Mark Qvist
9c8e79546c
Fixed missing check in receipt culling
2023-05-18 23:33:26 +02:00
Mark Qvist
61626897e7
Add channel window mode for slow links
2023-05-11 21:28:13 +02:00
Mark Qvist
fc5b02ed5d
Added medium window to channel
2023-05-11 20:23:36 +02:00
Mark Qvist
a06e752b76
Added multi-interface duplicate deque to AutoInterface
2023-05-11 19:54:26 +02:00
Mark Qvist
66fda34b20
Cleanup
2023-05-11 17:48:07 +02:00
Mark Qvist
1542c5f4fe
Fixed received link packet proofs not resetting watchdog stale timer
2023-05-11 16:22:44 +02:00
Mark Qvist
523fc7b8f9
Adjusted loglevel
2023-05-11 16:09:25 +02:00
Mark Qvist
73faf04ea1
Tuned channel windowing
2023-05-10 20:01:33 +02:00
Mark Qvist
e10ddf9d2d
Cleanup
2023-05-10 19:28:28 +02:00
Mark Qvist
641a7ea75d
Implemented basic channel windowing
2023-05-10 19:15:45 +02:00
Mark Qvist
e543d5c27f
Implemented basic channel windowing
2023-05-10 19:15:20 +02:00
Mark Qvist
01c59ab0c6
Cleanup
2023-05-10 18:44:05 +02:00
Mark Qvist
a4c64abed4
Initial framework for channel windowing
2023-05-10 18:43:17 +02:00
Mark Qvist
7df11a6f67
Fixed missing isolation of packet delivery callback
2023-05-10 18:40:46 +02:00
Mark Qvist
1bd6020163
Cleanup
2023-05-10 18:40:18 +02:00
Mark Qvist
b3ac3131b5
Updated version
2023-05-09 23:07:47 +02:00
Mark Qvist
f522cb1db1
Added per-packet compression to buffer
2023-05-09 22:13:57 +02:00
Mark Qvist
d96a4853fe
Fixed version display
2023-05-09 22:13:23 +02:00
Mark Qvist
52a0447fea
Fixed resent packets not getting repacked
2023-05-09 22:12:49 +02:00
Mark Qvist
e82e6d56f1
Added ability to trust external signing keys to rnodeconf
2023-05-09 15:31:02 +02:00
Mark Qvist
dcf33e125b
Cleanup
2023-05-05 10:43:27 +02:00
Mark Qvist
01600b96a4
Fix import paths
2023-05-05 10:37:22 +02:00
Mark Qvist
64bdc4c18c
Fix import paths
2023-05-05 10:25:15 +02:00
Mark Qvist
5e5d89cc92
Removed dependency on netifaces.
2023-05-04 23:19:43 +02:00
Mark Qvist
a3bee4baa9
Removed netifaces dependency from AutoInterface
2023-05-04 17:55:58 +02:00
Mark Qvist
fab83ec399
Restructured library
2023-05-04 17:55:38 +02:00
Mark Qvist
b740e36985
Added ifaddr module
2023-05-04 17:46:56 +02:00
Mark Qvist
53b325d34d
Added support for T3 v1.0 to rnodeconf
2023-05-03 15:56:19 +02:00
Mark Qvist
d31cf6e297
Added ability to configure RNode display intensity
2023-05-03 14:26:47 +02:00
Mark Qvist
e386a5d08b
Use native Python unzip for updates
2023-05-03 12:57:38 +02:00
Mark Qvist
d467ed9ece
Merge branch 'master' of github.com:markqvist/Reticulum
2023-05-03 12:27:10 +02:00
Mark Qvist
892a467d74
Update version
2023-05-03 12:26:48 +02:00
markqvist
4366e71f34
Merge pull request #272 from VioletEternity/windows
...
Improve Windows compatibility for rnodeconf
2023-05-03 12:26:36 +02:00
Mark Qvist
7e9998b4fd
Use included platform detection method
2023-05-03 12:21:57 +02:00
markqvist
79abe93139
Merge pull request #278 from VioletEternity/windows-so_reuseaddr
...
Use SO_EXCLUSIVEADDRUSE instead of SO_REUSEADDR on Windows
2023-05-03 12:18:49 +02:00
Mark Qvist
d69d4b3920
Fixed firmware extraction for unverifiable devices. Fixes #266 .
2023-05-02 18:10:04 +02:00
Mark Qvist
3300541181
Fixed invalid error code in conditional. Fixes #284 .
2023-05-02 17:45:30 +02:00
Mark Qvist
3848059f19
Only use ifname for link-local discovery scopes. Fixes #283 .
2023-05-02 17:39:06 +02:00
Mark Qvist
30021d89cb
Fixed header bits in get_packed_flags(). Fixes #275 .
2023-05-02 17:33:38 +02:00
Mark Qvist
29019724bd
Added verbosity argument to Reticulum instantiation. Fixes #238 .
2023-05-02 16:42:04 +02:00
Maya
ba7838c04e
Use SO_EXCLUSIVEADDRUSE instead of SO_REUSEADDR on Windows.
...
On Linux, SO_REUSEADDR is used so that a socket in TIME-WAIT state can
be rebound after a listening process is restarted. It does not allow two
processes to listen on the exact same (addr, port) combination. However,
on Windows, it does, and SO_EXCLUSIVEADDRUSE is required to reproduce
the Linux behavior.
Reticulum relies on an error being returned by bind() that reuses
the same (addr, port) combination as another process to detect whether
there is a shared instance already running. Setting SO_EXCLUSIVEADDRUSE
makes this detection process work on Windows as well.
2023-04-19 03:03:15 +01:00
Maya
af16c68e47
Make esptool.py invocation compatible with Windows.
2023-04-13 18:17:14 +01:00
Maya
bda5717051
Use standard Python zipfile module to decompress firmware
2023-04-13 18:10:21 +01:00
Mark Qvist
fac4973329
Fixed potential race condition in announce queue handling for AutoInterface
2023-03-09 18:32:14 +01:00
Mark Qvist
159c7a9a52
Fixed rnstatus JSON output error
2023-03-08 14:10:33 +01:00
Mark Qvist
226004da94
Ignore lo0 in all cases. Fixes #237 .
2023-03-07 16:43:10 +01:00
Aaron Heise
9c9f0a20f9
Handle sequence overflow when checking incoming message
2023-03-04 23:54:07 -06:00
Aaron Heise
6d9d410a70
Address multiple issues with Buffer and Channel
...
- StreamDataMessage now packed by struct rather than umsgpack for a more predictable size
- Added protected variable on LocalInterface to allow tests to simulate a low bandwidth connection
- Retry timer now has exponential backoff and a more sane starting value
- Link proves packet _before_ sending contents to Channel; this should help prevent spurious retries especially on half-duplex links
- Prevent Transport packet filter from filtering out duplicate packets for Channel; handle duplicates in Channel to ensure the packet is reproven (in case the original proof packet was lost)
- Fix up other tests broken by these changes
2023-03-04 23:37:58 -06:00