sl-ios 7f9f159016 fix: resolve all Swift compiler errors and BLE write type mismatch
- BLEManager: fall back to withResponse write when characteristic lacks
  PROPERTY_WRITE_NR (0x4); NimBLE defaults to PROPERTY_WRITE (0x8) only,
  causing iOS to silently drop every withoutResponse write at 5/10 Hz
- BLEManager: scan withServices:nil so NimBLE scan-response UUIDs are found;
  filter by UWB_TAG name prefix in didDiscover
- BLEPackets: remove custom clamping extensions (Int16/Int32/UInt16/UInt8)
  that shadowed Swift.max() with Int16.max inside the extension scope;
  stdlib BinaryInteger.init(clamping:) covers all cases
- BLEStatusView: use explicit Binding(get:set:) for gpsStreamEnabled /
  imuStreamEnabled — SwiftUI cannot synthesize $binding through a let
  computed property backed by a class reference
- SensorManager: fix isRelativeAltitudeAvailable() — it is a class method,
  not an instance method; also fixed inverted double-negative logic

Note for HAL: add NimBLE PROPERTY_WRITE_NR to GPS (abcdef3) and IMU
(abcdef4) characteristics for no-ACK streaming at 5/10 Hz.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 15:48:58 -04:00
2026-04-03 16:46:32 -04:00

saltylab-ios

SaltyBot iOS Companion App (Sul-Tee) — Swift/SwiftUI, sensor streaming for follow-me mode

Description
SaltyBot iOS Companion App (Sul-Tee) — Swift/SwiftUI, sensor streaming for follow-me mode
Readme 233 KiB