1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-12-01 09:24:10 +01:00
Commit Graph

5802 Commits

Author SHA1 Message Date
James Cotton
d5c1e3578e AndroidGCS HID: Remove more locks to try and prevent HID deadlocking 2012-08-16 03:44:10 -05:00
James Cotton
f96b419a85 AndroidGCS: Add a toast message when connected (all objects downloaded) 2012-08-16 03:44:10 -05:00
James Cotton
53d4d8b507 AndroidGCS HID: Use the dettached message to shut down HID telemetry properly 2012-08-16 03:44:10 -05:00
James Cotton
5e163861a4 AndroidGCS HID: Go back to a read and write thread but now use synchronous
bultTransfer for write which gets rid of the segfaults with running two
asynchronous transfers.
2012-08-16 03:44:10 -05:00
James Cotton
785cda8052 AndroidGCS: Add back a few synchronize blocks in telemetry to avoid removing
elements twice.
2012-08-16 03:43:29 -05:00
James Cotton
335ccc54a3 AndroidGCS Controller: Make sure to remove the callback on manual control
settings before updating it.
2012-08-16 03:43:28 -05:00
James Cotton
75ce520503 Make sure the USB scheduling is thread safe. 2012-08-16 03:43:28 -05:00
James Cotton
69fbefee85 HID: Since there is only one usb device connection queue read and write events
onto that single connection and wait for either.
2012-08-16 03:43:28 -05:00
James Cotton
6b4a14fa87 Remove legacy code for supporting two USB interfaces 2012-08-16 03:43:28 -05:00
James Cotton
050ec8096b HID: move all the variables to the top 2012-08-16 03:43:28 -05:00
James Cotton
f8ba049d56 AndroidGCS: In the telemetry class use a thread safe queue for transations and
removed the synhronized blocks to prevent deadlocks.
2012-08-16 03:43:28 -05:00
James Cotton
405c5a60f0 AndroidGCS: Cleanup of the HID telemetry code 2012-08-16 03:43:27 -05:00
James Cotton
3d34a5d280 AndrodGCS: Correctly check HID packet format 2012-08-16 03:43:27 -05:00
James Cotton
5fa36ddd5c AndroidGCS: Make sure not to try and get interface to expired telemetry 2012-08-16 03:43:27 -05:00
James Cotton
90779506be AndroidGCS: Refactor TCP and HID onto a common TelemTask class which handles
most of the logic of setting up the UAVTalk, ObjectMangager, Telemetry and
TelemetryMonitor classes.  Provides a cleaner shutdown too.
2012-08-16 03:43:10 -05:00
James Cotton
4eb846ba93 AndroidGCS: Get HID working properly for PipX 2012-08-16 03:43:10 -05:00
James Cotton
dc90210cfa AndroidGCS: Add support for HID to AndroidGCS 2012-08-16 03:43:10 -05:00
James Cotton
cab661e94b AndroidGCS: Update the controller gadget to the newer style updates 2012-08-10 16:16:39 -05:00
James Cotton
9985910969 AndroidGCS TelemetryMonitor: Now that transactions are working more reliably we
can emit the connected signal at the end of fetching all the objects.
2012-08-10 16:11:20 -05:00
James Cotton
38117f6e69 AndroidGCS Telemetry: Telemetry no longer enqueues identical object
transactions multiple times so only the most recent will occur.  Since it
doesn't enqueue the data the end behavior to the UAV should be identical.

Also renamed processObjectUpdates to enqueueObjectUpdates to make it more
intuitive.
2012-08-10 15:58:52 -05:00
James Cotton
1d361a53cd AndroidGCS Telemetry: Make sure when telemetry changes settings it removes it's
listeners before adding more
2012-08-10 15:27:43 -05:00
James Cotton
de26c3297e AndroidGCS Telemetry: Get rid of a tier of redirection through annoymous
classes that was legacy from the GCS port.
2012-08-10 15:22:56 -05:00
James Cotton
6ebf4fe87c AndroidGCS UAVTalk: Pretty thorough clean up focused on how transactions are
handled at the UAVTalk level where there can only be one pending transaction on
the wire.
2012-08-10 14:18:41 -05:00
James Cotton
6b9b49734e Check there is an active telemetry before trying to disconnect it 2012-08-10 10:21:28 -05:00
James Cotton
29d5365f0a AndroidGCS: More refactoring of ObjectManagerActivity. Now the updates are
disconnected on pause and reestabilished on resume.  This only happens within
an onConnected/onDisconnected life cycle.
2012-08-10 10:04:22 -05:00
James Cotton
176922f41c AndroidGCS: Also make the map disconnect its listeners. 2012-08-10 10:04:17 -05:00
James Cotton
749d695f4d AndroidGCS: ObjectManagerActivity maintains a list of objects it is getting
updates from and disconnects them on onStop().  This should probably move to
onPause / onResume
2012-08-10 10:04:11 -05:00
James Cotton
1b8db4eeec AndroidGCS: When priority transmit queue is full this is not a reason to crash. 2012-08-10 02:18:30 -05:00
James Cotton
4bcac07c8c AndroidGCS: Because right now the object updated callbacks are not diconnected
when an activity goes away we need to check the view is valid when processing
the object callbacks.
2012-08-10 02:17:13 -05:00
James Cotton
92209f8e42 AndroidGCS bugfix: Missed a break in a case statement. 2012-08-10 02:17:13 -05:00
James Cotton
5eabb1777d AndroidGCS: Whitespace fixing for TelemetryMonitor 2012-08-10 02:17:12 -05:00
James Cotton
78469aa6a4 AndroidGCS: Use a WeakReference to stop the OPTelemetryService handle leaking. 2012-08-10 02:17:12 -05:00
James Cotton
37c4880fba AndroidGCS: Unregister the activity broadcast receiver onStop(). Create it
onStart() instead.
2012-08-10 02:15:38 -05:00
James Cotton
57b91b7763 AndroidGCS: UAVTalk no longer extends Observable since there is only one
listener anyway we use a setListener pattern.
2012-08-10 02:15:37 -05:00
James Cotton
f13f977177 Fix: Revert change to ObjectBrowser 2012-08-10 02:15:37 -05:00
James Cotton
7a42c7b10e AndroidGCS: Start supporting NAK and having uavTalk emit a transaction failed
and succeeded call.  Had to change the mask on the AndroidGCS side to match the
FC side.
2012-08-10 02:15:37 -05:00
James Cotton
1740bef847 AndroidGCS: Delete zip file of android icons 2012-08-08 14:25:52 -05:00
James Cotton
41a46258be AndroidGCS: Change Sambas to not crash in AVD for bluetooth or if there are no
devices.
2012-08-08 13:43:09 -05:00
James Cotton
dd0a5b2cf2 AndroidGCS: Make home page buttons more vertical to work better on phones.
Maybe someone could make these automatically space out?
2012-08-08 13:17:30 -05:00
James Cotton
11a08c186c AndroidGCS: Refactor the Fragments into their own package to keep the UI
"components" segregated.  Is this good practice though?  It means making a lot
of functions for the API between ObjectManagerActivity and Fragment public.
2012-08-08 13:14:38 -05:00
James Cotton
95dfc88f95 AndroidGCS: Move the PFD functionality into a fragment and then
programmatically instantiate that from the test PFD activity
2012-08-08 13:14:01 -05:00
James Cotton
ce52b4d199 AndroidGCS: Get telemetry service working again properly when in multiple
packages.  Have to declare the full service name in AndroidManifest.xml which
seems not ideal.
2012-08-08 13:08:19 -05:00
James Cotton
ae36f39f1a AndroidGCS: Show some less shitty graphics for PFD 2012-08-08 12:20:29 -05:00
James Cotton
2e554ebf8e AndroidGCS: Move down some of the debugging output 2012-08-08 10:07:03 -05:00
James Cotton
ddb197a15d AndroidGCS: Move the telemetry functionality into its own package 2012-08-08 10:04:52 -05:00
James Cotton
07074ef41e AndroidGCS: Add copyright header of the other files 2012-08-08 09:22:09 -05:00
James Cotton
dc6b3af707 AndroidGCS: Add copyright headers to the UAVTalk/UAVObject/Telemetry implementations. 2012-08-08 09:06:31 -05:00
James Cotton
2008486922 AndroidGCS: Remove unused file 2012-08-08 09:00:31 -05:00
James Cotton
babe4d9f0e AndroidGCS: Make the fragment object updated callbacks register in the main
activity method and use the main activity handler to consolidate things into
one place.
2012-08-08 08:55:58 -05:00
James Cotton
6bed9fcb3c AndroidGCS: Create a fragment API.
The ObjectManagerFragment will automatically registers against the
activity to be notified when an onOPConnected or onOPDisconnected method
occurs.  The Fragment API also duplicates the registerObjectUpdates(UAVObject)
method from ObjectManagerActivity so that it's objectUpdated() method is called
whenever and using the appropriate UI thread.
2012-08-08 08:37:35 -05:00