[Elecraft] KX3 sluggish keyer

Sven Ladegast sven at ladegast.info
Mon Jun 9 12:57:09 EDT 2014


Hello folks,

I am experiencing from time to time that the KX3 internal keyer is kinda 
"sluggish" and misses here and there a dot or the timing is weird. This 
mostly happens at the beginning of transmissions.

I have tried another key (Kent double paddle) with my KX3 and I can 
exclude it is the stock paddle which has contact problems. The key is 
working fine on another external keyer.

It is extremely irritating and on some transmissions the ATU starts a 
new tuning cycle (maybe critical tuning on antenna) and exactly in these 
moments the keyer misses dots or dashes, often more than one.

It seems whenever the MCU has too much to do (tuning cycle of ATU, some 
other task) the interrupts for the keyer input get lost and the actual 
character is malformed.

It happens with MCU firmware 1.87 and 1.94beta.

This is an extremely annoying "feature" which I really would like to go 
away in one of the next firmware releases.

 From an embedded developer's point of view I would say that there is 
too much code executed in interrupt service routines that block the MCU 
from executing the keyer timing correctly.

I have found that parts of the stock paddle have been swapped out to 
reduce the problem but in my opinion this will not cure the problem. 
Since contact problems are contributing to the problem one might 
experience a better keyer timing with exchanged or filed contacts at the 
paddle but the "sluggish" feeling is still there.

I know that this is hard to find in the MCU firmware but there is one 
directive a firmware developer should follow:

When entering an interrupt service routine interrupts must be disabled. 
*No* code should be executed within an interrupt service routine, 
instead flags should be set which enables the main loop to execute code 
depending to that interrupt. The interrupt service routine itself should 
be left as fast as possible and interupts should be re-enabled as fast 
as possible.

It could also be a problem with some software debouncing algorithm that 
is used on the keyer input lines. Without seeing any source it is hard 
to tell where the problem is.

I hope that I gave a hint to the developers to look for?

vy 73!

Sven

PS: Feel free to contact me if further information is needed.


More information about the Elecraft mailing list