Pages

Showing posts with label Amateur Radio. Show all posts
Showing posts with label Amateur Radio. Show all posts

Monday, January 27, 2025

Understanding RSSI

 Understanding RSSI (Received Signal Strength Indicator) can be a confusing topic to understand how strong the radio / wifi signal is to your device. Here is a great chart to help:

 

 I often add RSSI feedback from my ESP8266 devices so that I can confirm that they have good signal strength where I place them.

 

Sunday, November 1, 2015

VE6RBN-1 Back Online!!!

Wow!

My didipeater VE6RBN-1 has been offline for sometime and I didn't notice it.....

It was transmitting fine, but not digipeating the packets it received over the air...

Apparently my troubleshooting skills are really, really rusty because I checked out the complete TNC and radio, before looking that the obvious problems like wiring....


There was a broken connection in the 3.5mm connector that plugs into the Yaesu FT-60 radio and I needed to resolder it.
The brown wire in the picture above sends the received data from the radio to the TNC, and so mine was not able to hear any transmissions.

Yeah, I know that I should use proper wire, not CAT5 solid core, but that's what was on hand to make up the cable.....

Thanks for visiting,
Robin

Saturday, March 7, 2015

Update on posting to aprs.fi

Things have been quite hectic around here for the last few weeks so I haven't had a chance to post. I been asked to add some additional detail to the process I use to send my house / outdoor / & garage temperatures to aprs.fi.

I've updated my git repository (www.github.com/robingreig/raspi-git/aprx) with the latest files.
***** aprx.conf is now my configuration file with all of the custom beacon files included *****

beacon01.txt is the actual beacon file that transmits the temperatures & is beaconed every 10 minutes
T#136,22.5,38.7,15.7,0,0,00000000
T# = Telemetry
136 is my unique number (0 to a maximum of 999) each day.
***I take temperature readings every 10 minutes and save them to the file, then I take the  # of minutes since midnight for this beacon file / 4 to give me a unique number and copy that to this text file
So the unique number for my first beacon file should be 10 minutes past midnight / 4 = 2
Second unique number for the second beacon file = 20 minutes / 4 = 5
Since there are 1440 minutes in a day (24 hours x 60 minutes) / 4 my maximum beacon number would be 360 each day before it resets.
22.5 = House Temperature
37.7 = Outside Temperature + 40
*** Remembering that the number sent has to be between 0 & 255, if it is cold and I have a negative temperature, it won't send properly. So, worst case my outside temp would be -40C, so I add 40 to the outside temp so even worst case, my number would be 0. Then within my equations text file, I subtract 40 off the number to return to the actual outside temperature.
15.7 = Garage Temperatur
0,0,00000000 are additional values that are not used, but in my experience I needed to add them to the string for it to be recognized properly.

beacon02.txt is the parameters file and is beaconed every 120 minutes
:VE6RBN-1 :PARM.House Temp,Outside Temp,Garage Temp
This is a static text file that is beaconed, it does not change, since my parameters don't change

beacon03.txt is the units of measure file and is beaconed every 120 minutes
:VE6RBN-1 :UNIT.Deg C,Deg C,Deg C
This is a static text file as well and doesn't change.

beacon04.txt is the equations file and is beaconed every 120 minutes
:VE6RBN-1 :EQNS.0,1,0,0,1,-40,0,1,0
There are 3 variables sent for every parameter
House Temp (first set of 3) = 0, 1 , 0
Outside Temp (second set of 3) = 0, 1, -40
Garage Temp (third set of 3) = 0, 1, 0
First number of the set is used if we want to square the variable ( which I don't need to do)
Second number is a multiplier (I don't want to multiply my value, so I set it to 1, value x 1 = value)
Third number is a value to add to your variable.
Remembering that I added 40 to my outside temperature, here I subtract 40 from my outside variable to bring the value back to where it should be.

The only other point I wanted to bring up was that I haven't had time to experiment with sending these values out over the air, so I've set my 3 static beacon files (beacon02, beacon03, & beacon04) to be sent out over the internet only. As time allows I want to play with sending this information out over the air in a way that will be displayed properly.

Thanks for reading,
Robin

Sunday, February 8, 2015

Posting Temperature on APRS.fi

I've been working on understanding how telemetry data is sent via APRS. I found a good link on the APRS Site.

It showed me the format of the Telemetry String: T#sss,111,222,333,444,555,xxxxxxxx.

T# defines the string as a telemetry string.

They referred to the first set of numbers (sss) as the serial number and I found that it had to be a unique number from 1 - 999, each day.
I take that to mean that one could only send 999 telemetry packets over the course of the day.

The following 5 groups (111,222,333,444,555) are 5 different 3 digit, analogue values that need to be between 0 - 255.

And the final 8 are binary values which could show (open doors, devices on/off, etc)

So the first challenge I had was to determine how to setup a unique 3 digit number for each transmission, that would reset each day. I decided to go with time.
There are 24 hours x 60 minutes = 1440 minutes in a day, so that is more than 999 & won't quite work.
But I could take the total minutes of the day and divide it by 4.
Here is the Python code that I'm using:
I use the "if DEBUG > 0:" statements to print out values to help me debug a problem. Once it is working properly, I set DEBUG to 0 so they won't print during the execution of the program.

  aprs_hour = int(time.strftime("%H"))
  if DEBUG > 0:
    print "aprs_hour: ", aprs_hour
  aprs_minute = int(time.strftime("%M"))
  if DEBUG > 0:
    print "aprs_minute: ", aprs_minute
  aprs_time = int((aprs_hour * 60) + (aprs_minute)) 

The second challenge that I encountered was the outside temp.
Initially I expected to send the raw value with no problem.
February in Calgary doesn't generate positive values (grin) and so I was stuck for a bit when I saw the correct numbers being sent (-13.6 to -15.0 deg C on the day of my test) but the graph didn't move off of 0.
Then I remembered the values needed to be between 0 - 255.
Assuming the coldest temp of -40C I simply added 40 to the existing temp to bring it to a positive value and then had to figure out how to bring it back to the actual values in aprs. 

After further research, I found out about the EQNS aprs string.
Each analogue value is placed into a quadratic equation and one can send the values to modify it.
There are 3 numbers sent for each analogue value as follows:
EQNS.abc,def,ghi,jkl,mno
Since analogue value #2 is for my outside temperature, there are 3 values d, e, f that will be placed in the following equation: (Value of #2 x d2) + (Value of #2 x e) + f
So in my case of the negative outside temp, I converted it to a positive by adding 40 to it before it was sent.
My numbers for Value #2 were 0,1,-40. 0 because I didn't want to square it, 1 because I wanted the value and -40 because I had added 40 to the original value, and now needed to subtract it. 

I've setup aprx to send out these 3 fields every 120 mins:
:VE6RBN-1 :EQNS.0,1,0,0,1,-40,0,1,0
:VE6RBN-1 :UNIT.Deg C,Deg C,Deg C
:VE6RBN-1 :PARM.House Temp,Outside Temp,Garage Temp

And I've setup the temperature beacon file to be sent out every 10 minutes.
T#199,23.3,31.2,15.5,0,0,00000000
The unique number (199 above) resets at midnight every day.
You can see the telemetry graphed here: VE6RBN-1 Telemetry
And you can see the raw packets here: VE6RBN-1 Raw Packets


Wednesday, January 21, 2015

Raspi & APRX

For some reason when I completed the assembly of my RaspiTNC, I couldn't get it to run with APRX software, yet I was able to get it running on XASTIR. So I knew that my transmit and receive was working fine.... and had assumed (correctly) that I had probably made a mistake in my configuration file. I've gone back now and revisited the APRX Software page and re-read the APRX Manual. This time around I still had issues, but with the help of the APRX-Software Google Group I was able to find my configuration problem (I had left the - in my APRSIS password, so it wouldn't connect). Also I have to say that using my portable APRS setup = ASUS tablet running APRSDroid & Yaesu VX-6R & Mobilinkd TNC makes it easy to test out my iGate configurations.

Wednesday, December 24, 2014

Portable APRS Unit

Here is a pic of my Portable APRS unit that I've also used to test my Raspberry Pi TNC setup to ensure it is working OK:

You'll notice the high quality blue elastic that holds the Mobilinkd TNC to the back of the Yaesu VX-6R radio (grin). The cable was also purchased from Mobilinkd and I'm running APRSDroid on my ASUS Android tablet. The tablet is connected to the TNC via a Bluetooth link. You can see the map displayed on the tablet, however I usually run it in log mode to see  all of the traffic that it receives or transmits.


Tuesday, December 23, 2014

Raspberry Pi TNC & APRS


I've finally got my RaspiTNC up and running on my Raspberry Pi. It is hard to tell from the screen, but I'm running Xastir APRS software. The APRS (Automatic Packet Reporting System) is a wonderful project led by Bob Bruninga, WB4APR, APRS. Essentially APRS is digital communications for Amateur Radio operators. Here is my home iGate station with Xastir running on the screen:


Here is a closer look at the radio and Rasperberry Pi & TNC:

The radio is showing APRS, which is the memory name for 144.390MHz, the North American APRS frequency.

A closer look at the brains of the system:

The red board is the RaspiTNC, & the green board just below is the Raspberry Pi. Just below that in the somewhat clear case is an external USB hub to power everything and below that is an 8 port switch to hook everything up. 
**** Please ignore the very, very poor job of soldering the capacitor & resistor to the 9 pin SubD connector on the RaspiTNC. This is what happens when you are in a hurry……
However I am happy to report that the TNC receives data packets via RF and transmits them to aprs.fi, and also receives packets from the internet and sends them out via RF.

You can see the APRS J-Pole antenna that I used in a post about 4 weeks ago. it is omnidirectional to provide fairly even coverage around Irricana.

If you want to see where my station is from anywhere in the world, click over to aprs.fi and track call sign VE6RBN-1 which will zoom right into my rig show here.

Thursday, November 27, 2014

APRS J-Pole Antenna mounted

Well, last week I was finally able to get up on the roof and mount my J-pole antenna which is tuned to 144.39MHz for the Amateur Radio APRS frequency.

It is mounted right above my Television Yagi antenna and time will tell if it interferes with our television signal.


Friday, November 14, 2014

Raspberry Pi TNC

As if one project isn't enough (Arduino running as a Mobilinkd TNC). I found this link for a TNC for my favorite platform, Raspberry Pi. (TNC-Pi)
Here is a pic from their website:
I've got a couple on order and will be playing with both the Arduino / Mobilinkd TNC as well as the RaspiTNC.



Tuesday, November 11, 2014

Mobilinkd TNC

Well, I'm really enjoying my Mobilinkd Bluetooth TNC piggybacked onto my VX-6 (got the idea from VE6AB, Jerry Clement).
The photo does not include the cable running from the TNC to the radio because I'm playing with another project that Rob Riggs of Mobilinkd has shared with everyone. Using an Ardiuno as a TNC

I was able to successfully download his .hex file into my Arduino Nano and now I'm in the process of wiring it up!





Friday, October 31, 2014

Installing the Kenwood TM-D710G

Well I chose today (Halloween) to install my Kenwood TM-D710G Dual Bank APRS Radio into my vehicle. The weather was nice for the kids out halloween'ing, and comfortable to be working on the vehicle.


I'll include some pics later to show the wiring from my battery, as well as the mounting of the head unit and the transceiver under the seat.


Wednesday, October 29, 2014

Car Antenna Setup

Well, I tried the TRAM 1181 several weeks ago when I was still using my Yaesu handheld and the coverage was less that that of my Larsen 5/8 wave. So I have stayed with the Larsen:


I drive a Hyundai Accent (Which I will never buy again, I have had the worst service from the Calgary dealer and absolutely no support from Hyundai Canada!!!)

With the new vehicles, the gap between the hood & fender of trunk & fender is very narrow. So I went with a Comet CP-5NMO Trunk Lip Mount which uses 18" of RG-174 at the mount to allow clearance for the cable to enter the vehicle, and then converts back to 17' of RG-58 to reach your radio.


This arrangement is working out well for me.

Wednesday, October 1, 2014

Looking for a mobile antenna

I'm shopping for a new 2m/70cm mobile antenna, and it looks like the most economical route is a TRAM 1181

Jerry, VE6-AB has had good luck with his, so I'm interested to see how it performs on my mobile.

Thursday, September 25, 2014

Been away for awhile...

Well, I've been away from the Amateur Radio world for a number of years, but a couple of factors have "encouraged" me to get re-involved.....

First, I work at SAIT (Southern Alberta Institute of Technology) and they have an Amateur Radio Club. Membership has been dwindling and so I'm one a few hams that still access the shack. Also, CARA (Calgary Amateur Radio Association) has a VHF and UHF Repeater here on campus and so they need access to be able to service their gear.

Secondly, I have a friend who has been involved for may years, Jerry Clement, VE6AB and he has been sharing with me the advances they have made in APRS and other VHF digital technology. So I think it's time for me to check out how I can merge my interest in Amateur Radio with my interest in Raspberry Pi Single Board Computers.