| Commit message (Collapse) | Author | Age |
| ... | |
| |
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
getchar relies on interrupts being blocked across the pollchar calls
and into the sleep call or it may go to sleep with data pending.
This prefixes all pollchar functions with _ to indicate that they are
to be called with interrupts blocked and eliminates all interrupt
manipulation calls from within the pollchar functions.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
This just dumps info in trace mode about read and write commands
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
This makes the mount report precise error information and then prints
that with the 'M' command.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
now that it appears to work, leave these disabled by default
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
Now that the FAT code seems to be operational, go back and add
SD writing.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This turns on telemetry, APRS, RDF and data logging for telegps.
Data is logged as soon as GPS has a date to create the right
filename, using files of the form YYYYMMDD.LOG which just barely fits
in a FAT filename.
Telemetry/RDF/APRS are all separately controllable.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
ao_fat_sync() flushes the bufio data to disk along with any fsinfo
changes. ao_fat_full() returns whether the file system is full.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
This moves the locking up above the global state variable uses so that
multiple radio users (as if we had any) won't collide.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
two sync bytes for packet mode, disable sync for rdf/aprs mode.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This involved figuring out which GPIO signal would reliably indicate
that the transmitter was finished; I ended up using the PA_PD bit for
this.
This also converts all of the radio users to the long packet support
as the CC115L has only a 64-byte fifo, not large enough to hold either
an RDF tone or a regular AltOS telemetry packet.
This also renames the public API for sending APRS packets from
ao_radio_send_lots to ao_radio_send_aprs, which is at least more
accurate. The workings of that API haven't changed, just the name.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
|
|
| |
These expose the raw cc115l and rfpa0133 register settings so that we
can calibrate them against measured power outputs.
I've tested them to verify that they change how much power the board
consumes, so they're clearly doing something...
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
| |
Generalizes the FAT code to deal with either 16-bit or 32-bit
versions. The testing code now runs over a variety of disk images to
check for compatibility on all of them.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
| |
This improves sequential file performance by taking advantage of any
previous cached cluster/offset pair and starting from there when the
cluster changes rather than starting from scratch at the begining again.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
This improves read/write performance with large files by not
re-walking the cluster chain for every operation
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
| |
Make FAT api provide reasonable error return values, change the tests
to write and then read a pile of files, checking that the contents are
correct (using md5sum).
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
Make sure the busy counts don't underflow or overflow.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
This adds a fairly primitive FAT16 file system implementation
along with support for SD cards.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
Still no data, but at least the carrier comes up on frequency now.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
No configuration of power level yet, just the bare driver.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
Includes support for sending telemetry, RDF and APRS tones
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
Adapt to changes in OS interfaces
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |\ |
|
| | |
| |
| |
| |
| |
| |
| |
| | |
Most of the chip can run at 8MHz, but extended register access is
limited to 6.1MHz. Instead of pushing things, just run the SPI bus at
4MHz.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |/
|
|
|
|
|
|
|
| |
From Tridge -- MPU6000 rev C4 and C5 are broken, having accelerometer
values in the wrong range. This commit just adds comments which note
this; experimentation will be required to actually sort out what's
going on.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |\ |
|
| | |
| |
| |
| |
| |
| |
| |
| | |
Reading the incoming data bypasses the SPI API and touches the SPI
data register directly; which port that is needs to be specified in
the pins file
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |/
|
|
|
|
|
|
|
|
| |
Sometimes the radio will give a spurious wakeup indicating that a
preamble seems to have arrived, but no packet data will appear. In
this case, abandon the packet reception and go back to waiting for a
preamble again. This releases the SPI bus for other users and also
avoids missing packets.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
RDF function had changed, and APRS isn't available on megadongle.
Signed-off-by: Keith Packard <keithp@gag.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
When the radio drops out of RX or TX mode due to an error, it changes
the MARC status, and sends pulse down a configured GPIO. Use this to
tell when something 'bad' happened during TX or RX so that we can
recover from losing the SPI bus in the middle of transmission or
reception.
Without this, the radio would change state and we'd never know,
leaving the radio code waiting for an interrupt that would never arrive.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
HAS_BOOT_RADIO causes the m25 driver to abort any ongoing receive in
case that is holding the SPI bus.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
Apply rounding once at the start of the computation, then truncate
after that.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
There's no configuration to take a callsign from...
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
Instead of hard-coding my own call sign...
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
This provides a separate configuration value for APRS, allowing the
interval between APRS reports to vary.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
| |
This fixes the FIFO management, ensuring that the data are streamed
into the radio fast enough to keep the packet continuous. Sounds like
it works, but testing with an actual APRS receiver is required.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |\ |
|
| | |
| |
| |
| |
| |
| |
| |
| | |
AO_READ_AGAIN doesn't fit in a char anymore now that stdio is 8-bit
clean, everyone using pollchar must use an 'int' variable to capture
the whole value from pollchar.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| | |
Send APRS packet once every 2 seconds
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| |
| | |
This adds an arbitrary-length packet writing function to the radio
code.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| |
| | |
Make all variables static, const-ify constants, change the public
name of the single entry point.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| | |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| | |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| |
| | |
We're generating a lovely square wave, which appears to be decoded
just fine thankyouverymuch.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| | |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| | |
Getting down to a reasonable amount of code.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| | |
Merge all of the data into a single printf call
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| |
| | |
Any useful data will be sent over the digital link; APRS is strictly
for position tracking
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| | |
altos: Switch APRS to standard position reporting form
Stop using NMEA sentences for position
|
| | |
| |
| |
| |
| |
| | |
This has defines for the planned APRS interface
Signed-off-by: Keith Packard <keithp@keithp.com>
|