Commit Graph

251 Commits

Author SHA1 Message Date
Rob French
04feaf4a2a Added README.md. 2020-10-27 14:39:43 -05:00
Rob French
81fb3ce0a7 Updates. 2020-06-14 23:20:38 -05:00
Rob French
649784d285 Merge remote-tracking branch 'ubitx-iop/master'. This incorporates the
IOP (Teensy 3.2) code.
2020-06-14 23:19:35 -05:00
Rob French
bf87a94876 Cleaned up some stuff. 2020-06-14 23:18:09 -05:00
Rob French
690c677e76 Merge remote-tracking branch 'ubitx-v5d/master'. This incorporates
Raduino code.
2020-06-14 23:15:58 -05:00
Rob French
38b696d9c2 Merge branch 'kc4upr'. 2020-06-14 23:04:45 -05:00
Rob French
cdf3871385 Updated to be compatible with some iopcomm changes. 2020-06-14 22:54:40 -05:00
Rob French
926b8d3600 It was compiled, and seemed like it might work. But then I managed to
kill my Teensy 3.2.  I unplugged the Teensy-to-Raduino comm lines in
order to program the Raduino.  When I plugged them back in, I didn't
realize that I was off by one pin.  So I believe something that
should've only gotten 3.3V, got more.  No light on the Teensy.

This development effort, while it has been fruitful, is definitely
complicated.  I don't think I have the bandwidth to continue it.  I plan
on merging all the branches back to master, collecting the pieces-parts
of uBITX V5D, and calling it "done".  I will rebuild my uBITX V5 back
into a relatively stock configuration, and use an external digital
interface (see KK5JY).
2020-06-14 22:51:59 -05:00
Rob French
5e675107c1 Changes to work with updated modes and such from iopcomm.h 2020-06-14 00:12:29 -05:00
Rob French
6581a5f2a4 Insanely, this also compiles.
Numerous changes updating modes, rig, config, everything... don't think
this ones gonna work first time through...
2020-06-14 00:11:18 -05:00
Rob French
2da162f7c2 Somehow this compiled... 2020-06-13 09:59:11 -05:00
Rob French
28cbb0363f Semi-functional audio config menu. Correctly links to the audio config
variables.  No update functions currently.  No indication that you're in
the "edit" mode for a given variable.
2020-06-12 14:51:48 -05:00
Rob French
0a8e91c4a7 Revamped the fledgling menu system using the Embedded Template Library.
It works!

Started building up configuration menus.  Compiles, haven't tested yet.
Still learning about how to use the ETL/STL.
2020-06-11 23:50:50 -05:00
Rob French
2ea9c96e47 Created ListMenu class, which uses std::initializer_list to (hopefully)
facilitate creating a large menu.  Compiles, but hasn't been tested.
2020-06-10 23:58:15 -05:00
Rob French
66d1924685 Added speech compressor. Works.
Added some menu code.  But this needs to be redesigned.  Commented out.
Work this on a branch.
2020-06-10 23:23:15 -05:00
Rob French
2e115e363b Fixes associated with the Raduino display issues. 2020-06-07 15:27:27 -05:00
Rob French
1a1e92a709 Working! Implemented a more reasonable serial reader. 2020-06-07 15:26:37 -05:00
Rob French
f588a89ee7 Working on the buffer issues. It looks like the issue is a failure (on
the Raduino side) to check for availability of character in the Serial
port, before reading the serial port.  Note, need to see if this is a
weakness on the Teensy (IOP) side as well.
2020-06-07 13:27:24 -05:00
Rob French
20e1eda140 Removed a bunch of files that I am not maintaining to be compatible with
my Raduino/IOP mods.

Increaesd the update rate for the display (hopefully).
2020-06-07 08:56:06 -05:00
Rob French
bebd5ad78e Fixed the TopMenu class to only allow sending the next/prev presses if
the menu is visible.
2020-06-07 08:55:21 -05:00
Rob French
c27e2eddd6 More robust menu system, slightly. But still doesn't get correctly
displayed on the Raduino.  See most recently Raduino (ubitx-v5d) commit.
2020-06-06 22:28:11 -05:00
Rob French
10926b54ec Further functioning, but with bugs. Top line is working, but clear
there is messed up interplay between between how IOP updates its menu
and sends it to the Raduino, and how the Raduino updates its display.
Needs to be worked on.

Issues:
- After deselecting the I/O menu (i.e. should go back to normal Raduino
top line), it never does.  But the I/O menu is frozen.  So clearly the
top line never gets updated again by the Raduino.  Need to understand
the logic it uses to actually refresh the display.
- Random garbage (black boxes) on the top line--intermittently.
2020-06-06 22:25:11 -05:00
Rob French
bbf883d3c5 Added support for a 16-char display to be received from the IOP, with a
selectable timeout.

Verified the basics of it working.

Subsequently updated with better timeout code.  This compiles, but has
not been tested.
2020-06-06 00:07:50 -05:00
Rob French
e27c15d56a Multiple updates.
Support for full 16-char status line to be sent to the Raduino.

Added rotary encoder support.

Everything above has been tested and works.

Added rudimentary top-level menu.  Compiles, but not tested yet.
2020-06-06 00:06:45 -05:00
Rob French
c5a7592346 Added equalizer to smooth out RX audio passband. 2020-06-05 12:11:38 -05:00
Rob French
519a208508 Fixes to get it running, working for the most part (currently using DGU
mode on 40 meter FT8, so it can't be all bad).  Filters added, although
not currently selectable (til I get the rotary encoder added).
2020-05-27 22:45:37 -05:00
Rob French
5e16a49859 Some DEBUG updates. Compiles, runs; not comprehensively tested. 2020-05-26 10:49:15 -05:00
Rob French
5a6c8308d3 Quick update to support a mode request message from the IOP. Compiles,
runs; not comprehensively tested.
2020-05-26 10:48:35 -05:00
Rob French
322909c6f2 Added missing files to commit. 2020-05-25 23:11:36 -05:00
Rob French
cc78a9f9a1 Updates to be compatible with the refactored IOP code. Compiles, but
untested.
2020-05-25 23:09:37 -05:00
Rob French
564c35f397 Modifications, mainly based on a code walkthrough as well as adding some
debugging output.  Compiles, but untested.
2020-05-25 23:08:55 -05:00
Rob French
9b7095a6e3 Added some filters and speech compressor. Compiles, but not tested.
About to try some extreme re-architecting, so...
2020-05-21 08:16:35 -05:00
Rob French
7aa2cbc1c4 Added some basic FIR filter code (2.8 khz SSB filter).
Biggest thing, discovered that I needed to increase AudioMemory to 16 to
fix some "motorboating" that seemed to startup anytime I transmitted
through USB.
2020-05-19 21:39:35 -05:00
Rob French
9c1a490963 Fixed comms between the Raduino and the IOP. Implemented the wrapper
that allows messages to go back from the IOP to Raduino.  I don't know
if actual CAT from the PC works currently, however.
2020-05-18 08:16:54 -05:00
Rob French
2f8fe7fb4c Got the 5 second "DSP status menu" working. Got comms between the IOP
and the Raduino working again.  Now implements a wrapper around all
IOP<=>Raduino comms (IOP prefix, CAT prefix...)
2020-05-18 08:15:28 -05:00
Rob French
681e01d019 Updates to be compatible with iopcomm.h/iopcomm.cpp, and with the new
two-tone test mode.
2020-05-16 23:51:46 -05:00
Rob French
ccae79925b Updated to include iopcomm.h/iopcomm.cpp, common to both the IOP and the
Raduino.  It was intended to be more extensive, but I had to roll some
of it back.  Mostly just sharing of enums/types currently.

Currently in "factory calibration" mode.  Comms (CAT) in normal mode
needs to be re-checked.

Added two tone test mode, with two new modes available via Raduino menu:
TTL and TTU.

Using test mode, I'm thinking that the proper TX output calibration,
assuming a full-scale 700/1900 test tone, is either:

0.061  (which I believe gives a 25 mV RMS output), or
~0.100 (which is just before the audio starts to distort, in terms of
visible harmonics in the spectrum at the 45 MHz IF.
2020-05-16 23:48:39 -05:00
Rob French
e9d021835a About to make a bunch of changes (really not all keyer related), so
committing for safety...
2020-05-14 20:49:54 -05:00
Rob French
a039740466 Been experimenting with ways to clean up audio when USB is connected.
Believe it is likely a ground loop issue however.
2020-05-10 13:24:34 -05:00
Rob French
57c97d9f98 Working with Raduino! High pitched whine in RX audio. Goes away when
USB unplugged.  Not immediate, so not a ground loop... seems to be
associated with one of my mixers...
2020-05-08 00:19:07 -05:00
Rob French
c8b2110052 Successful communication between Raduino and IOP. Digi modes working.
Have a high-pitched whine in RX audio, however (IOP problem, not
Raduino).
2020-05-08 00:16:59 -05:00
Rob French
8d98963910 Placeholder... 2020-05-04 13:16:06 -05:00
Rob French
4c2f6453f1 Moved the sketch into a subdir. Main folder should contain e.g.
schematics for the IOP setup.
2020-05-03 23:38:41 -05:00
Rob French
7ba147b06d Added ability to send a command to the IOP, specifically a mode change
command (to SSB, DIGI, or CW; although DIGI is currently not actually
possible).
2020-05-03 23:30:44 -05:00
Rob French
f35653987f Updated to allow receiving (via serial) a mode command from the Raduino,
and then using that to set rigMode.  Note that it doesn't actually do
anything beyond that, at the moment, but I *think* this will allow PTT
events to be pressed in CW mode (as CW key down).
2020-05-03 23:29:31 -05:00
Rob French
1aa9ce1bd6 In theory, the code has now been modified to allow CW transmission when
used with the IOP.  However, at the moment, there is no way to put the
IOP into CW mode.

Intended behavior:
PTT/Key in SSB = transmit (PTT)
PTT/Key in CW = key down
2020-05-03 23:04:02 -05:00
Rob French
44c6c86838 Updated CAT to support interoperability with uBITX I/O Processor (IOP). 2020-05-03 22:00:02 -05:00
Rob French
211d9ff9b4 (Temporarily?) resolved issue with no transmit output. It looks like
switching dacVolumes around from transmit to receive wasn't working as
expected.  Transmit audio through the DAC stayed muted.  If I need to
use that for smooth audio transitions, I'll need to do some more
research.
2020-05-03 01:27:54 -05:00
Rob French
36c2e72846 Forgot to include config.h. 2020-05-03 01:00:20 -05:00
Rob French
faa73e1330 Updating before switching back to previous commit, to see if it works.
This isn't transmiting.
2020-05-03 00:37:21 -05:00