summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* altos/telebt-v3.0: Report battery voltage correctlyKeith Packard2015-06-25
| | | | | | | There was an extra %d, and an extra ':' in the output, making the UI not parse the voltage correctly Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telelco: Show box voltage with pad knob instead of firing buttonKeith Packard2015-05-25
| | | | | | | | Turn left past '1' and see the firing box battery voltage instead of pushing the firing button with the box disarmed. This seems like a safer UI. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telelco: Display telefire battery voltageKeith Packard2015-05-25
| | | | | | | When the firing button is pressed while unarmed, show the telefire battery voltage in the display. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add telelco v0.3 (v0.2 with cc1200 instead of cc1120)Keith Packard2015-05-25
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* telefire: Report telefire battery voltage over telemetry linkKeith Packard2015-05-25
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Only set CMAC RSSI value on valid packet receivedKeith Packard2015-05-24
| | | | | | | | This ignores spurious packets for the purpose of showing the RSSI value in telelco/telefire, avoiding warning about 'low RSSI' when the radio receives noise. Signed-off-by: Keith Packard <keithp@keithp.com>
* telefire: Make 'good' RSSI value configurableKeith Packard2015-05-24
| | | | | | | | Different radios will have different 'good' RSSI values, so let each product configure it, leaving the default set to -90dBm, which is a solid signal value for the CC1111. Signed-off-by: Keith Packard <keithp@keithp.com>
* micropeak: Use fast load mode by default in -load scriptKeith Packard2015-05-19
| | | | | | Speed up flashing in default config Signed-off-by: Keith Packard <keithp@keithp.com>
* microsplash: Add 'publish' target to MakefileKeith Packard2015-05-19
| | | | | | | This dumps the resulting binary and -load script into the Binaries directory of the altusmetrumllc repo Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Support 32MHz xtal on cc1200Keith Packard2015-05-19
| | | | | | | I ended up building some cc1200-based boards with 32MHz xtals, so just make this an option when building the driver. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Have fast ADC ring buffer code use wrap-aroundKeith Packard2015-03-20
| | | | | | | | | Instead of requiring that the whole set of returned values fit precisely in the ring, allow for wrap-around so that we can fetch an odd number of ADC values. The previous version required that the fetch amount always be a factor of the ADC buffer size. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/chaoskey: Set USB VID/PID to 0x1d50/0x60c6Keith Packard2015-03-19
| | | | | | | These are allocated from the OpenMoko USB vendor ID page and offer a more 'official' number than from using the 0xfffe space. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add the ability to configure a different USB vendor IDKeith Packard2015-03-19
| | | | | | | ChaosKey will use an OpenMoko vid/pid, so we need the ability to configure a different USB vendor ID for each product. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/test: Support old telemega eeprom file formats in ao_flight_testKeith Packard2015-03-10
| | | | | | | | The old eeprom format used different stoarge for the accel calibration data, which doesn't matter to this code, but the change in the format value does. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/test: Make aprs test code compile againKeith Packard2015-03-10
| | | | | | Adding the compressed/uncompressed config option broke the APRS test harness. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Need ao_exti.h for pin configurationKeith Packard2015-03-07
| | | | | | Flash loader uses pin configuration to set up GPIOs for boot selection Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add makefile for chaoskey flash loaderKeith Packard2015-03-07
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Build chaoskey by defaultKeith Packard2015-03-07
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add .gitignore for chaoskeyKeith Packard2015-03-07
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Missing pad field in TMv2 data packetKeith Packard2015-03-02
| | | | | | | | | | The normal ARM padding would have filled this in correctly, but it's best to be explicit about the structure. This also adds a test to make sure the resulting telemetry declaration is exactly 32 bytes, Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Wait for BT disconnect before sending commandKeith Packard2015-03-02
| | | | | | | | | | | If AltosDroid manages to connect to the BT module before we've configured it, we won't be able to talk to it as we can't force the module to ignore connection attempts. Wait for AltosDroid to give up and let us configure the device. Eventually, we'll manage, if AltosDroid's delay interval is longer than the time it takes to configure the unit. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make APRS format (compressed/uncompressed) configurableKeith Packard2015-03-02
| | | | | | | | This provides a choice of compressed vs uncompressed when sending APRS packets to deal with receivers that still do not have support for the more useful compressed format. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/usbtrng: Split out random number generating code to separate driverKeith Packard2015-02-28
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add chaoskey flash loaderKeith Packard2015-02-28
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Create chaoskey productKeith Packard2015-02-28
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Allocate USB buffers at startupKeith Packard2015-02-28
| | | | | | | This lets the extra allocations used from ao_usb_alloc_buffers be allocated before the first USB connection happens. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Typo in ao_crc_stm.cKeith Packard2015-02-28
| | | | | | Extra semicolon Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Fix fast ADC interfaceKeith Packard2015-02-28
| | | | | | | This was configuring the hardware wrong, and wasn't keeping the output ring full. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Allow software to offer other USB interface classes than CDCKeith Packard2015-02-28
| | | | | | | This lets some boards offer non-CDC class USB interfaces so that the modem driver doesn't pick them up. 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>
* 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>
* altos/stmf0: Add ao_crc_stm.cKeith Packard2015-02-09
| | | | | | Tom discovered that this was missing 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>
* 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>
* 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>
* altos/teledongle-v3.0: Shrink stacks to 320 bytes to fit in ramKeith Packard2015-02-05
| | | | | | The old USB code had static in/out buffers in ram Signed-off-by: Keith Packard <keithp@keithp.com>
* Revert LPC usb performance improvementsKeith Packard2015-02-05
| | | | | | | There's something screwy going on, sticking garbage in the input buffer at boot time Signed-off-by: Keith Packard <keithp@keithp.com>
* Revert "altos/lpc: Fix double-buffered USB changes"Keith Packard2015-02-05
| | | | This reverts commit 41a0604ad1ea1a03e2db7d41731dbadf466b45db.
* altos: Rename teledongle-v1.9 as teledongle-v3.0Keith Packard2015-02-04
| | | | | | No hardware changes from the 1.9 prototypes to the 3.0 final version. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telebt-v3.0: Set initial radio cal to a sensible valueKeith Packard2015-02-04
| | | | | | | | CC1200 uses a different xtal than CC1120, so the default calibration needs to change. This value hit 434.550 on SN 2407, so it seems like a reasonable place to start. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telebt-v3.0: Add monitor bitsKeith Packard2015-02-01
| | | | | | Will be useful to actually be able to receive telemetry Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/usbtrng-v2.0: Select PA11/PA12 mapping config valueKeith Packard2015-02-01
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Support PA11/PA12 remappingKeith Packard2015-02-01
| | | | | | | | Small pin-count versions of the STMF0 can remap PA11/PA12 on the same pins as PA9/PA10. These are used by USB, so have the USB driver deal with remapping them. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telebt-v3.0: Turn red LED off after initializationKeith Packard2015-02-01
| | | | | | This lets the user know the device successfully initialized. Signed-off-by: Keith Packard <keithp@keithp.com>