Blog

Next Meeting 2/1/2012

Our next meeting will be after school on Wednesday, Feb. 1, 2012.

0 comments

HAB Launch Date!

The HAB will be launching from West Hartford around 11am on Saturday, July 9, 2011. The burst height is around 60,000 feet. Flight should last for 2.5 hours and possibly land in Ledyard. Here are the frequencies:

APRS Data (GPS, Altitude, Temperature): 144.575 MHz
Beacon and SSTV: 144.660 MHz

Phone and Morse code messages will be transmitted on 144.660 with a current SSTV picture. While the frequencies aren't in the recommended ARRL band plan areas for experimental, simplex, and data, they are (to the best of our knowledge) not an any repeater frequencies. The radios are limited to certain frequencies and we chose the ones most likely not to cause QRM.

The FAA has issued a NOTAM (Notice to Airmen) for the launch date:

!BDL 07/024 BDL AIRSPACE HIBAL BDL210020 SE BND REACHING FL600 WEF 1107091500-1107091800

0 comments

New GPS Arduino Code

int incomingByte = 0; // for incoming serial data

void setup()
{
// start serial port at 9600 bps:
Serial.begin(4800);
}

void loop()
{
// send data only when you receive data:
if (Serial.available() > 0) {
// read the incoming byte:
incomingByte = Serial.read();

// say what you got:
//Serial.print("I received: ");
Serial.print(byte(incomingByte));
}
}

0 comments

GPS Code

/**
*Gets input from GPS
*/

#include <NewSoftSerial.h>

//NewSoftSerial(in, out, inverted)
NewSoftSerial myGPS(2, 3, true); //for I/O from the GPS without interfering with Serial I/O
String s = ""; //For containing input from myGPS

//converts doubles to Strings, used in Longitude and Latitude parsing
String doubleToString(double d) {
String s = (int)d;
d = d - (int)d;
while(d != (int)d)
d = d * 10;
s += String(".") + (int)d;
return s;
}

int count(String str, String toCount) {
if (str.indexOf(toCount) < 0)
return 0;
int count = 0;
for (int i = 0; i < str.length();) {
if (str.substring(i, i+toCount.length()).equals(toCount)) {
count = count + 1;
i = i + toCount.length();
} else
i = i + 1;
}
return count;
}

//Splits String by a regex, needed for separating parts of $GPGGA
String* split(String str, String toSplit) {
String strs[count(str,toSplit)+1];
int i = 0;
for(;str.indexOf(toSplit) >= 0;) {
strs[i] = str.substring(0,str.indexOf(toSplit));
str = str.substring(str.indexOf(toSplit) + toSplit.length());
i = i + 1;
}
strs[i] = str;
return strs;
}

//Parses an hhmmss.ss
void parseTime(String time) {
Serial.print("Time: ");
Serial.print(time.substring(0,2));
Serial.print(":");
Serial.print(time.substring(2,4));
Serial.print(":");
Serial.print(time.substring(4));
}

//Parse a ddmm.mmmm
String parseLat(String latitude) {
if (latitude.length() == 0)
return "Unknown";
String str = latitude.substring(0,2) + "d " + latitude.substring(2,4).toInt() + "' ";
if (5 < latitude.length()) {
String sub = latitude.substring(5);
double seconds = static_cast<double>(sub.toInt());
double tenths = 1;
for (int i = 0; i < sub.length(); i = i + 1)
tenths = tenths * 10;
seconds = seconds / tenths;
seconds = seconds * 60;
str += doubleToString(seconds) + "\"";
}
return str;
}
//Parses a dddmm.mmm
String parseLong(String longitude) {
if (longitude.length() == 0)
return "Unknown";
String str = longitude.substring(0,3) + "d " + longitude.substring(3,5).toInt() + "' ";
if (6 < longitude.length()) {
String sub = longitude.substring(6);
double seconds = static_cast<double>(sub.toInt());
double tenths = 1;
for (int i = 0; i < sub.length(); i = i + 1)
tenths = tenths * 10;
seconds = seconds / tenths;
seconds = seconds * 60;
str += doubleToString(seconds) + "\"";
}
return str;
}

//Parses the $GPGGA for output
void parseGPGGA(String gpgga) {
if (!gpgga.startsWith("$GPGGA"))
return;
String* strs = split(gpgga, ",");
int sz = count(gpgga,",");
for (int i = 0; i <= sz; i = i + 1) {
Serial.print(strs[i]);
Serial.print(",");
}
//parseTime(strs[1]);
Serial.println();
}

//Set up serial ports
void setup() {
myGPS.begin(4800);
Serial.begin(115200);
}

//Get information and maybe output it
void loop() {
if (myGPS.available()) {
s += (char)myGPS.read();
}
if (s.endsWith("\n")) {
if (s.substring(0,6).equalsIgnoreCase("$GPGGA")) {
Serial.print(s);
parseGPGGA(s);
}
s = "";
}
}

0 comments

W1HLO in the News

Ham Radio Club in the Norwich Bulletin's NFA World Column

0 comments

Meeting 3/3/2011

The next meeting of W1HLO will be Thursday, 3/3, in the shack. We will discuss the project plan as well as antennas.

0 comments

School Club Roundup

W1HLO will be participating in the ARRL school club roundup today between 1pm and 3pm. Please come to the W1HLO shack if you want to participate.

0 comments

W1HLO HAB Experiment


The NFA Ham Radio Club will be developing a High Altitude Balloon (HAB) to go up to the Earth's stratosphere and come back down. During its flight, we will be programming an Arduino to record temperature, location, and altitude. These data will be also sent back down to Earth via amateur radio, using APRS. Digital cameras will take pictures on the way up and down. A SSTV camera will also radio pictures.
The kick-off meeting for NFA students is Thursday, February 17. We are aiming to finish and launch the HAB sometime in June.

Click to play

0 comments

NFA Ham Radio Club First Meeting of 2010

The NFA Ham Radio Club's first meeting of the 2010 school year will be Thursday, October 21st after school! We will meet outside the middle stairwell of Cranston and walk up to the ham shack for an informational meeting. See the video below to see our video announcement of the club. Zach KB1UMQ, president, and Josh KB1UMP, vice-president, are featured.

http://hamblen.norwichfreeacademy.com:8171/2010-10-14/NFA%20Ham%20Radio%20Club%202010%20Announcement.m4v

0 comments

Congratulations to KB1UMP and KB1UMQ!

Congratulations to Josh, KB1UMP, and Zach, KB1UMQ, on receiving their Technician licenses! Excellent work!


Mr. G

3 comments

Still Waiting for My Call sign!

Test blog with new account... and I am still waiting for My Call Sign to Appear in the FCC Database.
----Zach Rice

4 comments

Ham Club Featured in NFA World

0 comments

Congratulations to KB1UEI

Kurt, our first student to pass the Technician Class license recently received his call sign: KB1UEI. Congratulations, Kurt! Also, Mr. Girasoli received his General upgrade. This means that W1HLO can now operate with General privileges when Mr. Girasoli is present. The HF bands are now open! Students that don't have licenses will be able to work countries that have an amateur radio third party reciprocal agreement.

The next exam will be at NFA at 10:00am on June 5, 2010.

0 comments

HRC Activities - 1/13/2010

After reviewing the Technican exam, Kurt and Aaron had some time to experiment with Kurt's Ubuntu Linux computer. We plan on using this computer for packet radio.

http://hamblen.norwichfreeacademy.com:8171/2010-01-14/HRC%20Activities%20-%201_13_2010.m4v

0 comments

NFA Ham Radio Club Activities

Here's a brief tour of our activities on Dec. 16, 2009. We're listening to a QSO (conversation between amateur radio operators). Also, we're receiving a SSTV (Slow Scan Television) transmission from Martinique in the Carribian! We just finished reviewing material for the Technician license exam and it was time for some hands-on experience.

http://hamblen.norwichfreeacademy.com:8171/2009-12-18/NFA%20Ham%20Radio%20Club%20Activities.m4v

2 comments

Packet Radio and Loop Antenna

Hello all,

Here is some required reading for everyone. As we connected up our packet radio modems today, we need to learn how to use them! On the links page, I added a URL to an Introduction to Packet Radio. It is a good read on what a packet modem does and how to use it. Please read this (at least the first two chapters) before our next meeting. We'll be getting those two packet modems talking to each other!

For the loop antenna that we made today, here is a refresher. We reviewed two types of connectors used with antennas: PL-259 (male) and SO-239 (female). PL-259 connectors are usually attached to feeds to antennas and SO-239 connectors are usually on the back of an amateur radio. (In the case of one of our radios, the SO-239 connector was labeled as "ANT". Easy, huh?) Also, remember that an antenna connector has a "tip" and a "ring". The tip is what usually carries the radio energy received at the antenna. The ring provides the ground for the antenna, to ensure the antenna is effective. In the case of a feed (the wire between the radio and antenna), if the feed were coaxial the ring would act as a shield around the tip to reduce interference, much like your cable TV coaxial wire.

To make the loop antenna, we cut a piece of wire to a division of 2 meters, the wavelength of the frequency band we're working on. The division we chose was 1/4 wave, only because I didn't have much wire hanging around! A better length would've been 5/8 wave (1/4 wave antennas aren't that great in terms of efficiency), or 1/2 wave, or the best -- a full wave (which would require a 2m long wire). In our case 1/4 wave was enough since the radios are so close together. So, we took 1/4 of 2m, which equals 0.5m, the length of our 1/4 wave antenna wire. I had a ruler with inches, so we converted 0.5m (50cm) to inches (50cm / 2.54cm = 19.7) ~ 20 inches.

We cut a 20 inch piece of wire, soldered one end to the tip of a PL-259 connector and the other end to the ring of the PL-259 connector. A random wire antenna would've just had the wire connecting to the tip of the PL-259 connector and no connection to the ring. A loop antenna is more efficient (not only because ours was a division of 2m) because it makes a complete circuit, from tip to ring (ground).

Mr. G.

6 comments

Packet BBS Project Ideas

Ham Radio Club members, please add your ideas here for our packet radio BBS project. Please read the Packet Radio BBS project page first before adding a comment here. Thanks.

Mr. Girasoli

1 comment

First Announcement of W1HLO

The first announcement of the NFA Ham Radio Club is available on YouTube.

0 comments