Skip to content

Create a file transfer util using Flutter for waypoint mission file copy#793

Open
spwoodcock wants to merge 3 commits intodevfrom
feat/file-transfer-util
Open

Create a file transfer util using Flutter for waypoint mission file copy#793
spwoodcock wants to merge 3 commits intodevfrom
feat/file-transfer-util

Conversation

@spwoodcock
Copy link
Copy Markdown
Member

@spwoodcock spwoodcock commented Apr 18, 2026

What type of PR is this? (check all applicable)

  • 🍕 Feature
  • 🐛 Bug Fix
  • 📝 Documentation
  • 🧑‍💻 Refactor
  • ✅ Test
  • 🤖 Build or CI
  • ❓ Other (please specify)

Related Issue

Fixes #615
Fixes #769

Describe this PR

  • See plan.md in this PR for full context.
  • This is a prototype / demo to test out the functionality proposed.
  • The current mobile app isn't working well for people - I wonder if this improves things.
  • The context for Flutter is explained in the issue: would be great to have Android / iOS working for this.
  • I haven't used Flutter much, hence just letting an LLM just give this a crack first...

Test APK here:
dronetm-transfer.zip

AI Tool Usage

  • No AI tools were used
  • AI tools were used (complete below)

If AI-assisted:

  • Tool(s) used: Opus 4.6 LLM
  • What was generated: all of the code in this PR - it's a test / prototype
  • What you reviewed and changed: Added the build script after

Review Guide

  • Run build.sh to reproduce the APK.
  • Install and test it!
  • I don't have an RC2 controller to test this unfortunately 😢

Alternatives considered

  • Fixing the dronetm-mobile app for people.
  • The plan.md file here has a good analysis of what might be going wrong for them.

Checklist

  • I have read the Contributing Guide
  • I have read the Code of Conduct
  • PR is focused and small
  • Tests are included or updated
  • I understand all code in this PR and can answer questions about it
  • No secrets, credentials, or sensitive data are included
  • Commit messages are descriptive
  • Related docs and screenshots are updated

[optional] What gif best describes this PR or how it makes you feel?

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 18, 2026

All contributors have signed the CLA ✍️ ✅
Posted by the CLA Assistant Lite bot.

@github-actions github-actions Bot added enhancement New feature or request backend Related to backend code labels Apr 18, 2026
@spwoodcock spwoodcock requested a review from zestyping April 18, 2026 21:55
@spwoodcock
Copy link
Copy Markdown
Member Author

I have read the CONTRIBUTING.md document and I hereby sign and agree with the guidelines

github-actions Bot added a commit that referenced this pull request Apr 18, 2026
@spwoodcock
Copy link
Copy Markdown
Member Author

@zestyping are you able to test the attached apk with the DJI RC2 controller? 🙏

signal-2026-04-18-231647

@zestyping
Copy link
Copy Markdown
Contributor

zestyping commented May 6, 2026

@spwoodcock Tested this with my Samsung Galaxy S20 and DJI RC2 controller. Sorry for the delay!

I have some good news and bad news. Overall, I think this is positive in that the devices actually connect! There are probably just some small fixes needed to make it work, and maybe UI tweaks to make the experience smoother.

Good news

The app was able to detect and connect to the controller!

Notes:

1. Connecting to the device produced 3 notifications, including the error "High-power USB device connected"

2. I assumed that I needed to tap the "Charging" notification and switch it over to media transfer mode. When I tapped the notification, I discovered that the mode couldn't be changed, presumably because I first had to switch my phone to become the host. I tried to switch control over to my phone, but that failed with the message "Couldn't switch". But messing with these settings was unnecessary.

3. I had to tap the circular refresh arrow in the app to make the controller show up. (I didn't know I had to do this, which is why I went hunting for USB settings to change. But once I did, the controller was detected.) Then I tapped the Connect button, granted permission, and it connected!

Bad news

The folder detection seems weird, and I can't find the uploaded file on the controller.

1. The dates on the detected folders are off.

2. The app shows 4 folders, including two with strange names: "map_preview" and "capability".

3. On the controller, when I turn on waypoint mode and tap the little document/notepad icon, I see these two flight plans. After I tap "Transfer to Controller", the app shows a green checkmark of success! But this screen on the controller is unchanged; the existing flight plans haven't been replaced, and I don't see any new flight plans, even if I exit waypoint mode and come back. I tried replacing all 4 missions, and there is no visible effect on the controller.

Minor notes

1. The text in the USB status box at the top is either grey on grey, orange on grey, or red on grey, all quite hard to read.

2. When I tap the "Transfer to Controller" button, it is replaced by a success message, but I can't read it because it's taller and the screen hasn't scrolled.

3. Each time I attempt a transfer, the app resets to back to this beginning (disconnected) state, so I have to connect again and select my file again before I can attempt the transfer again.

4. When I disconnect the USB cable, the app doesn't notice; it still thinks it's connected. Then if I do anything, I get an error message in the top box.

@zestyping
Copy link
Copy Markdown
Contributor

zestyping commented May 6, 2026

Actually the behaviour is rather variable. I'm no longer sure that tapping the refresh arrow was what made the app detect the controller.

Here's a screen recording to show some of the strange behaviour (turn sound on for narration).

Screen_Recording_20260506_220643.mp4

@spwoodcock
Copy link
Copy Markdown
Member Author

This is so useful, thank you!!

Really appreciate you spending the time 🙏

I'll do some follow up & try and test this for the Potensic too. Let's see if we can make it work

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backend Related to backend code enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Unable to open Drone TM app in Android device Create a transfer-util Flutter mobile app for loading flightplans on drones

2 participants