A few days ago a package arrived from the USA. Fellow bloggers Eldon, WA0UWH and Jeff, KO7M sent me a Parallax Propeller board with one of Eldon's TCVCXO modules on it. I'm very grateful to Jeff and Eldon for sending this board as I'm not up to making something like that at the moment and as I found a few weeks ago the oscillator on the Propeller prototyping board is not thermally stable enough for WSPR use.
After a few modifications I installed my WSPR beacon code on to the board and this was the result:
My signal was spot-on frequency and there was zero drift. I let it run for several transmit cycles and there was a change of just 1Hz as the components warmed up. I am more than satisfied with that, so hopefully there will be more progress with the beacon project in due course.
Showing posts with label Propeller. Show all posts
Showing posts with label Propeller. Show all posts
Sunday, May 20, 2012
Thursday, March 08, 2012
Propellor on Packet
My Gadget Gangster Parallax Propellor board has just modulated its first APRS packets. This is not down to any clever programming by me. I simply used the Spin APRS Object published by Richard, G3CWI based on code by Alex Erlank.
Richard had to make some changes to get Alex's code to work and I had to change a few things as well. Mostly they involved replacing Richard's callsign and position with my own! The AFSK output was connected to the mic input of my old TH-205E using a 0.1uF DC blocking capacitor. There is enough idle time at the start of the packet for VOX to be used if the transceiver supports it. Mine doesn't, so for test purposes I manually keyed the radio's PTT.
I found that my packets were not decoded by the Kenwood TM-D710 TNC when I used the option to include a path such as WIDE1-1,WIDE2-1. I'm not up to debugging the code. However, Richard had mentioned that calls less than 6 characters long needed to be padded with spaces so thanks to an inspired guess I found that that this applies to paths like WIDE1 as well.
There is a GPS object included with the code. I haven't tried the Propellor with my GPS module yet, mainly because the GPS doesn't pick up any satellites from inside the shack so I'd need to rig up a battery supply and take all the kit out to the garden to test it, where it's damp and cold. (Yes I know, I'm a wimp.)
The AX25 object contains a section intriguingly called "demodulator" which has been removed. So it seems that there may be some Spin code that would enable the Propeller to be used as a TNC to decode and display APRS packets. That isn't something I had particularly planned to do, but it would be interesting to see if it works better than the WB8WGA PIC based TNC that I built a year ago which is a bit fussy about the level of the input audio.
One of the options with the Propeller is a touch screen colour TFT display panel. With one of those a suitably clever person could make a very nice standalone APRS terminal. I think there's an Ethernet module as well, so it could even be an IGate...
Richard had to make some changes to get Alex's code to work and I had to change a few things as well. Mostly they involved replacing Richard's callsign and position with my own! The AFSK output was connected to the mic input of my old TH-205E using a 0.1uF DC blocking capacitor. There is enough idle time at the start of the packet for VOX to be used if the transceiver supports it. Mine doesn't, so for test purposes I manually keyed the radio's PTT.
I found that my packets were not decoded by the Kenwood TM-D710 TNC when I used the option to include a path such as WIDE1-1,WIDE2-1. I'm not up to debugging the code. However, Richard had mentioned that calls less than 6 characters long needed to be padded with spaces so thanks to an inspired guess I found that that this applies to paths like WIDE1 as well.
There is a GPS object included with the code. I haven't tried the Propellor with my GPS module yet, mainly because the GPS doesn't pick up any satellites from inside the shack so I'd need to rig up a battery supply and take all the kit out to the garden to test it, where it's damp and cold. (Yes I know, I'm a wimp.)
The AX25 object contains a section intriguingly called "demodulator" which has been removed. So it seems that there may be some Spin code that would enable the Propeller to be used as a TNC to decode and display APRS packets. That isn't something I had particularly planned to do, but it would be interesting to see if it works better than the WB8WGA PIC based TNC that I built a year ago which is a bit fussy about the level of the input audio.
One of the options with the Propeller is a touch screen colour TFT display panel. With one of those a suitably clever person could make a very nice standalone APRS terminal. I think there's an Ethernet module as well, so it could even be an IGate...
Saturday, February 25, 2012
Prop drift uncovered
Yesterday I wrote that I was shelving the Propeller beacon project after discovering that the frequency stability is unacceptabe. Eldon WA0UMH persuaded me to try some tests to identify the cause of the drift. My conclusion is that it is a combination of factors.
The major factor causing the drift is the power supply voltage. Whilst developing the beacon using just the Gadget Gangster board I was powering it with a 6V supply - the minimum needed. After adding a PA I needed to increase the supply voltage to 9V. The drift is greater with 9V, regardless of whether the PA is actually connected.
If you look down at the Gadget Gangster Propeller USB board there are two SMT chips to the left of the Propeller and its clock crystal which appear to be voltage regulators. There is a 5V regulator a few millimetres to the left of the 10MHz crystal and a 3.3V regulator below it. The greater the supply voltage, the more heat the 5V regulator has to dissipate. Plugging the LCD UI board on top of the Propeller board traps in more of that heat making the drift even worse. This is not the first time I have discovered that voltage regulators and crystal oscillators don't go well together.
Whilst it is useful to know what is causing the drift, my discovery has not indicated an easy solution. Either I use a temperature compensated 10MHz crystal oscillator as suggested by one of my readers, or I use the Prop to control an outboard and more stable synthesized oscillator. The first option looks the easiest, but the TCXO is not an inexpensive component.
The major factor causing the drift is the power supply voltage. Whilst developing the beacon using just the Gadget Gangster board I was powering it with a 6V supply - the minimum needed. After adding a PA I needed to increase the supply voltage to 9V. The drift is greater with 9V, regardless of whether the PA is actually connected.
| Looking down on the Propeller board |
Whilst it is useful to know what is causing the drift, my discovery has not indicated an easy solution. Either I use a temperature compensated 10MHz crystal oscillator as suggested by one of my readers, or I use the Prop to control an outboard and more stable synthesized oscillator. The first option looks the easiest, but the TCXO is not an inexpensive component.
Friday, February 24, 2012
Disastrous drift
I have decided to shelve the Propeller Beacon project. Actually the project made the decision for itself. Bored with receiving spots for my 250mW WSPR signal on 30m I decided to try 20m where there are almost as many monitors. But after a handful of spots there was nothing. After a while I decided something must be wrong.
I checked that the beacon was still transmitting at the right times and it was. So I switched on the K3, ran the WSPR software and the reason for the lack of spots became clear. My signal was drifting the best part of 10Hz in each two minute cycle!
When I first ran the beacon on the bare Propeller board I had found the signal to be pretty stable after only a few minutes warm-up. After adding the LCD board - which plugs on top of the Propeller board - I noticed that my 30m transmissions were being quite consistently reported with -3Hz drift. The RF amplifier board with its heatsink is separate from the Propeller board and nowhere near its crystal oscillator. I hypothesized that the LCD board is trapping some heat in, enough to make the master clock oscillator drift.
The drift is probably a multiplication factor of the clock frequency so the higher in frequency you go, the worse the drift. Whatever the explanation, the Propeller + LCD combination is not usable as a WSPR beacon as it is.
It seems to me that there are two possible solutions. One would be to make my own Propeller processor board with a temperature controlled crystal clock. The other would be to use the Prop to control a Si570 synthesizer or something like that. Unfortunately I don't think either of those solutions are within my capabilities just at the moment. So I'm afraid the beacon project will be going on the shelf.
I checked that the beacon was still transmitting at the right times and it was. So I switched on the K3, ran the WSPR software and the reason for the lack of spots became clear. My signal was drifting the best part of 10Hz in each two minute cycle!
When I first ran the beacon on the bare Propeller board I had found the signal to be pretty stable after only a few minutes warm-up. After adding the LCD board - which plugs on top of the Propeller board - I noticed that my 30m transmissions were being quite consistently reported with -3Hz drift. The RF amplifier board with its heatsink is separate from the Propeller board and nowhere near its crystal oscillator. I hypothesized that the LCD board is trapping some heat in, enough to make the master clock oscillator drift.
The drift is probably a multiplication factor of the clock frequency so the higher in frequency you go, the worse the drift. Whatever the explanation, the Propeller + LCD combination is not usable as a WSPR beacon as it is.
It seems to me that there are two possible solutions. One would be to make my own Propeller processor board with a temperature controlled crystal clock. The other would be to use the Prop to control a Si570 synthesizer or something like that. Unfortunately I don't think either of those solutions are within my capabilities just at the moment. So I'm afraid the beacon project will be going on the shelf.
Wednesday, February 15, 2012
Propeller programming problems
Eldon WA0UWH posted yesterday on lessons learned about the Parallax Propeller programming language Spin. I too have been having fun and games trying to create a user interface for my multimode multiband beacon using the LCD module. Whilst some of my problems have been due to my failure to spot my own stupid mistakes, a couple were caused by the tools themselves.
A considerable amount of time was wasted recovering a working program after a change I made seemed to have messed it up. Eventually I discovered by accident that the program fails to run correctly on the Propeller board unless the main Spin source file is the foremost one in the Propeller Tool editor. I had begun splitting my code into separate objects with their own source files and because I had been editing or referring to one of these files I had tried running the code with one of these files in the foreground instead of the main one.
I wasted a couple of hours trying to backtrack what I had done and ended up installing one of those programs that archives each version of a file whenever you save it so that you can roll back to a previous state. The best program I have found for this is AJC Active Backup which comes with a diff tool that shows the differences between two files but unfortunately I have lost the licence key since the last time I installed it so as I was feeling tight-fisted I had to use something less good.
The other problem that caused a lot of lost time was an apparent error in the LCD UI Spin object. Specifically, the cursor method that is supposed to let you change the cursor to a flashing underscore or block just seems to clear the LCD and then crash. I had been hoping to use the cursor to show what bit of information the user was editing but I can't get it to work.
I'm not sure exactly where I am going with the beacon project. Jeff KO7M has developed a WSPR encoder that generates the required code when you input your call, power and locator. However there is not much point in using it unless I provide an interface that allows you to input this information as text. If I choose to support Opera then the bit code will have to be programmed in as no-one other than Opera's programmer knows the algorithm used to encode the callsign. As my beacon is unlikely to be used by anyone other than G4ILO in IO84 at however much dBm it produces I may as well hard code all beacon texts.
The other thing I'm not sure about is how to add the PA. The LCD UI module is now plugged into all the headers on the Gadget Gangster board and I don't want to attach wires to the board itself. I could solder headers to the two rows of holes adjacent to the existing headers on the Gangster board and then plug a board to the bottom of it. That would be the probably be the neatest solution - unless anyone has a better idea?
A considerable amount of time was wasted recovering a working program after a change I made seemed to have messed it up. Eventually I discovered by accident that the program fails to run correctly on the Propeller board unless the main Spin source file is the foremost one in the Propeller Tool editor. I had begun splitting my code into separate objects with their own source files and because I had been editing or referring to one of these files I had tried running the code with one of these files in the foreground instead of the main one.
I wasted a couple of hours trying to backtrack what I had done and ended up installing one of those programs that archives each version of a file whenever you save it so that you can roll back to a previous state. The best program I have found for this is AJC Active Backup which comes with a diff tool that shows the differences between two files but unfortunately I have lost the licence key since the last time I installed it so as I was feeling tight-fisted I had to use something less good.
The other problem that caused a lot of lost time was an apparent error in the LCD UI Spin object. Specifically, the cursor method that is supposed to let you change the cursor to a flashing underscore or block just seems to clear the LCD and then crash. I had been hoping to use the cursor to show what bit of information the user was editing but I can't get it to work.
I'm not sure exactly where I am going with the beacon project. Jeff KO7M has developed a WSPR encoder that generates the required code when you input your call, power and locator. However there is not much point in using it unless I provide an interface that allows you to input this information as text. If I choose to support Opera then the bit code will have to be programmed in as no-one other than Opera's programmer knows the algorithm used to encode the callsign. As my beacon is unlikely to be used by anyone other than G4ILO in IO84 at however much dBm it produces I may as well hard code all beacon texts.
The other thing I'm not sure about is how to add the PA. The LCD UI module is now plugged into all the headers on the Gadget Gangster board and I don't want to attach wires to the board itself. I could solder headers to the two rows of holes adjacent to the existing headers on the Gangster board and then plug a board to the bottom of it. That would be the probably be the neatest solution - unless anyone has a better idea?
Sunday, February 12, 2012
Propeller crash
Yesterday I had another of those days that nearly made me decide to hang up my soldering iron for good. Some readers may have spotted the despondent blog post I made before I deleted it.
I assembled the Propeller LCD UI module. It went together easily and I had no trouble with the soldering using a magnifying lens (a strong pair of clip-on reading glasses clipped on to my normal reading spectacles) and resting my soldering hand on the desk to stop the shakes. But Murphy was not going to let me get off that easily.
Preparing to test the UI board I realized that I had skipped a page of the instructions and had not soldered a connector to the LCD daughter board. I thought that a connector for the main board (a male 8 x 2 box header) had been omitted from the kit so I had installed one of my own. When I picked up the daughter board I saw the two rows of 8 holes and without thinking installed the 8 x 2 plain header that came with the kit. Also male. When I realized my mistake bad words were said. In all my years of kit building I have never before done anything quite so stupid.
I recalled Don Wilhelm W3FPR's advice to K2 builders who install multi-pin connectors on the wrong side of the board to sacrifice the connector and not try to remove it intact. This I eventually did with Olga's help. She suggested I place the soldering iron body along the row of soldered joints to melt all of them so the connector would fall out. That didn't work, but it did soften the plastic part of the connector allowing it to be pulled away. I could then remove each pin one at a time and clean up the through holes using one of Olga's sewing needles. Finally I was able to install the four 1 x 4 female headers that had presumably been supplied with the kit as a replacement for an 8 x 2 female that was really needed.
After all that stress (both to me and the board) I was relieved that when I plugged it in to the Propeller board and ran the demo program the UI module worked. But my happiness was short-lived. After I tried some modifications to the program I found that it seeemed to be crashing. The program would start at switch-on but would eventually hand up and not respond to the buttons. Sometimes garbage appeared on the LCD. The time before this happened got shorter with each attempt until sometimes the Propeller wouldn't even respond to the reset button. I restored the original program in case my changes were to blame, but the device was still crashing.
Next I re-heated all the solder joints I had made, though they all looked OK. On reassembly the Propeller still crashed. Thoroughly despondent by this point I typed a post describing what happened in the hope that someone would offer to come to my rescue (thanks to those who did.)
After a rest it occurred to me that I had crashed the Propeller by dropping the board a centimetre or so on to the desk. There was probably still a bad connection somewhere. I re-soldered all the joints, including all the ones on the main Propeller board. That had been ready assembled. I guess that the manufacturer had used lead-free solder because I couldn't melt the joints until I applied a bit of my own leaded solder to each one. Then all the joints looked nice and shiny.
After that treatment everything worked and up until now, cross fingers and touch wood, has continued to do so. So it seems that a poor soldered joint in the manufactured board was the cause of my problem! Thank you, Murphy, but I don't need your help. We do this for fun, do we?
I assembled the Propeller LCD UI module. It went together easily and I had no trouble with the soldering using a magnifying lens (a strong pair of clip-on reading glasses clipped on to my normal reading spectacles) and resting my soldering hand on the desk to stop the shakes. But Murphy was not going to let me get off that easily.
Preparing to test the UI board I realized that I had skipped a page of the instructions and had not soldered a connector to the LCD daughter board. I thought that a connector for the main board (a male 8 x 2 box header) had been omitted from the kit so I had installed one of my own. When I picked up the daughter board I saw the two rows of 8 holes and without thinking installed the 8 x 2 plain header that came with the kit. Also male. When I realized my mistake bad words were said. In all my years of kit building I have never before done anything quite so stupid.
I recalled Don Wilhelm W3FPR's advice to K2 builders who install multi-pin connectors on the wrong side of the board to sacrifice the connector and not try to remove it intact. This I eventually did with Olga's help. She suggested I place the soldering iron body along the row of soldered joints to melt all of them so the connector would fall out. That didn't work, but it did soften the plastic part of the connector allowing it to be pulled away. I could then remove each pin one at a time and clean up the through holes using one of Olga's sewing needles. Finally I was able to install the four 1 x 4 female headers that had presumably been supplied with the kit as a replacement for an 8 x 2 female that was really needed.
After all that stress (both to me and the board) I was relieved that when I plugged it in to the Propeller board and ran the demo program the UI module worked. But my happiness was short-lived. After I tried some modifications to the program I found that it seeemed to be crashing. The program would start at switch-on but would eventually hand up and not respond to the buttons. Sometimes garbage appeared on the LCD. The time before this happened got shorter with each attempt until sometimes the Propeller wouldn't even respond to the reset button. I restored the original program in case my changes were to blame, but the device was still crashing.
Next I re-heated all the solder joints I had made, though they all looked OK. On reassembly the Propeller still crashed. Thoroughly despondent by this point I typed a post describing what happened in the hope that someone would offer to come to my rescue (thanks to those who did.)
After a rest it occurred to me that I had crashed the Propeller by dropping the board a centimetre or so on to the desk. There was probably still a bad connection somewhere. I re-soldered all the joints, including all the ones on the main Propeller board. That had been ready assembled. I guess that the manufacturer had used lead-free solder because I couldn't melt the joints until I applied a bit of my own leaded solder to each one. Then all the joints looked nice and shiny.
After that treatment everything worked and up until now, cross fingers and touch wood, has continued to do so. So it seems that a poor soldered joint in the manufactured board was the cause of my problem! Thank you, Murphy, but I don't need your help. We do this for fun, do we?
Thursday, February 09, 2012
Now output
Everyone who commented to my last post about the lack of output from the Kits and Parts RF amp felt that the problem had to be the QRPer's curse - the toroid inductor. Normally I don't have a problem with toroids, but when they are so small that your thumb obscures the whole core while you are holding it, never mind winding it, they are not the easiest of components to work with.
So I gritted my teeth, tried to forget the hour I'd spent yesterday wrestling the thing into position, and yanked it out. One of the wires broke off in the hole leaving nothing to grab on to. I was unable to clear the small plated-through holes in any case. What I was able to do was melt the solder enough to push some bare wire through, creating "pins" that I could solder to. I twisted together the two wires that are connected so I had three ends to solder to the three pins I created. The toroid now stands up on the board a bit but it was easier soldering to the pins than trying to get four thin wires to go through four holes simultaneously. To my joy, on applying power and RF the power meter showed output.
I'm getting about 150mW if the amp is supplied with the recommended 8V, and just about 200mW from a 9V supply. That's only about 10dB of gain, a bit less than expected but probably enough given that the Propeller does not generate the purest of signals. The WSPR beacon has already been spotted a few times in Germany. But the 2N5109 runs a bit hot to the touch so I'll have to QRT until the heatsink I ordered arrives. In the meantime I still have the LCD UI board to assemble and play with.
So I gritted my teeth, tried to forget the hour I'd spent yesterday wrestling the thing into position, and yanked it out. One of the wires broke off in the hole leaving nothing to grab on to. I was unable to clear the small plated-through holes in any case. What I was able to do was melt the solder enough to push some bare wire through, creating "pins" that I could solder to. I twisted together the two wires that are connected so I had three ends to solder to the three pins I created. The toroid now stands up on the board a bit but it was easier soldering to the pins than trying to get four thin wires to go through four holes simultaneously. To my joy, on applying power and RF the power meter showed output.
I'm getting about 150mW if the amp is supplied with the recommended 8V, and just about 200mW from a 9V supply. That's only about 10dB of gain, a bit less than expected but probably enough given that the Propeller does not generate the purest of signals. The WSPR beacon has already been spotted a few times in Germany. But the 2N5109 runs a bit hot to the touch so I'll have to QRT until the heatsink I ordered arrives. In the meantime I still have the LCD UI board to assemble and play with.
Sunday, February 05, 2012
Some assembly required
Yesterday a packet from the USA dropped on to the doormat. It was the LCD UI module from Gadget Gangster. The cheap international shipping option is pretty quick!
On opening the envelope I was taken by surprise as I hadn't realized the module was a kit. But there aren't too many components and they are all through-hole so I should be able to manage it. I will take my time and double check everything to ensure I don't do anything stupid like solder headers on the wrong side of the board. More than a few K2 builders have done that!
The instructions on the Gadget Gangster website are very comprehensive with several colour photos showing different stages of assembly. But on checking the parts against the parts list I found that I was missing one 2x8-pin header socket. Fortunately I found one (a pack of 2 actually) for a couple of quid from a UK based eBay component supplier so I should have it in a couple of days. eBay is my main source of electronic components these days as the usual sources like Farnell or Maplin all have hefty minimum order and postage charges that make ordering the single part you need to complete a project quite uneconomic.
A few days earlier I received another kit from the USA: a QRP RF amplifier from Kits and Parts. I got this with the idea of using it with my Propeller beacon but it is probably too good for that. The beacon really needs only a simple class C amplifier to raise its output to a couple of hundred milliwatts. I had been tempted to go for a couple of watts but whilst WSPRing on 20m today and monitoring the signal on the K2 I noticed a weak in-band spurious around 14.05 MHz which no low-pass filter will eliminate. So it is probably best to stick to QRPp if using the Propeller as an RF source.
Another new arrival in the G4ILO shack was a GPS module from Hong Kong. This was used, ex-equipment, and cost about £12 including postage. I'm not sure what I am going to use it for but if I don't put it in the beacon to provide a time reference (and locator) for WSPR it would be interesting to try to make an APRS tracker using the Propeller chip.
So many projects! But I am convinced that having this amateur radio hobby to give me so many different and interesting activities is the reason I remain cheerful and positive unlike so many people who have the same health condition and seem to fall into a slough of despond and hopelessness. I may never complete them but at least they give me something to stop me dwelling on darker thoughts.
![]() |
| LCD UI module ready for assembly |
On opening the envelope I was taken by surprise as I hadn't realized the module was a kit. But there aren't too many components and they are all through-hole so I should be able to manage it. I will take my time and double check everything to ensure I don't do anything stupid like solder headers on the wrong side of the board. More than a few K2 builders have done that!
The instructions on the Gadget Gangster website are very comprehensive with several colour photos showing different stages of assembly. But on checking the parts against the parts list I found that I was missing one 2x8-pin header socket. Fortunately I found one (a pack of 2 actually) for a couple of quid from a UK based eBay component supplier so I should have it in a couple of days. eBay is my main source of electronic components these days as the usual sources like Farnell or Maplin all have hefty minimum order and postage charges that make ordering the single part you need to complete a project quite uneconomic.
![]() |
| Kits and Parts Universal RF Amplifier |
Another new arrival in the G4ILO shack was a GPS module from Hong Kong. This was used, ex-equipment, and cost about £12 including postage. I'm not sure what I am going to use it for but if I don't put it in the beacon to provide a time reference (and locator) for WSPR it would be interesting to try to make an APRS tracker using the Propeller chip.
So many projects! But I am convinced that having this amateur radio hobby to give me so many different and interesting activities is the reason I remain cheerful and positive unlike so many people who have the same health condition and seem to fall into a slough of despond and hopelessness. I may never complete them but at least they give me something to stop me dwelling on darker thoughts.
Wednesday, February 01, 2012
A cheap LCD
A packet arrived from China this morning containing a 16x2 LCD module which I purchased for the absurd sum of £1.93 including shipping. That wouldn't cover the postage from a UK supplier. I don't know how the Chinese do it and make a profit.
I bought the module with the intention of using it to make a user interface for my Parallax Propeller beacon. Having ordered it I was not sure how to interface the LCD to the Propeller so I chickened out and ordered an LCD UI module from Gadget Gangster. This is rather more expensive (though still a reasonable $29.99) but it includes a 4-way + depress button for menu navigation, plus a separate red button. It plugs straight into the Gadget Gangster board. I reasoned that even with the hardware sorted the software would be enough of a challenge.
I have rather ambitious plans for this beacon. Perhaps over-ambitious. After reading Alex G7KSE's blog post about his Arduino based MSF 60kHz receiver I'm interested in interfacing one of the inexpensive MSF receiver modules to the Propeller. I could use this to display an accurate clock and also to control the start of WSPR beacons. As I'm a bit of an accurate time nut and have two radio controlled clocks in the shack (and a radio controlled watch) it is really no trouble to press a button to start the beacon at the beginning of an even minute and then keep time from there. But that isn't the point really, is it? What could be cooler than a shack clock that is also a WSPR beacon?
This microcontroller stuff is new to me and I have a lot to learn about it. One question I have is what do constructors who use Arduino boards or similar things like the Gadget Gangster do when they want to make a finished project? Do you just buy another development board to use for the next project, or are there simpler boards with just the microcontroller and its essential ancillary components which you use for the final version? I guess I'd still want the ability to update the software (firmware?) so there isn't much of the Propeller Platform board that I wouldn't be using.
I bought the module with the intention of using it to make a user interface for my Parallax Propeller beacon. Having ordered it I was not sure how to interface the LCD to the Propeller so I chickened out and ordered an LCD UI module from Gadget Gangster. This is rather more expensive (though still a reasonable $29.99) but it includes a 4-way + depress button for menu navigation, plus a separate red button. It plugs straight into the Gadget Gangster board. I reasoned that even with the hardware sorted the software would be enough of a challenge.
I have rather ambitious plans for this beacon. Perhaps over-ambitious. After reading Alex G7KSE's blog post about his Arduino based MSF 60kHz receiver I'm interested in interfacing one of the inexpensive MSF receiver modules to the Propeller. I could use this to display an accurate clock and also to control the start of WSPR beacons. As I'm a bit of an accurate time nut and have two radio controlled clocks in the shack (and a radio controlled watch) it is really no trouble to press a button to start the beacon at the beginning of an even minute and then keep time from there. But that isn't the point really, is it? What could be cooler than a shack clock that is also a WSPR beacon?
This microcontroller stuff is new to me and I have a lot to learn about it. One question I have is what do constructors who use Arduino boards or similar things like the Gadget Gangster do when they want to make a finished project? Do you just buy another development board to use for the next project, or are there simpler boards with just the microcontroller and its essential ancillary components which you use for the final version? I guess I'd still want the ability to update the software (firmware?) so there isn't much of the Propeller Platform board that I wouldn't be using.
Monday, January 30, 2012
Who broke it this time?
I have just finished the heavy dose of chemo for my fourth cycle so for the last week and for several more days it will be more than usually difficult to concentrate or even get motivated to do anything. Mostly over the last week I have just been tinkering with the Parallax Propeller WSPR and Opera beacon code and running the beacon barefoot on the air.
Stupidity seems to dog my programming efforts as much as my attempts at electronics construction. I wasted a couple of hours trying to understand why the Propeller was not doing what I wanted before eventually realizing that it was doing exactly what I had told it. I was nearly at the point of splashing out on ViewPort, an interactive debugger for Spin code that would allow me to step through my programs a line at a time. That would quickly have revealed the error, but it would have been a high price to pay to show me what was staring me in the face.
I had been pleasantly surprised at the reach of my barefoot 20mW Propeller beacon, receiving a number of reports of both Opera and WSPR signals. Today I modified my beacon program to transmit both a WSPR and then an Opera beacon, but frustratingly I have not received a single report of either of them on 30 metres. Have I broken the program again or did someone break the ionosphere? I really need to get motivated enough to build a small PA and boost the signal to at least the hundred milliwatt level.
Stupidity seems to dog my programming efforts as much as my attempts at electronics construction. I wasted a couple of hours trying to understand why the Propeller was not doing what I wanted before eventually realizing that it was doing exactly what I had told it. I was nearly at the point of splashing out on ViewPort, an interactive debugger for Spin code that would allow me to step through my programs a line at a time. That would quickly have revealed the error, but it would have been a high price to pay to show me what was staring me in the face.
I had been pleasantly surprised at the reach of my barefoot 20mW Propeller beacon, receiving a number of reports of both Opera and WSPR signals. Today I modified my beacon program to transmit both a WSPR and then an Opera beacon, but frustratingly I have not received a single report of either of them on 30 metres. Have I broken the program again or did someone break the ionosphere? I really need to get motivated enough to build a small PA and boost the signal to at least the hundred milliwatt level.
Sunday, January 22, 2012
Propeller takes to the air
Today I have been playing around with MEPT beacon code on my Gadget Gangster Parallax Propeller board. First I wandered over to Jeff, KO7M's blog and borrowed his WSPR beacon code.
WSPR was the thing I originally wanted to try when I decided to get the Gadget Gangster: I hadn't even heard of OPERA at that time. But I was unsure whether I would be able to generate the FSK frequencies WSPR uses: four tones separated by about 1.48Hz. Jeff decided to shoot as near as he could and programmed for a 2Hz separation of tones, and found that the signal was decoded by K1JT's WSPR program. So no problem!
I measured the RF output from the Propeller board and it was somewhere in the region of 25 to 40mW, depending on which measurement method you believe. I also looked at the output using my oscilloscope.
It wasn't a pure sine wave, there's obviously some harmonic content there, but it was not as bad as I feared it might be. As I would be using my MFJ magnetic loop on 30m, which has a very narrow bandwidth, I decided not to bother with a low pass filter for the sake of these initial trials. I watched the seconds tick over on my shack radio-controlled clock, started the beacon and was soon rewarded by several WSPR spots!
Because WSPR is a time-synchronous mode I had to start the beacon when the seconds ticked over to 00. This brought to light a problem Jeff had already observed: the Propeller drifts. The drift seems to be worst during the first few minutes of operation, so leaving the beacon running so it can reach a stable temperature would appear to be the solution. However that is not so easy when you have to power it on at an exact time. I will need to look in to implementing a real-time clock for WSPR, unless I want to interface a GPS receiver to the Propeller - which is certainly possible and something else I hope to try as I'd like to have a go at making an APRS tracker.
An advantage of the OPERA mode is that it is not time synchronous so I can leave the beacon running in that mode with an arbitrary delay between transmissions. My first OPERA transmission also produced several spots, including reports from fellow bloggers PC4T and G4NKX.
I can also generate Morse and QRSS beacons using the Propeller chip. There is still a lot to do to reach my goal of a multimode, frequency-agile beacon, including adding a PA and some switchable bandpass filters. But so far this project has turned out to be easier than I thought it would.
| Gadget Gangster in use as a 25mW WSPR/Opera beacon |
WSPR was the thing I originally wanted to try when I decided to get the Gadget Gangster: I hadn't even heard of OPERA at that time. But I was unsure whether I would be able to generate the FSK frequencies WSPR uses: four tones separated by about 1.48Hz. Jeff decided to shoot as near as he could and programmed for a 2Hz separation of tones, and found that the signal was decoded by K1JT's WSPR program. So no problem!
I measured the RF output from the Propeller board and it was somewhere in the region of 25 to 40mW, depending on which measurement method you believe. I also looked at the output using my oscilloscope.
![]() |
| Output waveform from Parallax Propeller on 80m |
![]() |
| WSPR spots for 25mW Propeller beacon |
An advantage of the OPERA mode is that it is not time synchronous so I can leave the beacon running in that mode with an arbitrary delay between transmissions. My first OPERA transmission also produced several spots, including reports from fellow bloggers PC4T and G4NKX.
![]() |
| OPERA spots for 25mW Propeller beacon |
Sunday, January 15, 2012
Propeller does WSPR
Through Eldon, WA0UWH I have discovered another blog to add to the blogroll: that of Jeff, KO7M. Jeff is interested in a lot of the same things I have been (including light aviation: an ambition of mine when I was in my 20s but which I could never afford to take up.) But what really piqued my interest was that he has just got a Parallax Propeller to generate a WSPR signal.
This is one of the things I was interested in trying. But I never got further than wondering how to implement the fractional frequency shifts of the WSPR signal, which uses 4 tones shifted by just under 1.5Hz from each other. Jeff has apparently found that a 2Hz shift is good enough to be decoded, allowing WSPR to be sent using the integer frequencies the Propeller chip can easily generate.
Once I have finished the Tiny Keyer project and can get back to the Propeller I will be trying this myself. My ambition at the moment is to make a multi-band multi-mode (OPERA, WSPR and perhaps QRSS as well) standalone beacon with an LCD panel to enable me to choose the band and mode. We'll see how far I get, but having two other people working on the same ideas should certainly make the task easier!
This is one of the things I was interested in trying. But I never got further than wondering how to implement the fractional frequency shifts of the WSPR signal, which uses 4 tones shifted by just under 1.5Hz from each other. Jeff has apparently found that a 2Hz shift is good enough to be decoded, allowing WSPR to be sent using the integer frequencies the Propeller chip can easily generate.
Once I have finished the Tiny Keyer project and can get back to the Propeller I will be trying this myself. My ambition at the moment is to make a multi-band multi-mode (OPERA, WSPR and perhaps QRSS as well) standalone beacon with an LCD panel to enable me to choose the band and mode. We'll see how far I get, but having two other people working on the same ideas should certainly make the task easier!
Monday, January 09, 2012
More Operatics
Paul PC4T may be taking a rest from blogging but he is still active. Yesterday evening I spotted him using the new Opera mode.
Andy K3UK has prepared a quick guide to using Opera which some may find helpful. As he points out, Opera is not a QSO mode. The only information that is sent in a beacon transmission is your callsign. Other information that is displayed in the software such as QTH, distance and bearing is sent over the internet back-channel by connected software clients.
Eldon WA0UWH has taken the Parallax Propeller code from my previous post and tried it out on the air. He has already received several reception reports.
Before I can do the same I will need to build a small PA / LPF with an output in the range 200mW to 500mW. Hopefully I can find a suitable circuit that uses standard components such as 2N3904 or 2N2222 which I have in my parts box. Suggestions welcome.
Andy K3UK has prepared a quick guide to using Opera which some may find helpful. As he points out, Opera is not a QSO mode. The only information that is sent in a beacon transmission is your callsign. Other information that is displayed in the software such as QTH, distance and bearing is sent over the internet back-channel by connected software clients.
Eldon WA0UWH has taken the Parallax Propeller code from my previous post and tried it out on the air. He has already received several reception reports.
Before I can do the same I will need to build a small PA / LPF with an output in the range 200mW to 500mW. Hopefully I can find a suitable circuit that uses standard components such as 2N3904 or 2N2222 which I have in my parts box. Suggestions welcome.
Sunday, January 08, 2012
Operatic triumph
A new version of the Opera software has just been released which can output the bit code of a beacon signal so it can be programmed into a microcontroller such as a PIC or a Parallax Propeller chip. (You can find the download via the Links page of the Opera Yahoo group.)
I modified Eldon Brown WA0UWH's QRSS program code to send the bit code generated by the Opera software and it was received by my K3 on 30m and successfully decoded. Not bad for 5 minutes' work! You can download the code here.
Just as Eldon did I will have to build an amplifier to raise the output of the Propeller from a couple of milliwatts to something with a better chance of being received. Before it is worth doing that people will have to start using the Opera mode on the HF bands because with my antenna restrictions I have no hope of receiving or radiating a signal on LF or VLF. But I am quite excited at the possibility of building simple standalone beacon transmitters for this new weak signal mode which is much easier to generate than WSPR or QRSS.
Stop press: Just decoded G0NBD on 10.135MHz +1500Hz for my first real over-the-air Opera spot. And it appears my first transmission (using the PC software and my K3 at 5W) has been received by OM5NA at -21dB. This is fun!
I modified Eldon Brown WA0UWH's QRSS program code to send the bit code generated by the Opera software and it was received by my K3 on 30m and successfully decoded. Not bad for 5 minutes' work! You can download the code here.
Just as Eldon did I will have to build an amplifier to raise the output of the Propeller from a couple of milliwatts to something with a better chance of being received. Before it is worth doing that people will have to start using the Opera mode on the HF bands because with my antenna restrictions I have no hope of receiving or radiating a signal on LF or VLF. But I am quite excited at the possibility of building simple standalone beacon transmitters for this new weak signal mode which is much easier to generate than WSPR or QRSS.
Stop press: Just decoded G0NBD on 10.135MHz +1500Hz for my first real over-the-air Opera spot. And it appears my first transmission (using the PC software and my K3 at 5W) has been received by OM5NA at -21dB. This is fun!
Wednesday, January 04, 2012
First spin of the propeller
A new toy dropped through the letterbox today. It is a Gadget Gangster Propeller Platform USB demo board for experimenting with the Parallax Propeller microcontroller. If you haven't heard of the Parallax Propeller before then it is an inexpensive micro chip that contains eight processors called cogs (as in gear wheels) that can run independently in parallel. It's quite a bit different from the Microchip PIC or Atmel devices which have a single processor architecture similar to an ordinary computer.
I sent off for the board just after Christmas, after reading about it in Eldon Brown WA0UWH's blog. Eldon posted code showing how the board could be used as a QRSS beacon. I was quite excited by the idea of a device that with simple programs even I could understand could be made to emit RF.
I sent off for the board on 27th December choosing the low cost untracked USPS air mail shipping option and it arrived today, 4 January - much quicker than expected. What's more, there were no nasty customs charges! Gadget Gangster still has a special offer of $10 off for the board, so if you fancy getting one of these to play with now is the time to do something about it.
I was very impressed at the speed with which Gadget Gangster processed my order. What you get, though, is just the board. You will need to provide a power supply (7.5 - 12V with a 2.1mm barrel connector, centre positive) and a USB cable with a mini-USB jack at one end. These seem to breed in my junk box so that was not a problem. You will also find useful a small breadboard and some hookup wire to attach components to the board and test your programs.
I installed the Propeller Tool - a free download from the Parallax website, connected the board to my Samsung NC10 netbook. I then tried the Blinky Light tutorial from the Gadget Gangster site. It didn't work - until I connected the LED the correct way round (stupid newbie error!)
Over the next few days I'll be working through the tutorials to get the hang of the system. Then I'll take a look at Eldon's QRSS beacon code and adapt it to send my own call. I'd like to make a WSPR beacon. I don't know yet if that will be possible, but I'm looking forward to playing with this Propeller chip and using it in some radio-related project. Watch this space!
I sent off for the board just after Christmas, after reading about it in Eldon Brown WA0UWH's blog. Eldon posted code showing how the board could be used as a QRSS beacon. I was quite excited by the idea of a device that with simple programs even I could understand could be made to emit RF.
I sent off for the board on 27th December choosing the low cost untracked USPS air mail shipping option and it arrived today, 4 January - much quicker than expected. What's more, there were no nasty customs charges! Gadget Gangster still has a special offer of $10 off for the board, so if you fancy getting one of these to play with now is the time to do something about it.
I was very impressed at the speed with which Gadget Gangster processed my order. What you get, though, is just the board. You will need to provide a power supply (7.5 - 12V with a 2.1mm barrel connector, centre positive) and a USB cable with a mini-USB jack at one end. These seem to breed in my junk box so that was not a problem. You will also find useful a small breadboard and some hookup wire to attach components to the board and test your programs.
I installed the Propeller Tool - a free download from the Parallax website, connected the board to my Samsung NC10 netbook. I then tried the Blinky Light tutorial from the Gadget Gangster site. It didn't work - until I connected the LED the correct way round (stupid newbie error!)
Over the next few days I'll be working through the tutorials to get the hang of the system. Then I'll take a look at Eldon's QRSS beacon code and adapt it to send my own call. I'd like to make a WSPR beacon. I don't know yet if that will be possible, but I'm looking forward to playing with this Propeller chip and using it in some radio-related project. Watch this space!
Subscribe to:
Posts (Atom)









