Wiznet APRS Client/Server
Wiznet APRS Client/Server
PROJECT DESCRIPTION
PROJECT OVERVIEW
This project uses a Wiznet W5100S-EVB-pico board connected to a Radiometrix HX1 144.390mhz APRS transmitter, and a Neo-6M-GPS unit for use as an APRS tracking and emergency signaling device.? I will use a raspberry pi 4 for programming the pico evb using C libraries.? The user interface will be a web page server on the pico.? The server will be able to send out custom messages to the APRS system along with GPS location information. The main controller is the Wiznet W5100S-EVB-pico, that is basically a raspberry pi pico combined with the Wiznet 5100s ethernet board. The following is the pinout of the board. The APRS network in North America uses a frequency of 144.390 MHz and Radiometrix makes a small module that transmits on that frequency for amateur radio operator use.? I am a licensed operator, and my call sign is KD9QOG. http://www.radiometrix.com/content/hx1 To get GPS coordinates I am using a NEO-6M-GPS board that will upload GPS data to the pico through a serial port. I started out with APRS tracking software from Thomas Glau DL3TG (modified April 2022 per GNU General Public License) at: https://github.com/eleccoder/raspi-pico-aprs-tnc He uses a filter on one of the pico GPIO lines to generate the audio sinewaves required to encode the APRS data. This is a schematic of the filter circuit: This is a picture of the prototype system. I am using Google maps APRS FI tracking software to display the GPS location of the system on a map. https://aprs.fi/ I encoded the call sign KD9QOG-3 to distinguish this module from other APRS radios I use. This is a raw APRS packet: 2022-04-21 21:52:25 CDT: KD9QOG-3>APZ00A,WIDE1-1,WIDE2-1,qAR,W9LRT-2:!/9KQx8`L^O???/A=000883HELLO?WORLD! Here is the packet as received by my handheld radio APRS data is controlled by specifications from the APRS organization. http://www.aprs.org/SOFTWARE
The software is a combination of the APRS TNC software example from github.com/eleccoder, github.com/wiznet/RP2040-HAT-C/tree/main/examples/http, and a custom HTML server webpage with the APRS parameters to be sent to the transmitter. https://github.com/eleccoder/raspi-pico-aprs-tnc https://github.com/Wiznet/RP2040-HAT-CSCHEMATIC
IMPLEMENTATION
HTML CODE<!DOCTYPE html> <html lang=\"en\"> <head> <meta charset=\"UTF-8\"> <title>HTTP Server Example</title> </head> <body> <h1>APRS Tracker and Emergency Beacon</h1> <h1>Main Menu</h1> <br> <h2>IP: 192.168.1.203</h2> <a href=\A><button>APRS Send</button></a> <a href=\a><button>APRS Beacon</button></a><br><br> <h1> </h1> <form action="/action_page.php"> <label for="srcid">Source ID:</label> <input type="text" id="srcid" SourceID="KD9QOG" value="KD9QOG"><br><br> <label for="dstid">Destination ID:</label> <input type="text" id="dstid" DstID="CQCQCQ" value="CQCQCQ"><br><br> <label for="path1">APRS Path1:</label> <input type="text" id="path1" Message="WIDE1-1" value="WIDE1-1"><br><br> <label for="path2">APRS Path2:</label> <input type="text" id="path2" Message="WIDE2-1" value="WIDE2-1"><br><br> <label for="Latitude">GPS Latitude:</label> <input type="text" id="Latitude" Message="GPSlat" value="41.5"><br><br> <label for="Longitude">GPS Longitude:</label> <input type="text" id="Longitude" Message="GPSlon" value="-86.2"><br><br> <label for="Altitude">GPS Altitude:</label> <input type="text" id="Altitude" Message="GPSalt" value="290"><br><br> <label for="APRSmessage">APRS Message:</label> <input type="text" id="APRSmessage" Message="APRSmessage" value="Hello APRS World!"><br><br> <input type="submit" value="Submit Changes"> </form> </body> </html>
Comments
Write