PDA

View Full Version : Beacon project and Radio Beacons facebook group



mw0uzo
12-16-2010, 08:49 PM
For those of you interested in beacons, finally I have done some more work on the PIC controlled beacon.

The rearranged second version has sprung into life, I have the menu system on the display! This paves the way for the extra features like normal/QRSS modes, electronic tuning via menu and voiceprint text.

For a while I was wondering if it would ever be completed, but now I feel more positive about it. This is a significant milestone for the version that will actually be put up in the club shack and transmitting constantly!

Link:
http://www.facebook.com/group.php?gid=352608283443#!/group.php?gid=352608283443

Check out the latest photos to see progress. Please join the group if you are interested.

Some photos for those with a phobia of stalkbook:

Breadboard prototype of beacon using PIC 16F627
http://dl.dropbox.com/u/5626002/Beacon/prototype.jpg

Display and menu system made for editing variables like speed and the message.
http://dl.dropbox.com/u/5626002/Beacon/displayandmenusystem.jpg

Heater assembly for the oscillator module
http://dl.dropbox.com/u/5626002/Beacon/oscheaters.jpg

Inside completed oscillator module - it is a Colpitts oscillator and has a PWM DAC for electronic tuning, a FET buffer and emitter follower for eliminating pull
http://dl.dropbox.com/u/5626002/Beacon/insideoscmodule.jpg

Waterfall showing the first text from the voiceprint code - note mistake on C bitpattern
]http://dl.dropbox.com/u/5626002/Beacon/workingvoiceprint.jpg

2nd prototype board with 16F628 constructed up to 2nd PA driver. There is room left for a 5W IRF510 PA and decent LPF
http://dl.dropbox.com/u/5626002/Beacon/boardwith2ndPA.jpg

View inside beacon case with temporary 20m lpf filter fitted
http://dl.dropbox.com/u/5626002/Beacon/caseopen20mlpf.jpg

Hastily taken photo showing it all fits without shorting out!
http://dl.dropbox.com/u/5626002/Beacon/itallfits.jpg

There's still some firmware issues to sort out. DFCW is broke and a few loose ends need tidying up, but nothing that is going to take significant effort to complete.

It has CW mode, voiceprint mode, DFCW mode and QRSS versions too, with all appropriate settings accessible via the menu and stored in EEPROM. The transmitted text string is editable too. It has a clock, with on/off timer function, a timed backlight and oscillator module heater control. Most functions are done via interrupt, the main loop just deals with menus and printing to the screen. The 2K of ROM in the 628 instead of the 1K in the 627 made a LOT of difference. I had to optimise the code a lot to fit into 1K.

mw0uzo
12-16-2010, 08:49 PM
Fixed a load of bugs and took the plastic wrap off:

Nice and shiny!
http://dl.dropbox.com/u/5626002/Beacon/bare.jpg

Closer oblique view
http://dl.dropbox.com/u/5626002/Beacon/bareoblique.jpg

Screen closeup
http://dl.dropbox.com/u/5626002/Beacon/barescreen.jpg

K7SGJ
12-16-2010, 08:58 PM
You did a very nice job on the construction.

KC2UGV
12-16-2010, 08:58 PM
Nice project... I'm grouping the book on face :) (Joining the facebook group)

mw0uzo
12-16-2010, 09:07 PM
Thanks for your comments :)

Was trying to code in some rotation routines for switching the voiceprint between normal and QRSS modes while also looking after baby this evening.... did not go well. Baby was fine, only a few grizzles. The asm code on the other hand got deleted out of frustration. Hopefully attempt #2 will work out better..

KC2UGV
12-16-2010, 09:11 PM
BTW, how long did it take you to ramp up on the PIC microcontroller? I'm working on another SBC solution, and looking at a PIC-based SBC.

mw0uzo
12-16-2010, 09:32 PM
BTW, how long did it take you to ramp up on the PIC microcontroller? I'm working on another SBC solution, and looking at a PIC-based SBC.

SBC? I think I'm being slow - is this something to do with your ethernet linked project?

PICs are ok. Instruction set is crap. Limited stack depth of 8 CALLs is a PITFA, especially if your main loops and interrupt routines become complicated. Documentation is good. There are much better microcontrollers out there. I used a PIC because I had a programmer kit with a 16f627, which in hindsight was a bloody crap reason and I should have slapped myself hard and chosen a decent microcontroller. Cumulatively, there is probably 3 or 4 solid weeks of coding in the beacon, because i like things being nice and having features and displays etc and not having to be reprogrammed to change anything out in the field. I also like to write everything from scratch, so no time saving libraries used!

KC2UGV
12-16-2010, 09:34 PM
SBC? I think I'm being slow - is this something to do with your ethernet linked project?


Sorry, Single Board Computer :)



PICs are ok. Instruction set is crap. Limited stack depth of 8 CALLs is a PITFA, especially if your main loops and interrupt routines become complicated. Documentation is good. There are much better microcontrollers out there. I used a PIC because I had a programmer kit with a 16f627, which in hindsight was a bloody crap reason and I should have slapped myself hard and chosen a decent microcontroller. Cumulatively, there is probably 3 or 4 solid weeks of coding in the beacon, because i like things being nice and having features and displays etc and not having to be reprogrammed to change anything out in the field.

Hm... Something to think about. Thanks :)

NQ6U
12-16-2010, 09:38 PM
Looks slick, Dan, nice job. SBC means "single-board computer."

As far as microcontrollers go, you might want to try the AVR series for your next project. I'm far from expert, but I've played around with them a bit and if I can figure out how to write code for them, anyone can.

mw0uzo
12-16-2010, 09:50 PM
Looks slick, Dan, nice job. SBC means "single-board computer."

As far as microcontrollers go, you might want to try the AVR series for your next project. I'm far from expert, but I've played around with them a bit and if I can figure out how to write code for them, anyone can.

Thanks. My next computer controlled project will cetainly be moving away from the 16f series of PICs. ATMEL AVR looks promising, several people have recommended them :)

mw0uzo
12-16-2010, 09:56 PM
Hm... Something to think about. Thanks :)

Also, data lookup tables are implemented in a wasteful fashion. There's no proper indexing. Control registers and memory are paged, so this can make things annoyingly complicated when you start to fill up memory with variables.

N8YX
12-17-2010, 05:22 AM
What are you using for a PIC programmer - both the editor/assembler and the hardware itself?

I've been playing around with a DDS VFO unit which uses an AD 9851 and a BASIC Stamp but I'm starting to run into space constraints. A PIC may be better for what I'm looking to do.

mw0uzo
12-17-2010, 05:51 AM
What are you using for a PIC programmer - both the editor/assembler and the hardware itself?

I've been playing around with a DDS VFO unit which uses an AD 9851 and a BASIC Stamp but I'm starting to run into space constraints. A PIC may be better for what I'm looking to do.

Its a Velleman k8048. Just using a text editor, assembler and the hardware.

Not familiar with the BASIC stamp - but whatever you use control the DDS in interrupts triggered from the tuning control and the display in the main loop and it'll be nice and smooth :)

If controlling the DDS is particularly CPU intensive, then display update will take a back seat in a nice way without making the tuning sound weird when quickly tuning past a carrier. It will also be self limiting, so if you tune really quickly, it will max out the CPU at the maximum tuning rate, while ocassionally updating the screen.

You can notice exactly these effects on the big commercial rigs.

mw0uzo
12-17-2010, 09:17 PM
Got the QRSS textprint mode working. Had to write routines to mirror and flip the character data so it displays properly in QRSS grabbers. Really not as easy as it sounds, as it totally contradicted the way the textprint routine worked.

http://dl.dropbox.com/u/5626002/Beacon/qrssworking.jpg

Can I Haz High Rezolution Font Plz?
- No.

KC2UGV
12-17-2010, 09:47 PM
Got the QRSS textprint mode working. Had to write routines to mirror and flip the character data so it displays properly in QRSS grabbers. Really not as easy as it sounds, as it totally contradicted the way the textprint routine worked.

http://dl.dropbox.com/u/5626002/Beacon/qrssworking.jpg

Can I Haz High Rezolution Font Plz?
- No.

There is no way to increase the dot count per character a little even? 1 more pixel wide, and one more tall would make legibility much easier, or even using something like what Feld Hell does. (1 full line, 1/2 line on top and bottom).

mw0uzo
12-17-2010, 09:54 PM
There is no way to increase the dot count per character a little even? 1 more pixel wide, and one more tall would make legibility much easier, or even using something like what Feld Hell does. (1 full line, 1/2 line on top and bottom).

Yeah one more pixel vertically and horizontally is possible without gobbling more ROM. That's it though, I only have 2kB of space for data and program and each byte is precious! Especially since i have not much left and another menu item and a few short routines to add.

Also not sure why the legibility is so bad on that FFT. My receiver seems to be adding some distortion and the FFT resolution isn't that great either.

KA5PIU
12-18-2010, 12:07 AM
Hello.

A question.
Why a crystal oscillator with a heater and not a TCXO?
Pure sinewave TCXO reference sources are cheap.

mw0uzo
12-18-2010, 05:34 AM
Hello.

A question.
Why a crystal oscillator with a heater and not a TCXO?
Pure sinewave TCXO reference sources are cheap.

Good question. A TCXO would have been excellent inside that little heated box. Not sure what scope there is for adding varicap tuning, but it would have been much less temperature sensitive than the discrete oscillator is. Just because really - i wanted to see how stable it was with bog standard components. It turns out not that stable. But stable enough for a simple beacon that will end up in a shed, exposed to wide ranges of temperature. Without the heater, it would have been all over the place. Its temperature sensitivity is about 1Hz per degree!

mw0uzo
12-18-2010, 02:27 PM
I've increased the text size vertically by one pixel. Still having trouble getting good print in the QRSS grabber. Played around with FFT and sample rate settings with a small amount of success but no joy.

Not sure what it is - maybe the line scanning is blurring out the pixels?

Also can't remember what settings I used to get the picture posted above!

mw0uzo
12-18-2010, 04:41 PM
Taller font in standard mode
http://dl.dropbox.com/u/5626002/Beacon/taller%20font%20std.bmp

Taller font in QRSS mode
http://dl.dropbox.com/u/5626002/Beacon/taller%20font%20qrss.bmp

KC2UGV
12-18-2010, 05:58 PM
In QRSS, it looks very readable now :)

KA5PIU
12-18-2010, 06:19 PM
Good question. A TCXO would have been excellent inside that little heated box. Not sure what scope there is for adding varicap tuning, but it would have been much less temperature sensitive than the discrete oscillator is. Just because really - i wanted to see how stable it was with bog standard components. It turns out not that stable. But stable enough for a simple beacon that will end up in a shed, exposed to wide ranges of temperature. Without the heater, it would have been all over the place. Its temperature sensitivity is about 1Hz per degree!

Hello.

The TCXO is your reference to a PLL.
You can than run a VCO and put it where it needs to be, the entire circuit would fit inside that box with room to spare, and you could forget about heating it.
If built "Tinkertoy" style, the entire oscillator section will fit in the space of a 9 volt battery, buffer, regulator, the whole bit.

mw0uzo
12-18-2010, 07:36 PM
Hello.

The TCXO is your reference to a PLL.
You can than run a VCO and put it where it needs to be, the entire circuit would fit inside that box with room to spare, and you could forget about heating it.
If built "Tinkertoy" style, the entire oscillator section will fit in the space of a 9 volt battery, buffer, regulator, the whole bit.

Show me the way my friend :)
I know the theory behind PLLs, but have never built one. Is it really that easy to build a simple one?

KA5PIU
12-18-2010, 08:45 PM
Show me the way my friend :)
I know the theory behind PLLs, but have never built one. Is it really that easy to build a simple one?

Hello.

You are in luck, I love to play with RF circuits!
This gets you in the ballpark.
http://www.circuitstoday.com/phase-locked-loop-ics
You will need to understand the crystal oscillator, the foundation of this project.
http://en.wikipedia.org/wiki/Crystal_oscillator
I very much prefer a TCXO, and Fox has proven themselves.
http://www.foxonline.com/stndvcxotcxo.htm
Now, remember that there are sine wave TCXO units and digital, or square wave, TCXO units.
With the correct IC/TCXO/VCXO you can cover whatever frequency range needed.
What is important to remember is that stability is a function of not only the base oscillator and IC resolution but also how for off you are in reference to your base oscillator.
The more you try to cover will also affect stability.
If you just want one, give me the specs after the new year and I will plop one together for you.

mw0uzo
12-19-2010, 02:09 PM
Hello.

You are in luck, I love to play with RF circuits!
This gets you in the ballpark.
http://www.circuitstoday.com/phase-locked-loop-ics
You will need to understand the crystal oscillator, the foundation of this project.
http://en.wikipedia.org/wiki/Crystal_oscillator
I very much prefer a TCXO, and Fox has proven themselves.
http://www.foxonline.com/stndvcxotcxo.htm
Now, remember that there are sine wave TCXO units and digital, or square wave, TCXO units.
With the correct IC/TCXO/VCXO you can cover whatever frequency range needed.
What is important to remember is that stability is a function of not only the base oscillator and IC resolution but also how for off you are in reference to your base oscillator.
The more you try to cover will also affect stability.
If you just want one, give me the specs after the new year and I will plop one together for you.

VCO frequency would be 28.0Mhz to 28.5Mhz with quite fine steps for doing the textprint, minimum would be enough to fit 8 or 16 steps in the typical width of a QRSS beacon signal. The current 1 bit PWM DAC actually has a very fine resolution, 10bits in around 1.5kHz. 8 bits are only used at the moment. And of course it only needs one pin off the PIC - a serial input PLL ic would be ideal.

mw0uzo
07-18-2011, 08:14 AM
The project is back! 28.275Mhz crystal fitted, 5W PA fitted, 10m LPF fitted. The firmware's feature list has been fixed and now only bugfixes are neccessary.

FB want to archive my group, so could a member post on the wall and click the link Ask admin to upgrade group. Then I can put up some more photos and stop the group from disappearing into the oblivion :)