¿ªÔÆÌåÓý

ctrl + shift + ? for shortcuts
© 2025 Groups.io

Re: PCB layout

 

Ok, I have updated the pcb layout with bridges for the rx/tx lines and also fixed that vcc was missing on the gps IO_line, from my pevious tests this system works fine with just 6 of the smalles solar cells (19x38) connected in series to vcc, there is no need for any fancy boost/buck/ converter, ldo or to solder a supercap to the board, it will moste likley with this simple setup have a startup at around 10-12¡ã solar angle if you set brownout on the 328 to 1.8V.

there would be great to incorperate a reset function from pin 9 on the gps to the 328 to pull low once every 10 min to reset the gps

Mikael


Re: PCB layout

 

¿ªÔÆÌåÓý

I¡¯ll upload your files to the site. You could modify your rx/tx lines to/from the GPS to the 328 with solder pads that can be connected after configuration and flashing of the firmware. Another option would be to use a teensy board for development , which has more serial lines and would also be a viable option without the memory and processing limits of the 328. But perhaps the current code could be streamlined by a better coder for more efficient use of resources on the 328. Thanks for the upload, good luck!

On Mar 20, 2019, at 5:46 AM, Mikael Dagman <mikael_dagman@...> wrote:

Hi, I have made a pcb of the layout, check for errors, especially RX / TX lines.

I cant upload them in the filesection so I have put them here?? if an admin would like to upload them.

I have a similar pcb made for the qrp-labs u3s fw so I could probably make a working tracker with this ino file by cuttin two traces in the original pcb and solder in thin wires instead.

Can a test board with just the 328 and the 5351 soldered in without the GPS work, or does the code stop if there is no responce from the gps?

Toto on the pcb , make a couple of solder bridges so one can reprogram the board without lifting the gps.


/Mikael


PCB layout

 

Hi, I have made a pcb of the layout, check for errors, especially RX / TX lines.

I cant upload them in the filesection so I have put them here?? if an admin would like to upload them.

I have a similar pcb made for the qrp-labs u3s fw so I could probably make a working tracker with this ino file by cuttin two traces in the original pcb and solder in thin wires instead.

Can a test board with just the 328 and the 5351 soldered in without the GPS work, or does the code stop if there is no responce from the gps?

Toto on the pcb , make a couple of solder bridges so one can reprogram the board without lifting the gps.


/Mikael


Re: HABalloon Project

 

Eduard,

That's good?to hear. I didn't have the script deal with GPS aging, with the cold temperatures at altitude you may see some variation in the internal timing of the Arduino after it is set. It's possible to have the script read the GPS on a schedule to update the internal clock after it's been set. I haven't done any testing to see how long or by how much the Arduino clock is affected by cold temperatures. It would be easy enough to update the code to do this though.

After I got the code working, I built a prototype with LiPo batteries and did ground testing. The script was doing what is was supposed to with those tests, but I never got around to launching a balloon. I wanted to build a proper system with solar charging and build a compact PCB to mount everything on, but never got around to doing?it. I have been busy with other aspects of life at the moment. I would be interested in hearing anyone's stories of success though.

Good luck.

Stephen

On Mon, Mar 18, 2019, 1:18 AM <yo9ict@...> wrote:
Steve,

I am not a programmer by career, mostly a hardware guy, but I got it working plus encoding the special WSPR telemetry format that the guys from the floater community are using.?

Now, have you done any GPS testing? How the library behaves when the GPS fix has aged and it is not valid anymore? Did you flew it??

Eduard


Re: HABalloon Project

 

Steve,

I am not a programmer by career, mostly a hardware guy, but I got it working plus encoding the special WSPR telemetry format that the guys from the floater community are using.?

Now, have you done any GPS testing? How the library behaves when the GPS fix has aged and it is not valid anymore? Did you flew it??

Eduard


Re: Any interest?

 
Edited

For me the advantage of HF was lower energy consumption and world wide coverage with widely available digital modes. The code is just a starting point not a solution for all situations, which is one of the reasons I choose to share it. The GPS code is simple, the functions are only to set the system time and determine location within the framework of the tiny GPS library. For these particular digital modes to work, accurate timing is needed.?

The components of the code are
1) control the radio
2) read the GPS, with that set the time, location, gridsquare, altitude, if time schedule criteria is met, send transmission.
3) read and calculate battery voltage and ambient temperature
4) encode telemetry data into digital modes using JTencode library

The code, when I last worked on it, months ago now was very early. Please feel free to make any improvements.


Re: HABalloon Project

 

Yes, that is correct. If course others could be used, but the code would have to be adapted accordingly.?


Re: HABalloon Project

 

Typo in the Hardware requirements :?- SI5352 module. It should be 5351.


Re: Any interest?

 

Steve,?

Hi. Just found your project. My HAB trackers are currently doing RTTY in 70cm band. Swapping the radio module is the only way to convert them to HF. For floaters, it is required we do HF or 2m APRS. Ordered a Si Adafruit board to start testing. At first glance, your code looks a bit naked on the GPS side of things. Will see what results I get.

73


Re: Any interest?

 

We are planning on getting a balloon up this summer. I have been working on software running on a Parallax Propeller and it has been working very well on WSPR mode.

I did originally want to use an Arduino Nano. You have a good code base to work with. I have already made many changes to it and hope to be testing within the week.

The Propeller doesn't require a synthesizer module because I can devote a cog to the transmit function and generate the frequencies directly on an output pin. But the prop is more expensive.

We will weigh the pros and cons of Arduino vs Propeller later.?

Steve, w8an


Re: Any interest?

 

Working toward launching my first balloon of any type.? Using some purchased Pi boards.? I plan to turn to the small and light payloads sometime this summer, but we will see how that goes.? Probably about as quickly as my other radio projects.
--
73 de AE8AT


Any interest?

 

It has been some time since I have updated or done any work on this project. It seems that there are a few interested people now since I first uploaded these files. Has anyone made any progress in building and testing their own balloon? I haven't lost interest in the project or the code, but time had been tight for me lately. Please post any updates and comments.?


Re: HABalloon Project

 

Standard telemetry format as it is coded in v0.3 is as follows, transmission on x minutes and x frequency:

WSPR - 00:02 -?14.097150 MHz - CALL, 4-digit locator, altitude (dbm format below)
FT9 - 00:05 -?14.097250 MHz - CALL, 6-digit locator
FT9 - 00:06 -?14.097250 MHz - CALL, altitude, voltage, speed, temperature (format below)
WSPR - 00:32 -?10.140250 MHz - CALL, 4-digit locator, altitude (dbm format below)
FT9 - 00:35 -?10.140350 MHz - CALL, 6-digit locator
FT9 - 00:36 -?10.140350 MHz - CALL, altitude, voltage, speed, temperature?(format below)
FT9 - 00:59 -?14.097250 MHz - CALL, Beacon message (HAB-01)

A typical WSPR message would be "NOCALL FN35 30" which decodes to: NOCALL FN35 at altitude of 8000 to 9000 Meters
A example JT9 message using format?CALL, altitude, voltage, speed, temperature would be "NOCALL KMDM" which decodes to: NOCALL, 9000-10000 Meters altitude, ?battery voltage?4.11 - 4.2 Volts, speed?15 - 19.9 Knots, temperature?-20 - -23.9 C

"dbm" altitude format - altitude anchored into the dbm field of the WSPR message.
0 = 0 Meters?
3 = 0 - 1000 Meters?
7 = 1000-2000 Meters?
10 = 2000-3000 Meters?
13?= 3000-4000 Meters?
17?= 4000-5000 Meters?
20?= 5000-6000 Meters?
23?= 6000-7000 Meters?
27?= 7000-8000 Meters?
30?= 8000-9000 Meters?
33?= 9000-10000 Meters?
37?= 10000-11000 Meters?
40?= 11000-12000 Meters?
43?= 12000-13000 Meters?
47?= 13000-14000 Meters?
50?= 14000-15000 Meters?
53?= 15000-16000 Meters?
57?= 16000-17000 Meters?
60?= 18000 + Meters?

"standard" altitude (used with JT9 and JT65 modes)
A = 0 Meters?
B = 0 - 1000 Meters?
C = 1000-2000 Meters?
D = 2000-3000 Meters?
E = 3000-4000 Meters?
F?= 4000-5000 Meters?
G?= 5000-6000 Meters?
H?= 6000-7000 Meters?
I?= 7000-8000 Meters?
J?= 8000-9000 Meters?
K?= 9000-10000 Meters?
L?= 10000-11000 Meters?
M?= 11000-12000 Meters?
N?= 12000-13000 Meters?
O?= 13000-14000 Meters?
P?= 14000-15000 Meters?
Q?= 15000-16000 Meters?
R?= 16000-17000 Meters?
S?= 18000 + Meters?

"Voltage" value
A = < 3 Volts?
B = 3.01 - 3.1 Volts
C = 3.11 - 3.2 Volts?
D = 3.21 - 3.3 Volts
E = 3.31 - 3.4 Volts?
F = 3.41 - 3.5 Volts
G = 3.51 - 3.6 Volts
H = 3.61 - 3.7 Volts?
I = 3.71 - 3.8 Volts
J = 3.81 - 3.9 Volts
K = 3.91 - 4 Volts ?
L ?= 4.01 - 4.1 Volts
M = 4.11 - 4.2 Volts
N = 4.21 - 4.3 Volts
O = 4.31 - 4.4 Volts
P = 4.41 - 4.5 Volts
Q = 4.51 - 4.6 Volts
R = 4.61 - 4.7 Volts
S = 4.71 - 4.8 Volts?
T = 4.81 - 4.9 Volts
U = 4.91 - 5 Volts?

"Speed" values in knots
U = 100 + Knots
T = ?95-99.9 Knots?
S = 90-94.9 Knots ??
R = ?85-89.9 Knots
Q = 80-84.9 Knots?
P = 75-79.9 Knots?
O = 70 - 74.9 Knots
N = 65 - 69.9 Knots?
M = 60 - 64.0 Knots
L = 55 - 59.9 Knots?
K = 50 - 54.9 Knots
J = 45 - 49.9 Knots?
I = 40 - 44.9 Knots ?
H = 35 - 39.9 Knots?
G = 30 - 34.9 Knots??
F = 25 - 29.9 Knots?
E = 20 - 24.9 Knots?
D = 15 - 19.9 Knots
C = 10 - 14.9 Knots
B = 5 - 9.9 Knots?
A = 0 - 4.9 Knots

"Temperature" value - Celsius
S = < -44 C?
R = -40 - -43.9 C
Q = -36 - -39.9 C
P = -32 - -35.9 C
O = -28 - -31.9 C
N = -24 - -27.9 C
M = -20 - -23.9 C
L = -16 - - 19.1 C?
K = -12 - -15.9 C
J = -8 - -11.9 C?
I = -4 - -7.9 C
H = 4 - 7.9 C
G = 8 - 11.9 C
F = 12 - 15.9 C
E 16 - 19.9 C
D = 20 - 23.9 C?
C = 24 - 27.9 C
B = 28 - 31.9 C
A = > 32 C


HABalloon Project

 

Truly?open source?High Altitude Balloon tracking using Arduino and SI5351 to transmit WSPR, JT9 and/or JT65 telemetry reports. Free for non-commercial use, so long as you keep modifications and derivatives of this code open source.?
?
There are existing projects out there on the web, but none from what I could find were open source. One of the more common options is the U3S or a modified variant of that particular firmware. This firmware is in it¡¯s own class. I am not a programmer, so the code may not be perfect, but it works. Suggestions for improvements of the code are welcomed if you have the skillset.?
?
Hardware Requirements:
- Arduino?
- GPS module (U-Blox 6,7, 8 or other high altitude capable device)?
- SI5352 module
- battery and solar system to suit your needs
- antenna (a simple 5 meter per leg dipole, supported with fishing line)
?
Features:
- sync system time to GPS time
- dynamic QTH locator
- dynamic telemetry including altitude, speed, temperature and battery voltage
- transmission modes can include a combination of JT9, JT65 or WSPR
- frequency coverage includes that covered by the SI5351 module
- temperature is calculated from the internal thermistor of the Atmega chip on the Arduino
?
Overview:?
1) GPS is queried for time and system time is set with the function ¡°setGPStime()¡±, if time is? already set, this is ignored with the? ¡°timeStatus()¡± check
At this point the GPS is placed into airborne mode (Ublox only)
2) Timing script is called, this script os only run if time has been set, which is critical WSPR, JT9 and JT65 to work.
Depending on the timing needed, this can be configured to different intervals, modes and frequencies.
Once a timing interval is triggered, a message type is generated by calling ¡°genMessageX()¡± which in itself will call other? functions to generate telemetry data and place it into the ¡°message¡± string. The message string is then encoded for the specific mode type? and transmitted with the SI5351 module
* GPS is essential for all functions, timing, locator, altitude, speed, only voltage and temperature are independent, however without? proper GPS timing, none of the above matters.
?
Flashing to your Arduino:
Make sure you change your configurations and flash to your Arduino prior to connecting the Arduino to the GPS module.
?
Hardware connections:
GPS connects to the Arduino ¡°hard¡± serial ie ¡°tx¡± and ¡°rx¡± pins, don¡¯t try to use soft-serial its very buggy for such a large program as this with so much going on.
The SI5351 connects to A4 and A5 of the Arduino which are the I2C pins.?
Battery voltage monitor connects to pin A7