Morse Code CW Keyboard

13 May 2012

I doubt there is an audience out there with interest in this project, but I wanted to post this notice just in case there are any hams who are working with the mbed and interested in CW.

I am working on migrating my AVR ATmega328P project to the mbed LPC1768. The AVR project uses PS-2 keys. The mbed project uses the USB Host to support a set of USB keys. I might eventually add support for PS-2 keys also as an alternate input. I currently support a serial port interface for both input and console display so in the most basic form the mbed plus a NPN keying transistor circuit (or just a piezo speaker) can be used to play with the project. A 4x20 LCD is also used as a display.

I use a RS-232 converter as the primary console, but a compile time option in a header file is used to select either UART1 or UART0 (the serial over USB port).

I believe the project is currently reasonably functional and robust, but I am not yet using it for daily operation on the air. There is still a lot of work to do. I have used it on the air one time, in a daily QRQ sked when the project was just barely operational.

Information on the project and a zip file of the current state as of today (13 May 2012) can be found on my Notebook page.

I will post a link on the Notebook page later that goes to a video showing a brief demo of the keyboard in use.

11 Oct 2012

You found at least one interested MBED AND CW interested person. I will have a look at your notebook.

Looks really cool!! I may decide to try it, thanks!!

Best 73's PA3EEP

Peter

11 Oct 2012

Hi Peter,

I have not worked on the project in a many months since I have been working on the AVR version for some other users. I think the software is fairly mature at this point in the MBED project. I would have to check to see if the last ZIP file I posted is the latest one. Let me know if you reach a point where you would like to pick up the latest version and I will check.

I have not used the compiler since the recent major updates, and hope the project will still build!

When using an external USB keyboard, I have problems in our very dry climate. I always discharge myself to ground points in the shack when I walk into the room and this almost always glitches the USB interface requiring a reset of the MBED. I had originally added lower value pullups on the MBED reset lines to prevent reboot of the MBED from static discharges, but the USB interface on the chip is still a problem here. I don't think the Netherlands would have the same problem!

I am not using the MBED as the station keyer because of this problem, but otherwise it works very well. I am sure there are some features that I have added to the AVR version recently that I will want to migrate to the MBED eventually if I can remember what they are. I hope to eventually find a cure for the static discharge problem on the USB interface to the chip. If I take care of that I will switch to using the MBED as the main keyer in the shack.

Keep in mind that the stand alone version just using the serial console port allows testing with minimal hardware.

73,

Chuck, W5UXH

11 Oct 2012

Hi Chuck,

Nice to see how quick you kick in!

I will be delighted to see if I can get it to work. My MBED board has been sitting idle for too long. As far as I klimate you are right, it IS very wet. However during the winter we tend to use the heating systems and that may result in discharge problems as well, but if needed I might add an opto coupler to solve that problem and isolate the electronics from the keyer.

As far as CW, I have a weekly chat with a friend in Sweden each week on 20 meters. CW is our first means of communication and we are both have very limited skills with CW, but still it is fun! Usually it is very hard to explain to my friends here in NL why amateur radio and CW is fun. To them this is outdated technology, for me, it remains a great way to experiment and communicate with minimal power and maximal result...

Best regards,

Peter

11 Oct 2012

If you figure out an easy method of using opto isolation for the bi-directional USB differential data interface, please let me know! But I really don't think it will be a problem for your climate.

I just rebuilt the project and zipped the files and uploaded it to the notebook. Let me know if you are able to import the project and build it. There is an option to select which serial port is active. Currently it is not the USB serial port. If you get far enough to want to try it over the USB serial port, look in the w5uxhMbedKeyer.h file near the top for this section:

//--------------------------------------------------------------------------------
// Only define one of the following UARTS in order to select the serial port to use
// #define USE_SERIAL_OVER_USB

#define USE_SERIAL_OVER_UART1
//--------------------------------------------------------------------------------

#ifdef USE_SERIAL_OVER_USB
#define NVIC_Disable_the_UART_in_use NVIC_DisableIRQ(UART0_IRQn)
#define NVIC_Enable_the_UART_in_use  NVIC_EnableIRQ(UART0_IRQn)
#endif


#ifdef USE_SERIAL_OVER_UART1
#define NVIC_Disable_the_UART_in_use    NVIC_DisableIRQ(UART1_IRQn)
#define NVIC_Enable_the_UART_in_use     NVIC_EnableIRQ(UART1_IRQn)
#endif

#ifdef USE_SERIAL_OVER_UART2
#define NVIC_Disable_the_UART_in_use    NVIC_DisableIRQ(UART2_IRQn)
#define NVIC_Enable_the_UART_in_use     NVIC_EnableIRQ(UART2_IRQn)
#endif

#ifdef USE_SERIAL_OVER_UART3
#define NVIC_Disable_the_UART_in_use    NVIC_DisableIRQ(UART3_IRQn)
#define NVIC_Enable_the_UART_in_use     NVIC_EnableIRQ(UART3_IRQn)
#endif

and change the define to USE_SERIAL_OVER_USB. This should give you a console display at 57600 Baud. You of course will not hear any CW without connecting the Piezo for the sidetone. There is a Settings.txt file required to set initial parameters. This is an example file (my current one):

ID=W5UXH
pdlspd=30
kbdspd=50
weight=52
rigena=1
monena=0
curtis=0

You will need to set monena=1 to enable the sidetone so that you will hear it through the Piezo. You should change the speeds to lower values to suit you of course!

I use PuTTY for the console. There may be a few configuration options needed if it does not display properly. The dedicated USB keyboard has all supported functions available. The console keyboard is more limited, but you can change speed and a few other things from the console.

If you have questions later, you can use my email address found on QRZ.com in order to not clutter the forum.

11 Oct 2012

Hi Chuck,

Many thanks and will use your emailaddress... Probably will first try and see if I can get A version of your software in my MBED.

As for an easy way to isolate the USB port you could try the ADUM4160BRWZ chip for US$11.

Best regards, Peter P.s. Updated my emailaddress in QRZ, so that one is current now too