callebtc and GitHub
bc14b9f179
Periodidc broadcast announce ( #183 )
...
* noise: send nonce
* periodidc broadcast announce
2025-07-25 01:38:53 +02:00
callebtc and GitHub
c3c395832c
Implement Noise XX Handshake Protocol for Direct Messages ( #180 )
...
* noise
* works?
* noise
* temporary
* better
* wip: use subnet
* better
* barely working
* werk
* subnet
* fix peer ID
* 8 byte peer ID
* wip noise
* wip fixes for noise
* std lib for noise
* noise handshake one step further
* buffers
* use fork
* fix imports
* simplify counter
* remove trash
* hashing
* no prologue
* nice
* wip, use noise encryption
* peer ID hex
* simplify session manager
* heavy logging
* use singleton
* Fix Noise session race condition with elegant per-peer actor serialization
- Use Kotlin coroutine actors for per-peer packet processing
- Each peer gets dedicated actor that processes packets sequentially
- Eliminates race conditions in session management without complex locking
- Single surgical change in PacketProcessor - minimal, maintainable
- Leverages Kotlin's native concurrency primitives
* decrypt correctly
* iniator works now
* clean code and fix signature to null
* better
* no signature in private message
* small fixes
* refactor ack
* refactor but untested
* messages working
* wip ack
* wip fix ack
* more logging
* pending tracker
* keep pending connections on errors
* less logging
* refactor model
* refactor frombinarydata
* idendityannouncement refactor and update to new binary protocol
* fix keys
* refix keys
* dms work
* revert to mainnet
* do not change bluetooth adapter name
* keep code but uncomment
* clean up comments
* cleanup comments
2025-07-24 12:01:46 +02:00
callebtc
193918d81a
track rssi correctly
2025-07-14 00:13:45 +02:00
callebtc
f9a639af2d
Merge branch 'main' into fix/android-ios-fragmentation-compatibility
2025-07-13 23:18:00 +02:00
callebtc
0e2614d3eb
fix build
2025-07-13 22:52:50 +02:00
callebtc
362f9b0ff2
log
2025-07-13 22:39:41 +02:00
callebtc
cac3b9ec6c
better logging of device id
2025-07-13 22:18:31 +02:00
callebtc and GitHub
d25d3bf991
Merge branch 'main' into fix/android-ios-fragmentation-compatibility
2025-07-13 21:25:11 +02:00
callebtc
887ca0119e
Merge branch 'main' into adjust-scan-intervals
2025-07-13 19:43:58 +02:00
callebtc
2cf6bf19b1
Merge branch 'main' into routingOpt
2025-07-13 17:20:49 +02:00
callebtc
2a0f84b53b
adjust scan intervals and reduce logging
2025-07-13 17:16:31 +02:00
callebtc
035273011f
fix startup
2025-07-12 15:42:37 +02:00
GUVWAF
d1085fde0b
Cheap routing optimizations
...
- Don't relay back to sender or relayer
- Only send to connected device if recipientID matches one
- Don't relay our own ACK/read receipt
2025-07-12 13:18:09 +02:00
callebtc
e58cf4fd0d
fix null pointer
2025-07-12 12:53:01 +02:00
ShilohEye
33d273f268
Fix Android fragmentation for iOS/Rust compatibility
...
- Changed MAX_FRAGMENT_SIZE from 500 to 150 bytes to match iOS/Rust
- Fixed fragment ID generation to use 8 random bytes instead of string
- Implemented automatic fragmentation in BluetoothConnectionManager
- Added 20ms delay between fragments to match iOS/Rust implementation
- Updated fragment calculation to account for full packet overhead (34 bytes)
This ensures Android-generated fragments fit within iOS's default 185-byte BLE MTU,
fixing issues with commands like ?ls -la and ?ifconfig failing on iOS devices.
2025-07-10 19:25:52 -04:00
callebtc
b6f281275a
fixed
2025-07-09 21:51:04 +02:00
callebtc
dd8aa083b9
power saving
2025-07-09 15:47:54 +02:00
callebtc
d962ed8ccb
logging
2025-07-09 15:04:43 +02:00
callebtc
849b0845c4
MAJOR REFACTOR: Replace monolithic BluetoothMeshService with component-based architecture
...
✅ SUCCESSFULLY REFACTORED BluetoothMeshService.kt:
- Original: ~1000+ lines monolithic service
- New: 522 lines coordinator + 7 focused components
🏗️ ARCHITECTURE:
- **BluetoothMeshService**: Main coordinator (522 lines)
- **PeerManager**: Lifecycle & RSSI tracking (161 lines)
- **FragmentManager**: Message fragmentation (194 lines)
- **SecurityManager**: Security & encryption (236 lines)
- **StoreForwardManager**: Offline caching (295 lines)
- **MessageHandler**: Message processing (284 lines)
- **BluetoothConnectionManager**: BLE operations (611 lines)
- **PacketProcessor**: Packet routing (108 lines)
✅ MAINTAINED COMPATIBILITY:
- Exact same public API (ChatViewModel unchanged)
- 100% iOS protocol compatibility
- Same UUIDs, packet format, timing
- All existing functionality preserved
🎯 BENEFITS ACHIEVED:
- Better separation of concerns
- Easier unit testing (each component isolated)
- Improved maintainability and debugging
- Cleaner code structure
- Future extensibility
✅ BUILD STATUS: Compiles successfully with zero errors!
2025-07-08 23:46:59 +02:00
callebtc
d6a4e122b4
init
2025-07-08 20:37:46 +02:00