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

258 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
James Cotton
9960411ead Finish porting the meta data changes from GCS and update all the UAVOs 2012-08-06 16:54:55 -05:00
James Cotton
c736488c3b First step to fixing metat data representation for android 2012-08-06 16:54:55 -05:00
James Cotton
cd89d97bbb Lower all the debugging levels again 2012-08-06 16:54:55 -05:00
James Cotton
0e6cffaaf6 Update fake telemetry object 2012-08-06 16:54:55 -05:00
James Cotton
902dbd9269 Update objects and delete old UAVObjects 2012-08-06 16:54:55 -05:00
James Cotton
2257bc5953 Fix an insidious bug in the Android UAVObjectField unpack method for enums that
was exposed by shuffling field orders.  There goes 5 hours, FML.
2012-08-06 16:54:55 -05:00
James Cotton
9d7c15fb7f Enable some debugging statements 2012-08-06 16:54:55 -05:00
James Cotton
c1c12ed57e Add TCP UAVTalk interface for android 2012-08-06 16:54:54 -05:00
James Cotton
92764ebc67 Small upgrades to teh android install 2012-08-06 16:54:54 -05:00
James Cotton
e1ba3d2e63 Update the UAVObjects to the version on next. At some point a make script
should generate these and copy from build/uavobjects-synth/java to this
directory automatically.

Also make sure java objects use CamelCase
2012-08-06 16:54:54 -05:00
James Cotton
b654d68ee6 Cleaner editor interface 2012-08-06 16:54:54 -05:00
James Cotton
dadcb39396 Few tweaks and suppress some warnings 2012-08-06 16:54:54 -05:00
James Cotton
2139954e49 Added location feature and made fake stream create movement 2012-08-06 16:54:54 -05:00
James Cotton
c8c7323ab7 Make auto starting work. For now removed support for standalone service but
easy to add back.
2012-08-06 16:54:53 -05:00
James Cotton
0950d0386b Make fake telemetry show rotating attitude. 2012-08-06 16:54:53 -05:00
James Cotton
bee5740983 Added a simple PFD 2012-08-06 16:54:53 -05:00
James Cotton
fd3a02eb92 More work on the object browser/editor. Hard to make it resize itself though. 2012-08-06 16:54:53 -05:00
James Cotton
247d3a7754 Added a home page, added an option to select connection type. Made the
ListView adapter trigger updates on the data.
2012-08-06 16:54:53 -05:00
James Cotton
6613e4d3bf Added some missing files. Improved object browser to use ListView.
ExpandableListView next.
2012-08-06 16:54:53 -05:00
James Cotton
f3c8eac002 Get rid of lots of warnings 2012-08-06 16:54:53 -05:00
James Cotton
a70c967f9c Start of a widget for monitoring telemetry status 2012-08-06 16:54:52 -05:00
James Cotton
2f7320fc16 Common Activity class that binds to the Telemetry service 2012-08-06 16:54:52 -05:00
James Cotton
f247443d64 Clean up the logging somewhat 2012-08-06 16:54:52 -05:00
James Cotton
d3f9c97961 Create a UAVTalk service that is called from the object browser 2012-08-06 16:54:21 -05:00
James Cotton
cdac9d7f9e Make the UAVTalk object process one byte per call so it can be embedded in
another loop.  Also clean up some warnings.
2012-08-06 16:54:21 -05:00
James Cotton
8dc6b09b96 Make it easy to enable or disable logging in separate modules 2012-08-06 16:54:21 -05:00
James Cotton
594978e2ab Update display to show connected icon 2012-08-06 16:54:21 -05:00
James Cotton
34dfaf0023 Works on Nook, but recursive loop too deep in registering objects 2012-08-06 16:54:21 -05:00
James Cotton
20a4021bd3 Fixed some timer issues. Got connection with this. 2012-08-06 16:54:21 -05:00
James Cotton
1ea90c4158 Fix the CRC calculation for java sending 2012-08-06 16:54:21 -05:00
James Cotton
29fd09b204 Little updates 2012-08-06 16:54:21 -05:00
James Cotton
f80424875e Fixed bug in object signals that stopped updates sending. Various tweaks. 2012-08-06 16:54:20 -05:00
James Cotton
b10c3f623d Changes to TelemetryMonitor, ready for testing 2012-08-06 16:54:20 -05:00
James Cotton
6bc97f1a3d Most of the work on Telemetry.java as well as lots of signals for various
object events
2012-08-06 16:54:20 -05:00
James Cotton
63f750c51e A few more synchronized statements and deep cloning of objects 2012-08-06 16:54:20 -05:00
James Cotton
943dd82a75 Initial start of the telemetry system which interfaces between UAVTalk and the
ObjectManager/Objects
2012-08-06 16:54:20 -05:00
James Cotton
157e561927 Add isMetadata() instead of testing whether dynamic cast fails 2012-08-06 16:54:20 -05:00
James Cotton
7d13f4869d Made a lot of critical functions synchronized to block race conditions
(essentialy implements a mutex locker for that object).  Also added callbacks
to UAVObjects for unpacked and updated.  More to come.  Finally test case that
checks that we get FlightStatus through UAVTalk (i.e. that the aircraft is
talking).
2012-08-06 16:54:19 -05:00
James Cotton
c7961b9f38 Updates to various objects 2012-08-06 16:54:19 -05:00
James Cotton
689afeabb5 Initial implementation of UAVTalk protocol and a test platform for it and the
UAVObjectManager
2012-08-06 16:54:19 -05:00
James Cotton
1f202089d1 Some cosmetic changes, also initialize the Metadata properly 2012-08-06 16:54:19 -05:00
James Cotton
6dd509ded3 Make the initial values for enums be the string. Make setValue accept
numerical or string constants for enums.  Only returns a string though.
2012-08-06 16:54:19 -05:00
James Cotton
f338625092 Removed various debugging outputs and exceptions for now (will add back in a
more principled manner later).  Also updated the auto generated code.
2012-08-06 16:54:19 -05:00