This is the new version of my old website. You can find the old website here: old.dl2sba.com. If you miss any information or you find bugs, please let me know by E-Mail

Saving parameter to EEPROM

I've discovered, that the value of the weighting feature is not saved to the EEPROM. I'Ve updated the Sketch.

All my changes in the sketch are surrounded with a conditional statement:

#ifdef DL2SBA...#endif

and should be discovered easily.

 

Program code

If you look at the codeit seams to be well structured - but why the hell is all the code in a single file with over 6,000 lines of code? The Arduino IDE supports code in multiple source files very well.

In addition, there are many places in the code where conversions and calculations are done with the data type FLOATThe 8-bit ATMEL are not really processors for crunching numerical datat.

In my opinion, most of the calculation can be easily done using long-math instead of using the space consuming FLOAT maths. This would also help to reduce the core size of the code, so that some more features like Keyboard and WINKEY can be compiled into one sketch.

Additionaly in some places, more or less constant values are permanently recalculated:

loop_element_lengths((2.0-(float(weighting)/50)),(-1.0*keying_compensation),character_wpm,sending_type);

A better way is to calculate these values only once when they are changed. This would also reduce the jitter on the sent morse code.

These changes, together with a little restructering, would provide a better maintainable code base.

(c) Dietmar Krause, DL2SBA 2026 Impressum Datenschutz
Cookies user preferences
We use cookies to ensure you to get the best experience on our website. If you decline the use of cookies, this website may not function as expected.
Accept all
Decline all
Marketing
Set of techniques which have for object the commercial strategy and in particular the market study.
Quantcast
Save