Posts Tagged ‘Propeller’
A cheap LCD
A packet arrived from China this morning containing a 16×2 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.
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.
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.
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 |
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!
WSPR spots for 25mW Propeller beacon |
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.
OPERA spots for 25mW Propeller beacon |
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.
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!
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.
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!
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!