--
You received this message because you are subscribed to the Google Groups "Hermes-Lite" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hermes-lite...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/30c72b12-fa5c-4737-a2a3-0391e0bc4efen%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/fc00ff02-b5b5-4791-b4ea-64d5eb1c6be4n%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/df3f3578-1e10-4ddb-b109-a1d917806d97n%40googlegroups.com.
Take care the uC supports „Serial+MIDI“, such that you emulate a Winkeyer on the
serial port and talk to the SDR software via MIDI.
> There is one other latency to note, and that is CW-keypress-to-RF latency. In this solution it will be slighly more, I suspect in the 50-70ms range, as CW-keypress must be passed to computer and then HL2. But I don't think this matters in practice. If you consider the speed of light, operators already see a ~130ms there and back latency when working someone half way around the globe.
>
> Some may think that implementation of this idea will be a lot of work, but fortunately, there are several projects which make implementing a custom but universal (no custom driver) USB sound card easy. My first experiments are with the $20 Teensy 4.0 and $15 audio adapter. What is most attractive about the Teensy 4.0 is the well developed Teensy Audio Library. This even has a drag-and-drop GUI design tool to create audio applications with USB audio, midi and serial endpoints plus final i2s interface.
>
> All that remains are CW keyer connections (very inexpensive prototype board to unused Teensy pins for now) and CW keyer code. For the CW keyer code, I'll probably first use N1GP's iambic keyer as it is simple yet covers all expected openhpsdr functionality. Finally, although there will some optional MIDI control, I think this can all be done with few if any host software changes. Instead of key down/up messages, the custom USB adapter can send shaped IQ CW data which is then just sent directly to the HL2 without software processing.
>
> Even now one can kludge together 3 boards (Teensy, audio adapter, keyer connector board) like I am doing for under $50. But if this idea takes off, I'd like to make it easier for people. One option would be to create a combined audio adapter and keyer connector board and sell it on Makerfabs. i2s codecs cost under $5.0 and connectors are cheap. This would sell for under $20 as another addon for the HL2. Yet another option would be to replace the Teensy with the new $4 Raspberry Pi Pico. There is already an audio board for the Raspberry Pi Pico so we know its special IO FSMs can be used for i2s. Also, the teensy audio library has been ported to other platforms, and given Raspberry Pi's history, Raspberry Pi will also have well supported libraries of their own. A final option, although the most work, would be to make a single custom board, maybe with a SAMD21 or 51 part, or even a module. All of these lower cost MCUs support native FS 12Mb/s USB. The Teensy supports native HS 480Mb/s USB which could be an advantage.
>
> I am looking for help with this project. I'm committed to trying at least the 3-board kludge, but there is much more which could be done. For example, maybe one would like to add a big MIDI-based tuning knob for tactile feel, create an enclosure, help with the coding, help with testing, port to a Pi pico, port the k3ng cw keyer code, etc. Please let me know if you have interest.
>
> 73,
>
> Steve
> kf7o
>
>
>
>
> --
> You received this message because you are subscribed to the Google Groups "Hermes-Lite" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to hermes-lite...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/30c72b12-fa5c-4737-a2a3-0391e0bc4efen%40googlegroups.com.
>
> --
> You received this message because you are subscribed to the Google Groups "Hermes-Lite" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to hermes-lite...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/fc00ff02-b5b5-4791-b4ea-64d5eb1c6be4n%40googlegroups.com.
>
> --
> You received this message because you are subscribed to the Google Groups "Hermes-Lite" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to hermes-lite...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/CAGayqouPF_BAu-qFqoFp%2BZdrep-LFZK%2BW9AddWrwnu-biAPPVw%40mail.gmail.com.
Oh no, no USB side tone from the Teensy.
Just produce a square wave at one of the output pins, *THIS* is zero latency.
See below the „hardware“ part of my keyer. It is fairly standard except that
I have a volume control for the side tone so in the keyer the side tone is always produced
irrespective of the WK2 control bits and is „switched off“ by turning the volume pot
ccw. Since the power comes from USB, I can afford a rather loud signal.
The part in the square is optional, I have it running
with a two-line LCD panel on a breadboard, but I think in the final version I will not
include the LCD.
The Teensy sends three types of MIDI messages:
CW key-down/up via NoteOn/Off on key MIDI_CW in channel MIDI_CHANNEL
PTT on/off via NoteOn/Off on key MIDI_PTT in channel MIDI_CHANNEL
CW speed via controller value on controller MIDI_SPEED in channel MIDI_CHANNEL
MIDI_CW, MIDI_PTT, MIDI_SPEED and MIDI_CHANNEL are #defined in the top of the sketch.
The speed change messages are very comforable since then I see the speed of the keyer
in the piHPSDR window, and this will also control the speed of CW messages sent via
CAT commands.
To use the side tone from the keyer there are now two ways:
a) If you can comfortably hear the tone even with headphone simply use it.
b) otherwise feed it to the headphone in hardware (possibly after low-passing)
For b) the best is to have the primary side of an AF transformer in-line with the headphone
signal line and feed the audio from the Teensy to the secondary winding, because then
you have galvanic isolation.
For maximum comfort, add a „headphone in“ and a „headphone“ out jack to the keyer, such that the
headphone signal passes almost unchanged normally and gets the side tone „on top“ occasionally.
Use two audio transformers if you want the side tone on both ears with a stereo headphone.
Then, use a standard audio cable
from the source (computer) to „headphone in“ and plug your headphone into „headphone out“.
This suggestion seems rather low-tech, but I bet on getting the highest accuracy this way.
FYI, I also include my Teensy sketch, although K3NG etc. are more complete Winkey emulators
(but perhaps the sketch helps demonstrating what I mean).
--
You received this message because you are subscribed to the Google Groups "Hermes-Lite" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hermes-lite...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/5006e3bb-3e68-41c9-b35f-2c2729ac2c48n%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Hermes-Lite" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hermes-lite...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/1da096b7-258b-40a0-add0-92c06e0d4f34n%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Hermes-Lite" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hermes-lite+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/30c72b12-fa5c-4737-a2a3-0391e0bc4efen%40googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to hermes-lite...@googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Hermes-Lite" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hermes-lite...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/0e7b1c7b-abba-428c-a2a3-c3ec13730bben%40googlegroups.com.
Steve,In your photo of the Teensy, Audio Shield and the prototype board.The connection labeled 1) goes where, to a speaker?and do you have a schematic of the wiring in area labeled number 2.
--
You received this message because you are subscribed to the Google Groups "Hermes-Lite" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hermes-lite...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/c7959eb0-ab29-408e-8bb8-16aebfd711d3n%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/ce36e963-401b-49db-93a2-9c3ba40d0740n%40googlegroups.com.
Hi Roger,I've also read about the bootloader chip also. I agree it is a good way for the developer to monetize his work. I don't know if I want to go through the trouble of creating a complete new board but was instead thinking of using the existing Teensy 4.0 and creating a shield for the audio and keyer connections. The Teensy developer actually lives less than 5km from me. I've seen him at some meetings and communicated about nearby Zel Pro Assembly solutions which he uses to assemble his boards. I was thinking that once this project is farther along, I could approach him about selling this keyer shield as a add on board as he is already setup for order fulfillment.
I am not sold on the k3ng keyer, but thought it was a good place to start. The code in my github repository is already working. It sends the note on/off on channel 1 note 1. I tested it with Quisk last night.I like the idea of supporting TRRS and the ubiquitous earbud headsets that are out there. I will check into that. The current codec already has mic input, so it may just be a matter of wiring up the correct jack. I was also thinking up putting a MEMS microphone directly on the PCB. The similar microphone in my laptop has been doing a great job these past 11 months of working from home with Zoom meetings.
73,Stevekf7o
Sketch uses 51932 bytes (19%) of program storage space. Maximum is 262144 bytes.Global variables use 14268 bytes (21%) of dynamic memory, leaving 51268 bytes for local variables. Maximum is 65536 bytes.
$ ./Ctrlr
./Ctrlr: error while loading shared libraries: libbfd-2.34-system.so: cannot open shared object file: No such file or directory
$ find /usr/lib -name libbfd* -print
/usr/lib/x86_64-linux-gnu/libbfd-2.35.1-system.so
"There are two ways to use a straight key with the keyer:
Go into straight key mode by holding down the right paddle when powering up or power resetting. This places the keyer exclusively in straight key mode with very limited functionality. Activate FEATURE_STRAIGHT_KEY in features_and_options.h and define pin_straight_key in keyer_pin_settings.h . Grounding the pin with a straight key will give you straight key operation in parallel with paddle operation and still give you access to all the normal keyer functionality."
--
You received this message because you are subscribed to a topic in the Google Groups "Hermes-Lite" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/hermes-lite/P-i_EYCN--k/unsubscribe.
To unsubscribe from this group and all its topics, send an email to hermes-lite...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/edf17920-249f-4363-bc24-f715f4629ffdn%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Hermes-Lite" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hermes-lite...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/edf17920-249f-4363-bc24-f715f4629ffdn%40googlegroups.com.
I'm thinking we can do the head set interface with a DPDT (mechanical switch, mosfet, solder bridge, or jumpers) to switch between LRGM and LRMG, user selectable, then a Teensy analog input can read the switch state off the microphone bias line. Oh, maybe 2p3t to handle an onboard microphone. I also see that the Audio library has a PDM input that could handle a MEMS microphone.
Hi Group,For some time now I've been looking for a CW keyer with low latency sidetone Hermes-Lite 2 solution which meets these criteria:
- Supports both local and remote use of the HL2, where the HL2 can be in another room yet still be operated by a CW key.
- Conserves limited FPGA logic and memory resources for specialized high-speed digital signal processing, and not usage on low-speed audio buffering and control which can be done easily by cheaper technologies.
- Preserves the current application of HL2 IO pins for ATU control, HR50 interfacing, fan control, and synchronous radio linking.
- Is easy to setup and use, requiring no advanced software/audio card configuration or changes.
- Requires no desoldering of components on the HL2 board and potential limited warranty voiding.
- Costs under $40 for a complete, prebuilt solution.
Last weekend I had an idea which I think can meet all these criteria. I have started serious experiments towards realizing this solution. The core idea is to combine a CW keyer with a USB soundcard as shown below. There is a low latency path from CW-keypress to audio out through the custom USB soundcard. This is the latency which matters to some operators but not others. CW-keypress-to-ear latency on this path can be identical to what is seen on Apache Labs and openhpsdr radios. Since the PC is sending audio to the adapter, the CW sidetone can be mixed in or interrupt audio as currently done on openhpsdr radios. Note that there is no real difference in audio latency here, as in openhpsdr solutions the data must be passed from radio to computer for demodulation and then as audio data back to radio again. Here we are passing raw data from radio to computer and then audio to USB adapter with similar latencies. There is no magic possible by having an audio jack on the radio, as processing still must be done by the computer.There is one other latency to note, and that is CW-keypress-to-RF latency. In this solution it will be slighly more, I suspect in the 50-70ms range, as CW-keypress must be passed to computer and then HL2. But I don't think this matters in practice. If you consider the speed of light, operators already see a ~130ms there and back latency when working someone half way around the globe.Some may think that implementation of this idea will be a lot of work, but fortunately, there are several projects which make implementing a custom but universal (no custom driver) USB sound card easy. My first experiments are with the $20 Teensy 4.0 and $15 audio adapter. What is most attractive about the Teensy 4.0 is the well developed Teensy Audio Library. This even has a drag-and-drop GUI design tool to create audio applications with USB audio, midi and serial endpoints plus final i2s interface.All that remains are CW keyer connections (very inexpensive prototype board to unused Teensy pins for now) and CW keyer code. For the CW keyer code, I'll probably first use N1GP's iambic keyer as it is simple yet covers all expected openhpsdr functionality. Finally, although there will some optional MIDI control, I think this can all be done with few if any host software changes. Instead of key down/up messages, the custom USB adapter can send shaped IQ CW data which is then just sent directly to the HL2 without software processing.Even now one can kludge together 3 boards (Teensy, audio adapter, keyer connector board) like I am doing for under $50. But if this idea takes off, I'd like to make it easier for people. One option would be to create a combined audio adapter and keyer connector board and sell it on Makerfabs. i2s codecs cost under $5.0 and connectors are cheap. This would sell for under $20 as another addon for the HL2. Yet another option would be to replace the Teensy with the new $4 Raspberry Pi Pico. There is already an audio board for the Raspberry Pi Pico so we know its special IO FSMs can be used for i2s. Also, the teensy audio library has been ported to other platforms, and given Raspberry Pi's history, Raspberry Pi will also have well supported libraries of their own. A final option, although the most work, would be to make a single custom board, maybe with a SAMD21 or 51 part, or even a module. All of these lower cost MCUs support native FS 12Mb/s USB. The Teensy supports native HS 480Mb/s USB which could be an advantage.I am looking for help with this project. I'm committed to trying at least the 3-board kludge, but there is much more which could be done. For example, maybe one would like to add a big MIDI-based tuning knob for tactile feel, create an enclosure, help with the coding, help with testing, port to a Pi pico, port the k3ng cw keyer code, etc. Please let me know if you have interest.73,Stevekf7o
--
You received this message because you are subscribed to the Google Groups "Hermes-Lite" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hermes-lite...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/30c72b12-fa5c-4737-a2a3-0391e0bc4efen%40googlegroups.com.
--
You received this message because you are subscribed to a topic in the Google Groups "Hermes-Lite" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/hermes-lite/P-i_EYCN--k/unsubscribe.
To unsubscribe from this group and all its topics, send an email to hermes-lite...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/b6837a98-8de7-4fdc-9977-5855ac4d948an%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Hermes-Lite" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hermes-lite...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/6abac180-de8f-49a1-a3e4-995eac656426n%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/f62301fb-b539-48bf-a37b-639647e421ebn%40googlegroups.com.
Can you remind me again why a jumper is needed between pin 20 and 22? If this is to have a regular external interrupt, why isn't the low priority Audio class update interrupt which is called every Audio buffer length samples adequate? When running with buffer lengths of 32 samples, this is an interval of 667us.
[...]
Does hasak support winkeyer or the n1mm logger?
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/dfd66ecc-bf13-43af-ae8f-f94dbd38ffaan%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Hermes-Lite" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hermes-lite...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/2d5bd6a4-a43f-47ad-95b5-bbc249f2438bn%40googlegroups.com.