| Commit message (Collapse) | Author | Age |
|
|
|
|
|
| |
This provides for redundant charges for either apogee or main.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
|
|
| |
The new telemetry stuff leaves state.gps always set (but empty), which
seems fine, we just need to look at state.gps.connected to see if
there's a GPS receiver on board.
For TeleNano, we also want to hide the igniter status fields as they
won't have any data present.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
This eliminates a depedency on updates to the system helper library,
which means we don't have to provide a new library on all platforms
just to support a new USB id.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
Split telemetry transmits multiple packets with the same
timestamp. Merge those into a single record when read from a file.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
Until we get a UI for changing the graph elements, lets add a few more
potentially useful values.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
All telemetry fields are fixed length, so any embedded strings are
padded with nul bytes.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
| |
Use raw telemetry frames when TeleDongle supports them, this involves
parsing the hex dump of the packet instead of having teledongle take
the packet apart. Only the legacy format is working at this point; the
altos bits for the new split telemetry frames is not written yet.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
|
|
| |
The telemetry packets now send the kalman height/speed/accel values
instead of the ad-hoc values. If received by an old TeleDongle box,
the speed value will be of the form 0x8000abcd, which will be printed
as a 32-bit value by TeleDongle. We only want the abcd part, which is
the speed * 16. Detect this automatically and compute the correct
values for all three.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
This makes the device scrolling lists fill any extra space when the
window is resized.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Eliminate more blocking code from the Swing thread.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
Access the reader name directly from the reader object instead of a
local variable (which wasn't getting set anyways).
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Was getting the product number, not the product name.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
This avoids blocking the Swing thread while waiting for the serial
device.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
This required flushing input before reading data blocks and adjusting
some delays.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
This would cause the reader to just keep reading past the end of the
flight.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Instead of logging the best height guess from the kalman filter, log
barometer data. The logged data consists of the average value betwen
log points to reduce noise.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
| |
| |
| |
| |
| |
| | |
"something" isn't quite ready to communicate right after the device is
connected, so we stick a delay in. There should be a better fix.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Store a list of known bluetooth devices as preferences. Always include
those in device dialogs with an option to go browse for more devices
in both the device dialog and the Configure AltosUI dialog.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
| |
| |
| |
| |
| |
| | |
This allows it to be displayed correctly while the device dialog box
(also modal) is up.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
| |
| |
| |
| |
| |
| | |
This will allow the use of either USB or BT devices through the
AltosDevice interface.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
| |
| |
| |
| |
| |
| | |
This will wrap either USB or BT devices. The USB device constants have
been moved to Altos.java
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
| |
| |
| |
| |
| |
| | |
This isn't useful, but does inquire for available bluetooth devices
and show them in a list.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Adds the JNI functions to query and connect to arbitrary
bluetooth devices.
Adds Java wrappers to construct a list of proximate bluetooth devices.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|/
|
|
|
|
| |
TeleBT can work just like a TeleDongle over USB.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
Eliminates a bogus axis and data line for devices which do not have an
accelerometer.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
New configuration field might as well get dumped to the .csv files.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
With Tm/Tn not having GPS to get the current date, it's no longer
unusual to have no date for a flight log, so don't show the 0000-00-00
piece in that case.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
Flight log management exceptions were getting displayed from the log
serial I/O thread instead of the swing thread. That's a bad plan.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
Supporting the Connecting... dialog requires moving all serial
communication to a separate thread. This was done by creating a worker
thread and command queue to communicate between the UI and the serial line.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
This required moving all of the serial communication to a separate
thread and making the bulk of the download operation run after that
has finished.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make sure the dialog is destroyed after use (otherwise, it hangs
around on the screen sometimes).
Switch timeout before showing dialog to 500ms -- that brings the
dialog up less often when unnecessary.
Use 'timeout_started' boolean to indicate whether the I/O thread has
queued the dialog for display and whether it needs to queue a call to
close it down.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
Calls from the swing thread cannot be canceled as there's no way to
put up the cancel dialog. In this case, simply use the 5 second
timeout and fail if no communication occurs within that amount of time.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
|
| |
For the timeout dialog to appear, a frame must be configured for it to
appear near. This patch sends the frame from the eeprom download
functions to the serial code. That path doesn't yet work as the eeprom
download is still trying to talk to the serial device from the swing
event thread, which prevents the cancel dialog from working.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
|
|
| |
TeleMini/TeleNano can't be configured via USB, so we need to allow
the radio channel to be set over the radio link.
This change carefully sets the new radio channel, disables the remote
link and then sets the teledongle channel to the new value and brings
the link back up.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
The telemetry format menu uses 0 for full and 1 for tiny, but the
telemetry configuration uses 1 for full and 2 for tiny. One direction
(config to UI) was right, the other (UI to config) was wrong.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
| |
This leaves the config UI connection attempt running and pops up a
dialog box when it takes 'too long' in the remote case so that users
with Tm or Tn devices can bring up the UI, and then boot the Tm/Tn
without needing to time things carefully.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
I don't know why, but they are, so just replace them with
setVisible calls.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
|
| |
This was interposed between the download layer and the eeprom layer to
hold a eeprom block full of flight log records. The addition of the tiny
log format required reworking the code to hold chunks full of eeprom
data without regard to their content, so this content-specific layer
didn't seem useful anymore.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
Splits the eeprom downloading code into eeprom block downloading and
separate eeprom data parsing so that the new data logging format can
share the data downloading code.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Just noise on stdout.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
Switches the TeleDongle between full and tiny telemetry packet
formats, saving the last used format for each teledongle in the
application preferences.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
New telemetry format needed to support TeleNano and TeleMini
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Show this somewhere so we can figure out what is installed.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
This caused graphing to fail on Mac OS X
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
|
| |
When reading the eeprom, any parsing errors (most likely bad
checksums) indicate some kind of problem with either the hardware or
the flight software. Display these to the user and do not erase the
flight.
Signed-off-by: Keith Packard <keithp@keithp.com>
|