1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-11-30 08:24:11 +01:00
Commit Graph

207 Commits

Author SHA1 Message Date
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
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
James Cotton
0f0e5faba0 AndroidGCS: Update objects to match next 2012-08-06 17:01:59 -05:00
James Cotton
19b5cf4616 AndroidGCS: In the SystemAlarms display rank fields by alarm severity. Also
make hte fake telemetry object generate alarms.
2012-08-06 16:55:02 -05:00
James Cotton
a3038af4ad AndroidGCS: An ugly system alarms gadget that lists all the alarm values 2012-08-06 16:55:02 -05:00
James Cotton
3eb84e188e AndroidGCS: Revert a line of c24164d661 which will probably
bring back a memory leak but stops crashing when you reopen the same activity

Bug introduced here again!
2012-08-06 16:55:02 -05:00
James Cotton
f3dd96ed1d AndroidGCS: Add a telemetry monitor to the action bar that shows the TX/RX data
rate.  Right now seem to have a bug when going into the same widget twice it
crashes teh second time.
2012-08-06 16:55:02 -05:00
James Cotton
578689748b AndroidGCS: Artwork for a telemetry monitor in the action bar 2012-08-06 16:55:02 -05:00
James Cotton
0601fd8b33 AndroidGCS: Add a launcher icon for the SystemAlarms gadget 2012-08-06 16:55:01 -05:00
James Cotton
a5933b7af5 AndroidGCS: Logger now displays the number of bytes and objects logged. 2012-08-06 16:55:01 -05:00
James Cotton
01a8c4a7e1 AndroidGCS: Write logging in the format consistent with how we record on the
ground station and can parse from matlab.
2012-08-06 16:55:01 -05:00
James Cotton
eb13db4126 AndroidGCS: Get the logger writing a list of updated objects 2012-08-06 16:55:01 -05:00
James Cotton
f986a83ef6 AndroidGCS: Unregister from the broadcast receiver when destroying
ObjectManagerActivity.
2012-08-06 16:55:01 -05:00
James Cotton
c9124d5676 AndroidGCS: Class to facilitate selecting a bluetooth device in the preferences
pane
2012-08-06 16:55:01 -05:00
James Cotton
0274c8c860 AndroidGCS: Check in the stubs for a logging activity which will eventually
move into the service and this will become the control interface.
2012-08-06 16:55:01 -05:00
James Cotton
51765f4033 AndroidGCS: Missed some map icons 2012-08-06 16:55:01 -05:00
James Cotton
13392d0f20 AndroidGCS: Get rid of remaining warnings 2012-08-06 16:55:00 -05:00
James Cotton
7a214dc6cb AndroidGCS: Clean up some warnings in UAVO templates 2012-08-06 16:55:00 -05:00
James Cotton
3f881454da AndroidGCS: Update preferences to the new Fragment API 2012-08-06 16:55:00 -05:00
James Cotton
e80aad99c0 AndroidGCS: Correct the equation for converting PositionActual (NED) to world
coordinates
2012-08-06 16:55:00 -05:00
James Cotton
d18b3bbbf6 AndroidGCS: Add the device location to the map overlay. Improve the icons for
the UAV and home location.
2012-08-06 16:55:00 -05:00
James Cotton
bebeb78a06 AndroidGCS: Update the API key for my debugging key. I guess everyone testing
will need to merge in their own key for hte location engine.
2012-08-06 16:55:00 -05:00
James Cotton
4997f1198c AndroidGCS: As soon as the controller is released set the throttle to -1 2012-08-06 16:55:00 -05:00
James Cotton
b1780701d7 AndroidGCS: Use a timer when computing the update time for GCSTelemetryStats 2012-08-06 16:54:59 -05:00
James Cotton
e359b96b09 AndroidGCS: After terminating the telemetry connection make sure to close the
TCP socket or the android system will keep it active and block reconnections.
2012-08-06 16:54:59 -05:00
James Cotton
5670a958a8 AndroidGCS: Propagate the exceptions from the low level UAVTalk methods up to
the high level monitoring so it knows when the connection has been terminated.
2012-08-06 16:54:59 -05:00
James Cotton
4c1171e1fb AndroidGCS: Joystick can now control UAV 2012-08-06 16:54:59 -05:00
James Cotton
6ff3378dbe AndroidGCS: Add load button to the object browser. 2012-08-06 16:54:59 -05:00
James Cotton
87f6700d74 AndroidGCS: Respond to the virtual pad movements and stop transmitting updates
when they are released.
2012-08-06 16:54:59 -05:00
James Cotton
8b26696e77 Fixup: Correct typo in controller 2012-08-06 16:54:59 -05:00
James Cotton
48701f3252 Fixup: Make browser use a smaller column width for the list of objects than
their contents
2012-08-06 16:54:59 -05:00
James Cotton
cc1d44b49b Fixup: Typo in disconnected 2012-08-06 16:54:58 -05:00
James Cotton
91bd93798d AndroidGCS: UAVO browser requests an update when it displays objects to make
sure they are current.  For some reason some settings aren't properly getting
initialized on connection.
2012-08-06 16:54:58 -05:00
James Cotton
eb98baa6cd AndroidGCS: Cleanup for some debugging output in telemetry. Make
uppdateRequested() a public method so anything can request a UAVO update.
2012-08-06 16:54:58 -05:00
James Cotton
410aec8c94 AndroidGCS: Controller gadget that uses virtual joypad to control UAV 2012-08-06 16:54:58 -05:00
James Cotton
8982765307 AndroidGCS: Clean up start page and improve the icons. 2012-08-06 16:54:58 -05:00
James Cotton
ee54ca47f4 AndroidGCS: Fix the getDouble() method for enum fields and make the UAVO
browser properly initialize enums in editing mode
2012-08-06 16:54:58 -05:00
James Cotton
f04930b8cf AndroidGCS: Clean up messaging from TelemetryService 2012-08-06 16:54:58 -05:00
James Cotton
91b2d667c1 AndroidGCS: Hardcode some dimensions on the editor dialog so the keyboard fits
more nicely with it.
2012-08-06 16:54:58 -05:00
James Cotton
bfdb5749b3 Fixup: Lower the debugging output for uavtalk 2012-08-06 16:54:57 -05:00
James Cotton
31793093c6 AndroidGCS: Updating and saving objects now works. 2012-08-06 16:54:57 -05:00
James Cotton
a067c0b0de AndroidGCS: Make sure the rest of the UAVO IDs are working as positive long
values instead of ints.
2012-08-06 16:54:57 -05:00
James Cotton
fc7e9d2b2b AndroidGCS: Change the UAVO generation to suppress warnings 2012-08-06 16:54:57 -05:00
James Cotton
ae40f88600 AndroidGCS: Convert UAVObject IDs to longs from ints because they are meant to
be unsigned uint32 which is unsupported by java.
2012-08-06 16:54:57 -05:00
James Cotton
9ded1bb9fb AndroidGCS: Suppress some debugging information from telemetry 2012-08-06 16:54:57 -05:00
James Cotton
3a3ac552da AndroidGCS: Refine the graphics of the object editor 2012-08-06 16:54:57 -05:00
James Cotton
0348a8921e AndroidGCS: Output all fields from the UAVObjects 2012-08-06 16:54:56 -05:00
James Cotton
b7cd02c9bf AndroidGCS: Refactor the UAVO browser to use a split view - objects names on
the side and content on the other side.  Add a filter for settings versus data.
2012-08-06 16:54:56 -05:00
James Cotton
bf93435322 Check in a joystick gadget class 2012-08-06 16:54:56 -05:00
James Cotton
a44e84ff9b Update the sdk version 2012-08-06 16:54:56 -05:00
James Cotton
20b585383d Make port and bluetooth adapter be listed in the preferences. Using the BT
adapter not working yet.
2012-08-06 16:54:56 -05:00
James Cotton
45f4ae0701 Allow selecting the IP address from the preferences 2012-08-06 16:54:56 -05:00
James Cotton
65861b4b8d Update the UAVO files 2012-08-06 16:54:56 -05:00
James Cotton
95218802da Catch invalid number decoding to cover cases where there is no IP address. 2012-08-06 16:54:56 -05:00
James Cotton
32ec48412d Forgot to initialize the fields for metadata 2012-08-06 16:54:56 -05:00