summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
| * altosdroid: Only speak when GUI is runningKeith Packard2015-02-16
| | | | | | | | | | | | | | Create voice in onStart, stop it in onStop. This way, if some other application is in use, the voice won't be annoying you. Signed-off-by: Keith Packard <keithp@keithp.com>
| * altosdroid: Explicitly disconnect BT on termination or 'disconnect'Keith Packard2015-02-16
| | | | | | | | | | | | | | | | | | | | This adds an explicit message to the telemetry service telling it when to stop trying to talk to the bluetooth device. Until this message is received, the service will reconnect to the specified BT device. That message is sent when you 'quit' the application, or when you 'disconnect'. Signed-off-by: Keith Packard <keithp@keithp.com>
| * altosdroid: Lots of bluetooth connection changesKeith Packard2015-02-16
| | | | | | | | | | | | | | | | | | | | | | | | | | Appears to more reliably abort in-progress connection attempts so you can switch TBT devices without having the previous device in operation. Shows which device the connection is being attempted for. Eliminate the 10-second timer and just disable the service when the GUI shuts down while no BT connection is running. Signed-off-by: Keith Packard <keithp@keithp.com>
| * ao-bringup: Changes for telebt for keith's hackingKeith Packard2015-02-16
| | | | | | | | | | | | | | Make the programming device auto-detect by username. Load binary from ~/altusmetrumllc Signed-off-by: Keith Packard <keithp@keithp.com>
| * altos: Remove some accidental debug printfs from ao_packet.cKeith Packard2015-02-15
| | | | | | | | | | | | | | While fixing the cc1200 configuration, I added some debug printfs to this code. They were accidentally committed with the fix... Signed-off-by: Keith Packard <keithp@keithp.com>
| * altos/cc1200: Adjust bit-sync configurationKeith Packard2015-02-14
| | | | | | | | | | | | | | | | | | | | | | | | | | The default bit timing adjustment mechanism allows for only a 0.2% deviation from the programmed bit timing. I found one TeleMini device which is beyond that tolerance as it was built with an older crystal with more error. Switch to the more expensive synchronization mechanism which allows up to 2% timing error, but requires a multi-byte preamble (which we have). This fixes packet mode nicely. Signed-off-by: Keith Packard <keithp@keithp.com>
| * altos: embed ao_alarm and ao_clear_alarm in ao_sleep_forKeith Packard2015-02-14
| | | | | | | | | | | | | | sdcc won't embed these itself, and thus consumes too much flash for telemetrum-v1.0 Signed-off-by: Keith Packard <keithp@keithp.com>
| * ao-bringup/turnon_telemini: Detect which programmer to use by $USERKeith Packard2015-02-14
| | | | | | | | | | | | Bdale uses TD 100, keithp uses TD 186. Signed-off-by: Keith Packard <keithp@keithp.com>
| * altosuilib: Detect pair programming by product name, not USB idKeith Packard2015-02-14
| | | | | | | | | | | | | | | | With TeleDongle, TeleBT and TeleMetrum coming in both pair- and self- programmable versions, we can't use the USB id to tell them apart. Instead, fetch the device name and use that instead. Signed-off-by: Keith Packard <keithp@keithp.com>
| * altosui: Run all igniter status requests from non-GUI threadKeith Packard2015-02-14
| | | | | | | | | | | | | | | | | | | | Anything run from the UI thread blocks the UI entirely; the Fire Igniters startup code to collect the number of pyro channels when building the UI was doing that from the UI thread. Switch that around so that the UI doesn't get built until that reply comes back, allowing the user to see the 'connecting' dialog, and cancel it if required. Signed-off-by: Keith Packard <keithp@keithp.com>
| * altos: Replace ao_alarm/ao_clear_alarm with ao_sleep_forKeith Packard2015-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Having arbitrary alarms firing in the middle of complicated device logic makes no sense at all. Therefore only correct use of ao_alarm and ao_clear_alarm was around a specific ao_sleep call, with correct recovery in case the alarm fires. This patch replaces all uses of ao_alarm/ao_sleep/ao_clear_alarm with ao_sleep_for, a new function which takes the alarm timeout directly. A few cases which weren't simply calling ao_sleep have been reworked to pass the timeout value down to the place where sleep *is* being called, and having that code deal with the return correctly. Signed-off-by: Keith Packard <keithp@keithp.com>
| * Added continuous output option to ao-usbtrngTom Marble2015-02-11
| |
| * altos/stmf0: Add ao_crc_stm.cKeith Packard2015-02-09
| | | | | | | | | | | | Tom discovered that this was missing Signed-off-by: Keith Packard <keithp@keithp.com>
| * Minor typo in man pageTom Marble2015-02-09
| |
* | swap names so v3.0 is the default TeleDongle version to turn onBdale Garbee2015-02-22
|/
* document addition of TeleDongle to the set of ARM targets to save binaries forBdale Garbee2015-02-07
|
* Bump java library versionsKeith Packard2015-02-07
| | | | | | | Lots of minor API/ABI changes; make sure people can install both 1.5 and 1.6 at the same time. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosuilib: Don't offer to graph some GPS details that TM doesn't logKeith Packard2015-02-07
| | | | | | | | When using a TM eeprom file, various minor GPS details are logged (course, ground speed, climb rate, etc). Make sure these aren't offered up for graphing. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosuilib: Get the Eeprom download progress bar working againKeith Packard2015-02-07
| | | | | | | | | | | | The eeprom download code wasn't computing the start of each state transition correctly, so the progress bar was snapping to the end of the chunk for each state. Invalid state values would snap the bar to the right side. Landed state wasn't ever seen, so the bar would not ever fill. Signed-off-by: Keith Packard <keithp@keithp.com>
* doc: update 1.6 release notes with recent bug fixesKeith Packard2015-02-07
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altosuilib: Set the icon and title of the telemetry scanning dialogKeith Packard2015-02-07
| | | | | | Just need to call 'super' to get the window configured correctly. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Clear saved TelemetryReader state instead of resetting in ScanUIKeith Packard2015-02-07
| | | | | | | Instead of attempting to mash the saved state from AltosScanUI, just throw it away in AltosTelemetryReader.reset. Much cleaner, and more reliable. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosuilib: Reset telemetry state after processing itKeith Packard2015-02-07
| | | | | | | | This avoids re-using stale state after switching telemetry reception parameters around, which otherwise generates spurious entries for the wrong frequencies in the scan results list. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Drop telemetry packets processed while monitoring is disabledKeith Packard2015-02-07
| | | | | | | | A lag between the thread queuing telemetry packets and one pulling them out can result in stale telemetry data being returned to the reader. Fix this by dropping telemetry read while monitoring is disabled. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosuilib: Wait for product data while scanningKeith Packard2015-02-07
| | | | | | | Now that Altos only sends config information once every 5 seconds, we want to keep waiting for that if we're receiving packets successfully. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Mark listener as 'not running' on EOF.Keith Packard2015-02-07
| | | | | | | | | | | | | | This adds a 'running' member to the AltosListenerState class, and when the replay reader reaches EOF, marks the listener as no longer running. AltosUI and TeleGPS now display 'done' in the 'Age' field when this occurs, to let the user know that the replay is over. Also make sure that the display timers are stopped when this happens, or when the window is closed. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosui: Remove the dregs of AltosDroid load-old-telem codeKeith Packard2015-02-07
| | | | | | | | | | | | AltosDroid used to scan the old .telem file to return to the previous flight state on restart. Now it just loads the old state object instead, a vast improvement in performance. To do that, there were some changes in the altoslib code required. This patch just removes those, fixing replay bugs in TeleGPS along the way. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: ao_packet_getchar needs to return 'int' so AO_READ_AGAIN worksKeith Packard2015-02-07
| | | | | | | | | With ao_packet_getchar returning 'char', AO_READ_AGAIN would get converted to 0xff instead of -1 on return, making ao_packet_echo either produce a bogus character on output, breaking command responses, or wedge and never exit when the link was dropped. Signed-off-by: Keith Packard <keithp@keithp.com>
* Update version 1.6 release notes with more bug fixesKeith Packard2015-02-07
| | | | | | | A few bugs found during release testing are notable enough to be included in the release notes. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Separate out ao_tracker force from dbgKeith Packard2015-02-07
| | | | | | | Allow enabling telemetry when USB is connected without also enabling the motion debugging output. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lpc: Give up on interrupt-driven SPI driverKeith Packard2015-02-07
| | | | | | | | | There are just too many limitations in when interrupts are delivered to make them useful. Instead, just drive the SPI directly with the CPU. At higher spi speeds (6Mhz or more), it's probably faster to do it this way anyways. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/drivers: Increase SPI speed of CC115L to 6MHzKeith Packard2015-02-07
| | | | | | The datasheet says that the maximum for back-to-back data is 6.5MHz. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Initialize GPS data to MISSING for Monitor Idle modeKeith Packard2015-02-06
| | | | | | | Make sure any un-set values are flagged correctly for the Monitor Idle UI by using the init() method. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Use 'stateless' for Monitor IdleKeith Packard2015-02-06
| | | | | | | | This reflects the lack of flight state progression during Monitor Idle and ensures that the GPS 'ready' indicator will light after 10 solid GPS fixes. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Support TeleGPS for Monitor IdleKeith Packard2015-02-06
| | | | | | | TeleGPS has ADC and GPS values, so build the necessary ADC parser and then hook up GPS parsing. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosuilib: Don't show 'Sats in view' for TeleGPS eeprom graphingKeith Packard2015-02-06
| | | | | | | | We don't log the visible sats from TeleGPS, only the basic GPS info. Have AltosFlightStats track whether sat info is present, then use that to elide the Sats In View graph entry as needed. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosuilib: EEProm download from TeleGPS doesn't have statesKeith Packard2015-02-06
| | | | | | | | | | | | | As TeleGPS doesn't have flight states, the EEProm download progress bar shouldn't show 'state invalid', and it should use a different scale for each block. Fix this by having AltosConfigData know which devices have state based on their log format, then mark the progress bar state limits as 'invalid/invalid' instead of 'boost/landed'. Then have the progress bar use that to set a more reasonable scale for each block. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Store MS5607 data in AltosConfigData for use by AltosMs5607Keith Packard2015-02-06
| | | | | | | | | When doing 'Monitor Idle', we fetch new config data each iteration and pass that to each of the readers, including ms5607. Instead of re-fetching the config data there, just store the ms5607 parameters when we fetch it the first time and copy it over. Signed-off-by: Keith Packard <keithp@keithp.com>
* Package TeleDongle-v3.0 firmware with TeleGPS and AltosUI appsKeith Packard2015-02-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altosuilib: New teledongle and telebt devices are not pair-programmedKeith Packard2015-02-06
| | | | | | | Only list telebt-v1 and teledongle-v0 as pair-programmed devices so that newer versions go through the self-programming process Signed-off-by: Keith Packard <keithp@keithp.com>
* micropeak: Install Windows AltusMetrum driver bitsKeith Packard2015-02-06
| | | | | | Make AltOS-based µPUSB devices work with MicroPeak Signed-off-by: Keith Packard <keithp@keithp.com>
* micropeak: Support both FTDI and Altus Metrum USB IDsKeith Packard2015-02-06
| | | | | | | | The windows driver only returns FTDI devices when altos_ftdi_list_start is invoked, so we need to call both that and the regular altos_list_start to get all of the devices. Signed-off-by: Keith Packard <keithp@keithp.com>
* micropeak: Fix file association registry install on WindowsKeith Packard2015-02-06
| | | | | | | Need to invoke DisableX64FSRedirection before setting file association registry entries or Windows won't find our application. Signed-off-by: Keith Packard <keithp@keithp.com>
* windows: Look for current Java version in \SOFTWARE\Wow6432NodeKeith Packard2015-02-06
| | | | | | | I have no idea what this is, but I found the Java version down in there... Signed-off-by: Keith Packard <keithp@keithp.com>
* Add 'keithp-fat' target for uploading temporary builds to keithp's machineKeith Packard2015-02-06
| | | | | | | This lets me quickly prepare a new test version for Windows/Mac in a single command. Signed-off-by: Keith Packard <keithp@keithp.com>
* libaltos: Use more SetupDi API to get Windows 7 listing devicesKeith Packard2015-02-06
| | | | | | | | My Windows 7 box doesn't include 'SymbolicName' in the registry, but SetupDiGetDeviceInstanceId *does* return something that includes vid/pid/serial, so use that in preference. Signed-off-by: Keith Packard <keithp@keithp.com>
* Update docs for 1.6Keith Packard2015-02-05
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lpc: Double buffer USB data transfersKeith Packard2015-02-05
| | | | | | | | | | This allocates twice the space in the USB memory so that transactions can be double buffered without using separate CPU memory. Signed-off-by: Keith Packard <keithp@keithp.com> Conflicts: src/lpc/ao_usb_lpc.c
* altos/lpc: Clean up USB endpoint access functionsKeith Packard2015-02-05
| | | | | | | | | The USB device endpoints can have two pointers in them, but we use only the first. Fix the access functions to take an index as to which we want so that we can disable the other address registers with them instead of requiring open-coded access. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/easymini-v1.0: Shrink stack to deal with USB changesKeith Packard2015-02-05
| | | | | | | Reverting the USB double buffering means using more RAM, need to shrink the EasyMini stack to accomodate that. Signed-off-by: Keith Packard <keithp@keithp.com>