pecanpico9/tracker/software/protocols/ssdv
Sven Steudte c745ef50c9 Updated APRS protocols and much more
- Removed secondary decoder
- Updated image encoding at tracker firmware
- Updated image encoding at decoder software
- Implemented more sophisticated website
- Added error transmission
- Adjusted MCU speed to the highest rate
- Implemented configuration that allows GPS to be switched on permanently at a certain battery voltage
- Decreased humidity sensor accuray
- Imcreased voltage measurement accuracy
- Added temperature measurements of STM32 and Si4464 to TrackPoint struct
- Added light intensity measurements of OV5640 to TrackPoint struct
- Cleaned up (removed unused things)
- Implemented more accurate measurements for PAC1720
- Implemented failure detection for PAC1720 and ublox chips
- Fixed bug in Si4464 driver which used power when switched off
- Added more data readouts for GPS receiver (pDOP, gpsFixOK)
- Changed way of determination if GPS fix is good
- Implemented temperature measurement of STM32
- Added error detection of I2C bus
- Removed Milliseconds from ptime_t
- Fixed bug in timestamp conversion
- Removed RBAT measurement implementation (it was very inaccurate)
- Avoid radio being switched off when next packet is waiting for being transmitted
- Tidied up tracking manager
2018-01-09 06:01:19 +01:00
..
COPYING Moved tracker related files 2017-05-31 00:58:20 +02:00
README Moved tracker related files 2017-05-31 00:58:20 +02:00
rs8.c Moved tracker related files 2017-05-31 00:58:20 +02:00
rs8.h Moved tracker related files 2017-05-31 00:58:20 +02:00
ssdv.c Updated APRS protocols and much more 2018-01-09 06:01:19 +01:00
ssdv.h Updated APRS protocols and much more 2018-01-09 06:01:19 +01:00

README

SSDV - simple command line app for encoding / decoding SSDV image data

Created by Philip Heron <phil@sanslogic.co.uk>
http://www.sanslogic.co.uk/ssdv/

A robust packetised version of the JPEG image format.

Uses the Reed-Solomon codec written by Phil Karn, KA9Q.

ENCODING

$ ssdv -e -c TEST01 -i ID input.jpeg output.bin

This encodes the 'input.jpeg' image file into SSDV packets stored in the 'output.bin' file. TEST01 (the callsign, an alphanumeric string up to 6 characters) and ID (a number from 0-255) are encoded into the header of each packet. The ID should be changed for each new image transmitted to allow the decoder to identify when a new image begins.

The output file contains a series of SSDV packets, each packet always being 256 bytes in length. Additional data may be transmitted between each packet, the decoder will ignore this.

DECODING

$ ssdv -d input.bin output.jpeg

This decodes a file 'input.bin' containing a series of SSDV packets into the JPEG file 'output.jpeg'.

LIMITATIONS

Only JPEG files are supported, with the following limitations:

 - YUV/YCbCr colour format
 - Width and height must be a multiple of 16 (up to a resolution of 4080 x 4080)
 - Baseline DCT only
 - The total number of MCU blocks must not exceed 65535

INSTALLING

make

TODO

* Allow the decoder to handle multiple images in the input stream.
* Experiment with adaptive or multiple huffman tables.
* Quality setting (4 bit / 16 quality levels).