Skip to content

DimaRU/TridentCockpit

Repository files navigation

Build

Trident Cockpit is an alternative iOS/iPadOS/macOS control app for the Sofar Trident Underwater Drone.

iPhone screenshot


Features

  • Controls the Trident Underwater Drone by Sofar Ocean
  • Watch live video stream from the drone
  • Gamepad control
  • Keyboard and touch/mouse control
  • Controls camera, light, stabilization
  • Recording pilot video stream
  • GPS geotagging pilot video
  • Realtime drone orientation view
  • Show depth, temperature, camera and battery times
  • Past dives video from drone: watch, download and delete
  • Recovery broken past dives videos
  • Show maintenance data: internal pressure, internal temperature, battery cycle count
  • Support payload connection and control. (now GoPro HERO 3/3+)

Payload control:

GoPro HERO 3/3+

  • Control camera power
  • Camera recording control
  • Live preview
  • Show battery level
  • Show recording time left

Supported gamepads

  • Xbox Wireless Controller
  • DualShock 4
  • Any MFi certified gamepad

Keyboard Shortcuts

Moton control

Shortcut Description
Up Arrow Forward
Down Arrow Backward
Left Arrow Turn Left (rotate counterclockwise)
Right Arrow Turn Right (rotate clockwise)
W Tilt Down
E Tilt Up

Motor speed modifiers

Shortcut Description
without modifiers 10% of motor speed
Option + (WE) 25% of motor speed
Shift + (WE) 50% of motor speed
⇧+⌥ Shift+Option + (WE) 100% of motor speed

Support the project

If you’re benefiting from my project, or simply like what I do, you can help me by donating some amount onetime or each month. Supporting me on Patreon will help pay for hardware needed for further development. The money received will go towards:

  • Buy a GoPro Max 360 for support latest GoPro models in the app.
  • Buy an iPad to speed up iPad version testing.

With Patreon, you can send me a small monthly amount of money, or make a one-time donation by canceling the monthly subscription after the first payment.

Building from Source

For build instructions please check out build.yml, which should be up-to-date at all times.

Dependencies

  • Eprosima Fast RTPS - implementation of the OMG RTPS protocol. Modified version based on Eprosima Fast RTPS.
  • Foonathan memory - Memory allocator for Fast RTPS. Modified version for iOS comparability.
  • FastRTPSBridge - A Swift wrapper for FastRTPS library
  • CDRCodable - Swift Codable serialization/deserialization framework for Common Data Representation (CDR) binary format.
  • Shout - A Swift SSH framework that wraps libssh2. Modified version.
  • BlueSocket - Socket framework for Swift using the Swift Package Manager. Modified version based on IBM BlueSocket.
  • Moya - Network abstraction layer written in Swift.
  • PromiseKit - Promises for Swift & ObjC.
  • Kingfisher - A lightweight, pure-Swift library for downloading and caching images from the web.
  • PWSwitch - Highly customizable UISwitch built with CALayers and CAAnimations. Modified version.
  • LinearProgressBar - Simple progress bar for iOS.
  • CameraButton - A button that behave the same way as the video camera button in the iOS camera. Modified version.
  • UICircularProgressRing - A circular progress bar for iOS written in Swift.
  • Untrunc - Restore a truncated mp4. Embedded version for Trident Cockpit iOS/macOS.
  • HaishinKit.swift - RTMP streaming library for iOS, macOS, tvOS.

Author

Dmitriy Borovikov - DimaRU, AOWD diver, iOS developer, Openrov Trident Kickstarter backer #1284

License

This project is licensed under the MIT License - see the LICENSE file for details

Credits

Thanks to Jim N. for "Software Exploration - DDS and the Trident" series of posts on Openrov forum

Disclaimer

This project is unofficial (meaning not supported by or affiliated with Sofar Ocean). Use it at your own risk.