Ian McEwen
2a44be9269
Add a bunch more detail to --device-metadata output, from fields we weren't formerly using in the output.
2025-11-20 11:42:57 -07:00
Ian McEwen
e924afd140
Merge branch 'master' into channel-hash-info
2025-11-06 14:51:32 -07:00
SpudGunMan
a17cfe9d2b
rename to generate_channel_hash
2025-11-06 12:01:53 -08:00
SpudGunMan
471e3ce145
generate_hash to util
2025-11-06 12:00:16 -08:00
SpudGunMan
39c9864682
move and rename hash function
...
this function, xor_hash, and a variable for the default key (as bytes, I think, rather than the base64 version) really all belong in meshtastic.util rather than here.
There's multiple forms of hashing in firmware so this should be named to denote that, perhaps channel_hash. If we later want to add the frequency-slot-style hash, better if it's distinguished better from the start.
2025-11-06 11:49:57 -08:00
Niklas Roslund
1d3a7d39f7
Move to_node_num to util and updated function calls
2025-11-06 19:05:34 +01:00
SpudGunMan
f6f1b748dc
hashGen fix
...
using from https://raw.githubusercontent.com/pdxlocations/mudp/refs/heads/main/mudp/encryption.py
@pdxlocations
2025-10-22 14:21:46 -07:00
SpudGunMan
d2d9c03bc8
tidy up the autobot
2025-10-22 14:19:52 -07:00
SpudGunMan
c44f9b1bb4
Add Channel Hash Utility to Node class
...
### Summary
- Added a new method `get_channels_with_hash()` to the `Node` class.
- This method returns a list of dictionaries, each containing the channel index, role, name, and a hash value derived from the channel name and PSK.
- The hash is calculated using the existing `generate_hash` utility, ensuring consistency with other parts of the codebase.
- This utility makes it easier to programmatically access channel metadata, including a unique hash, for scripting, debugging, or integration purposes.
### Motivation
- The protobuf `Channel` objects do not include a hash value by default.
- This addition provides a Pythonic, easy-to-use way to access channel info and a unique hash for each channel, which can be useful for diagnostics, scripting, or UI display.
### Example Usage
```python
channels = node.get_channels_with_hash()
for ch in channels:
print(f"Index {ch['index']}: {ch['role']} name='{ch['name']}' hash={ch['hash']}")
```
### Impact
- No breaking changes; existing APIs and CLI output remain unchanged.
- The new method is additive and can be used where needed for enhanced channel introspection.
2025-10-22 10:42:54 -07:00
Niklas Roslund
43a685f012
cli: notmalize ignore IDs for dec, hex and 0x. support YAML [] clear
...
Signed-off-by: Niklas Roslund <nroslund@kth.se >
2025-10-05 12:55:59 +02:00
Ian McEwen
14ff3eb9c4
Merge branch 'master' into loggingHandler2
2025-09-18 09:26:32 -07:00
pdxlocations
7e3d347b63
remove trailing whitespaces
2025-08-29 23:19:22 -07:00
pdxlocations
c6efccdbd2
init
2025-08-29 23:11:26 -07:00
shukari
db1891b651
Added Logging Handler Names
2025-08-06 18:21:32 +02:00
Ian McEwen
fcdd83838b
Merge pull request #795 from pdxlocations/canned-config
...
Add Ringtone and Canned Messages to --export-config and --configure
2025-07-22 17:22:11 -07:00
pdxlocations
ce7c61861f
Merge branch 'master' into is-unmessageable
2025-07-22 10:15:19 -07:00
pdxlocations
84417f0bb1
working export-config
2025-06-23 22:39:24 -07:00
pdxlocations
22b3062151
remove whitespace
2025-06-23 16:37:49 -07:00
pdxlocations
373b8a3139
combine with set_owner handling
2025-06-23 16:14:59 -07:00
pdxlocations
8752a0de6e
remove whitespace
2025-06-21 16:25:48 -07:00
pdxlocations
7160e79fbf
more not incorrect spelling
2025-06-21 13:51:58 -07:00
pdxlocations
1b5b07e752
add --set-is-unmessageable
2025-06-21 13:44:25 -07:00
Crank-Git
23be2d2189
Add validation/prevent --set-owner, --set-owner-short, and --set-ham from accepting empty or whitespace-only names. This is in relation to meshtastic#6867 firmware feature request https://github.com/meshtastic/firmware/issues/6867
2025-06-08 18:16:49 -04:00
Ian McEwen
622a435465
Add __repr__ methods to interface types and Node, for nicer printing/logging
2025-05-08 21:23:00 -07:00
Ian McEwen
4668852b0b
Admin messages should be requesting acknowledgements
2025-05-08 15:22:27 -07:00
Ian McEwen
f41ef042a9
Merge pull request #708 from mikeymakesit/add-channel
...
Add new channels from an add URL with the new --ch-add-url option
2025-02-19 10:18:09 -07:00
Ian McEwen
84bec5a7c4
fix up misc. lint/type/test issues, streamline, align argument names and groupings
2025-02-19 10:15:27 -07:00
Ian McEwen
4b6d7a8587
Support setting nodes ignored in nodedb (with 2.5.13+ firmware)
2024-12-21 13:46:17 -07:00
Eric Severance
18ac0d6d5c
Support setting/removing nodes as favorites
2024-12-17 17:38:51 -08:00
Mike Hornung
579383cd5a
Add new channels from an add URL with the new --ch-add-url option
2024-12-01 23:33:47 -08:00
Eric Swanson
073274cb00
Add missing camel to snake conversion
2024-10-21 22:06:43 -04:00
Ian McEwen
27729995d2
Default to pkiEncrypted always on for admin messages
2024-09-28 11:13:04 -07:00
Ian McEwen
40019a9712
Add a --set-time command that set's the node time using a provided timestamp or the host system clock.
2024-09-22 09:32:04 -07:00
DJ Holt
9949d144a1
Enable setting and removing fixed position via remote admin
2024-09-19 02:39:49 -06:00
Derek Arnold
1967519deb
correct type issue during initial assignment
2024-09-15 11:52:27 -05:00
Derek Arnold
662aea049a
Merge branch 'master' into remote-admin-retry
2024-09-15 11:46:32 -05:00
Ian McEwen
cc2067b729
clean up settings response to use CopyFrom to be better at repeated and nested fields
2024-09-11 17:10:04 -07:00
Ian McEwen
21ff4a1a4a
Split factory reset into two variants
2024-09-11 09:40:26 -07:00
Ian McEwen
399dd477b8
Merge branch 'master' into 2.5
2024-09-05 14:00:35 -07:00
Ian McEwen
17f3605736
Ensure set-owner combined with set-owner-short sets both values
2024-09-05 13:58:02 -07:00
Derek Arnold
3811226a61
add a configurable timeout
2024-09-03 22:12:03 -05:00
Derek Arnold
9612aea9b9
Add in a retry mechanism for channel settings
...
Attempts multiple times to fetch things over the admin channel
before giving up.
2024-09-03 21:58:16 -05:00
Ian McEwen
e7ed254d9d
appease pylint, tests, mypy
2024-08-24 22:00:29 -07:00
Ian McEwen
dfa29bbb7c
Add ensureSessionKey to setURL and setFixedPosition calls
2024-08-24 21:50:44 -07:00
Jonathan Bennett
a9e2168f1d
Refactor to add ensureSessionKey function
2024-08-24 20:18:57 -05:00
Jonathan Bennett
4cc283d004
Add the admin sessionkey_only request
2024-08-24 17:27:42 -05:00
Ian McEwen
bc508ff9e6
cleanup admin stuff a little
2024-08-24 14:15:37 -07:00
Jonathan Bennett
78399503c5
Adds handlers to get and set admin session_key for remote admin
2024-08-24 15:32:44 -05:00
Ian McEwen
58466f2ab7
Add wiring for security config in node.py
2024-08-21 22:11:45 -07:00
Ian McEwen
15b03b704c
Correctly detect LocalConfig vs. LocalModuleConfig, again. fixes #630
2024-07-03 20:35:58 -07:00