Posts Tagged ‘Arduino’
Designing PCB’s
It seems that most of us hams make a lifelong commitment to learning. Mainly about technical stuff to do with the hobby but occasionally about yourself. Yesterday I learnt that designing a simple PCB for my shack clock was going to take longer than a couple of hours.
Starting at the beginning I did the usual Googling about to find the right piece of software that would “easily” and “simply” turn my ideas into reality (I’m paraphrasing the marketing blurb but you know the kind of thing). I must be in a minority but this isn’t simple or easy. My shack clock is simple a radio controlled clock that receives a signal from the MSF 60KHz transmitter in Anthorn, Cumbria. No more than 30 miles from the house. An Arduino microprocessor converts the signal from the receiver into a simple LCD display. Currently the clock runs from a USB cable into the Arduino and into a heap of cables and wires on the desk. It has a certain aesthetic quality but not one you’d particularly call ‘3 year old boy proof’ (Sam likes to pull the wires out).
So downloading the freeware version of Eagle and firing it up, running through a bunch of tutorials and within a few short hours I had a schematic up on the screen. Even after wrestling about with some of the vast array of included libraries and checking of specs of things on various websites and ‘guessing’ my way through I think the schematic looks about right.
For this part of the project the Arduino had been replaced with the barebones microprocessor from Hobbytronics. Switching to the board layout gives a complete mess of wires and components that need shifting round. I now realise that this isn’t going to be a quick design. Normally at this point I’d share a picture of the work in progress. This time I will keep it to myself, until I can stop the board looking like a, well I don’t really know what it looks like but I know it isn’t a PCB yet.
Onwards and upwards!
Progress
Recently it’s been quiet here on Radio Artisan and I’ve been somewhat absent on AmateurRadio.com. The usual excuses apply, with work consuming most of my intellectual energy and time. It’s unfortunate we have to work so hard to live and have some fun. In this culture we seem to be on an endless treadmill that goes faster and faster, but goes nowhere. But needless to say I’m still alive and have been actually doing some amateur radio stuff these days.
Daily I receive correspondence about my CW Keyer and Rotator Controller, most of it coming from Europe and Australia. Originally with the Rotator Controller I just wanted to interface my Yaesu rotator to the computer, but it’s gone beyond the original scope with notes from folks interfacing homebrew rotators and some amateurs with really cool ideas. I continue to write bug fixes and minor feature updates for the CW Keyer, which now has two parties offering hardware kits.
The main project garnering the most attention right now is the Arduino Antenna Tuner. It’s going slower than anticipated, but I’m pleased to say I’ve been making some progress with a good portion of the tuning network built, the I2C interface hardware working, and the frequency counter prescaler built on the hardware prototype. I’m currently working on an SWR bridge and I’m having some issues. I’ve built a Bruene bridge and a Tandem Match bridge, and both have rather mediocre directivity, in the neighborhood of 12 to 14 dB.
Both of my SWR bridge prototypes are “good enough” to use for software coding and testing, however I want the final product to be better. Any feedback from anyone with hands-on experience building SWR bridges would be appreciated. Once I get the hardware prototype to a reasonable level, I can dive into the coding. Some of this work was completed earlier this year as I wrote some SWR reading and calculation subroutines and some LCD interface code. I’m really giddy to get coding. Although I really like building stuff I guess I’m more of a software guy than hardware. I find algorithms, protocols, networking, and interfacing exciting.
I continue to enjoy working with folks, helping them get code working and talk about ideas. It’s neat to be able to email someone halfway around the world a code snippet and have them load it up on their hardware, use it, and have fun with it. Although the Internet has made the world seem smaller, and amateur radio is no longer the only way to talk to folks in far off lands, amateur radio adds another dimension to the Internet and vice versa giving us more opportunity to help each other and promote international goodwill.
Arduinos in Space and On The Air
Recently the Arduino has been making its way into the skies. ArduSat is a project to build and launch an Arduino-powered satellite into space. Here’s a video describing the project:
A little closer to Earth, Michael Doornbos, N4LNX and founder of Evadot, is working on an Arduino-based board for using in balloon payloads. The unit is called FireFly and features wireless capabilities, a data acquisition and storage subsystem, and is solar power ready. It’s intended to pack a lot of functionality in one easy-to-use unit and save time and effort for those building payload computers for high altitude balloon experiments.
Here’s a short video showing reception of data bursts from a FireFly on a Yaesu FT-857:
This project is really timely considering the recent increase in interest in balloon experiments in amateur radio.
Code academy
As I am messing around with Arduino and its various bits and pieces I noticed quite quickly that whilst I can look through a bunch of code and pick out familiar items like serial.print and lcd.print. They seem fairly self explanatory to me. Other commands and, I’m going to call them words but you’ll understand why in a minute, just seemed a world away from my vocabulary.
My background is mechanical engineering, so limits and fits, materials, stress and strain are the areas of vocab I’m familiar with. Calling functions, variables and strings needed a bit more explanation in my world and previous attempts at understanding this went a bit wrong as there the language is the barrier. By language in this sense I mean C++, VB etc. See its getting complicated already!
If its all getting too much for you then try Codeacademy. I’ve had a few lessons with the primary idea of learning the lingo and nothing else really. The lessons are very well structured and the little exercises that go with them as well as the projects help to test your knowledge. I’m still finding that its worth while writing things down in a notebook but understanding the difference between a function and a variable has helped me get my head round a new subject for me. I will never be a code ninja but being able to understand more than a few keywords in someone else’s code will undoubtedly help me get into the position where I can look through other peoples code and understand what is going on as well as adapt it if necessary for my own purposes.
Raspberry Pi (almost) available
Yesterday I had an email from Raspberry Pi saying that today there would be an announcement about the the keenly awaited device. Today I took a look at their website and found out that they are almost ready to ship the low cost ARM based devices that run a Linux called Fedora. the specs are available at both RS and Farnells, two component suppliers here in the UK.
In case you couldn’t wait to click through then blow are the specifications lifted straight from the RS website. From what I can gather there will be two variants, one called model A and the other called model B aptly enough. The difference being the addition of LAN and some other undisclosed features on the Model B.
The Raspberry Pi is a credit-card sized computer board that plugs into a TV and a keyboard. It’s a miniature ARM-based PC which can be used for many of the things that a desktop PC does, like spreadsheets, word-processing and games. It also plays High-Definition video.
Features
- Broadcom BCM2835 700MHz ARM1176JZFS processor with FPU and Videocore 4 GPU
- GPU provides Open GL ES 2.0, hardware-accelerated OpenVG, and 1080p30 H.264 high-profile decode
- GPU is capable of 1Gpixel/s, 1.5Gtexel/s or 24GFLOPs with texture filtering and DMA infrastructure
- 256MB RAM
- Boots from SD card, running the Fedora version of Linux
- 10/100 BaseT Ethernet socket
- HDMI socket
- USB 2.0 socket
- RCA video socket
- SD card socket
- Powered from microUSB socket
- 3.5mm audio out jack
- Header footprint for camera connection
- Size: 85.6 x 53.98 x 17mm
Price £21.60
All this for just £21.60! I sound like an advert but if the blurb matches the ability to programme the little blighter (easily) then this must be a concern for the Arduino crowd. Before we all get too excited though the RS website allows you to register interest and you’ll be getting one each at first.
MSF Receiver project
Just a quickie to say that I’ve started a new project page to show you how I got on making an accurate clock with the MSF 60Khz time signal, an Arduino and someone elses code. The detail is all here
What’s Ahead for Arduino
The Arduino project announced some news at MakerFaire 2011. Here’s a video of a talk from Massimo Banzi:
In a nutshell, they are working on a new release of Arduino called “1.0″ or the “1.0 Core” which is going to break some things, but also set the stage for a more consistent and stable platform going forward. There are new hardware revisions for the Uno and Mega boards. The most notable change with these boards is the addition of several pins to support a two wire interface (I2C) bus which will enable much easier and standardized interfacing to shields. There is also a new Arduino that has an Ethernet interface built in, rather than having to use a separate Ethernet shield. (Shields are optional boards you can stack on Arduinos for additional capabilities.) I’m very interested in this board as it also has an SD slot for memory storage. I’ve been toying with the idea of writing a logger module for the keyer project. Why? Because I can and it’s never been done :-)
The project is also releasing a WiFi shield which opens up a lot of possibilities. Another dream geek project I’ve had has been to place Arduinos in various places throughout the house and the yard for doing various things like reporting the temperature or sensing intruders. The Arduinos could network via WiFi and report to each other or back to the mothership.
All and all it’s an exciting time in Arduino land. If you haven’t tried using one of these little boards, you’re missing out on some fun. The applications in amateur radio are endless and with the power and functionality steadily increasing, I expect in a few years we’ll be doing things like DSP or perhaps have a rig-on-a-shield.