Rocket tracker & monitoring thing

Discussions about anything electronics, from altimeters to cameras.

Moderator: Moderators

strud
Engineer
Engineer
Posts: 1058
Joined: Thu Oct 02, 2008 7:37 am
Location: Central Tablelands, NSW

Re: Rocket tracker & monitoring thing

Postby strud » Tue Jul 07, 2020 9:00 am

Have output channel continuity working now and updated Webpage to include this, along with reformatting using tables.

Image

User avatar
OverTheTop
It's only money...
It's only money...
Posts: 2897
Joined: Sat Jul 21, 2007 2:20 pm
Location: Melbourne, Australia

Re: Rocket tracker & monitoring thing

Postby OverTheTop » Tue Jul 07, 2020 3:51 pm

Looking really good strud. Now you need to add some color highlights to the text so a quick glance is all that is needed :wink: . That's my thoughts anyway. I am sure you already have that in work anyway.
TRA #13430
L3
"Everybody's simulation model is guilty until proven innocent" (Thomas H. Lawrence 1994)

strud
Engineer
Engineer
Posts: 1058
Joined: Thu Oct 02, 2008 7:37 am
Location: Central Tablelands, NSW

Re: Rocket tracker & monitoring thing

Postby strud » Wed Jul 08, 2020 1:58 pm

Hi OTT,

Yes the intention is to have a root/index page that has a very high level 'good to go' or 'Don't press the button' level of resolution, ie big green or big red indicator with the combination logic looking at a list of metrics and thresholds to come up with the overall result.

Will be changing to an asych webserver next to provide more flexibility AND implementing some scripts in the webpage to auto update individual tags on a regular basis.

Here are two nice examples of doing this on the ESP32 if anyone is interested;

https://randomnerdtutorials.com/esp32-async-web-server-espasyncwebserver-library/

https://randomnerdtutorials.com/esp32-ds18b20-temperature-arduino-ide/

https://randomnerdtutorials.com/esp32-esp8266-plot-chart-web-server/

These are very simple examples showing and explaining how to implement things, very useful and surprisingly little code at the top level.

strud
Engineer
Engineer
Posts: 1058
Joined: Thu Oct 02, 2008 7:37 am
Location: Central Tablelands, NSW

Re: Rocket tracker & monitoring thing

Postby strud » Sat Jul 11, 2020 3:14 pm

So now focusing on the Packet generation and tone output functionality.

LOTS of stuff online in the HAM radio sites, but a few things that stood out as references & tools etc :

[urlhttp://uz7.ho.ua/packetradio.htm][/url] Very nice and to the point software modem with useful packet decoding

http://f6cte.free.fr/index_anglais.htm Multi-psk - UBER capable soft modem / decoding application but quite complex. Free version very capable

https://www.audacityteam.org/ Audacity is free Audio editing etc application, very useful to look at captured audio waveforms

https://granasat.ugr.es/wp-content/uploads/2017/10/AX25_AFSK_APRS_1200.wav Example data/audio wav file - 8minutes of APRS Rx audio


Some Github repo's with very useful code libraries and examples:

https://github.com/trackuino/trackuino

https://github.com/markqvist/OpenModem

https://github.com/markqvist/LibAPRS


When looking up all this I came across a video on youtube of a SDR (Soft Defined Radio) being used to receive APRS transmissions and pipe them to Multi-PSK for decoding. That's when I remembered I had bought an SDR module about 6 years ago (RSP1) so I dug that out and got it working. This will be very useful to look at the spectral output from the radio amongst other useful things).

https://www.sdrplay.com/rsp1/

Lots of software available for these : https://www.sdrplay.com/downloads/


So now have the tools and examples to create code and test received transmissions, nothing in the way except available time.......

strud
Engineer
Engineer
Posts: 1058
Joined: Thu Oct 02, 2008 7:37 am
Location: Central Tablelands, NSW

Re: Rocket tracker & monitoring thing

Postby strud » Tue Jul 21, 2020 4:39 pm

So I've spent the last little while working on the APRS code and getting this aspect of the project working reliably.

I got put off into the weeds at one point by my SDR (RSP1) since it seems to have created so odd artifacts in the audio output I was then trying to decode using a soft modem such as DireWolf or Multi-PSK.

I used a relatively simple example project as a starting point for a C++ class i'm calling from within a dedicated task in my ESP32 code.

starting point: https://github.com/handiko/Arduino-APRS

Note this does not use a DAC to create a sinusoidal waveform, rather rudimentary square waves at either 1200 or 2400Hz, which end up being filtered pretty well by the audio analog components and radio input filter.

So long story short, with a less than optimal arrangement of my VX-7R just sitting on the table next to the laptop or iPhone, I'm able to reliably decode the basic Position packet types @ 1200 baud.

Waveform captured (using audacity) with HT just sitting near laptop

Raw waveform (nearly 50% is preamble at the moment, will cut this back further if reliability is not affected)

Image

Spectogram/ sideways waterfall (note main components are 1200 and 2400Hz as one would hope)

Image

Packet decode by DireWolf (cheekily set symbol as space shuttle)

Image


So will play a bit more with other packet types, so more data other than lat/long and alt can be reported.

Happy to get this going without breaking any other functionality.

strud
Engineer
Engineer
Posts: 1058
Joined: Thu Oct 02, 2008 7:37 am
Location: Central Tablelands, NSW

Re: Rocket tracker & monitoring thing

Postby strud » Tue Jul 21, 2020 8:54 pm

Forgot to mention the reasonably useful iOS app I was using as a 2nd soft modem/TNC to decode the packets from audio out of my HT speaker ie not wired in.

The app is 'modestly' called 'APRSpro' and there is a free version that is quite useful.

http://aprspro.com/v1/

Anyway, once I had my packets tuned up and set the volume of the radio suitably (quieter than you might expect) it decoded very nicely and showed the remote station on a map AND reported bearing and distance to the local station ie the phone. Obviously a wired connection will be more reliable.

Image

strud
Engineer
Engineer
Posts: 1058
Joined: Thu Oct 02, 2008 7:37 am
Location: Central Tablelands, NSW

Re: Rocket tracker & monitoring thing

Postby strud » Thu Jul 23, 2020 4:39 pm

A bit of a non-technical update:

- Bit the bullet today and ordered a new toy, a Yaesu FT3Dr :D it's a bit like Xmas now waiting for this !
I note that it supports 9600 baud APRS, that will be fun to try and support from my new device, I have a feeling that using square wave modulation
will not suffice in this instance.
- Will be sending Drew one of these boards to fly in the near future for some real world testing
- Committed code branch for basic APRS functionality. Still need to add configuration capability via webpage, all parameters currently hard-coded
- Starting on board spin to resolve a few of the issues discovered in rev1 and to support new GPS module since previous one is no longer manufactured

strud
Engineer
Engineer
Posts: 1058
Joined: Thu Oct 02, 2008 7:37 am
Location: Central Tablelands, NSW

Re: Rocket tracker & monitoring thing

Postby strud » Thu Jul 30, 2020 10:53 am

So other than some more tweaks to the APRS packet firmware, latest efforts have been on iterating the board to resolve some of the initial bugs and re-design required to deal with the quirks of the ESP32 IO, but more so to suit an alternative GPS module and a variant to use a better performing RF LPF.

The previously used GPS module has gone EOL and hence the new alternative with basically the same chipset has a different footprint. I also made sure to include a Tx line into the GPS Rx this time so that the mode of operation can be changed. Not so much comms rate etc, but more so about mode since for high altitude flights it might be useful to operate in Balloon mode.

Module I'm changing to https://www.quectel.com/product/l80.htm these are available for about AU$5.50 landed :shock:

The RF Low Pass Filter originally employed was a 5th order made from LC components (3 x C + 2 x L) and was still showing more harmonics in the output than I'd like. So I've got a version of the board being made to use one of these devices from minicircuits:
https://www.minicircuits.com/pdfs/LFCN-160+.pdf

New board layout without the polygon fill (so you can see what's going on)

Image


The section where the LPF will live:

Image

Boards being made at PCBWay again, 6 board designs qty 10 ea being delivered to me for US$55

strud
Engineer
Engineer
Posts: 1058
Joined: Thu Oct 02, 2008 7:37 am
Location: Central Tablelands, NSW

Re: Rocket tracker & monitoring thing

Postby strud » Thu Aug 06, 2020 9:50 pm

Still waiting on the new boards, so in the mean time I've been working on new packet types for the APRS functionality.

New packet types now available:
- Position with time stamp + Altitude
- Position with time stamp + Altitude + status message (including Power monitor values or voltage and current + continuity status of 4 output channels)

Some images of how these present on my new Yaesu FT3D

Image


Image


This last screen is the raw data view of the received APRS message

Image

strud
Engineer
Engineer
Posts: 1058
Joined: Thu Oct 02, 2008 7:37 am
Location: Central Tablelands, NSW

Re: Rocket tracker & monitoring thing

Postby strud » Mon Aug 10, 2020 7:43 am

A weekend of bad weather here so I had some time to put towards the RocTrak firmware.

Main advances were:
- Implementation of SPIFFs (SPI Flash File system) meaning that a simple file management system is now available on board for storage, retrieval etc. Some details of this can be found here : https://github.com/espressif/arduino-esp32/tree/master/libraries/SPIFFS
- implementation of a generic command line interface, via the serial port/usb interface. Minimal functionality at this time, primarily oriented to basic file functions such as list, dump (stream file contents out serial port) and erase.
- Biggest effort went into logging feature, which logs to an internal file saved in the SPIFFs
Parameters being logged:
time (ms) (free running counter)
time (hms) from GPS
#Satellites
GPS Quality
HDOP (m) (accuracy)
Lat
Long
Altitude
Speed
Supply voltages 1,2,3
Supply currents 1,2,3
Continuity of ch1 to 4
Output state of ch1 to 4
DTMF state machine state
DTMF last 4 decoded values

Main features of logger operation
- Auto generates file name with format log_MMDDHHMMSS.txt where date-time comes from GPS
- logging starts when GPS has lock AND APRS rapid packet transmit rate has been triggered (using DTMF command)
- logging runs until either APRS rapid packet transmit is disabled OR minimum SPIFFs remaining space goes below minimum threshold
- current trigger for a log file entry to be written - 1s of time passes OR DTMF state changes/new DTMF value is decoded

Example screen grab from terminal:

Image


Remaining issues
- Not yet able to determine why I can't get the file name to accept a file extension. Does not prevent the file being written etc but would like it resolved

Features to be implemented
Now that the file system is working well, this will be used to store configuration data and HTML/CSS to drive the improved webpage.

User avatar
OverTheTop
It's only money...
It's only money...
Posts: 2897
Joined: Sat Jul 21, 2007 2:20 pm
Location: Melbourne, Australia

Re: Rocket tracker & monitoring thing

Postby OverTheTop » Mon Aug 10, 2020 9:12 am

Nice progress strud. Have you thought about logging the flight in small chunks of files, rather than one big file? That way if the rocket comes in ballistic then there are some files that have been closed correctly and have data accessible after you dig the altimeter out of the ground. If the electronics impact with the file open there is quite a good chance of not recovering any of the data. This would only work if the system is capable of keeping the data logging happening whilst opening and closing files. One way that could be accomplished if the existing MPU runs out of steam is to add a second MPU jut looking after the file transfer. Food for thought.
TRA #13430
L3
"Everybody's simulation model is guilty until proven innocent" (Thomas H. Lawrence 1994)

strud
Engineer
Engineer
Posts: 1058
Joined: Thu Oct 02, 2008 7:37 am
Location: Central Tablelands, NSW

Re: Rocket tracker & monitoring thing

Postby strud » Mon Aug 10, 2020 9:39 am

Hi OTT

I could quite easily just close a file say after 10s and create another and keep going. This would be easy to accomplish between the 1s log interval, if that was much faster (say for high speed data logging) then not likely.

Just looked into SPIFFS and says I can have 5 files open at a time, this would allow a graceful cut over.

However, this is data in an SPI interfaced Flash chip, hence realistically the data can be dumped irrespective of file constructs so maybe there isn't a big issue anyway.

User avatar
SpaceManMat
Astronaut
Astronaut
Posts: 2283
Joined: Mon Dec 15, 2008 9:56 pm
Location: Brisbane

Re: Rocket tracker & monitoring thing

Postby SpaceManMat » Tue Aug 11, 2020 7:46 pm

That’s pretty neat work, although I’m not convinced you have a 4,000,000v battery.
QRS: 124
AMRS: 32 L2 RSO
Highest Altitude: 13,647 feet
Fastest Flight: Mach 1.55
Largest Motor: CTI 1115J530 IM
Current Project: X Wing

User avatar
SpaceManMat
Astronaut
Astronaut
Posts: 2283
Joined: Mon Dec 15, 2008 9:56 pm
Location: Brisbane

Re: Rocket tracker & monitoring thing

Postby SpaceManMat » Tue Aug 11, 2020 7:54 pm

OverTheTop wrote:Nice progress strud. Have you thought about logging the flight in small chunks of files, rather than one big file? That way if the rocket comes in ballistic then there are some files that have been closed correctly and have data accessible after you dig the altimeter out of the ground. If the electronics impact with the file open there is quite a good chance of not recovering any of the data. This would only work if the system is capable of keeping the data logging happening whilst opening and closing files. One way that could be accomplished if the existing MPU runs out of steam is to add a second MPU jut looking after the file transfer. Food for thought.


I agree, one thing I believe the Raven does just before firing a charge is to write everything out and then sets some flags indicating it is about to fire charges. In the event of temporary power loss it will reboot and see the flags and then resume the flight. May save the day on dodgy battery, connector or short.
QRS: 124
AMRS: 32 L2 RSO
Highest Altitude: 13,647 feet
Fastest Flight: Mach 1.55
Largest Motor: CTI 1115J530 IM
Current Project: X Wing

strud
Engineer
Engineer
Posts: 1058
Joined: Thu Oct 02, 2008 7:37 am
Location: Central Tablelands, NSW

Re: Rocket tracker & monitoring thing

Postby strud » Wed Aug 12, 2020 7:14 am

Hi Matt, where did you see the 4MV battery? (units are mV by the way)

All good suggestions, will put them in the product ideas pile on my Confluence page :-)

So my 2 new versions of the boards turned up early in the week and I put one together with the only radio module I have left ie a 70cm Band version.

I put together a board with the ceramic LPF to see how that would perform and although more expensive in component cost that the discrete LC filter, it is much smaller in terms of board space and lower profile.

Image

The other main difference with this board spin (other than bug fixes and some pin reassignments etc) is the use of the different GPS module (L80-R)

Image

This GPS module worked straight up (no surprises there) and importantly I didn't break anything in terms of grounding or RF leakage etc since it is maintaining lock and not having any issue with the 70cm 1W Tx nearby.

Some other things I added to this version of the board but have not made use of yet are:

- additional tone output. Now have two DAC channels driving out into the radio audio input hence have a lot more flexibility in terms of signals I can generate including DTMF if required
- GPS Rx line connected allowing for configuration changes to GPS operation. Hoping to make use of the Balloon mode in the future that supports much higher altitude operation, but this would need to be enabled say after apogee since dynamic performance is reduced.
- audio input into ESP32 from Radio giving the opportunity to act as a soft modem. This could then be turned into a ground station and with a GUI could replace the need to have a laptop or specialised HT etc

So happy to report that the new board is working well with APRS, DTMF and Wifi/Webpage functions all operating as expected with new GPS unit and operating with 70cm radio.

With not much prospect for any flights here in the near future, Drew has one of these now and will fly it when he gets a chance to see how it performs and provide some useful feedback into the iteration process.


Return to “Electronics”

Who is online

Users browsing this forum: No registered users and 1 guest