Squashed commit of the following:

commit be9e240e58
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 18 00:17:22 2022 +0000

    prepare for habhub going down

commit 9761f9cee1
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue May 31 07:46:43 2022 +0000

    re-added lost commits of cixio

commit 496cef2edb
Author: cixio <5869764+cixio@users.noreply.github.com>
Date:   Wed Apr 27 21:07:12 2022 +0200

    Bugfix: zoom levels, removed debug outputs (#299)

    - it was not possible to zoom in deeply on the satellite image

commit 090920d3cb
Author: cixio <5869764+cixio@users.noreply.github.com>
Date:   Tue Apr 26 22:09:14 2022 +0200

    LiveMap updates (#298)

    * LiveMap updates

    - Update to Leaflet 1.8.0
    - Added Topo-Map
    - Bugfix: Map only changed after the second click
    - better darkmode handling
    - changed order of maps: (dark if darkmode enabled) -> white -> topo -> sat -> dark

    * Open any MapsApp with geo:// - Link

commit 872392da2c
Author: sgtwilko <null@sgtwilko.f9.co.uk>
Date:   Sun May 29 11:31:49 2022 +0100

    Add GPS status to scanner screen, aids checking GPS status without an active RX. (#286)

commit affcde4f26
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun May 29 10:28:33 2022 +0000

    saving code space :)

commit b35f265b6f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun May 29 10:28:33 2022 +0000

    some code reorg

commit 26c7be76df
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun May 29 10:28:33 2022 +0000

    added ST7789 driver

commit 293e8a7313
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun May 29 10:28:33 2022 +0000

    better DFM name change handling

commit 8b59a0d1c9
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun May 29 10:28:33 2022 +0000

    display: set OLED contrast (config option); oled screen saver: also hide RSSI/stat

commit 6dad96d44f
Author: eben80 <sbmail246@gmail.com>
Date:   Fri Apr 22 11:07:33 2022 +0200

    Selectable livemap themes (#258)

commit a68cd577e2
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 18 22:49:02 2022 +0200

    experimental: display screen saver (auto-off)

commit 3808b0892f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 18 00:07:36 2022 +0200

    updated documentation in qrg.txt

commit 06f118c2c7
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Apr 14 15:04:04 2022 +0000

    json fix

commit 339e009285
Author: Hans P. Reiser <hansr@ru.is>
Date:   Fri Apr 8 00:01:09 2022 +0000

    version update

commit 551744aa29
Author: Hans P. Reiser <hansr@ru.is>
Date:   Fri Apr 8 00:00:41 2022 +0000

    json reorg, part 3

commit cad5bd16cd
Author: Hans P. Reiser <hansr@ru.is>
Date:   Thu Apr 7 23:46:59 2022 +0000

    json reorg part 2

commit b605e156fd
Author: Hans P. Reiser <hansr@ru.is>
Date:   Thu Apr 7 23:34:15 2022 +0000

    json reorg, initial part

commit 9be6251ed8
Author: Hans P. Reiser <hansr@ru.is>
Date:   Thu Apr 7 22:08:24 2022 +0000

    update ftp server for RS92 eph

commit 11f41883a3
Author: Hans P. Reiser <hansr@ru.is>
Date:   Thu Apr 7 22:03:55 2022 +0000

    versio update

commit aea08a9b32
Author: Hans P. Reiser <hansr@ru.is>
Date:   Thu Apr 7 22:03:23 2022 +0000

    force old version, as long as no new released of fixed new version available for GFX library

commit d8ad83c4b5
Author: Hans P. Reiser <hansr@ru.is>
Date:   Thu Apr 7 20:59:35 2022 +0000

    (simplified previous commit)

commit 764d29c012
Author: Hans P. Reiser <hansr@ru.is>
Date:   Thu Apr 7 20:56:10 2022 +0000

    update to M20 IDs (correct new -3- IDs)

commit c041b4999f
Author: Hans P. Reiser <hansr@ru.is>
Date:   Wed Mar 23 00:19:20 2022 +0000

    test. untested. library update compatibility

commit 18dab7be33
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Jan 23 23:57:08 2022 +0000

    check M20 crc first, before decoding serial number

commit b0c28d6774
Merge: 925f066 c03683e
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Jan 23 23:37:43 2022 +0000

    Merge branch 'master' into devel

commit 925f066093
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Jan 23 23:30:59 2022 +0000

    sticking to 3.3.2 for now, as 3.4 causes some issues

commit f08bb2a032
Merge: 9140b52 d2e8631
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Jan 21 13:15:26 2022 +0000

    Merge remote-tracking branch 'refs/remotes/origin/devel' into devel

commit 9140b52b43
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Jan 21 13:15:07 2022 +0000

    reset DFM id after 30 minutes or >.25 lat/lon change

commit f7dc810f94
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Jan 21 11:59:39 2022 +0000

    RS41: send real type if available

commit d2e8631696
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Tue Jan 11 23:05:55 2022 +1100

    Remove RS92-NGP Support Note (#266)

commit 8d4ddd2fa4
Author: Luclu7 <luclu7@luclu7.fr>
Date:   Sat Dec 11 01:24:01 2021 +0100

    simply typo (#249)

commit 8ddf8fa595
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Nov 1 17:31:27 2021 +0100

    sh import last interval as double (for <1h)

commit e4df63e264
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Nov 1 14:22:49 2021 +0100

    fix sh import

commit 07859d7f70
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 30 23:37:44 2021 +0200

    remove updated Setup.mp, better instructions are now in the wiki

commit f7b87b6ba5
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 30 23:27:28 2021 +0200

    scan display for ILI934x

commit cf612659e1
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 30 23:27:07 2021 +0200

    don't charge the battery using the battery :)

commit af32d576d6
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 30 18:13:07 2021 +0200

    back to normal beacon frequency

commit 4279875358
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 30 17:45:52 2021 +0200

    simplification

commit baec8fb8ea
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 30 17:36:48 2021 +0200

    some better APRS for wettersonde.net support

commit 327bbca6e6
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 30 17:14:42 2021 +0200

    some APRS for wettersonde.net support

commit beea3a7047
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 30 13:50:32 2021 +0200

    test

commit 8a0c37e792
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 30 12:02:51 2021 +0200

    version update

commit 87ea465123
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 30 12:02:29 2021 +0200

    unused code lines removal

commit 0556b5ab1d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 30 11:59:33 2021 +0200

    arduino ide autoformat

commit a3b24a885d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 30 11:58:40 2021 +0200

    bugfix

commit c932c90910
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 30 11:57:18 2021 +0200

    remove no longer used idformat config

commit 949ac6f75f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 30 11:51:12 2021 +0200

    ax25 aprs beacon; irq-less pmu button for m5stack

commit 7eb4291408
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 30 11:26:19 2021 +0200

    make use of tx_frequency (issue #238)

commit c90381791d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Oct 24 21:09:16 2021 +0200

    typo fix

commit ad96dd6023
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Sun Oct 24 08:32:33 2021 +1100

    Support dark mode fully in live map (#225)

    * Update style.css

    * dark mode map

    Co-authored-by: Uskompuf <22492406+Uskompuf@users.noreply.github.com>

commit 391135ba9d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 23 23:27:56 2021 +0200

    update screens5.txt

commit b5cbe1b676
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 16 16:52:46 2021 +0200

    fix #224

commit ff5f4bfa24
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Oct 13 19:20:34 2021 +0200

    no sh location report without enabling sh reporting

commit 4e773944b1
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Mon Oct 11 07:00:34 2021 +1100

    Few more changes (#217)

commit e6a764b650
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Oct 10 21:39:21 2021 +0200

    correct launchsite display on oled

commit b4c0179ee6
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Oct 10 12:02:07 2021 +0200

    fix correct M20 id (missing terminator)

commit 97b3abc38f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 9 10:11:03 2021 +0200

    version update for dark mode enhancements

commit 6661da7f72
Merge: 4036214 04b95ef
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 9 10:10:43 2021 +0200

    Merge branch 'LukePrior-patch-7' into devel

commit 04b95effba
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Sat Oct 9 19:07:15 2021 +1100

    CSS Dark Mode Improvements

commit 4036214ecd
Merge: 1dc548d 1a148b6
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Oct 7 21:53:07 2021 +0200

    Merge branch 'master' into devel

commit 1dc548d6f1
Merge: 63f303f 033175f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Oct 7 21:48:41 2021 +0200

    Merge branch 'eben80-darkmode' into devel

commit 033175f873
Author: Eben van Ellewee <sbmail246@gmail.com>
Date:   Wed Oct 6 14:10:12 2021 +0200

    Dark mode CSS

commit d6f65d7d01
Merge: af39088 68bf924
Author: eben80 <sbmail246@gmail.com>
Date:   Wed Oct 6 11:38:04 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 68bf9246a2
Author: eben80 <sbmail246@gmail.com>
Date:   Tue Oct 5 21:50:39 2021 +0200

    Update README.md (#211)

    Small fix

commit 63f303f226
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Oct 5 21:50:12 2021 +0200

    version update

commit ab474e9816
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Oct 5 21:47:13 2021 +0200

    more consistent names in json

commit 864f1a92b0
Merge: 6e2c1c7 0a77291
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Oct 5 21:42:45 2021 +0200

    Merge branch 'mycarda-devel' into devel

commit 0a77291a50
Merge: 6e2c1c7 0b6b383
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Oct 5 21:42:34 2021 +0200

    Merge branch 'devel' of https://github.com/mycarda/rdz_ttgo_sonde into mycarda-devel

commit 6e2c1c74c9
Merge: 4f63242 c2cb1e5
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Oct 5 21:41:59 2021 +0200

    Merge branch 'LukePrior-patch-6' into devel

commit c2cb1e55af
Merge: 4f63242 5cf8266
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Oct 5 21:41:44 2021 +0200

    Merge branch 'patch-6' of https://github.com/LukePrior/rdz_ttgo_sonde into LukePrior-patch-6

commit 4f63242afc
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Oct 5 21:41:21 2021 +0200

    screens minor update, add large tft portrait

commit 0b6b383c3a
Merge: 9ae8b79 5a07290
Author: michael carter <mycarda@btinternet.com>
Date:   Mon Oct 4 07:04:59 2021 +0100

    Merge branch 'devel' of github.com:mycarda/rdz_ttgo_sonde into devel

commit 9ae8b790f0
Author: michael carter <mycarda@btinternet.com>
Date:   Mon Oct 4 07:04:51 2021 +0100

    add values to mqtt

commit af390881f7
Merge: ba4d0c4 97716f7
Author: eben80 <sbmail246@gmail.com>
Date:   Sun Oct 3 19:12:13 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 5a0729068b
Merge: 70ee641 97716f7
Author: Michael Carter <mycarda@btinternet.com>
Date:   Sun Oct 3 11:25:53 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit 97716f7d79
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Oct 3 10:23:39 2021 +0200

    mqtt clientid done right (+no space in id)

commit 1d4f406dbb
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Oct 3 10:03:41 2021 +0200

    mqtt clientid done right

commit 5cf8266f40
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Sun Oct 3 11:43:00 2021 +1100

    Update Compatibility Table

commit 23fa620aa6
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Oct 3 01:07:41 2021 +0200

    some code cleanup

commit 00899dba2a
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 2 22:03:06 2021 +0200

    issue #206

commit 11cd76a0b1
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 2 20:19:11 2021 +0200

    M10 batt,rh as in autorx

commit ba4d0c40fb
Merge: 2924da7 e427c34
Author: eben80 <sbmail246@gmail.com>
Date:   Fri Oct 1 09:40:59 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 70ee641ec1
Merge: d48b777 e427c34
Author: Michael Carter <mycarda@btinternet.com>
Date:   Fri Oct 1 06:30:26 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit e427c34969
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 30 21:51:49 2021 +0200

    README update

commit b6a2c9e7d2
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 30 21:39:53 2021 +0200

    increase upper bound on distance in sondehub import

commit 2924da784f
Merge: 27b8766 542c9c7
Author: eben80 <sbmail246@gmail.com>
Date:   Thu Sep 30 19:05:15 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 542c9c73ef
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 30 19:04:57 2021 +0200

    ; dfm +temp, +bat

commit fdf5132fa6
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 30 17:53:57 2021 +0200

    ; DFM enhancements

commit ef9ae86969
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 30 14:37:18 2021 +0200

    DFM: check for bit errors

commit d48b777c93
Merge: 78dec8d 4c24c8c
Author: Michael Carter <mycarda@btinternet.com>
Date:   Wed Sep 29 18:58:22 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit 27b8766bf9
Merge: 15e61ca 4c24c8c
Author: eben80 <sbmail246@gmail.com>
Date:   Wed Sep 29 13:15:30 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 4c24c8c385
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 28 17:27:18 2021 +0200

    less confusing M10/M20

commit 5166e7d950
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 28 11:03:48 2021 +0200

    show configured M10/M20 type as long as no signal has been recevied

commit c3213c6f41
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Sep 27 22:02:43 2021 +0200

    official to-call APRRDZ

commit 224aa2fac9
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 26 20:09:57 2021 +0200

    spurious IRQ workaround. probably related to ESP32 errata 3.14 https://www.espressif.com/sites/default/files/documentation/eco_and_workarounds_for_bugs_in_esp32_en.pdf

commit 78dec8d3db
Merge: 8672261 438be9a
Author: Michael Carter <mycarda@btinternet.com>
Date:   Tue Sep 28 12:44:55 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit 15e61ca7fe
Merge: 5704b07 438be9a
Author: eben80 <sbmail246@gmail.com>
Date:   Tue Sep 28 11:51:45 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 438be9aa8a
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Mon Sep 27 21:50:10 2021 +1000

    Fix Support Matrix (#193)

commit 86722612a2
Merge: d174b19 85be031
Author: Michael Carter <mycarda@btinternet.com>
Date:   Sun Sep 26 22:06:52 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit 5704b075d7
Merge: 4651b27 85be031
Author: eben80 <sbmail246@gmail.com>
Date:   Sun Sep 26 17:32:39 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 85be031a6b
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 26 15:05:22 2021 +0200

    RS41-SGP hum calc with real pressure. now correct.

commit c6a7255d05
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 26 14:42:21 2021 +0200

    missing mod. show dist/dir to fixed rxpos if not gps

commit 2186482fb8
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 26 13:52:28 2021 +0200

    RS41-SGP hum calc with real pressure

commit 0379cedd7b
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 26 13:15:28 2021 +0200

    now utf8

commit d069433024
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 26 13:11:29 2021 +0200

    some font enhancements, better utf8 handling, most things not yet active in main build

commit 4651b27810
Merge: 3d80c17 f30c9b6
Author: eben80 <sbmail246@gmail.com>
Date:   Sun Sep 26 12:05:18 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit d174b198bd
Merge: 485d742 f30c9b6
Author: Michael Carter <mycarda@btinternet.com>
Date:   Sun Sep 26 09:19:15 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit f30c9b6d89
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Sep 25 10:51:04 2021 +0200

    exception workaround

commit 3d80c1740e
Merge: 1ddc1eb 49bff43
Author: eben80 <sbmail246@gmail.com>
Date:   Fri Sep 24 18:58:20 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 49bff43090
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 24 18:09:19 2021 +0200

    +Display telemetry - some enhancements

commit a39479dda7
Merge: 320d621 aba060d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 24 16:47:43 2021 +0200

    Merge branch 'eben80-patch-1' into devel

commit aba060d2e0
Merge: 93628c9 5be57a0
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 24 16:47:34 2021 +0200

    Merge branch 'patch-1' of https://github.com/eben80/rdz_ttgo_sonde into eben80-patch-1

commit 93628c9d4f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 24 16:47:27 2021 +0200

    update readme

commit 320d621cbc
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 24 15:21:24 2021 +0200

    m10 temp, done right :)

commit 5be57a02b5
Author: eben80 <sbmail246@gmail.com>
Date:   Fri Sep 24 14:55:53 2021 +0200

    Make telemetry values available on device display

    This is probably not the cleanest coding so apologies in advance.
    Tested on TTGO.

commit 1ddc1eb88f
Merge: f74d402 8d24d2f
Author: eben80 <sbmail246@gmail.com>
Date:   Fri Sep 24 14:48:54 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 8d24d2fe78
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 24 12:59:15 2021 +0200

    workaround for app

commit 8bc4eda63c
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 24 12:09:32 2021 +0200

    use correct M10/M20 type everywhere

commit a7f6d6bb7b
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 24 10:31:58 2021 +0200

    meteo in aprs frames

commit 485d742372
Merge: abf46b7 e8fdd5d
Author: Michael Carter <mycarda@btinternet.com>
Date:   Thu Sep 23 22:12:32 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit f74d40209f
Merge: 006ee09 e8fdd5d
Author: eben80 <sbmail246@gmail.com>
Date:   Thu Sep 23 19:57:51 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit e8fdd5dee7
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 23 18:22:10 2021 +0200

    async client test

commit 006ee09f27
Merge: 9102207 c64651f
Author: eben80 <sbmail246@gmail.com>
Date:   Thu Sep 23 14:12:03 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit c64651f36b
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 23 13:42:32 2021 +0200

    typo--

commit 69062ac856
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 23 13:41:01 2021 +0200

    initialize pressure with NAN

commit 03968f6ab4
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 23 13:30:56 2021 +0200

    clear all data also on SH import

commit 9fdfc02caf
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 23 12:49:56 2021 +0200

    station update also if disconected

commit 4622f6f99a
Author: dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 23 12:41:29 2021 +0200

    Update README.md

commit 910220775a
Merge: 7173fd1 8408f3b
Author: eben80 <sbmail246@gmail.com>
Date:   Thu Sep 23 12:40:32 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 7173fd101a
Merge: 01bde16 469d64a
Author: eben80 <sbmail246@gmail.com>
Date:   Thu Sep 23 12:22:11 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 8408f3b785
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 23 12:22:05 2021 +0200

    (nits)

commit 469d64ab01
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 23 12:16:06 2021 +0200

    update default config for RS92 eph

commit 280dd6cef1
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 23 12:11:25 2021 +0200

    +version update

commit 8d0d897c3b
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 23 12:10:58 2021 +0200

    RS41 P to sondehub

commit 971a2e6d65
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 23 12:07:54 2021 +0200

    +RS41 P data

commit 01bde1672d
Merge: fdf45f4 d0c9e10
Author: eben80 <sbmail246@gmail.com>
Date:   Thu Sep 23 09:30:56 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit d0c9e10a9d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 23 09:20:07 2021 +0200

    chasemapper position accuracy fixed

commit abf46b7b7e
Merge: 8aefe13 4cc12f3
Author: Michael Carter <mycarda@btinternet.com>
Date:   Wed Sep 22 21:12:44 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit fdf45f44a9
Merge: 9e347a4 4cc12f3
Author: eben80 <sbmail246@gmail.com>
Date:   Wed Sep 22 21:59:16 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit ff301ee458
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Sep 22 21:41:47 2021 +0200

    stricter crc and validity check for RS41

commit 4cc12f3f74
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Sep 22 21:27:29 2021 +0200

    don't send NaN in LiveMap JSON

commit 9e347a48e6
Merge: 0291c96 0d03b2a
Author: eben80 <sbmail246@gmail.com>
Date:   Wed Sep 22 18:59:45 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 8aefe13bbc
Merge: e851933 0d03b2a
Author: Michael Carter <mycarda@btinternet.com>
Date:   Wed Sep 22 15:52:56 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit 0d03b2abae
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Sep 22 16:46:15 2021 +0200

    Enhanced network handling for sondehub

commit fab83de888
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Sep 22 16:35:04 2021 +0200

    don't send nan temp to chasemapper

commit 89ffef6c24
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Sep 22 16:16:32 2021 +0200

    Arduino IDE autoformat

commit d4de05e29b
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Sep 22 16:16:15 2021 +0200

    get read of delays caused by readUntil from network

commit cb5b3584d0
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Sep 22 13:50:18 2021 +0200

    fix temp/hum empty check in sync with recent updates

commit e8519339b3
Merge: ab1da6e b297a9a
Author: Michael Carter <mycarda@btinternet.com>
Date:   Wed Sep 22 12:26:29 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit 0291c96f50
Merge: 5071cde b297a9a
Author: eben80 <sbmail246@gmail.com>
Date:   Wed Sep 22 11:58:29 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit b297a9a7c7
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Sep 22 11:28:29 2021 +0200

    some internal reorg that should not break anything but make it easier later to decouple decoding from updating global data, solving part of issue 186

commit ab1da6ea9a
Merge: 8a62085 5384d36
Author: Michael Carter <mycarda@btinternet.com>
Date:   Wed Sep 22 09:43:48 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit ac05c9edbd
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Sep 22 10:39:34 2021 +0200

    never remove currentSonde by ShImport

commit 8ffaa8be63
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Sep 22 10:03:22 2021 +0200

    temp, hum with 1 decimal digit for sondehub

commit 032d8452c6
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Sep 22 10:02:40 2021 +0200

    clear all decoded data on ID change, don't leave anything old behind

commit 5071cde442
Merge: 02eb47b 5384d36
Author: eben80 <sbmail246@gmail.com>
Date:   Wed Sep 22 07:15:30 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 5384d36151
Merge: 33856db e4ded3b
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 21 23:50:57 2021 +0200

    Merge branch 'eben80-patch-1' into devel

commit 33856db2e1
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 21 23:50:54 2021 +0200

    cfg: add links to wiki

commit e4ded3be7f
Author: eben80 <sbmail246@gmail.com>
Date:   Tue Sep 21 19:21:46 2021 +0200

    Small fix to ensure that sonde_id field.

    This makes sure that sonde_id doesn't go back to the Launch Site name if there is something in data.id when status is blinking yellow.

commit 8a62085f4f
Merge: 3b51a90 49c0d00
Author: Michael Carter <mycarda@btinternet.com>
Date:   Tue Sep 21 16:36:26 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit 02eb47bb77
Merge: 35cb3be 49c0d00
Author: eben80 <sbmail246@gmail.com>
Date:   Tue Sep 21 14:37:51 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 49c0d00927
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 21 14:17:48 2021 +0200

    send batt to sondehub; count down (burst_timer) only if fresh

commit 3b51a903d6
Merge: de41088 2dad197
Author: Michael Carter <mycarda@btinternet.com>
Date:   Tue Sep 21 12:55:10 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit 35cb3be793
Merge: 9825442 2dad197
Author: eben80 <sbmail246@gmail.com>
Date:   Tue Sep 21 13:46:46 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 2dad197a9c
Author: Michael Carter <mycarda@btinternet.com>
Date:   Tue Sep 21 12:36:04 2021 +0100

    Add battery voltage (#183)

commit de41088270
Merge: 5e0a985 86566c0
Author: michael carter <mycarda@btinternet.com>
Date:   Tue Sep 21 12:24:44 2021 +0100

    Merge branch 'devel' of github.com:mycarda/rdz_ttgo_sonde into devel

commit 5e0a98512b
Author: michael carter <mycarda@btinternet.com>
Date:   Tue Sep 21 12:24:01 2021 +0100

    Add battery voltage

commit 9825442272
Merge: 6247f25 e32ea8e
Author: eben80 <sbmail246@gmail.com>
Date:   Tue Sep 21 11:13:21 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit e32ea8e432
Author: eben80 <sbmail246@gmail.com>
Date:   Tue Sep 21 11:04:44 2021 +0200

    LiveMap updates to include last received datetime, heading and rssi (#182)

    * Add direction, UTC datetime and rssi to livemap

    * Further fixes

    Co-authored-by: dl9rdz <dl9rdz@darc.de>

commit 56d6e35782
Author: dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 21 10:43:46 2021 +0200

    Update README.md

commit afbfde07dd
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 21 10:40:21 2021 +0200

    +Chasemapper udp support

commit 13134b32f7
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 21 09:44:01 2021 +0200

    (good for now)

commit 6247f259f1
Merge: ff14518 6e14848
Author: eben80 <sbmail246@gmail.com>
Date:   Tue Sep 21 09:32:54 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 6e148489f3
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 21 08:29:53 2021 +0200

    keep data on livemap - restore old behaviour

commit ff145180f2
Merge: 3d6d953 86566c0
Author: eben80 <sbmail246@gmail.com>
Date:   Mon Sep 20 19:22:03 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 86566c0427
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Sep 20 18:18:09 2021 +0200

    sync sh import / sh telemetry

commit f5281e523c
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Sep 20 16:57:37 2021 +0200

    really fix RS41 subtype

commit 2dcbcc3141
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Sep 20 16:20:53 2021 +0200

    fix RS41 subtype

commit 3d6d9532d6
Merge: 6df02c1 71c42c9
Author: eben80 <sbmail246@gmail.com>
Date:   Mon Sep 20 12:05:20 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 71c42c938b
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Sep 20 11:53:50 2021 +0200

    don't use u8g2 2.31.1 due to https://github.com/olikraus/u8g2/issues/1594

commit 6df02c1fd0
Merge: 0266d2f d366a3d
Author: eben80 <sbmail246@gmail.com>
Date:   Mon Sep 20 11:37:25 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit d366a3d1ef
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Sep 20 11:23:46 2021 +0200

    don't use u8g2 2.31.1 due to https://github.com/olikraus/u8g2/issues/1594

commit 3cd22dc8c2
Merge: 99ccf58 f9316d9
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Sep 20 11:10:06 2021 +0200

    Merge branch 'LukePrior-patch-4' into devel

commit f9316d94be
Merge: 99ccf58 775b7ff
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Sep 20 11:09:56 2021 +0200

    Merge branch 'patch-4' of https://github.com/LukePrior/rdz_ttgo_sonde into LukePrior-patch-4

commit 99ccf581e4
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Sep 20 11:09:33 2021 +0200

    add dbg msg

commit 0266d2fe33
Merge: 838c16c 3591884
Author: eben80 <sbmail246@gmail.com>
Date:   Mon Sep 20 10:17:03 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 775b7ff3e0
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Mon Sep 20 17:27:11 2021 +1000

    Update RX_FSK.ino

commit 9a60db96d6
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 19 22:46:56 2021 +0200

    typo--

commit b6dbbe73ba
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 19 22:46:27 2021 +0200

    typo--

commit 359188436c
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 19 22:21:45 2021 +0200

    fixed pos used for live map if no gps pos available

commit 1a922aab52
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 19 20:39:24 2021 +0200

    larger buffer for sh messages

commit 838c16c5c6
Merge: cafcdb2 7ace621
Author: eben80 <sbmail246@gmail.com>
Date:   Sun Sep 19 20:06:59 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 7ace621cf5
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 19 19:56:19 2021 +0200

    version update

commit 49faf07af5
Merge: eb769e6 c50a2d1
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 19 19:55:30 2021 +0200

    Merge branch 'LukePrior-patch-3' into devel

commit c50a2d1138
Merge: eb769e6 387d3c0
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 19 19:55:20 2021 +0200

    Merge branch 'patch-3' of https://github.com/LukePrior/rdz_ttgo_sonde into LukePrior-patch-3

commit eb769e6d12
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 19 19:54:06 2021 +0200

    RS41 subtype for sondehub

commit 387d3c059d
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Sun Sep 19 20:25:58 2021 +1000

    Update RX_FSK.ino

commit b5456d84d1
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Sun Sep 19 20:17:22 2021 +1000

    Always send for RS41

commit e4e89a29d0
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Sun Sep 19 12:23:22 2021 +1000

    tidy up SH

commit a4b299129e
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Sun Sep 19 12:19:35 2021 +1000

    Include burst timer

    not tested

commit a30f51e5a0
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Sep 18 23:00:18 2021 +0200

    fix #165

commit e00d70b385
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Sep 18 22:36:22 2021 +0200

    fix issue #172 with negative lat on livemap

commit fe50159157
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Sep 18 20:56:47 2021 +0200

    minor sh enhancements

commit 494380a43d
Merge: 22d4927 1fb66cd
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Sep 18 20:30:14 2021 +0200

    Merge branch 'LukePrior-patch-2' into devel

commit 1fb66cdb0b
Merge: 22d4927 ae13b78
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Sep 18 20:30:04 2021 +0200

    Merge branch 'patch-2' of https://github.com/LukePrior/rdz_ttgo_sonde into LukePrior-patch-2

commit 22d492711a
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Sep 18 20:29:14 2021 +0200

    bugfix sh import

commit ae1e9e7c48
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Sep 18 19:52:42 2021 +0200

    cleanup new config interface

commit 79f5b199ae
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Sep 18 19:52:22 2021 +0200

    cleanup new config interface

commit 5c5bfa0725
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Sep 18 16:51:03 2021 +0200

    js-based config form, using less memory. +some cleanup

commit ae13b7853a
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Sat Sep 18 13:12:32 2021 +1000

    Split temp & humidity SondeHub updates

commit cafcdb2c80
Merge: 6676222 7254558
Author: eben80 <sbmail246@gmail.com>
Date:   Fri Sep 17 14:42:49 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 7254558c44
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 17 13:04:14 2021 +0200

    clear subframebuffer if RS41 changes, + minor cleanup

commit 6676222cbc
Merge: e75e307 e14915f
Author: eben80 <sbmail246@gmail.com>
Date:   Fri Sep 17 12:59:53 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 4897d7634e
Merge: ef90bc3 3aeeef0
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 17 12:55:28 2021 +0200

    Merge branch 'mycarda-devel' into devel

commit 3aeeef0aab
Merge: 35493aa e14915f
Author: Michael Carter <mycarda@btinternet.com>
Date:   Fri Sep 17 11:20:27 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit 35493aaffd
Author: michael carter <mycarda@btinternet.com>
Date:   Fri Sep 17 11:11:25 2021 +0100

    Updated relative humidity calculation to include pressure

commit e14915fbcc
Author: eben80 <sbmail246@gmail.com>
Date:   Fri Sep 17 11:47:14 2021 +0200

    Fix padding on menu icon (#168)

    This is to fix alignment issues.

commit e75e30768c
Merge: 62eb246 ef90bc3
Author: eben80 <sbmail246@gmail.com>
Date:   Thu Sep 16 22:46:54 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 3db2160116
Merge: ac1b4af ef90bc3
Author: Michael Carter <mycarda@btinternet.com>
Date:   Thu Sep 16 20:42:25 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit ef90bc3f34
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 16 20:38:35 2021 +0200

    OTA also for files (www/js/css)

commit ac1b4af475
Merge: cadfc9d debaf57
Author: Michael Carter <mycarda@btinternet.com>
Date:   Thu Sep 16 17:41:18 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit debaf57f88
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 16 18:33:46 2021 +0200

    (travis test for fs ota)

commit 374f84115b
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 16 17:48:11 2021 +0200

    fix #164

commit 29bdcc8f5b
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 16 17:00:28 2021 +0200

    SondeHub frequency import

commit cadfc9dd97
Merge: df62fc0 c766e60
Author: Michael Carter <mycarda@btinternet.com>
Date:   Thu Sep 16 10:36:53 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit df62fc0d79
Author: mycarda <mycarda@btinternet.com>
Date:   Thu Sep 16 10:23:01 2021 +0100

    testing updates

commit 62eb246959
Merge: 71452e9 c766e60
Author: eben80 <sbmail246@gmail.com>
Date:   Wed Sep 15 08:34:00 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit c766e60819
Author: eben80 <sbmail246@gmail.com>
Date:   Wed Sep 15 01:45:11 2021 +0200

    Responsive menu for web interface (#161)

    * Responsive Web Interface menu.

    * Add active page indicator

    * Update style.css

    * Update index.html

commit 71452e97e6
Merge: c7bd7a7 c01a72c
Author: eben80 <sbmail246@gmail.com>
Date:   Wed Sep 15 00:57:56 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit c01a72cf91
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Sep 15 00:07:46 2021 +0200

    OTA display output fix for TFT

commit c7bd7a73ec
Merge: 0272018 51ad95e
Author: eben80 <sbmail246@gmail.com>
Date:   Tue Sep 14 23:59:19 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 33c5ccc905
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 14 23:35:20 2021 +0200

    some code cleanup

commit 51ad95e93c
Merge: 4118a76 146fbb6
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 14 22:46:38 2021 +0200

    Merge branch 'LukePrior-patch-1' into devel

commit 146fbb6f62
Merge: 4118a76 3078a59
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 14 22:46:05 2021 +0200

    Merge branch 'patch-1' of https://github.com/LukePrior/rdz_ttgo_sonde into LukePrior-patch-1

commit 4118a76a16
Merge: 7324461 6043fc4
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 14 22:43:59 2021 +0200

    Merge branch 'eben80-patch-1' into devel

commit 6043fc4fff
Merge: 7324461 84ed082
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 14 22:43:48 2021 +0200

    Merge branch 'patch-1' of https://github.com/eben80/rdz_ttgo_sonde into eben80-patch-1

commit 73244615a8
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 14 22:43:01 2021 +0200

    avoid rs92 decode stack overflow, remove unused code

commit 3078a59474
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Tue Sep 14 17:49:50 2021 +1000

    Update RX_FSK.ino

commit a8bf1ed7d3
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Tue Sep 14 12:07:09 2021 +1000

    fix str set check sondehub

commit 027201838f
Merge: 56970e8 a97b4e9
Author: eben80 <sbmail246@gmail.com>
Date:   Mon Sep 13 15:51:53 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 84ed0823a0
Author: eben80 <sbmail246@gmail.com>
Date:   Mon Sep 13 15:44:20 2021 +0200

    Include altitudemode in KML

    By specifying the altitudemode tag, the kml displays the correct altitude on Google Earth.

commit a97b4e9e76
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Mon Sep 13 21:37:48 2021 +1000

    Missed Sondehub improvements (#157)

    * fixes

    * fix

    Co-authored-by: Uskompuf <22492406+Uskompuf@users.noreply.github.com>

commit 56970e8e14
Merge: baf351c 56df804
Author: eben80 <sbmail246@gmail.com>
Date:   Mon Sep 13 12:37:05 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 56df804a6a
Merge: 1dd9d29 19e55fb
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Sep 13 11:48:48 2021 +0200

    Merge branch 'LukePrior-devel' into devel

commit 19e55fb532
Merge: 1dd9d29 a61f518
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Sep 13 11:48:34 2021 +0200

    Merge branch 'devel' of https://github.com/LukePrior/rdz_ttgo_sonde into LukePrior-devel

commit a61f518c5c
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Mon Sep 13 18:51:41 2021 +1000

    another fix

commit 86089a349e
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Mon Sep 13 18:35:09 2021 +1000

    fix bug

commit baf351c909
Merge: 0d07ad7 1dd9d29
Author: eben80 <sbmail246@gmail.com>
Date:   Mon Sep 13 10:08:35 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 1dd9d29747
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Sep 13 09:57:12 2021 +0200

    version update

commit 233f06c84f
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Mon Sep 13 17:39:58 2021 +1000

    change precision

commit 3c803f2ed7
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Mon Sep 13 17:28:24 2021 +1000

    Sondehub position tidy

commit 7980a9c8ee
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Mon Sep 13 16:44:55 2021 +1000

    Merge branch 'devel' of https://github.com/LukePrior/rdz_ttgo_sonde into devel

commit 3f2947bb0f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 12 16:34:54 2021 +0200

    code reorg and cleanup, no new features

commit d35836366a
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 10 15:58:31 2021 +0200

    pio build: use v1.1.5 of Arduino_GFX

commit 7441a17db5
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 10 15:44:50 2021 +0200

    back to arduino esp23 1.0.6.  version 2.0.0 has only 60k instead of 130k RAM left, too little for reliable web server operation

commit d2cee32a62
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 10 15:25:26 2021 +0200

    back to arduino esp23 1.0.6.  version 2.0.0 has only 60k instead of 130k RAM left, too little for reliable web server operation

commit 4c3a91e366
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 10 13:58:06 2021 +0200

    arduino esp32 2.0 w/ updated espressif board mamanger url

commit 3be7c20881
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 10 13:30:42 2021 +0200

    arduino esp32 2.0 w/ updated espressif board mamanger url

commit b87dd34c8e
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Sep 10 13:16:06 2021 +0200

    testing Arduino upgrade on travis ci

commit 0d07ad700e
Merge: 031a8a4 c42204a
Author: eben80 <sbmail246@gmail.com>
Date:   Fri Sep 10 09:36:39 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit c42204a579
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 9 23:25:15 2021 +0200

    +configurable batt adc, revert screens1.txt

commit aa315d545a
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 9 22:34:50 2021 +0200

    revert screens to include all info

commit 52e04f1d33
Merge: 4e6514c b783806
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 9 22:32:01 2021 +0200

    Merge branch 'eben80-displayvolts' into devel

commit b783806593
Merge: 4e6514c ec660be
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 9 22:31:50 2021 +0200

    Merge branch 'displayvolts' of https://github.com/eben80/rdz_ttgo_sonde into eben80-displayvolts

commit 4e6514c277
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 9 16:26:44 2021 +0200

    enhancements for large ILI9341 display

commit ec660beeb1
Merge: 519c656 17dbf6e
Author: eben80 <sbmail246@gmail.com>
Date:   Thu Sep 9 09:40:24 2021 +0200

    Merge branch 'dl9rdz:devel' into displayvolts

commit 031a8a4819
Merge: dfb042e 17dbf6e
Author: eben80 <sbmail246@gmail.com>
Date:   Tue Sep 7 14:42:19 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 17dbf6ec7a
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Sep 7 08:52:16 2021 +0200

    update manufacturer strings, in sync with old dfm6/9 removal

commit 2e65f3b0d6
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Sep 6 23:26:45 2021 +0200

    quite some reorg. virtual frame numbers now in decoders instead of RX_FSK. Better DFM support for sondehub. minor bugs removed, old DFM9 and DFM6 code removed, always use new DFM decoder

commit dfb042eef4
Merge: cd01f0d 085f01b
Author: eben80 <sbmail246@gmail.com>
Date:   Mon Sep 6 15:20:03 2021 +0200

    Merge branch 'dl9rdz:devel' into devel

commit 085f01ba50
Author: cixio <5869764+cixio@users.noreply.github.com>
Date:   Sun Sep 5 17:18:19 2021 +0200

    livemap: fix prediction for longituade < 0 (tawhiri api uses 0..360)  (#148)

    * Check internet connection

    * livemap: nicer dots - removed old emoji dots

    * livemap: fix prediction for longituade < 0 (tawhiri api uses 0..360)

commit 4755c0ffca
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 5 17:10:18 2021 +0200

    reset sonde info if configuration is changed (corrected), version update

commit b807c512e3
Author: cixio <5869764+cixio@users.noreply.github.com>
Date:   Thu Sep 2 02:05:59 2021 +0200

    livemap: fix prediction for longituade < 0 (tawhiri api uses 0..360)

commit a3ab8b4371
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 5 17:06:01 2021 +0200

    reset sonde info if configuration is changed

commit 7e5b04e56e
Author: dl9rdz <dl9rdz@darc.de>
Date:   Thu Sep 2 10:52:06 2021 +0200

    Update README.md

commit cd01f0db1c
Merge: cd3b34c 4656d2e
Author: Eben van Ellewee <sbmail246@gmail.com>
Date:   Wed Aug 25 16:42:50 2021 +0200

    Merge branch 'devel' of https://github.com/dl9rdz/rdz_ttgo_sonde into devel

commit 4656d2e641
Author: cixio <5869764+cixio@users.noreply.github.com>
Date:   Tue Aug 17 22:35:05 2021 +0200

    livemap: internet connection check + nicer dots (#134)

    * Check internet connection

    * livemap: nicer dots - removed old emoji dots

commit b69a726df7
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Aug 17 22:27:43 2021 +0200

    probably fixing #97

commit 882d3c3a0f
Author: michael carter <mycarda@btinternet.com>
Date:   Mon Aug 16 08:19:38 2021 +0100

    wait for all humidity calibration frames

commit c55b97c809
Merge: 2404cf3 40c9164
Author: Michael Carter <mycarda@btinternet.com>
Date:   Mon Aug 16 08:15:58 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit 40c91646b9
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Aug 15 10:27:02 2021 +0200

    enable network in AP mode (wifi mode 2)

commit 30c88df93a
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Aug 15 10:20:00 2021 +0200

    enable network in AP mode (wifi mode 2)

commit 4dcbbc9eb3
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Aug 14 00:30:51 2021 +0200

    SPI locking and sx1278 configurability

commit beab0fa9aa
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Aug 13 21:59:36 2021 +0200

    partial frames are good enough for not running into timeout @ DFM

commit eb25f9d530
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Aug 13 00:33:23 2021 +0200

    send real decoded type for M10/M20 to sondehub

commit 649711b112
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Aug 12 22:24:04 2021 +0200

    tentative better compatibility with older browsers not supporting Unicode 12

commit ce4e0d7162
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Aug 12 13:34:08 2021 +0200

    added timeout for live.json request

commit 2ef70eaab3
Merge: aebe1d9 af9da6b
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Aug 12 13:27:09 2021 +0200

    Merge branch 'cixio-devel2' into devel

commit af9da6b2f0
Merge: aebe1d9 f11e20d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Aug 12 13:26:58 2021 +0200

    Merge branch 'devel' of https://github.com/cixio/rdz_ttgo_sonde into cixio-devel2

commit aebe1d90bb
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Aug 11 20:30:13 2021 +0200

    use data only with valid CRC for M10

commit aeb3b1f333
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Aug 11 00:29:29 2021 +0200

    automated fixed/chase mode for sondehub. also fix #130

commit f11e20dbab
Author: cixio <5869764+cixio@users.noreply.github.com>
Date:   Tue Aug 10 15:53:32 2021 +0200

    Settings for prediction

commit 8dc3c7b504
Author: cixio <5869764+cixio@users.noreply.github.com>
Date:   Tue Aug 10 15:52:10 2021 +0200

    back button to top left and new emoji

commit d07ef52d22
Merge: b27b070 6183bac
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Aug 9 22:29:34 2021 +0200

    Merge branch 'LukePrior-patch-4' into devel

commit 6183bacd80
Merge: b27b070 8d52aa0
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Aug 9 22:29:25 2021 +0200

    Merge branch 'patch-4' of https://github.com/LukePrior/rdz_ttgo_sonde into LukePrior-patch-4

commit b27b070980
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Aug 9 22:24:56 2021 +0200

    version udpate

commit d717ca16e0
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Aug 9 22:03:22 2021 +0200

    LiveMap: fix width of tab bar elements

commit dd0d4b9521
Merge: 74eafe1 89e7fba
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Aug 9 21:55:55 2021 +0200

    Merge branch 'cixio-devel' into devel

commit 89e7fbab7f
Author: cixio <5869764+cixio@users.noreply.github.com>
Date:   Mon Aug 9 21:04:52 2021 +0200

    LiveMap

commit 8d52aa08d5
Merge: 78187e6 74eafe1
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Sun Aug 8 17:31:20 2021 +1000

    Merge branch 'dl9rdz:devel' into patch-4

commit 74eafe1fd6
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Aug 7 23:16:51 2021 +0200

    maybe a first step for #122

commit e0eafbdfb4
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Aug 7 12:27:09 2021 +0200

    fix #124

commit 78187e6d76
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Sat Aug 7 18:44:50 2021 +1000

    Include details for SondeHub configuration settings in web interface

commit 1cf4c7d874
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Aug 6 22:25:16 2021 +0200

    +longer wifi wait time

commit 8e3bb7f4e0
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Aug 6 22:11:46 2021 +0200

    better support for ILI9341, and minor polishing

commit 449c40b577
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Aug 6 20:26:15 2021 +0200

    last qrg entry missing fix

commit 4601fb6cb4
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Aug 6 16:10:02 2021 +0200

    ILI9351 support

commit 2404cf3a43
Merge: 30927f1 cf47a01
Author: Michael Carter <mycarda@btinternet.com>
Date:   Fri Jul 30 08:32:43 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit cf47a01cb0
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Wed Jul 28 15:56:42 2021 +1000

    Add the changes back & M20 fix (#115)

    * Add the changes back

    * Update version number

    * Only send sats field if not M20

    Co-authored-by: dl9rdz <dl9rdz@darc.de>

commit 96d83e541d
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Tue Jul 27 21:12:48 2021 +1000

    fix chase car (#113)

    Co-authored-by: Uskompuf <22492406+Uskompuf@users.noreply.github.com>

commit 2a3aba5c70
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Tue Jul 27 21:27:41 2021 +1000

    Update precision of data sent (#114)

commit 77181d9dad
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Jul 27 16:50:46 2021 +0200

    (fixed previous commit)

commit 473d35b312
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Jul 27 16:22:42 2021 +0200

    collecting data in single API call for sondehub

commit ea865860e6
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Tue Jul 27 21:27:41 2021 +1000

    Update precision of data sent (#114)

commit e23d8338a6
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Tue Jul 27 21:12:48 2021 +1000

    fix chase car (#113)

    Co-authored-by: Uskompuf <22492406+Uskompuf@users.noreply.github.com>

commit 045b61bf23
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Jul 27 13:11:44 2021 +0200

    fix M10 dir and sondehub frame#

commit 30927f1529
Merge: 23ac400 7555eda
Author: Michael Carter <mycarda@btinternet.com>
Date:   Tue Jul 27 06:50:51 2021 +0100

    Merge branch 'dl9rdz:devel' into devel

commit 7555eda024
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Tue Jul 27 05:14:23 2021 +1000

    lat,lon,alt improvements (#103)

    Co-authored-by: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
    Co-authored-by: dl9rdz <dl9rdz@darc.de>

commit 5987c92fab
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Tue Jul 27 05:11:33 2021 +1000

    SondeHub Fix Chase Cars (#104)

    * fix chase cars

    * update version ID

    * fix version

    Co-authored-by: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
    Co-authored-by: dl9rdz <dl9rdz@darc.de>

commit 4dc3ea6974
Author: Michael Carter <mycarda@btinternet.com>
Date:   Mon Jul 26 20:09:03 2021 +0100

    add reboot to control buttons (#111)

commit 7f2b9ef611
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Jul 26 21:07:24 2021 +0200

    M10: extract #sat; M20: upload to sondehub without #sat

commit 23ac400ff6
Merge: 13787e5 85930bc
Author: michael carter <mycarda@btinternet.com>
Date:   Mon Jul 26 17:34:59 2021 +0100

    Merge branch 'devel' of https://github.com/mycarda/rdz_ttgo_sonde into devel

commit 13787e553c
Author: michael carter <mycarda@btinternet.com>
Date:   Mon Jul 26 17:34:09 2021 +0100

    add reboot to control buttons

commit 85930bc3f7
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Sun Jul 25 00:53:59 2021 +1000

    Fix SondeHub tracker link in web interface (#102)

    When we switched to the new interface the previous URL structure broke so I have updated it here

commit 175d196393
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Jun 30 14:44:41 2021 +0200

    more robust GPS reset, using clear+load CFG

commit a079161c6b
Merge: 2281e91 0e4710d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Jun 30 13:47:04 2021 +0200

    Merge branch 'LukePrior-patch-2' into devel

commit 0e4710d177
Merge: 2281e91 6e9e5b8
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Jun 30 13:46:49 2021 +0200

    Merge branch 'patch-2' of https://github.com/LukePrior/rdz_ttgo_sonde into LukePrior-patch-2

commit 2281e91921
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Jun 27 18:58:11 2021 +0200

    more ttgconfig script features: backup and restore

commit 6e9e5b8a79
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Sun Jun 27 22:21:54 2021 +1000

    Update RX_FSK.ino

commit 6485be7cb2
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Sun Jun 27 22:18:32 2021 +1000

    Fix M10/M20 time

    We need to send UTC time for these.

commit 19f3004a27
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Jun 19 08:51:53 2021 +0200

    wetterson.de is gone

commit 01b71bb517
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Jun 19 08:50:03 2021 +0200

    +version update

commit 814319e050
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Sat Jun 19 16:49:51 2021 +1000

    Show SondeHub map in web interface (#90)

    * sondehub

    * sondehub map in interface

    * fixes

    * include notice

    * more fixes

    * fix

    * fix

    * fix

    * Delete RX_FSK.ino.cpp

    * default to station position

    * tracker fix

    * fix check to be more robust

    * revert

    Co-authored-by: Uskompuf <22492406+Uskompuf@users.noreply.github.com>

commit 68b69a2be9
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Jun 18 00:45:27 2021 +0200

    M10: fix serial number: consistent with M20 (with dashes), consistent with autorx

commit 890fef7f29
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Jun 14 06:38:19 2021 +0200

    minor polishing of pull request for sondehub chase mode

commit 8861458421
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Mon Jun 14 11:55:26 2021 +1000

    GPS Support

commit e5b340bd63
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Jun 1 01:50:42 2021 +0200

    MP3-H1 extended data for SondeHub upload: #sats, timestamp (for frame#), rrsi; fix for wrong time check; filtering repeated frames

commit ba680295dc
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun May 30 10:18:08 2021 +0200

    SondeHub: DFM frame numbers using gps time+sec) as in autorx

commit e368dd50dc
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat May 29 14:03:28 2021 +0200

    +time check for SondeHub

commit faa9fc1630
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat May 29 13:32:08 2021 +0200

    ... ntp time sync merge, moving init the network start

commit 35ed5af1a2
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Sat May 29 19:17:43 2021 +1000

    get UTC time from NTP server

commit acc71804ab
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat May 29 12:14:13 2021 +0200

    DFM subtypes enhancement for SondeHub

commit 08572f7cbc
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Sat May 29 18:26:51 2021 +1000

    send unix timestamp for DFM, Metomodem

commit 45f947cc0b
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Sat May 29 18:07:40 2021 +1000

    fix

commit 2e54b96396
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Sat May 29 18:06:43 2021 +1000

    DFM subtype, no frame send M10/20/DFM

commit 4b23a3a36e
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Thu May 27 15:37:23 2021 +1000

    Update readme with installation instructions

commit d8edd44a96
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu May 27 01:16:17 2021 +0200

    + config upload/download tool: --ttgo=<ip> option

commit a86c10ccbf
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu May 27 01:02:43 2021 +0200

    + config upload/download tool

commit c41808ec18
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon May 24 21:21:25 2021 +0200

    Compatible with newer version of APX library (consistent with platformio, make sure to upgrade your ArduinoIDE), and font enhancements for new ILI9225 libraray

commit 3e094f0478
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon May 24 16:15:17 2021 +0200

    ...and minor screen enhancements

commit 8d89805216
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon May 24 14:42:07 2021 +0200

    ; font update

commit e9e4b0eaa6
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon May 24 12:25:09 2021 +0200

    README update and other minor things

commit f28c464add
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon May 24 02:29:58 2021 +0200

    some font enhancements for new display driver (working better with some displays)

commit b912995026
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon May 24 02:26:07 2021 +0200

    sondehub integration: better background handling of reading response data

commit c3ff3facea
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun May 23 19:27:18 2021 +0200

    sondehub integration: minor update to README

commit a87732d8f8
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun May 23 19:20:46 2021 +0200

    more efficient type check

commit 5fdb008a11
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun May 23 16:07:50 2021 +0200

    less code duplication, saving some 800 bytes in flash

commit 6222cc2d5b
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun May 23 12:33:43 2021 +0200

    testing the sondehub merge; some conditional compile stuff; force arduino esp board to 1.0.6 for travis as 2.0.0alpha breaks wifi

commit 6d5cb40b2d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun May 23 11:39:41 2021 +0200

    minor mods to merge from oh3bsg; and RXFSK.ini in ArduinoIDE auto format style

commit 664a8b3550
Merge: 6df7694 75bb1a7
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun May 23 11:07:11 2021 +0200

    Merge remote-tracking branch 'oh3bsg/sondehub' into sondehub

commit 6df7694b99
Merge: 80c9f25 92e5d5f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun May 23 10:57:11 2021 +0200

    Merge branch 'LukePrior-devel' into devel

commit 92e5d5ffc8
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Sat May 1 09:51:17 2021 +1000

    Include SondeHub Tracker Link in Webpage

commit 75bb1a734f
Merge: f58e265 5a1fc1c
Author: oh3bsg <60152526+oh3bsg@users.noreply.github.com>
Date:   Sat May 22 11:36:44 2021 +0300

    Merge branch 'master' into sondehub

commit f58e265b75
Merge: 81f8a49 7236626
Author: oh3bsg <60152526+oh3bsg@users.noreply.github.com>
Date:   Sat May 22 09:35:22 2021 +0300

    Merge pull request #6 from LukePrior/sondehub

    Only add time for select sonde, prepare temp

commit 7236626df8
Merge: 939556b 81f8a49
Author: oh3bsg <60152526+oh3bsg@users.noreply.github.com>
Date:   Sat May 22 09:35:06 2021 +0300

    Merge branch 'sondehub' into sondehub

commit 939556b5f6
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Sat May 22 10:33:08 2021 +1000

    bump version

commit e0cec31279
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Sat May 22 10:17:04 2021 +1000

    upload temp

commit dc4eb3afa3
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Sat May 22 10:05:25 2021 +1000

    fix lat lon uploading

commit afbfc48606
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Wed May 19 15:23:11 2021 +1000

    check if temp value received, debugging

commit c5bad7cf2e
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Mon May 17 20:05:45 2021 +1000

    alt check, sats check

commit 81f8a49118
Author: dl9rdz (via Travis CI) <dl9rdz@darc.de>
Date:   Mon May 17 11:38:16 2021 +0300

    check lat, lon and alt zero data

commit 6f154f107b
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Mon May 17 15:57:21 2021 +1000

    Merge branch 'sondehub' of https://github.com/LukePrior/bsg_ttgo into sondehub

commit 97b0635dad
Author: dl9rdz (via Travis CI) <dl9rdz@darc.de>
Date:   Sun May 16 21:54:11 2021 +0300

    minor changes

commit 10911e48df
Author: dl9rdz (via Travis CI) <dl9rdz@darc.de>
Date:   Sun May 16 11:02:41 2021 +0300

    Add 18 s to datetime and fix RSSI value

commit 0e7dd674a2
Author: oh3bsg <60152526+oh3bsg@users.noreply.github.com>
Date:   Fri May 14 15:07:25 2021 +0300

    Update version.h

commit 62005ee328
Merge: f1ebaa0 7f436d5
Author: oh3bsg <60152526+oh3bsg@users.noreply.github.com>
Date:   Fri May 14 14:59:20 2021 +0300

    Merge pull request #3 from LukePrior/sondehub

    Sondehub tracker link, precision updates

commit 7f436d54db
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Fri May 14 19:59:40 2021 +1000

    Stop crash if not enabled or in AP mode

commit 87be88c19a
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Fri May 14 19:38:31 2021 +1000

    increase data size to 300

commit 14dbbfc8bb
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Fri May 14 18:57:43 2021 +1000

    add email field support, null position default

commit b56842c9dc
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Fri May 14 15:42:56 2021 +1000

    send more values to SondeHub

commit 30483560ba
Author: Uskompuf <22492406+Uskompuf@users.noreply.github.com>
Date:   Fri May 14 15:02:30 2021 +1000

    unnecessary cast--; precision++;

commit b948290646
Author: Luke Prior <22492406+LukePrior@users.noreply.github.com>
Date:   Fri May 14 14:56:27 2021 +1000

    Add Sondehub tracker link in web interface

commit f1ebaa0d77
Author: dl9rdz (via Travis CI) <dl9rdz@darc.de>
Date:   Thu May 13 14:13:20 2021 +0300

    Removed TimeLib.h dependency

commit 80c9f25183
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun May 9 10:11:39 2021 +0200

    unnecessary cast--; precision++;

commit 9a66ad25ff
Author: dl9rdz (via Travis CI) <dl9rdz@darc.de>
Date:   Tue May 4 21:14:23 2021 +0300

    Manufacturer and type added

commit e5b080d668
Author: dl9rdz (via Travis CI) <dl9rdz@darc.de>
Date:   Sun May 2 17:06:39 2021 +0300

    cleaning

commit 5ffc016077
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Apr 24 19:11:36 2021 +0200

    test with other display driver -- do not use unless you are sure you want this -- missing font, slow display updates - travis fix

commit b4099e1970
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Apr 24 18:57:43 2021 +0200

    test with other display driver -- do not use unless you are sure you want this -- missing font, slow display updates

commit 9d883313a9
Author: dl9rdz (via Travis CI) <dl9rdz@darc.de>
Date:   Thu Apr 22 23:04:50 2021 +0300

    Update RX_FSK.ino

commit f148c96509
Author: dl9rdz (via Travis CI) <dl9rdz@darc.de>
Date:   Thu Apr 22 21:05:17 2021 +0300

    Update config.txt

commit fdf745e871
Author: dl9rdz (via Travis CI) <dl9rdz@darc.de>
Date:   Thu Apr 22 21:00:44 2021 +0300

    Update networks.txt

commit cbd6446c4a
Author: dl9rdz (via Travis CI) <dl9rdz@darc.de>
Date:   Thu Apr 22 20:54:59 2021 +0300

    update

commit 7323d5fed1
Author: dl9rdz (via Travis CI) <dl9rdz@darc.de>
Date:   Thu Apr 22 17:55:46 2021 +0300

    update

commit 85a1291e13
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Apr 2 23:20:41 2021 +0200

    partial mp3h1, and (maybe) fix travis for esp 1.0.6

commit 59b2787c24
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Apr 2 23:02:12 2021 +0200

    partial mp3h1

commit 1e72d8f303
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Apr 1 20:42:34 2021 +0200

    serial++

commit 5a1fc1ce1b
Merge: f6161a9 2154212
Author: oh3bsg <60152526+oh3bsg@users.noreply.github.com>
Date:   Fri Apr 2 21:04:56 2021 +0300

    Merge pull request #2 from oh3bsg/renaming

    Renamed server name and other minor updates

commit 2154212c3e
Author: dl9rdz (via Travis CI) <dl9rdz@darc.de>
Date:   Fri Apr 2 20:58:44 2021 +0300

    Renamee server name and other minor updates

    Renamed server name
    Updated networks
    Updated scanning list

commit f6161a9c9f
Merge: 7e817f3 8e6d953
Author: oh3bsg <60152526+oh3bsg@users.noreply.github.com>
Date:   Fri Apr 2 12:57:57 2021 +0300

    Merge pull request #1 from oh3bsg/devel

    Devel

commit 519c656cb0
Author: Eben van Ellewee <sbmail246@gmail.com>
Date:   Tue Mar 30 20:58:50 2021 +0200

    Edited OLED Battery screen to show just Volts

commit d7f1f37fcc
Merge: 2db65cc 18760bb
Author: Eben van Ellewee <sbmail246@gmail.com>
Date:   Mon Mar 29 10:11:24 2021 +0200

    Merge branch 'devel' of https://github.com/dl9rdz/rdz_ttgo_sonde into displayvolts

commit 2db65cc2bd
Author: Eben van Ellewee <sbmail246@gmail.com>
Date:   Mon Mar 29 09:55:34 2021 +0200

    fix if statement

commit 684253ce0e
Author: Eben van Ellewee <sbmail246@gmail.com>
Date:   Mon Mar 29 08:47:42 2021 +0200

    Display Battery Volts TTGO 2.1.6

commit cd3b34c494
Merge: 4ed3baf c1d1887
Author: Eben van Ellewee <sbmail246@gmail.com>
Date:   Mon Mar 29 08:44:33 2021 +0200

    Merge branch 'devel' of https://github.com/eben80/rdz_ttgo_sonde into devel

commit 18760bb687
Author: dl9rdz <dl9rdz@darc.de>
Date:   Wed Mar 24 12:38:40 2021 +0100

    Update issue templates

commit 4da22ab2ec
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Mar 16 09:39:54 2021 +0100

    fix minor bug that prevents most revent devel versions from communicating with app

commit c1d1887d96
Merge: 8d66dde 67b11b2
Author: eben80 <sbmail246@gmail.com>
Date:   Mon Mar 15 23:10:13 2021 +0100

    Merge pull request #7 from dl9rdz/devel

    Merge new chanes

commit 67b11b2a65
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Mar 15 21:51:36 2021 +0100

    M10/M20 test: reset pll fast hop (set by spectrum)

commit 48b74355e8
Merge: 8df0859 4fcd24c
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Mar 14 21:31:39 2021 +0100

    Merge branch 'temphum' into devel

commit 8df0859f1c
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Mar 14 18:12:07 2021 +0100

    gps init bugfix, less debug messages, gps for android w/o gps (+GPGST parser), merge kml live view

commit db3f62c243
Merge: a7a6423 9b9cd87
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Mar 14 18:05:13 2021 +0100

    Merge branch 'kml' into devel

commit a7a642332f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Mar 2 12:47:46 2021 +0100

    test (Joerg)

commit a051b069bb
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Feb 27 00:32:03 2021 +0100

    fix travis?

commit cb6f2a7c91
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Feb 26 23:40:15 2021 +0100

    auto gps factoryreset for t-beam

commit 30b7b35339
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Feb 20 10:27:50 2021 +0100

    fix for wrong DFM position for negative lat/lon (untested)

commit 4ed3bafb86
Merge: 8d66dde 7db0e8f
Author: Eben van Ellewee <sbmail246@gmail.com>
Date:   Mon Feb 15 10:11:35 2021 +0100

    Merge branch 'devel' of https://github.com/dl9rdz/rdz_ttgo_sonde into devel

commit 7db0e8ff11
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Feb 13 12:23:21 2021 +0100

    web ui usability enhancements

commit 4fcd24cc41
Author: Michael Carter <mycarda@btinternet.com>
Date:   Thu Feb 11 07:35:41 2021 +0000

    Update version.h

    update version

commit 581024f035
Author: mycarda <mycarda@btinternet.com>
Date:   Thu Feb 11 07:33:28 2021 +0000

    Fix bug for negative uint, convert to float first

commit 9b9cd8720b
Author: Tadeusz Magura-Witkowski <tadeuszmw@gmail.com>
Date:   Wed Feb 10 18:00:00 2021 +0100

    Small fixes to make it work with upstream version

commit dd3d428fc8
Author: Tadeusz Magura-Witkowski <tadeuszmw@gmail.com>
Date:   Fri Feb 28 15:29:25 2020 +0100

    KML live output

commit 6e64cd753c
Author: mycarda <mycarda@btinternet.com>
Date:   Tue Feb 9 11:32:01 2021 +0000

    minor updates after testing

commit 981ecc8044
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Feb 9 00:59:56 2021 +0100

    detect rdzclient timeout and disconnect from app

commit 0304e4ea32
Author: michael carter <mycarda@btinternet.com>
Date:   Mon Feb 8 17:45:17 2021 +0000

    subframe and temp, hum calcs

commit 8e6d953e60
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Feb 5 16:51:26 2021 +0100

    rs92 eph: configurable ftp site

commit 8d66dde162
Merge: 4fcf26e a408ae5
Author: eben80 <sbmail246@gmail.com>
Date:   Wed Jan 27 22:32:50 2021 +0100

    Merge pull request #4 from dl9rdz/devel

    always send json data after each frame for rdzwx-go

commit a408ae5461
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Jan 26 20:57:31 2021 +0100

    always send json data after each frame for rdzwx-go

commit 4fcf26e8ea
Merge: 82db61c 5ea5720
Author: eben80 <sbmail246@gmail.com>
Date:   Sun Jan 24 22:35:36 2021 +0100

    Merge pull request #1 from dl9rdz/devel

    Get latest commits

commit 5ea572053a
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Jan 24 13:19:56 2021 +0100

    better T-Beam 1.1 autodetect

commit 0a625f1283
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Jan 24 13:04:17 2021 +0100

    better T-Beam 1.1 autodetect

commit 82db61c91f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Dec 31 00:10:15 2020 +0100

    some reorg, gps factory def, ftp bugfix

commit b0f5f0c7ea
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Dec 30 15:43:58 2020 +0100

    enable AXP interrupt only if axp button is enabled in config

commit ba338a4a4c
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Dec 30 14:14:51 2020 +0100

    minor improvements (display, m10)

commit 6350447f64
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Dec 30 13:57:21 2020 +0100

    minor improvements (display, m10)

commit ad244bc771
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Dec 30 13:52:58 2020 +0100

    minor improvements (display, m10)

commit 32cb370964
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Dec 30 12:02:57 2020 +0100

    MicroNMEA update compatibility by type inference

commit 8d560599f1
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Dec 30 03:35:49 2020 +0100

    M10 AFC+

commit 5f3b6e38b5
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Dec 28 17:26:28 2020 +0100

    (reorder download links: new on top)

commit f397781a8c
Merge: 1d28450 669c021
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Dec 28 17:25:22 2020 +0100

    Merge branch 'grundsch-add_googlemaps' into devel

commit 669c0212cb
Merge: 1d28450 392044c
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Dec 28 17:24:58 2020 +0100

    Merge branch 'add_googlemaps' of https://github.com/grundsch/rdz_ttgo_sonde into grundsch-add_googlemaps

commit 1d28450861
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Dec 28 17:14:01 2020 +0100

    typo--; more robust web interface

commit e273c5e38e
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Dec 27 23:08:13 2020 +0100

    tentative m20 supported (untested)

commit 28d5a89fd4
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Dec 27 16:19:28 2020 +0100

    mqtt compatibility enhanced: remove trailing comma

commit 4bcdc958c2
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Dec 15 21:15:15 2020 +0100

    reduce html size for QRG form

commit 392044ce9f
Author: Steph <grundsch@users.noreply.github.com>
Date:   Sun Dec 6 17:12:42 2020 +0100

    add googlemaps to data page

commit 77df309009
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Dec 1 16:29:58 2020 +0100

    new version: mqtt support

commit 44e3737645
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Dec 1 15:42:23 2020 +0100

    nits

commit 5664ce3e6d
Author: SH <sh@analogic.cz>
Date:   Tue Dec 1 09:56:59 2020 +0100

    fix travis build

commit cc7a00b60a
Merge: b268754 67d0cbf
Author: SH <sh@analogic.cz>
Date:   Tue Dec 1 09:51:54 2020 +0100

    merge

commit b268754b66
Author: SH <sh@analogic.cz>
Date:   Tue Dec 1 09:45:47 2020 +0100

    finalize

commit 67d0cbf858
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Nov 30 15:44:49 2020 +0100

    testing modified DFM decoder, ttgo 2.1_1.6 bugfix, modified screens

commit 52a998ebd0
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Nov 29 16:20:05 2020 +0100

    arduino 1.8.13 upgrade for travis

commit 4f343800a7
Author: analogic <info@analogic.cz>
Date:   Mon Nov 23 08:07:51 2020 +0100

    Removing unnecessary pin defines

commit 1b0cde0f6c
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Nov 29 16:01:54 2020 +0100

    debug output cleanup; minor dfm17 id bugs removed

commit aaa33267d7
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Nov 28 19:53:09 2020 +0100

    updated dfm serial numbers

commit 39f96e3bcd
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Nov 28 01:43:16 2020 +0100

    test decode serial of dfm17 etc.

commit 2a43004b71
Author: SH <sh@analogic.cz>
Date:   Thu Nov 26 08:33:58 2020 +0100

    fix bool leakage

commit 3f74b3a8aa
Author: SH <sh@analogic.cz>
Date:   Wed Nov 25 11:04:58 2020 +0100

    remove fixed espressif32 platform version

commit 89141622d7
Author: SH <sh@analogic.cz>
Date:   Wed Nov 25 11:03:55 2020 +0100

    set mqtt client id

commit dcd93dfe97
Author: SH <sh@analogic.cz>
Date:   Wed Nov 25 11:01:18 2020 +0100

    mqtt initial implementation

commit 5bc751d261
Author: SH <sh@analogic.cz>
Date:   Mon Nov 23 08:14:00 2020 +0100

    remove unnecessary flag

commit 1954cafa6f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Nov 20 22:07:29 2020 +0100

    support development with platformio (in addition to Arduino IDE)

commit 1ea3bdd0ee
Merge: 8f75960 5715eb0
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Nov 20 21:48:37 2020 +0100

    Merge branch 'analogic-devel' (pull request #36) into devel

commit 5715eb0d91
Author: sh <sh@analogic.cz>
Date:   Fri Nov 20 21:06:06 2020 +0100

    integrat platformio without breaking changes

commit 8f75960405
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Nov 18 10:05:37 2020 +0100

    fix horizontal speed value (was wrong for all except RS41)

commit b586fafa5a
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Nov 15 16:40:41 2020 +0100

    test3

commit e5f3ae8c35
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Nov 15 16:32:08 2020 +0100

    test2

commit 3bde8911c2
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Nov 15 16:25:21 2020 +0100

    test

commit 10594d79e1
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Nov 15 16:17:08 2020 +0100

    fix spectrum display for 1.3inch SH1106 LCD

commit e0ad39b9f0
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Nov 11 14:13:33 2020 +0100

    tentativ apx key fix

commit 92edc5e04c
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Nov 11 09:42:01 2020 +0100

    avoid compilter warnings

commit dd900e96f2
Merge: cf1b302 7e817f3
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Nov 11 08:53:11 2020 +0100

    Merge branch 'master' into devel

commit cf1b3026b0
Author: cixio <5869764+cixio@users.noreply.github.com>
Date:   Thu Jul 30 12:30:52 2020 +0200

    starting with first enabled QRG on powerup

commit 71afbe932b
Author: cixio <5869764+cixio@users.noreply.github.com>
Date:   Thu Jul 30 12:30:04 2020 +0200

    avoid skipping one ORG in loop when none is enabled

commit fa75c20584
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Nov 11 00:12:10 2020 +0100

    fix spectrum display for LCD, better display for TFT

commit 052f502d45
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Jul 28 22:12:16 2020 +0200

    update version with cixio mod

commit 51902df994
Author: cixio <5869764+cixio@users.noreply.github.com>
Date:   Tue Jul 28 21:04:28 2020 +0200

    allow to access mobile internet connection while connected to sonde

commit 8a05698f44
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Apr 14 09:45:53 2020 +0200

    edit.html: multipart/form-data instead of urlencoded

commit a28042da3d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Feb 9 22:01:42 2020 +0100

    noch ein versuch es richtig zu machen :)

commit b5d7af6445
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Feb 9 21:50:36 2020 +0100

    arg. get it right :)

commit f87acecb49
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Feb 9 21:41:38 2020 +0100

    norx_timeout is in seconds, internal timeout is in ms, so add missing *1000

commit 25ea6876cf
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Feb 9 21:29:41 2020 +0100

    enable/disable norx_timeout via config.txt

commit c96f4812e9
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Feb 2 21:39:31 2020 +0100

    +debug code

commit 166eb56a00
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Jan 31 19:34:38 2020 +0100

    update version

commit cd2fa51360
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Jan 31 19:33:55 2020 +0100

    use PWR button as button2 on T-Beam 1.0

commit 2a364870e1
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Jan 31 18:03:30 2020 +0100

    licence info update

commit 29e39bd0fa
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Dec 22 22:21:59 2019 +0100

    workaround for asyncWebSocket bug

commit faaef5c56e
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Dec 21 18:45:45 2019 +0100

    alternative battery display

commit e64d699f6a
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Dec 21 18:41:34 2019 +0100

    configurable mdns name

commit 69aea6dcfd
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Dec 21 18:07:17 2019 +0100

    color for QS bar on TFT display

commit 73133f3e61
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Dec 21 17:43:26 2019 +0100

    large font for IP address

commit f96086c94e
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Dec 21 16:59:14 2019 +0100

    scan index also for TFT

commit 833acaa78e
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Dec 21 16:50:51 2019 +0100

    added missing commit for kill timer display; show scan index

commit 3bdee75a41
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Dec 21 16:16:47 2019 +0100

    +kill timer values

commit e54d63ab22
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Dec 21 15:30:54 2019 +0100

    +kill timer values

commit 7255f567aa
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Dec 11 10:45:19 2019 +0100

    additional warning if race condition causes unexpected timeout

commit 44e0f86382
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Dec 11 10:36:49 2019 +0100

    make race condition less likely to happen. real solution should use a mutex

commit 5459f76a7d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Dec 7 17:14:19 2019 +0100

    version update

commit 250ead8f86
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Dec 7 16:26:23 2019 +0100

    stat bar for tft display

commit bf4870c091
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Dec 5 15:51:44 2019 +0100

    set font

commit 8cc844b22f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Nov 29 09:47:56 2019 +0100

    tentative fix: save kisstnc.active (not yet tested)

commit edc09c4e17
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Nov 28 08:07:13 2019 +0100

    batt info for oled

commit 76840649b6
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu Nov 28 08:06:05 2019 +0100

    batt info for oled

commit aa1699066e
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Nov 25 10:51:51 2019 +0100

    RS41: keep previous position if frame with position 0/0 is received

commit 57be2b7d80
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Nov 24 20:54:47 2019 +0100

    add simple gpx export

commit 324b6d0505
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Nov 24 20:54:23 2019 +0100

    add license info

commit f407cbb544
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Nov 10 12:04:59 2019 +0100

    internal button pullup; touch calibration mode

commit 51ebef6d1b
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Nov 3 21:04:39 2019 +0100

    +flip oled support

commit d6a32a0529
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Nov 3 18:05:28 2019 +0100

    just adding names for additional config options

commit 2eb6a379b9
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Nov 3 17:59:38 2019 +0100

    unspukify

commit d40af02e12
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Nov 3 00:49:27 2019 +0100

    fix travis (mooo.com) comment

commit 727ba7158f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Nov 3 00:12:13 2019 +0100

    typo--

commit d329189e03
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Nov 2 22:46:05 2019 +0100

    spiffs version in mooo.com webpage for travis buidls

commit b81dd7d787
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Nov 2 19:04:06 2019 +0100

    make use of LED :) -1 to disable

commit f0a92a6d39
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Nov 2 19:01:41 2019 +0100

    make use of LED :)

commit 9d0fd046e1
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Nov 2 16:48:21 2019 +0100

    some M10 finetuning (reset IRQ flags when switching to different sonde type, TFT display of M10 ID/Type)

commit de5308893a
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Nov 2 13:18:17 2019 +0100

    more info (frame#,sats) and time stamps from sonde in aprsmap data

commit 08818e385e
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Nov 2 13:06:23 2019 +0100

    make M10 id(dxlnew) fit on screen with freq in one line

commit 3d41493ef9
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Nov 1 23:35:56 2019 +0100

    collect some more info (frame#, gpstime, sat#) from sonde

commit 8502e0fc08
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Nov 1 18:16:06 2019 +0100

    meteo

commit 4f169fcb23
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Oct 27 15:45:09 2019 +0100

    welcome display for rotated tft display

commit 4314e8f23f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Oct 27 15:36:25 2019 +0100

    same spiffs location for arduino ide and travis build, second attempt; +tft orientation config

commit 84b3357fa0
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Oct 27 14:05:08 2019 +0100

    Revert "spiffs location in symc with more recent arduino ide default settings"

    This reverts commit 0f8a3872db.

commit 1940ce2f50
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Oct 27 14:04:45 2019 +0100

    Revert "fix spiffs"

    This reverts commit 22dbfca9af.

commit 22dbfca9af
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Oct 27 13:45:52 2019 +0100

    fix spiffs

commit 6e9e0e2144
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Oct 27 00:10:13 2019 +0200

    fix support for 'real' button2 (not touch)

commit 0f8a3872db
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 26 23:31:05 2019 +0200

    spiffs location in symc with more recent arduino ide default settings

commit 27c57cffe3
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Oct 21 21:10:11 2019 +0200

    version update

commit 4e593b38e0
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Oct 21 20:51:21 2019 +0200

    G0 (circle diagram) and Vbatt for the display

commit be64a7bf5f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 19 16:36:57 2019 +0200

    hs in m/s richtig

commit 06204b1ad7
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 19 09:23:18 2019 +0200

    more cleanup and better support for ILI9225 displays

commit 69b269b0b9
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Oct 18 23:34:06 2019 +0200

    typo--

commit 3ebdab2676
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Oct 18 23:29:43 2019 +0200

    some more cleanup, slightly simpler screens configuration, additional screen layouts for ILI9225

commit 22bf0f8c21
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Oct 18 17:04:59 2019 +0200

    horizantal speeds as m/s instead of km/h (optionally)

commit 038f1f9c6d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri Oct 18 15:22:43 2019 +0200

    Some cleanup, Power control for Heltec v2 board, hor.speed in m/s

commit 804632dd88
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Oct 16 08:20:36 2019 +0200

    version update

commit 8f36eb38a5
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Oct 16 08:20:19 2019 +0200

    updated 'docu' in screens.txt

commit 111aceebdb
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Oct 16 08:16:28 2019 +0200

    box sizes for proportinal fonts; right-justified text; extra text for hs/vs

commit 450269510a
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Oct 15 13:53:04 2019 +0200

    Display options for GPS course and bearing relative to GPS course

commit 13594556b7
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Oct 14 21:26:31 2019 +0200

    more reliable startup on power up for t-Beam 1.0 with oled

commit 6d7edc67b8
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Oct 14 21:03:25 2019 +0200

    add support for Heltec v2 board

commit 3e0c7668fb
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Oct 14 08:14:58 2019 +0200

    IP color, Wifi Scan on ILI9225, more robust screens.txt editing

commit ed60efce87
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Oct 13 19:20:23 2019 +0200

    autodetect I2S-Display on T-Beam 1.0

commit 82d4ee110f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Oct 13 18:14:33 2019 +0200

    some more display configurations options (select fonts, better but still incomplete support for ILI9225). autodetect of new t-beam 1.0 with oled

commit 59098c55b7
Merge: 59f42cc 29e502b
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Oct 8 08:05:01 2019 +0200

    in sync with master 0.7.1

commit 59f42ccfee
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Oct 8 07:56:58 2019 +0200

    minor stuff for 2.2 display

commit 47c683ac12
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Oct 8 01:06:35 2019 +0200

    +fonts

commit 998d226433
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue Oct 8 01:00:20 2019 +0200

    better display support

commit 1a25f0a6ec
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 5 18:08:37 2019 +0200

    remove halt loop w/o pmu

commit 7fce59ba59
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 5 18:03:12 2019 +0200

    more autodetection

commit 5c0fae7d81
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 5 17:26:08 2019 +0200

    better board model for t-beams

commit e57df45e5d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 5 17:16:04 2019 +0200

    t-beam 1.0 power up working

commit 04f35f6753
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 5 12:08:44 2019 +0200

    more travis testing/debugging

commit 7531b60e9c
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 5 12:04:34 2019 +0200

    more travis testing/debugging

commit 09ff11cabd
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 5 11:57:17 2019 +0200

    more travis testing/debugging

commit d2f892a902
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 5 11:42:58 2019 +0200

    added t-beam 1.0 power management configuration support

commit 2bbc905317
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 5 11:33:38 2019 +0200

    some display code reorganization, HW I2C for SSD1306

commit ce86c38bab
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Oct 5 11:32:49 2019 +0200

    read additional display config from config file

commit 7956e0b7e9
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 29 17:22:53 2019 +0200

    upgrade to arduino 1.8.10

commit 2efcc46351
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 29 16:35:38 2019 +0200

    remove debug statement

commit 34e0573893
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 29 16:22:07 2019 +0200

    added travis debug

commit bf6cdb003e
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 29 16:10:31 2019 +0200

    updated setup (added ILI9225 library)

commit 119456935f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 29 15:52:18 2019 +0200

    updated setup (added ILI9225 library)

commit f6cdf342cc
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Sep 29 15:50:35 2019 +0200

    partial TFT (ILI9225) support; web/data: only show active frequence

commit 079cb4980d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed Sep 11 20:53:58 2019 +0200

    first test: tnc tcp/ip server for APRSdroid

commit 0053c95498
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Jun 10 08:47:30 2019 +0200

    missing update in last commit

commit 6abd6a7a1a
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Jun 9 23:23:43 2019 +0200

    display layout easier to modify

commit 3734101f66
Merge: 0a79f1a 46658ad
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Jun 8 15:55:02 2019 +0200

    devel in sync with master

commit 0a79f1a850
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Jun 8 15:49:30 2019 +0200

    a bit better autodetect

commit f8206b645a
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Jun 8 14:53:19 2019 +0200

    re-enable axudp

commit ff035eabd4
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Jun 8 12:55:54 2019 +0200

    nicer configuration of button/touch in web interface; autoconfig enhanced

commit 2928b41270
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Jun 8 10:50:02 2019 +0200

    fix travis build: add micronmea library

commit 0556d67fa0
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat Jun 8 08:47:57 2019 +0200

    Several updates for testing before next master release
    - RS92 should now work fine, inluding some fixes to the ephemeris download, and including information about download
    - Download only started if there is some RS92 in the qrg.txt configuration
    - Some enhancements to new internal structure (separate RX Task for handling the SX1278), should now work as good as
      before the reorganisation :-)
    - Avoid key glitch after startup on T-BEAM (triggering double wifi scan)
    - GPS playground (for T-Beam or external GPS connected to board)...

commit 7fb4b8f999
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Jun 2 22:24:47 2019 +0200

    RS92: display ID

commit 561da4fe3e
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Jun 2 21:19:57 2019 +0200

    somewhat usable RS92 decoder

commit 01cccdcb75
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Jun 2 12:01:58 2019 +0200

    automatically fetch ephemeris once per hour on startup

commit 1b192b6471
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Jun 2 11:28:00 2019 +0200

    ephemeris data download for RS92 (still not yet fully usable)

commit 315586653f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri May 31 01:22:27 2019 +0200

    removing all compiler warnings

commit 15902b0230
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu May 30 23:27:33 2019 +0200

    some cleanup

commit fc60655dfa
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu May 30 22:51:40 2019 +0200

    save dram in bss segment

commit a22c6797f4
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu May 30 22:19:45 2019 +0200

    no new features, but some code reorg: rx handling in a separate task, preparation for RS92 decoding

commit beaa044163
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun May 26 07:55:22 2019 +0200

    default wifi mode back to 3; no-rx timeout only in legacy display mode

commit 43807b613d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sat May 25 10:49:26 2019 +0200

    Fully functional touch button support

commit b3943aee31
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri May 24 23:49:50 2019 +0200

    Several incremental changes (not yet ready for a new release)
    - Correctly decode DMF06 (thanks to Chrischan for test sonde!!!)
    - Touch button support (in particular for v2 boards with "real" button)
      now its sufficient to just touch one of the pins of a v2 board
    - Multiple displays (inspired by DL2MF's modifications)
    - Wifi mode 2 (AP2) fixed missing initialization of mDNS (http://rdzsonde.local)
    - updated OTA URL (my.to domain unfortunately expired)
    - millis() call removed from ISR (/1000 on uint64_t type in millis causes library
      function call not marked as IRAM_ATTR, causing crash in some cases
    - edit files on file system (http://rdzsonde.local/edit.html?file=xyz.txt)
      (use with caution, no checks for buffer overflows)

    Some TODOs pending for next release version
    - sending AXUDP to aprsmap currently disabled
    - RX loop a bit too slow (in particular with AXUDP enabled), causing loss of RX frames
      due to SX1278 overflow. Needs some redesign in SX1278 handling.
    - display layout editable via config file

commit 5797041272
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu May 23 20:23:14 2019 +0200

    enhance time stamps of travis generated html index

commit d26e932c40
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu May 23 20:03:47 2019 +0200

    version number update

commit 7844d42c76
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu May 23 19:48:24 2019 +0200

    maybe a fix for DFM-06 (still not yet tested)

commit 9cea3ed9ad
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed May 22 23:04:06 2019 +0200

    minor cleanup

commit 49b3d771d1
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed May 22 22:35:36 2019 +0200

    parse launch-site correctly even if frequency has more or less digits

commit e84a5872b5
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed May 22 22:13:14 2019 +0200

    new configurable display code, finetuning

commit d6236b75d2
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed May 22 22:12:53 2019 +0200

    simple file editor

commit 3339b6841c
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed May 22 14:03:15 2019 +0200

    data types cleanup

commit 84c7ab8097
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed May 22 13:50:47 2019 +0200

    initial touch button support; adapted version of DL2F's alternative display layouts

commit 7c238ccc1d
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed May 22 11:36:58 2019 +0200

    load iframes only when visible

commit 6c02e32e18
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon May 13 22:12:28 2019 +0200

    version update

commit 8863218ed9
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon May 13 21:59:25 2019 +0200

    wrong default values -- hz, not khz\!

commit 054a7cbf82
Merge: 90c117d d8ea59e
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Thu May 9 13:08:48 2019 +0200

    Merge branch 'master' into devel

commit 90c117da0f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue May 7 02:20:35 2019 +0200

    some more configurable options

commit 7012768c8e
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Tue May 7 02:17:37 2019 +0200

    some more configurable options

commit fdeb179a67
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon May 6 17:25:54 2019 +0200

    some config options ++

commit 3549ab21cf
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon May 6 01:18:41 2019 +0200

    configurable RX and AFC bandwidth; configuration display of AFC value

commit 00e67ac018
Merge: 84566ec 1b68b09
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri May 3 14:14:56 2019 +0200

    devel in sync with master v0.6b

commit 84566ec4dd
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri May 3 14:07:39 2019 +0200

    enable network services in all wifi modes

commit 7cf4b116a6
Merge: 3ae104d b676149
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri May 3 13:34:35 2019 +0200

    Merge branch 'p8' (pull request #8) into devel

commit b6761498aa
Author: DL2MF <meinhard.guenther@gmail.com>
Date:   Fri May 3 13:07:08 2019 +0200

    Fixed RX display line 1

commit 3ae104d10f
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri May 3 11:55:26 2019 +0200

    + default AP name if networks.txt is missing

commit c0fc4980c2
Author: DL2MF <meinhard.guenther@gmail.com>
Date:   Fri May 3 11:38:21 2019 +0200

    Added launchsite info to scan and webinterface

commit c259e75ce6
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri May 3 08:15:33 2019 +0200

    ...and update version info

commit 2eaba4fe7e
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Fri May 3 07:53:21 2019 +0200

    lokale IP per mDNS annoncieren (http://rdzsonde.local/)

commit 1732f17cce
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed May 1 19:21:29 2019 +0200

    fix travis directory listing

commit dc16c9fa07
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed May 1 19:14:36 2019 +0200

    explicitly set button pin as input

commit 8bd087a9f0
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Wed May 1 00:27:17 2019 +0200

    playing around with OTA updates

commit 61dbf7bc20
Merge: a08b5ea 98bd469
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 29 23:01:27 2019 +0200

    Merge branch 'master' into devel

commit a08b5ea6c3
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 29 22:49:42 2019 +0200

    more travis testing :-///

commit 5a7dfcffcf
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 29 22:41:38 2019 +0200

    more travis testing :-/

commit cdda2e0f10
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 29 22:31:56 2019 +0200

    more travis testing :-/

commit 9e04a61b8b
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 29 22:15:57 2019 +0200

    more travis testing

commit 378af68174
Merge: 0dd00a8 8febd29
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 29 22:03:33 2019 +0200

    Merge branch 'master' into devel

commit 0dd00a8eeb
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 29 21:59:10 2019 +0200

    spectrum timer fixes for v1 boards

commit 016c060df4
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 29 21:35:42 2019 +0200

    fixed potential C++ object lifetime problems with dangling pointers

commit 42f5750438
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 29 18:19:02 2019 +0200

    nicer download page

commit 01229e0160
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 29 18:13:24 2019 +0200

    configuration editable via web

commit 0981210762
Merge: 078f0ff d1a419c
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 29 00:24:43 2019 +0200

    Merge branch 'master' into devel

commit 078f0ff838
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 29 00:23:12 2019 +0200

    travis ci testing

commit 0e80772b5d
Merge: b997846 5e0c562
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 29 00:18:45 2019 +0200

    Merge branch 'master' into devel

commit b997846f45
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Mon Apr 29 00:06:41 2019 +0200

    more debug for networks

commit a410c1ad91
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Apr 28 23:48:40 2019 +0200

    more travis ci testing

commit c5ddec7a14
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Apr 28 23:36:59 2019 +0200

    more debug output for wifi scan

commit b191f707dc
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Apr 28 22:57:34 2019 +0200

    travis ci testing

commit b7ae8f6614
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Apr 28 22:35:17 2019 +0200

    travis ci testing

commit 771bb4865e
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Apr 28 22:26:32 2019 +0200

    travis ci testing

commit c6e91298b3
Merge: 24dd1f4 f2a1a7e
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Apr 28 22:20:41 2019 +0200

    Merge branch 'master' into devel

commit 24dd1f4579
Author: Hansi, dl9rdz <dl9rdz@darc.de>
Date:   Sun Apr 28 22:14:55 2019 +0200

    travis ci

commit 1062e55bd7
Author: Travis CI <travis@travis-ci.org>
Date:   Sun Apr 28 22:03:17 2019 +0200

    travis ci

commit acaf7f6a81
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 19:43:04 2019 +0200

    travis testing

commit c357dbd71b
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 19:28:46 2019 +0200

    travis testing

commit b4cc1dc18c
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 19:24:27 2019 +0200

    travis testing

commit 4305763149
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 19:20:06 2019 +0200

    travis testing

commit e4cce47863
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 19:17:07 2019 +0200

    travis testing

commit f51d09f165
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 19:11:16 2019 +0200

    travis testing

commit e0462c8381
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 18:58:50 2019 +0200

    scripts for image generation

commit ed174f7617
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 18:17:27 2019 +0200

    +skript for image generation

commit 03db476a5e
Merge: eb83c6f 170e7cb
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 16:51:32 2019 +0200

    merging master

commit eb83c6f50f
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 16:27:36 2019 +0200

    fix memory leak - generate reed solomon table only once

commit 04196347bb
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 16:07:47 2019 +0200

    code cleanup

commit 90f409e723
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 16:04:11 2019 +0200

    travis ci testing and minor cleanup

commit d68b445d27
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 15:49:51 2019 +0200

    remove duplicated register names

commit 10a01b30f1
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 15:38:33 2019 +0200

    testing travis ci

commit d9d3edba6a
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 15:36:36 2019 +0200

    testing travis ci

commit 0d0f360177
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 15:24:13 2019 +0200

    testing travis ci

commit 43130b5205
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 15:15:25 2019 +0200

    testing travis ci

commit 07e037dab7
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 15:01:52 2019 +0200

    testing travis ci

commit d28abf0f97
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 14:55:41 2019 +0200

    travis ci testing

commit 67c65145fb
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 14:50:09 2019 +0200

    testing travis ci

commit 9f3810c14d
Merge: 5c37b3f ca3fa52
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 14:38:13 2019 +0200

    Merge branch 'master' into devel

commit 5c37b3f0fa
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 14:17:52 2019 +0200

    version from config.h also for html page; minor polishing

commit 9fea636d20
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 14:17:37 2019 +0200

    version from config.h also for html page; minor polishing

commit 75eb15cc24
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 13:29:58 2019 +0200

    version info in version.h, some code formatting (arduino style)

commit 8da577a313
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Sun Apr 28 13:29:53 2019 +0200

    version info in version.h, some code formatting (arduino style)

commit b68ffee8b0
Author: Mike <mail@dl2mf.de>
Date:   Sat Apr 27 20:54:20 2019 +0200

    merging DL2MF's 71cc86cff0

commit c67a4fc734
Author: DL2MF <meinhard.guenther@gmail.com>
Date:   Sat Apr 27 00:10:11 2019 +0200

    merging DL2MF's e2161c57d1

commit 6e665cb6ab
Author: DL2MF <meinhard.guenther@gmail.com>
Date:   Fri Apr 26 19:21:11 2019 +0200

    merging DL2MF's 25b438db84 to current devel branch

commit 71cc86cff0
Author: Mike <mail@dl2mf.de>
Date:   Sat Apr 27 20:54:20 2019 +0200

    Windows GitGui did not update the RX_FSK.ino

    Some of the latest changes to the .ino were not uploaded correctly.

commit e2161c57d1
Author: DL2MF <meinhard.guenther@gmail.com>
Date:   Sat Apr 27 00:10:11 2019 +0200

    SondeMap on index.html, typo in DFM.cpp altitude fixed. Fix startSpectrum in RX_FSK when joining WLAN.

commit b467f25c05
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Fri Apr 26 23:54:36 2019 +0200

    working new Wifi support

commit 25b438db84
Author: DL2MF <meinhard.guenther@gmail.com>
Date:   Fri Apr 26 19:21:11 2019 +0200

    Adding WiFi bugfix from b4sh and minor changes in RX_FSK

commit 2959dfad4f
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Fri Apr 26 23:09:09 2019 +0200

    background wifi scan/connected/reconnect. partial code, incomplete, for testing station mode only (wifi=1)

commit 9f822df519
Merge: 9264ec3 0518f07
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Tue Apr 23 14:50:51 2019 +0200

    sync devel with master v0.4

commit 9264ec3b3b
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Tue Apr 23 14:46:52 2019 +0200

    GPL info in about window, display update after key press

commit fe8003c526
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Tue Apr 23 13:49:57 2019 +0200

    minor display fix

commit 86f249f094
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Tue Apr 23 13:29:58 2019 +0200

    modifiying pull request: lat should be alt

commit d056ec8b76
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Tue Apr 23 13:08:02 2019 +0200

    merging pull request #2 by DL2MF to devel branch

commit 86982f6a91
Author: DL2MF <meinhard.guenther@gmail.com>
Date:   Mon Apr 22 20:12:12 2019 +0200

    Fixing missing libs and minor changes, improving spectrum display info.

commit a1dd2ebd2c
Author: DL2MF <meinhard.guenther@gmail.com>
Date:   Sun Apr 21 06:54:49 2019 +0200

    Full rebuild, support new params, new functions for ESP LoRa boards w/o buttons

commit 619631f80e
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Wed Apr 17 14:54:19 2019 +0200

    configurable oled pins, minor spectrum enhancement

commit 1ffe73708f
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Wed Apr 17 14:54:08 2019 +0200

    configurable oled pins, minor spectrum enhancement

commit 500679bdc5
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Tue Apr 16 17:51:41 2019 +0200

    read config from config.txt, configurable display ports

commit 63abbe9a2c
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Tue Apr 16 16:52:16 2019 +0200

    dao extension, aprs symbol

commit cd30b6ce94
Merge: 88d75b5 791a6bd
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Mon Apr 15 21:03:06 2019 +0200

    Merge branch 'master' into devel

commit 88d75b55c3
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Mon Apr 15 20:59:30 2019 +0200

    working version with config page (readonly)

commit d2e1b84991
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Mon Apr 15 20:28:50 2019 +0200

    reorg -- currently not working

commit a7572ec6f3
Merge: 9b0785b 69cb203
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Fri Apr 12 18:55:03 2019 +0200

    sync with master

commit 9b0785bc44
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Fri Apr 12 17:57:03 2019 +0200

    +setup instructions

commit 459673a310
Merge: df4514f 2fe6687
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Thu Apr 11 00:00:38 2019 +0200

    Merge remote-tracking branch 'refs/remotes/origin/devel' into devel

commit df4514f48c
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Thu Apr 11 00:00:25 2019 +0200

    +aprs udp (axupd)

commit e386891d2a
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Thu Apr 11 00:00:19 2019 +0200

    +aprs udp (axupd)

commit 2fe668727c
Author: Hansi Reiser <dl9rdz@darc.de>
Date:   Wed Apr 10 23:59:41 2019 +0200

    +status page

commit 26eed1ff77
Author: Hansi Reiser <dl9rdz@darc.de>
Date:   Wed Apr 10 00:29:23 2019 +0200

    temp

commit a527d5837e
Author: Hansi Reiser <dl9rdz@darc.de>
Date:   Wed Apr 10 00:29:11 2019 +0200

    temp

commit 7b58febb45
Author: Hansi Reiser <dl9rdz@darc.de>
Date:   Mon Apr 8 19:22:08 2019 +0200

    some web interface updates

commit 0d64f8d05d
Author: Hansi Reiser <dl9rdz@darc.de>
Date:   Mon Apr 8 19:22:02 2019 +0200

    some web interface updates

commit da9d4367be
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Fri Apr 5 23:32:26 2019 +0200

    some minor updates

commit e7360f2c1e
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Fri Apr 5 20:05:22 2019 +0200

    incremental enhancements on train trip

commit b3ac2c5506
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Fri Apr 5 20:05:18 2019 +0200

    incremental enhancements on train trip

commit ab4367992e
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Thu Apr 4 23:46:48 2019 +0200

    some more testing

commit d02d687670
Author: Hans P. Reiser <hr@sec.uni-passau.de>
Date:   Thu Apr 4 23:46:37 2019 +0200

    some more testing

commit 34f9971143
Author: Hansi Reiser <dl9rdz@darc.de>
Date:   Thu Apr 4 08:11:14 2019 +0200

    scanner-test

commit a22bb43c89
Author: Hansi Reiser <dl9rdz@darc.de>
Date:   Thu Apr 4 08:10:56 2019 +0200

    scanner-test
master
Hansi, dl9rdz 2022-09-24 22:35:30 +00:00
rodzic c03683efa2
commit ee81c2259c
28 zmienionych plików z 573 dodań i 162 usunięć

Wyświetl plik

@ -49,7 +49,7 @@ install:
- ln -s $PWD/libraries/SondeLib /usr/local/share/arduino/libraries/SondeLib
- arduino --install-library "U8g2:2.29.11"
- arduino --install-library "MicroNMEA"
- arduino --install-library "GFX Library for Arduino"
- arduino --install-library "GFX Library for Arduino:1.1.5"
script:
- arduino --board esp32:esp32:t-beam --verify $PWD/RX_FSK/RX_FSK.ino
- ESPPATH=`arduino --get-pref runtime.tools.xtensa-esp32-elf-gcc.path`

Wyświetl plik

@ -23,6 +23,7 @@
#include "src/aprs.h"
#include "src/ShFreqImport.h"
#include "src/RS41.h"
#include "src/json.h"
#if FEATURE_CHASEMAPPER
#include "src/Chasemapper.h"
#endif
@ -241,7 +242,7 @@ const String sondeTypeSelect(int activeType) {
//trying to work around
//"assertion "heap != NULL && "free() target pointer is outside heap areas"" failed:"
// which happens if request->send is called in createQRGForm!?!??
char message[10240 * 4]; //needs to be large enough for all forms (not checked in code)
char message[10240 * 4-2048]; //needs to be large enough for all forms (not checked in code)
// QRG form is currently about 24kb with 100 entries
///////////////////////// Functions for Reading / Writing QRG list from/to qrg.txt
@ -545,9 +546,12 @@ const char *createStatusForm() {
const char *createLiveJson() {
char *ptr = message;
strcpy(ptr, "{");
SondeInfo *s = &sonde.sondeList[sonde.currentSonde];
strcpy(ptr, "{\"sonde\": {");
// use the same JSON format here as for MQTT and for the Android App
sonde2json( ptr+strlen(ptr), 1024, s );
#if 0
sprintf(ptr + strlen(ptr), "\"sonde\": {\"rssi\": %d, \"vframe\": %d, \"time\": %d,\"id\": \"%s\", \"freq\": %3.3f, \"type\": \"%s\"",
s->rssi, s->d.vframe, s->d.time, s->d.id, s->freq, sondeTypeStr[sonde.realType(s)]);
@ -563,7 +567,8 @@ const char *createLiveJson() {
sprintf(ptr + strlen(ptr), ", \"speed\": %.1f", s->d.hs);
sprintf(ptr + strlen(ptr), ", \"launchsite\": \"%s\", \"res\": %d }", s->launchsite, s->rxStat[0]);
#endif
strcat(ptr, " }");
if (gpsPos.valid) {
sprintf(ptr + strlen(ptr), ", \"gps\": {\"lat\": %g, \"lon\": %g, \"alt\": %d, \"sat\": %d, \"speed\": %g, \"dir\": %d, \"hdop\": %d }", gpsPos.lat, gpsPos.lon, gpsPos.alt, gpsPos.sat, gpsPos.speed, gpsPos.course, gpsPos.hdop);
//}
@ -573,7 +578,6 @@ const char *createLiveJson() {
int alt = isnan(sonde.config.rxalt) ? 0 : (int)sonde.config.rxalt;
sprintf(ptr + strlen(ptr), ", \"gps\": {\"lat\": %g, \"lon\": %g, \"alt\": %d, \"sat\": 0, \"speed\": 0, \"dir\": 0, \"hdop\": 0 }", sonde.config.rxlat, sonde.config.rxlon, alt);
}
}
strcat(ptr, "}");
@ -609,6 +613,8 @@ struct st_configitems config_list[] = {
{"rxalt", -7, &sonde.config.rxalt},
{"screenfile", 0, &sonde.config.screenfile},
{"display", -6, sonde.config.display},
{"dispsaver", 0, &sonde.config.dispsaver},
{"dispcontrast", 0, &sonde.config.dispcontrast},
/* Spectrum display settings */
{"spectrum", 0, &sonde.config.spectrum},
{"startfreq", 0, &sonde.config.startfreq},
@ -806,6 +812,9 @@ const char *handleConfigPost(AsyncWebServerRequest * request) {
f.close();
Serial.printf("Re-reading file file\n");
setupConfigData();
// TODO: Check if this is better done elsewhere?
// Use new config (whereever this is feasible without a reboot)
disp.setContrast();
return "";
}
@ -1262,11 +1271,6 @@ void SetupAsyncServer() {
request->send(response);
});
// Route to set GPIO to HIGH
server.on("/test.php", HTTP_POST, [](AsyncWebServerRequest * request) {
request->send(SPIFFS, "/index.html", String(), false, processor);
});
server.on("/live.kml", HTTP_GET, [](AsyncWebServerRequest * request) {
request->send(200, "application/vnd.google-earth.kml+xml", createKMLLive(sonde.ipaddr.c_str()));
});
@ -2323,23 +2327,21 @@ void loopDecoder() {
sondehub_reply_handler(&shclient);
#endif
// wifi (axudp) or bluetooth (bttnc) active => send packet
// wifi active and good packet received => send packet
SondeInfo *s = &sonde.sondeList[rxtask.receiveSonde];
if ((res & 0xff) == 0 && (connected || tncclient.connected() )) {
if ((res & 0xff) == 0 && connected) {
//Send a packet with position information
// first check if ID and position lat+lonis ok
if (s->d.validID && ((s->d.validPos & 0x03) == 0x03)) {
char *str = aprs_senddata(s, sonde.config.call, sonde.config.objcall, sonde.config.udpfeed.symbol);
if (connected) {
char raw[201];
int rawlen = aprsstr_mon2raw(str, raw, APRS_MAXLEN);
Serial.println("Sending AXUDP");
//Serial.println(raw);
udp.beginPacket(sonde.config.udpfeed.host, sonde.config.udpfeed.port);
udp.write((const uint8_t *)raw, rawlen);
udp.endPacket();
}
char raw[201];
int rawlen = aprsstr_mon2raw(str, raw, APRS_MAXLEN);
Serial.println("Sending AXUDP");
//Serial.println(raw);
udp.beginPacket(sonde.config.udpfeed.host, sonde.config.udpfeed.port);
udp.write((const uint8_t *)raw, rawlen);
udp.endPacket();
if (tncclient.connected()) {
Serial.println("Sending position via TCP");
char raw[201];
@ -2409,6 +2411,21 @@ void loopDecoder() {
} else {
*gps = 0;
}
//
raw[0] = '{';
// Use same JSON format as for MQTT and HTML map........
sonde2json(raw+1, 1023, s);
sprintf(raw+strlen(raw),
",\"active\":%d"
",\"validId\":%d"
",\"validPos\":%d"
" %s}\n",
(int)s->active,
s->d.validID,
s->d.validPos,
gps);
int len = strlen(raw);
#if 0
//maintain backwords compatibility
float lat = isnan(s->d.lat) ? 0 : s->d.lat;
float lon = isnan(s->d.lon) ? 0 : s->d.lon;
@ -2417,7 +2434,6 @@ void loopDecoder() {
float hs = isnan(s->d.hs) ? 0 : s->d.hs;
float dir = isnan(s->d.dir) ? 0 : s->d.dir;
//
int len = snprintf(raw, 1024, "{"
"\"res\": %d,"
"\"type\": \"%s\","
@ -2473,6 +2489,8 @@ void loopDecoder() {
s->d.crefKT,
gps
);
#endif
//Serial.println("Writing rdzclient...");
if (len > 1024) len = 1024;
int wlen = rdzclient.write(raw, len);
@ -2483,6 +2501,7 @@ void loopDecoder() {
//Serial.println("Writing rdzclient OK");
}
Serial.print("MAIN: updateDisplay started\n");
sonde.dispsavectlOFF( (res & 0xff) == 0 ); // handle screen saver (disp auto off)
if (forceReloadScreenConfig) {
disp.initFromFile(sonde.config.screenfile);
sonde.clearDisplay();
@ -3541,7 +3560,7 @@ void sondehub_send_data(WiFiClient * client, SondeInfo * s, struct st_sondehub *
}
// Check if current sonde data is valid. If not, don't do anything....
if (*s->d.ser == 0) return; // Don't send anything without serial number
if (*s->d.ser == 0 || s->d.validID==0 ) return; // Don't send anything without serial number
if (((int)s->d.lat == 0) && ((int)s->d.lon == 0)) return; // Sometimes these values are zeroes. Don't send those to the sondehub
if ((int)s->d.alt > 50000) return; // If alt is too high don't send to SondeHub
// M20 data does not include #sat information

Wyświetl plik

@ -11,6 +11,8 @@ var cfgs = [
[ "", "OLED/TFT display configuration", "https://github.com/dl9rdz/rdz_ttgo_sonde/wiki/Display-configuration" ],
[ "screenfile", "Screen config (0=automatic; 1-5=predefined; other=custom)" ],
[ "display", "Display screens (scan, default, ...)" ],
[ "dispsaver", "Display saver (0=never/1=always/2=ifnorx [+10*n: after n sec.])" ],
[ "dispcontrast", "OLED contrast (-1=use default; 0..255=set contrast)" ],
[ "norx_timeout", "No-RX-timeout in seconds (-1=disabled)"],
[ "tft_orient", "TFT orientation (0/1/2/3), OLED flip: 3"],
[ "", "Spectrum display configuration", "https://github.com/dl9rdz/rdz_ttgo_sonde/wiki/Spectrum-configuration" ],
@ -72,7 +74,7 @@ var cfgs = [
[ "sondehub.fimaxdist", "Import maximum distance (km, &leq; 700)" ],
[ "sondehub.fimaxage", "Import maximum age (hours, &leq; 48)" ],
[ "", "Hardware configuration (requires reboot)", "https://github.com/dl9rdz/rdz_ttgo_sonde/wiki/Hardware-configuration"],
[ "disptype", "Display type (0=OLED/SSD1306, 1=ILI9225, 2=OLED/SH1106, 3=ILI9341, 4=ILI9342)"],
[ "disptype", "Display type (0=OLED/SSD1306, 1=ILI9225, 2=OLED/SH1106, 3=ILI9341, 4=ILI9342, 5=ST7789)"],
[ "oled_sda", "OLED SDA/TFT SDA"],
[ "oled_scl", "OLED SCL/TFT CLK"],
[ "oled_rst", "OLED RST/TFT RST (needs reboot)"],

Wyświetl plik

@ -51,6 +51,10 @@ kisstnc.active = 1
# second entry: default "Receiver" display
# additional entries: alternative receiver display, activated by button
display=0,1,2,3,4
# turn off display: 0=never, 1=always, 2=if no RX; (+n*10: after n seconds)
dispsaver=0
# set OLED contrast (0..255) or leave at factory default (-1)
dispcontrast=-1
# set to -1 to disable (used for "N" values in timers in screens.txt). Value in seconds
norx_timeout=20
#-------------------------------#
@ -86,7 +90,8 @@ dfm.rxbw=10400
# s2: www.ngs.noaa.gov/cors/rinex/
#-------------------------------#
#ephftp=www.ngs.noaa.gov/cors/rinex/
ephftp=igs.bkg.bund.de/IGS/BRDC/
#ephftp=igs.bkg.bund.de/IGS/BRDC/
ephftp=gssc.esa.int/gnss/data/daily/
#-------------------------------#
# axudp for sending to aprsmap
#-------------------------------#

Wyświetl plik

@ -5,10 +5,10 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<link rel="stylesheet" type="text/css" href="style.css" />
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.7.1/dist/leaflet.css" />
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.8.0/dist/leaflet.css" />
<script>var mapcenter=[%MAPCENTER%];</script>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script src="https://unpkg.com/leaflet@1.7.1/dist/leaflet.js"></script>
<script src="https://unpkg.com/leaflet@1.8.0/dist/leaflet.js"></script>
<script src="https://unpkg.com/leaflet.marker.slideto@0.2.0/Leaflet.Marker.SlideTo.js"></script>
<script src="livemap.js"></script>
</head>

Wyświetl plik

@ -13,40 +13,54 @@ $(document).ready(function(){
L.control.scale().addTo(map);
L.control.attribution({prefix:false}).addTo(map);
if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
var osm = L.tileLayer('https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}.png', {
attribution: '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors &copy; <a href="https://carto.com/attributions">CARTO</a>',
minZoom: 1,
maxZoom: 19
});
} else {
var osm = L.tileLayer('https://{s}.tile.openstreetmap.de/tiles/osmde/{z}/{x}/{y}.png', {
attribution: '<div><a href="https://leafletjs.com/">Leaflet</a> &middot; Map: <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a></div>',
minZoom: 1,
maxZoom: 19
});
}
var esri = L.tileLayer('https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}', {
attribution: '<div><a href="https://leafletjs.com/">Leaflet</a> &middot; Map: <a href="https://www.esri.com/">Esri</a> &middot; Earthstar Geographics</div>',
minZoom: 1,
maxZoom: 20
var osmlight = L.tileLayer('https://{s}.tile.openstreetmap.de/{z}/{x}/{y}.png', {
maxZoom: 19,
attribution: '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors'
});
var basemap = 'osm';
osm.addTo(map);
var osmdark = L.tileLayer('https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}.png', {
attribution: '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors &copy; <a href="https://carto.com/attributions">CARTO</a>',
maxZoom: 19
});
var opentopo = L.tileLayer('https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png', {
maxZoom: 17,
attribution: 'Map data: &copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, <a href="http://viewfinderpanoramas.org">SRTM</a><br />Map style: &copy; <a href="https://opentopomap.org">OpenTopoMap</a> (<a href="https://creativecommons.org/licenses/by-sa/3.0/">CC-BY-SA</a>)'
});
var esri = L.tileLayer('https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}', {
attribution: 'Tiles &copy; Esri &mdash; Source: Esri, i-cubed, USDA, USGS, AEX, GeoEye,<br />Getmapping, Aerogrid, IGN, IGP, UPR-EGP, and the GIS User Community',
maxZoom: 21
});
var basemap;
if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
map.addLayer(osmdark);
basemap='osmdark';
} else {
map.addLayer(osmlight);
basemap='osmlight';
}
basemap_change = function () {
if (basemap == 'osm') {
map.removeLayer(osm);
map.addLayer(esri);
basemap = 'esri';
} else {
map.removeLayer(esri);
map.addLayer(osm);
basemap = 'osm';
}
if (basemap == 'osmlight') {
map.removeLayer(osmlight);
map.addLayer(opentopo);
basemap = 'opentopo';
} else if (basemap == 'opentopo') {
map.removeLayer(opentopo);
map.addLayer(esri);
basemap = 'esri';
} else if (basemap == 'esri') {
map.removeLayer(esri);
map.addLayer(osmdark);
basemap = 'osmdark';
} else {
map.removeLayer(osmdark);
map.addLayer(osmlight);
basemap = 'osmlight';
}
};
if(mapcenter) map.setView(mapcenter, 5);
@ -80,7 +94,6 @@ $('.leaflet-footer').append(footer);
var statbar = '';
headtxt = function(data,stat) {
//console.log(data);
var staticon = (stat == '1')?greendot:yellowdot;
statbar = staticon + statbar;
if ((statbar.length) > 10*greendot.length) { statbar = statbar.substring(0,10*greendot.length); }
@ -105,22 +118,23 @@ headtxt = function(data,stat) {
$('#sonde_statbar').html('&nbsp;'+statbar);
};
map.addControl(new L.Control.Button([ { position: 'topleft', text: '🔙', href: 'index.html' } ]));
map.addControl(new L.Control.Button([ { position: 'topleft', text: '🔙', href: 'index.html' } ]));
L.control.zoom({ position:'topleft' }).addTo(map);
L.control.zoom({ position:'topleft' }).addTo(map);
map.addControl(new L.Control.Button([ { position: 'topleft', text: '🗺️', href: 'javascript:basemap_change();' } ]));
map.addControl(new L.Control.Button([ { position: 'topleft', text: '🗺️', href: 'javascript:basemap_change();' } ]));
map.addControl(new L.Control.Button([ { position: 'topright', id: "status", text: '', href: 'javascript:get_data();' } ]));
map.addControl(new L.Control.Button([ { position: 'topright', id: "status", text: '', href: 'javascript:get_data();' } ]));
map.addControl(new L.Control.Button([
{ position:'topright', text: '🎈', href: 'javascript:show(marker[last_id],\'marker\');' },
{ text: '〰️', href: 'javascript:show_line();' },
{ text: '💥', href: 'javascript:show(marker_burst[last_id],\'burst\');' },
{ text: '🎯', href: 'javascript:show(marker_landing[last_id],\'landing\');' }
]));
map.addControl(new L.Control.Button([ { position:'topright', text: '⚙️', href: 'javascript:show_settings();' } ]));
map.addControl(new L.Control.Button([
{ position:'topright', text: '🎈', href: 'javascript:show(marker,\'marker\');' },
{ text: '〰️', href: 'javascript:show_line();' },
{ text: '💥', href: 'javascript:show(marker_burst,\'burst\');' },
{ text: '🎯', href: 'javascript:show(marker_landing,\'landing\');' }
]));
map.addControl(new L.Control.Button([ { position:'topright', text: '⚙️', href: 'javascript:show_settings();' } ]));
show = function(e,p) {
@ -144,64 +158,65 @@ headtxt = function(data,stat) {
show_line = function() {
$('.i_position, .i_landing').remove();
map.closePopup();
if (line._latlngs.length != 0 && line_predict._latlngs.length != 0) {
map.fitBounds(getTwoBounds(line.getBounds(),line_predict.getBounds()));
} else if (line._latlngs.length != 0) {
map.fitBounds(line.getBounds());
} else if (line_predict._latlngs.length != 0) {
map.fitBounds(line_predict.getBounds());
if (line[last_id]._latlngs.length != 0 && line_predict[last_id]._latlngs.length != 0) {
map.fitBounds(getTwoBounds(line[last_id].getBounds(),line_predict[last_id].getBounds()));
} else if (line[last_id]._latlngs.length != 0) {
map.fitBounds(line[last_id].getBounds());
} else if (line_predict[last_id]._latlngs.length != 0) {
map.fitBounds(line_predict[last_id].getBounds());
}
};
last_data = false;
last_id = false;
follow = 'marker';
marker_landing = false;
marker_landing = [];
icon_landing = L.divIcon({className: 'leaflet-landing'});
dots_predict = [];
line_predict = L.polyline(dots_predict,{color: 'yellow'}).addTo(map);
marker_burst = false;
line_predict = [];
marker_burst = [];
icon_burst = L.divIcon({className: 'leaflet-burst'});
marker = false;
marker = [];
dots = [];
line = L.polyline(dots).addTo(map);
line = [];
draw = function(data) {
var stat;
console.log(data);
if (data.id) {
last_id = data.id;
// data.res: 0: ok 1: no rx (timeout), 2: crc err, >2 some other error
if ((data.lat && data.lon && data.alt) && (lastframe != 0)) {
var location = [data.lat,data.lon,data.alt];
if (!marker) {
if (!marker[data.id]) {
map.setView(location, 14);
marker = L.marker(location).addTo(map)
marker[data.id] = L.marker(location).addTo(map)
.bindPopup(poptxt('position',data),{closeOnClick:false, autoPan:false}).openPopup();
get_predict(data);
} else {
marker.slideTo(location, {
marker[data.id].slideTo(location, {
duration: 500,
keepAtCenter: (follow=='marker')?true:false
})
.setPopupContent(poptxt('position',data));
if (last_data.id != data.id) {
storage_remove();
dots = [];
get_predict(data);
}
}
dots.push(location);
line.setLatLngs(dots);
if (!dots[data.id]) { dots[data.id] = []; }
dots[data.id].push(location);
if (!line[data.id]) {
line[data.id] = L.polyline(dots[data.id]).addTo(map);
} else {
line[data.id].setLatLngs(dots[data.id]);
}
}
if (data.res == 0) {
storage_write(data);
$('#status').html(greendot);
stat = 1;
}
else {
} else {
$('#status').html(yellowdot);
stat = 0;
}
@ -252,8 +267,7 @@ headtxt = function(data,stat) {
get_data = function() {
$('#status').html(reddot);
$.ajax({url: 'live.json', success: (function( data ) {
if (typeof data != "object") { data = $.parseJSON(data); }
//console.log(data);
if (typeof data != "object") { data = $.parseJSON(data); }
if (data.sonde) {
draw(data.sonde);
} else {
@ -342,7 +356,7 @@ headtxt = function(data,stat) {
var m = new Date();
var datetime = m.getUTCFullYear() + "-" + az(m.getUTCMonth()+1) + "-" + az(m.getUTCDate()) + "T" +
az(m.getUTCHours()) + ":" + az(m.getUTCMinutes()) + ":" + az(m.getUTCSeconds()) + "Z";
var url = 'https://predict.cusf.co.uk/api/v1/';
var url = 'https://api.v2.sondehub.org/tawhiri';
url += '?launch_latitude='+data.lat + '&launch_longitude='+tawhiri_lon(data.lon);
url += '&launch_altitude='+data.alt + '&launch_datetime='+datetime;
url += '&ascent_rate='+ascent + '&burst_altitude=' + burst + '&descent_rate='+descent;
@ -352,7 +366,7 @@ headtxt = function(data,stat) {
});
};
draw_predict = function(prediction,data) {
draw_predict = function(prediction,data) {
var ascending = prediction.prediction[0].trajectory;
var highest = ascending[ascending.length-1];
var highest_location = [highest.latitude,sanitize_lon(highest.longitude)];
@ -361,34 +375,39 @@ headtxt = function(data,stat) {
var landing = descending[descending.length-1];
var landing_location = [landing.latitude,sanitize_lon(landing.longitude)];
if (!marker_landing) {
marker_landing = L.marker(landing_location,{icon: icon_landing}).addTo(map)
if (!marker_landing[data.id]) {
marker_landing[data.id] = L.marker(landing_location,{icon: icon_landing}).addTo(map)
.bindPopup(poptxt('landing',landing),{closeOnClick:false, autoPan:false});
} else {
marker_landing.slideTo(landing_location, {
marker_landing[data.id].slideTo(landing_location, {
duration: 500,
keepAtCenter: (follow=='landing')?true:false
})
.setPopupContent(poptxt('landing',landing));
}
dots_predict=[];
dots_predict[data.id]=[];
if (data.climb > 0) {
ascending.forEach(p => dots_predict.push([p.latitude,sanitize_lon(p.longitude)]));
ascending.forEach(p => dots_predict[data.id].push([p.latitude,sanitize_lon(p.longitude)]));
if (!marker_burst) {
marker_burst = L.marker(highest_location,{icon:icon_burst}).addTo(map).bindPopup(poptxt('burst',highest),{closeOnClick:false, autoPan:false});
if (!marker_burst[data.id]) {
marker_burst[data.id] = L.marker(highest_location,{icon:icon_burst}).addTo(map).bindPopup(poptxt('burst',highest),{closeOnClick:false, autoPan:false});
} else {
marker_burst.slideTo(highest_location, {
marker_burst[data.id].slideTo(highest_location, {
duration: 500,
keepAtCenter: (follow=='burst')?true:false
}).setPopupContent(poptxt('burst',highest));
}
}
descending.forEach(p => dots_predict.push([p.latitude,sanitize_lon(p.longitude)]));
line_predict.setLatLngs(dots_predict);
descending.forEach(p => dots_predict[data.id].push([p.latitude,sanitize_lon(p.longitude)]));
if (!line_predict[data.id]) {
line_predict[data.id] = L.polyline(dots_predict[data.id],{color: 'yellow'}).addTo(map);
} else {
line_predict[data.id].setLatLngs(dots_predict[data.id]);
}
if (data.climb > 0) {
predictor_time = 5 * 60; // ascending, every 5 min
@ -419,7 +438,7 @@ headtxt = function(data,stat) {
var add =
'<br /><b>Position:</b> '+lat+', '+lon+'<br />'+
'<b>Open:</b> <a href="https://www.google.de/maps/?q='+lat+', '+lon+'" target="_blank">GMaps</a> | <a href="https://www.openstreetmap.org/?mlat='+lat+'&mlon='+lon+'&zoom=15" target="_blank">OSM</a> | <a href="mapsme://map?ll='+lat+','+lon+'">Maps.me</a>';
'<b>Open:</b> <a href="https://www.google.de/maps/?q='+lat+', '+lon+'" target="_blank">GMaps</a> | <a href="https://www.openstreetmap.org/?mlat='+lat+'&mlon='+lon+'&zoom=15" target="_blank">OSM</a> | <a href="geo://'+lat+','+lon+'">GeoApp</a>';
if (t == 'position') { return '<div class="i_position"><b>🎈 '+i.id+'</b>'+add+'</div>'; }
if (t == 'burst') { return '<div class="i_burst"><b>💥 Predicted Burst:</b><br />'+fd(i.datetime)+' in '+mr(i.altitude)+'m'+add+'</div>'; }

Wyświetl plik

@ -1,5 +1,8 @@
# Frequency in Mhz (format nnn.nnn)
# Type (4=RS41, 6=DFM normal, DFM-06, 9=DFM inverted, DFM-09)
# Type (4=RS41, R=RS92, D=DFM (automated normal/inverted), M=M10/M20, 3=MP3H)
# (older versions: 6=DFM6, 9=DFM9, now both treated the same as D)
# (older versions: M=M10, 2=M20, now both treaded the same: automated M10/M20 decoding)
# +: active, -: not active
#
402.300 4 + Greifswald
402.500 4 - Schleswig

Wyświetl plik

@ -116,6 +116,7 @@ timeaction=#,D,+
0,9=T
3,0=F MHz
5,0,16=S
7,0=gV
7,5=n
############

Wyświetl plik

@ -47,6 +47,17 @@ static struct st_dfmstat {
float meas[5+2];
} dfmstate;
decoderSetupCfg DFMSetupCfg {
.bitrate = 2500,
// continuous mode
// Enable auto-AFC, auto-AGC, RX Trigger by preamble ????
.rx_cfg = 0x1E,
.sync_cfg = 0x70,
.sync_len = 2,
.sync_data = (const uint8_t *)"\xAA\xAA",
.preamble_cfg = 0xA8,
};
int DFM::setup(float frequency, int type)
{
stype = type;
@ -57,6 +68,12 @@ int DFM::setup(float frequency, int type)
DFM_DBG(Serial.println("Setting SX1278 power on FAILED"));
return 1;
}
if(DecoderBase::setup(DFMSetupCfg, sonde.config.dfm.agcbw, sonde.config.dfm.rxbw) != 0) {
return 1;
}
#if 0
// This is now all done by the generic setup method in base class
if(sx1278.setFSK()!=0) {
DFM_DBG(Serial.println("Setting FSM mode FAILED"));
return 1;
@ -65,12 +82,6 @@ int DFM::setup(float frequency, int type)
DFM_DBG(Serial.println("Setting bitrate 2500bit/s FAILED"));
return 1;
}
#if DFM_DEBUG
float br = sx1278.getBitrate();
Serial.print("Exact bitrate is ");
Serial.println(br);
#endif
if(sx1278.setAFCBandwidth(sonde.config.dfm.agcbw)!=0) {
DFM_DBG(Serial.printf("Setting AFC bandwidth %d Hz FAILED", sonde.config.dfm.agcbw));
return 1;
@ -79,11 +90,7 @@ int DFM::setup(float frequency, int type)
DFM_DBG(Serial.printf("Setting RX bandwidth to %d Hz FAILED", sonde.config.dfm.rxbw));
return 1;
}
// DFM OLD support has been removed
{
// continuous mode
// Enable auto-AFC, auto-AGC, RX Trigger by preamble ????
if(sx1278.setRxConf(0x1E)!=0) {
DFM_DBG(Serial.println("Setting RX Config FAILED"));
return 1;
@ -99,12 +106,13 @@ int DFM::setup(float frequency, int type)
DFM_DBG(Serial.println("Setting PreambleDetect FAILED"));
return 1;
}
if(sx1278.setPacketConfig(0x08, 0x40)!=0) {
DFM_DBG(Serial.println("Setting Packet config FAILED"));
return 1;
}
sx1278.setPayloadLength(0); // infinite for now...
}
#endif
if(sx1278.setPacketConfig(0x08, 0x40)!=0) {
DFM_DBG(Serial.println("Setting Packet config FAILED"));
return 1;
}
sx1278.setPayloadLength(0); // infinite for now...
Serial.print("DFM: setting RX frequency to ");
Serial.println(frequency);
@ -221,6 +229,8 @@ const char* typestr[16]={
void DFM::killid() {
SondeData *sd = &(sonde.si()->d);
sd->validID = false;
*(sd->id) = 0;
*(sd->ser) = 0;
memset((void *)&dfmstate, 0, sizeof(dfmstate));
}
@ -268,6 +278,7 @@ void DFM::finddfname(uint8_t *b)
}
if(i==6) {
snprintf(sd->id, 10, "D%x ", id);
memcpy(sd->ser, sd->id+1, 9);
sd->validID = true;
sd->subtype = (st>>4)&0x0F;
strncpy(sd->typestr, typestr[ (st>>4)&0x0F ], 5);
@ -319,6 +330,7 @@ void DFM::finddfname(uint8_t *b)
snprintf(sd->id, 10, "D%d", ((dfmstate.dat[2*i]<<16)|dfmstate.dat[2*i+1])%100000000);
Serial.print("\nNEW AUTOID:");
Serial.println(sd->id);
memcpy(sd->ser, sd->id+1, 9);
sd->validID = true;
sd->subtype = (st>>4)&0x0F;
strncpy(sd->typestr, typestr[ (st>>4)&0x0F ], 5);
@ -402,8 +414,6 @@ void DFM::decodeCFG(uint8_t *cfg)
Serial.printf("battery: %f\n", si->batteryVoltage);
}
}
// new aprs ID (dxlaprs, autorx) is now "D" + serial (8 digits) by consensus
memcpy(sonde.si()->d.ser, sonde.si()->d.id+1, 9);
}
#if 0

Wyświetl plik

@ -15,12 +15,13 @@
#ifndef inttypes_h
#include <inttypes.h>
#endif
#include "DecoderBase.h"
#define DFM_NORMAL 0
#define DFM_INVERSE 1
/* Main class */
class DFM
class DFM : public DecoderBase
{
private:
int stype;

Wyświetl plik

@ -0,0 +1,51 @@
#include "DecoderBase.h"
#include "SX1278FSK.h"
#include "Sonde.h"
#define DECODERBASE_DEBUG 1
#if DECODERBASE_DEBUG
#define DBG(x) x
#else
#define DBG(x)
#endif
int DecoderBase::setup(decoderSetupCfg &setupcfg, uint16_t agcbw, uint16_t rxbw) {
if(sx1278.setFSK()!=0) {
DBG(Serial.println("Setting FSK mode FAILED"));
return 1;
}
if(sx1278.setBitrate(setupcfg.bitrate)!=0) {
DBG(Serial.println("Setting bitrate FAILED"));
return 1;
}
#if DECODERBASE_DEBUG
float br = sx1278.getBitrate();
Serial.print("Exact bitrate is ");
Serial.println(br);
#endif
if(sx1278.setAFCBandwidth(agcbw)!=0) {
DBG(Serial.printf("Setting AFC bandwidth %d Hz FAILED", agcbw));
return 1;
}
if(sx1278.setRxBandwidth(rxbw)!=0) {
DBG(Serial.printf("Setting RX bandwidth to %d Hz FAILED", rxbw));
return 1;
}
if(sx1278.setRxConf(setupcfg.rx_cfg)!=0) {
DBG(Serial.println("Setting RX Config FAILED"));
return 1;
}
if(sx1278.setSyncConf(setupcfg.sync_cfg, setupcfg.sync_len, setupcfg.sync_data)!=0) {
DBG(Serial.println("Setting SYNC Config FAILED"));
return 1;
}
if(sx1278.setPreambleDetect(setupcfg.preamble_cfg)!=0) {
DBG(Serial.println("Setting PreambleDetect FAILED"));
return 1;
}
return 0;
}

Wyświetl plik

@ -0,0 +1,38 @@
#ifndef DECODER_BASE_H
#define DECODER_BASE_H
#include <stdlib.h>
#include <stdint.h>
#include <Arduino.h>
#ifndef inttypes_h
#include <inttypes.h>
#endif
#include "Sonde.h"
typedef struct _decoderSetupCfg {
uint16_t bitrate;
//uint16_t agcbw;
//uint16_t rxbw;
uint8_t rx_cfg;
uint8_t sync_cfg;
uint8_t sync_len;
const uint8_t *sync_data;
uint8_t preamble_cfg;
} decoderSetupCfg;
/* Generic base class for all sonde decoders */
class DecoderBase
{
protected:
public:
int setup(decoderSetupCfg &setupcfg, uint16_t agcbw, uint16_t rxbw);
virtual int setup(float frequency, int type=0) = 0;
virtual int receive() = 0;
virtual int waitRXcomplete() = 0;
};
#endif

Wyświetl plik

@ -277,6 +277,7 @@ void U8x8Display::begin() {
}
u8x8->begin();
if(sonde.config.tft_orient==3) u8x8->setFlipMode(true);
if(sonde.config.dispcontrast>=0) u8x8->setContrast(sonde.config.dispcontrast);
fontlist = fl;
nfonts = sizeof(fl)/sizeof(uint8_t *);
@ -287,6 +288,10 @@ void U8x8Display::clear() {
u8x8->clear();
}
void U8x8Display::setContrast(uint8_t contrast) {
u8x8->setContrast(contrast);
}
// For u8x8 oled display: 0=small font, 1=large font 7x14
void U8x8Display::setFont(uint8_t fontindex) {
@ -509,9 +514,11 @@ void ILI9225Display::begin() {
tft = new Arduino_ILI9341(bus, sonde.config.oled_rst);
else if(_type == 4)
tft = new Arduino_ILI9342(bus, sonde.config.oled_rst);
else if(_type == 5)
tft = new Arduino_ST7789(bus, sonde.config.oled_rst);
else
tft = new Arduino_ILI9225(bus, sonde.config.oled_rst);
Serial.println("ILI9225/ILI9341 init: done");
Serial.println("ILI9225/ILI9341/ST7789 init: done");
tft->begin(sonde.config.tft_spifreq);
tft->fillScreen(BLACK);
tft->setRotation(sonde.config.tft_orient);
@ -526,12 +533,15 @@ void ILI9225Display::clear() {
SPI_MUTEX_UNLOCK();
}
void ILI9225Display::setContrast(uint8_t /*contrast*/) {
}
// for now, 0=small=FreeSans9pt7b, 1=large=FreeSans18pt7b
void ILI9225Display::setFont(uint8_t fontindex) {
//if(fontindex==1 || fontindex==2) { fontindex=3; }
findex = fontindex;
switch(fontindex) {
case 0: tft->setFont(NULL); tft->setTextSize(1); break;
case 0: tft->setFont(); tft->setTextSize(1); break;
//case 1: tft->setFont(NULL); tft->setTextSize(2); break;
//case 2: tft->setFont(NULL); tft->setTextSize(2); break;
default: tft->setFont(gfl[fontindex-1]);
@ -769,16 +779,17 @@ RawDisplay *Display::rdis = NULL;
//TODO: maybe merge with initFromFile later?
void Display::init() {
Serial.printf("disptype is %d\n",sonde.config.disptype);
if(sonde.config.disptype==1 || sonde.config.disptype==3 || sonde.config.disptype==4 ) {
rdis = new ILI9225Display(sonde.config.disptype);
} else {
if(sonde.config.disptype==0 || sonde.config.disptype==2) {
rdis = new U8x8Display(sonde.config.disptype);
} else {
rdis = new ILI9225Display(sonde.config.disptype);
}
Serial.println("Display created");
rdis->begin();
delay(100);
Serial.println("Display initialized");
rdis->clear();
dispstate = 1; // display active by default
}
@ -1024,6 +1035,7 @@ int Display::getScreenIndex(int index) {
break;
case 3: // ILI9341
case 4: // ILI9342
case 5:
index = 4; // landscape mode (orient=1/3)
if( (sonde.config.tft_orient&0x01)==0 ) index++; // portrait mode (0/2)
break;
@ -1145,7 +1157,9 @@ void Display::initFromFile(int index) {
char text[61];
n=sscanf(s, "%f,%f,%f", &y, &x, &w);
sscanf(ptr+1, "%60[^\r\n]", text);
if(sonde.config.disptype==1 || sonde.config.disptype==3 || sonde.config.disptype==4 ) { x*=xscale; y*=yscale; w*=xscale; }
if(sonde.config.disptype!=0 && sonde.config.disptype!=2) {
x*=xscale; y*=yscale; w*=xscale;
}
newlayouts[idx].de[what].x = x;
newlayouts[idx].de[what].y = y;
newlayouts[idx].de[what].width = n>2 ? w : WIDTH_AUTO;
@ -1727,30 +1741,35 @@ void Display::drawText(DispEntry *de) {
}
void Display::updateDisplayPos() {
if( dispstate == 0 ) return; // do not display anything
for(DispEntry *di=layout->de; di->func != NULL; di++) {
if(di->func != disp.drawLat && di->func != disp.drawLon) continue;
di->func(di);
}
}
void Display::updateDisplayPos2() {
if( dispstate == 0 ) return; // do not display anything
for(DispEntry *di=layout->de; di->func != NULL; di++) {
if(di->func != disp.drawAlt && di->func != disp.drawHS && di->func != disp.drawVS) continue;
di->func(di);
}
}
void Display::updateDisplayID() {
if( dispstate == 0 ) return; // do not display anything
for(DispEntry *di=layout->de; di->func != NULL; di++) {
if(di->func != disp.drawID) continue;
di->func(di);
}
}
void Display::updateDisplayRSSI() {
if( dispstate == 0 ) return; // do not display anything
for(DispEntry *di=layout->de; di->func != NULL; di++) {
if(di->func != disp.drawRSSI) continue;
di->func(di);
}
}
void Display::updateStat() {
if( dispstate == 0 ) return; // do not display anything
for(DispEntry *di=layout->de; di->func != NULL; di++) {
if(di->func != disp.drawQS) continue;
di->func(di);
@ -1758,7 +1777,8 @@ void Display::updateStat() {
}
void Display::updateDisplayRXConfig() {
for(DispEntry *di=layout->de; di->func != NULL; di++) {
if( dispstate == 0 ) return; // do not display anything
for(DispEntry *di=layout->de; di->func != NULL; di++) {
if(di->func != disp.drawQS && di->func != disp.drawAFC) continue;
di->func(di);
}
@ -1773,10 +1793,35 @@ void Display::updateDisplayIP() {
}
void Display::updateDisplay() {
if( dispstate == 0 ) return; // do not display anything
calcGPS();
for(DispEntry *di=layout->de; di->func != NULL; di++) {
di->func(di);
}
}
// Called when key is pressed or new RX starts
void Display::dispsavectlON() {
// nothing to do to turn display on, may add power on code here later
dispstate = 1;
}
// Should be called 1x / sec to update display
// parameter: rxactive (1=currently receiving something, 0=no rx)
void Display::dispsavectlOFF(int rxactive) {
if( sonde.config.dispsaver == 0 ) return; // screensaver disabled
if( dispstate == 0 ) return; // already OFF
if( rxactive && ((sonde.config.dispsaver%10)==2) ) return; // OFF only if no RX, but rxactive is 0
dispstate++;
if( dispstate > (sonde.config.dispsaver/10) ) {
rdis->clear();
dispstate = 0;
}
}
void Display::setContrast() {
if(sonde.config.dispcontrast<0) return;
rdis->setContrast(sonde.config.dispcontrast);
}
Display disp = Display();

Wyświetl plik

@ -64,6 +64,7 @@ class RawDisplay {
public:
virtual void begin() = 0;
virtual void clear() = 0;
virtual void setContrast(uint8_t contrast) = 0;
virtual void setFont(uint8_t fontindex) = 0;
virtual void getDispSize(uint8_t *height, uint8_t *width, uint8_t *lineskip, uint8_t *colskip) = 0;
virtual void drawString(uint16_t x, uint16_t y, const char *s, int16_t width=WIDTH_AUTO, uint16_t fg=0xffff, uint16_t bg=0 ) = 0;
@ -86,6 +87,7 @@ public:
U8x8Display(uint8_t type = 0) { _type = type; }
void begin();
void clear();
void setContrast(uint8_t contrast);
void setFont(uint8_t fontindex);
void getDispSize(uint8_t *height, uint8_t *width, uint8_t *lineskip, uint8_t *colskip);
void drawString(uint16_t x, uint16_t y, const char *s, int16_t width=WIDTH_AUTO, uint16_t fg=0xffff, uint16_t bg=0);
@ -110,6 +112,7 @@ public:
ILI9225Display(int type = 1) { _type = type; }
void begin();
void clear();
void setContrast(uint8_t contrast);
void setFont(uint8_t fontindex);
void getDispSize(uint8_t *height, uint8_t *width, uint8_t *lineskip, uint8_t *colskip);
void drawString(uint16_t x, uint16_t y, const char *s, int16_t width=WIDTH_AUTO, uint16_t fg=0xffff, uint16_t bg=0);
@ -160,6 +163,7 @@ public:
DispInfo *layouts;
int nLayouts;
static RawDisplay *rdis;
char dispstate;
Display();
void init();
@ -193,8 +197,10 @@ public:
void updateDisplayRXConfig();
void updateDisplayIP();
void updateDisplay();
void dispsavectlON();
void dispsavectlOFF(int rxactive);
void setLayout(int layout);
void setContrast();
};
extern Display disp;

Wyświetl plik

@ -26,7 +26,19 @@ static int haveNewFrame = 0;
//static int lastFrame = 0;
static int headerDetected = 0;
int M10M20::setup(float frequency)
decoderSetupCfg m10m20SetupCfg = {
.bitrate = 9600,
//// Disable auto-AFC, auto-AGC, RX Trigger by preamble
.rx_cfg = 0x00,
.sync_cfg = 0x70,
.sync_len = 1,
.sync_data = (const uint8_t *)"\x66\x66",
// Preamble detection off (+ size 1 byte, maximum tolerance; should not matter for "off"?)
.preamble_cfg = 0x00 | 0x00 | 0x1F,
};
int M10M20::setup(float frequency, int /*type*/)
{
M10M20_DBG(Serial.println("Setup sx1278 for M10/M20 sonde"));;
if(sx1278.ON()!=0) {
@ -92,6 +104,11 @@ int M10M20::setup(float frequency)
}
//// Step 2: Real reception
if( DecoderBase::setup(m10m20SetupCfg, sonde.config.m10m20.agcbw, sonde.config.m10m20.rxbw)!=0 ) {
return 1;
}
#if 0
// Now all done in DecoderBase::setup
// FSK standby mode, seems like otherweise baudrate cannot be changed?
sx1278.setFSK();
if(sx1278.setBitrate(9600)!=0) {
@ -127,6 +144,7 @@ int M10M20::setup(float frequency)
M10M20_DBG(Serial.println("Setting PreambleDetect FAILED"));
return 1;
}
#endif
// Packet config 1: fixed len, no mancecer, no crc, no address filter
// Packet config 2: packet mode, no home ctrl, no beackn, msb(packetlen)=0)
@ -556,6 +574,7 @@ int M10M20::decodeframeM20(uint8_t *data) {
}
Serial.println(crcok?"CRC OK":"CRC NOT OK");
Serial.printf(" repair: %d/%d\n", repl, repairstep);
if(!crcok) return 2;
Serial.println("Decoding...");
// Its a M20
@ -584,7 +603,7 @@ int M10M20::decodeframeM20(uint8_t *data) {
ser[1] = ((tmp%12 + 1) / 10 ) + '0';
ser[2] = ((tmp%12 + 1) % 10 ) + '0';
ser[3] = '-';
ser[4] = (data[18]/128) + 1 + '0';
ser[4] = ((data[19]&0x03)<<1) + (data[18]/128) + 1 + '0';
ser[5] = '-';
ser[6] = ids[4];
ser[7] = ids[5];

Wyświetl plik

@ -15,9 +15,10 @@
#ifndef inttypes_h
#include <inttypes.h>
#endif
#include "DecoderBase.h"
/* Main class */
class M10M20
class M10M20 : public DecoderBase
{
private:
void printRaw(uint8_t *data, int len);
@ -53,7 +54,7 @@ private:
public:
M10M20();
int setup(float frequency);
int setup(float frequency, int type = 0);
int receive();
int waitRXcomplete();

Wyświetl plik

@ -35,7 +35,16 @@ static int headerDetected = 0;
extern uint16_t MON[];
int MP3H::setup(float frequency)
decoderSetupCfg mp3hSetupCfg = {
.bitrate = 2400,
.rx_cfg = 0x00,
.sync_cfg = 0x70,
.sync_len = 1,
.sync_data = (const uint8_t *)"\x66\x66",
.preamble_cfg = 0x00 | 0x00 | 0x1F
};
int MP3H::setup(float frequency, int /*type*/)
{
MP3H_DBG(Serial.println("Setup sx1278 for MP3H sonde"));;
if(sx1278.ON()!=0) {
@ -63,6 +72,11 @@ int MP3H::setup(float frequency)
}
//// Step 2: Real reception
if(DecoderBase::setup(mp3hSetupCfg, sonde.config.mp3h.agcbw, sonde.config.mp3h.rxbw)!=0) {
return 1;
}
#if 0
// Now all done in Decoderbase
// FSK standby mode, seems like otherweise baudrate cannot be changed?
sx1278.setFSK();
if(sx1278.setBitrate(2400)!=0) {
@ -98,6 +112,7 @@ int MP3H::setup(float frequency)
MP3H_DBG(Serial.println("Setting PreambleDetect FAILED"));
return 1;
}
#endif
// Packet config 1: fixed len, no mancecer, no crc, no address filter
// Packet config 2: packet mode, no home ctrl, no beackn, msb(packetlen)=0)

Wyświetl plik

@ -15,9 +15,10 @@
#ifndef inttypes_h
#include <inttypes.h>
#endif
#include "DecoderBase.h"
/* Main class */
class MP3H
class MP3H : public DecoderBase
{
private:
void printRaw(uint8_t *data, int len);
@ -25,7 +26,7 @@ private:
int decodeframeMP3H(uint8_t *data);
public:
MP3H();
int setup(float frequency);
int setup(float frequency, int type = 0);
int receive();
int waitRXcomplete();
};

Wyświetl plik

@ -193,7 +193,17 @@ static void Gencrctab(void)
} /* end for */
} /* end Gencrctab() */
int RS41::setup(float frequency)
decoderSetupCfg rs41SetupCfg = {
.bitrate = 4800,
.rx_cfg = 0x1E, // Enable auto-AFC, auto-AGC, RX Trigger by preamble
.sync_cfg = 0x57, // Set autostart_RX to 01, preamble 0, SYNC detect==on, syncsize=3 (==4 byte
.sync_len = 8,
.sync_data = (const uint8_t *)"\x08\x6D\x53\x88\x44\x69\x48\x1F",
.preamble_cfg = 0xA8,
};
int RS41::setup(float frequency, int /*type*/)
{
if(!initialized) {
Gencrctab();
@ -205,6 +215,11 @@ int RS41::setup(float frequency)
RS41_DBG(Serial.println("Setting SX1278 power on FAILED"));
return 1;
}
if(DecoderBase::setup(rs41SetupCfg, sonde.config.rs41.agcbw, sonde.config.rs41.rxbw)!=0 ) {
return 1;
}
#if 0
// all moved to DecoderBase now
if(sx1278.setFSK()!=0) {
RS41_DBG(Serial.println("Setting FSK mode FAILED"));
return 1;
@ -240,6 +255,7 @@ int RS41::setup(float frequency)
RS41_DBG(Serial.println("Setting PreambleDetect FAILED"));
return 1;
}
#endif
// Packet config 1: fixed len, no mancecer, no crc, no address filter
// Packet config 2: packet mode, no home ctrl, no beackn, msb(packetlen)=0)

Wyświetl plik

@ -16,9 +16,10 @@
#include <inttypes.h>
#endif
#include "Sonde.h"
#include "DecoderBase.h"
/* Main class */
class RS41
class RS41 : public DecoderBase
{
private:
uint32_t bits2val(const uint8_t *bits, int len);
@ -51,7 +52,7 @@ public:
RS41();
// New interface:
// setup() is called when channel is activated (sets mode and frequency and activates receiver)
int setup(float frequency);
int setup(float frequency, int type = 0);
// processRXbyte is called by background task for each received byte
// should be fast enough to not cause sx127x fifo buffer overflow
// void processRXbyte(uint8_t data);

Wyświetl plik

@ -68,7 +68,16 @@ static int haveNewFrame = 0;
static int lastFrame = 0;
static int headerDetected = 0;
int RS92::setup(float frequency)
decoderSetupCfg rs92SetupCfg = {
.bitrate = 4800,
.rx_cfg = 0x1E,
.sync_cfg = 0x70,
.sync_len = 2,
.sync_data = (const uint8_t *)"\x66\x65",
.preamble_cfg = 0xA8,
};
int RS92::setup(float frequency, int /*type*/)
{
#if RS92_DEBUG
Serial.println("Setup sx1278 for RS92 sonde");
@ -84,6 +93,10 @@ int RS92::setup(float frequency)
RS92_DBG(Serial.println("Setting SX1278 power on FAILED"));
return 1;
}
if(DecoderBase::setup(rs92SetupCfg, sonde.config.rs92.rxbw, sonde.config.rs92.rxbw)!=0) {
return 1;
}
#if 0
if(sx1278.setFSK()!=0) {
RS92_DBG(Serial.println("Setting FSJ mode FAILED"));
return 1;
@ -118,7 +131,6 @@ int RS92::setup(float frequency)
//const char *SYNC="\x08\x6D\x53\x88\x44\x69\x48\x1F";
// was 0x57
//const char *SYNC="\x99\x9A";
#if 1
// version 1, working with continuous RX
const char *SYNC="\x66\x65";
if(sx1278.setSyncConf(0x70, 2, (const uint8_t *)SYNC)!=0) {
@ -130,6 +142,7 @@ int RS92::setup(float frequency)
return 1;
}
#endif
#if 0
// version 2, with per-packet rx start, untested
// header is 2a 10 65, i.e. with lsb first

Wyświetl plik

@ -15,6 +15,7 @@
#ifndef inttypes_h
#include <inttypes.h>
#endif
#include "DecoderBase.h"
struct CONTEXTR9 {
@ -49,7 +50,7 @@ struct CONTEXTR9 {
/* Main class */
class RS92
class RS92 : public DecoderBase
{
private:
void process8N1data(uint8_t data);
@ -79,7 +80,7 @@ private:
public:
RS92();
int setup(float frequency);
int setup(float frequency, int type = 0);
int receive();
int waitRXcomplete();

Wyświetl plik

@ -102,6 +102,7 @@ void Sonde::defaultConfig() {
config.sx1278_sck = SCK;
config.oled_rst = 16;
config.disptype = 0;
config.dispcontrast = -1;
config.tft_orient = 1;
config.button2_axp = 0;
config.norx_timeout = 20;
@ -332,14 +333,6 @@ void Sonde::setConfig(const char *cfg) {
if(i==N_CONFIG) {
Serial.printf("Invalid config option '%s'=%s \n", cfg, val);
}
#if 0
// currently not in config_list. Maybe add later.
} else if(strcmp(cfg,"axudp.symbol")==0) {
strncpy(config.udpfeed.symbol, val, 3);
} else if(strcmp(cfg,"tcp.symbol")==0) {
strncpy(config.tcpfeed.symbol, val, 3);
}
#endif
}
void Sonde::setIP(String ip, bool AP) {
@ -490,6 +483,7 @@ void Sonde::receive() {
if(si->lastState != 1) {
si->rxStart = millis();
si->lastState = 1;
sonde.dispsavectlON();
}
} else { // RX Timeout
//Serial.printf("Sonde::receive(): result %d (%s), laststate was %d\n", res, (res<=3)?RXstr[res]:"?", si->lastState);
@ -507,6 +501,7 @@ void Sonde::receive() {
int event = getKeyPressEvent();
if (!event) event = timeoutEvent(si);
else sonde.dispsavectlON();
int action = (event==EVT_NONE) ? ACT_NONE : disp.layout->actions[event];
//if(action!=ACT_NONE) { Serial.printf("event %x: action is %x\n", event, action); }
// If action is to move to a different sonde index, we do update things here, set activate
@ -716,6 +711,15 @@ void Sonde::clearDisplay() {
disp.rdis->clear();
}
void Sonde::dispsavectlON() {
disp.dispsavectlON();
}
void Sonde::dispsavectlOFF(int rxactive) {
disp.dispsavectlOFF(rxactive);
}
SondeType Sonde::realType(SondeInfo *si) {
if(TYPE_IS_METEO(si->type) && si->d.subtype>0 ) { return si->d.subtype==1 ? STYPE_M10:STYPE_M20; }
else return si->type;

Wyświetl plik

@ -263,6 +263,9 @@ typedef struct st_rdzconfig {
int wifi; // connect to known WLAN 0=skip
int screenfile;
int8_t display[30]; // list of display mode (0:scanner, 1:default, 2,... additional modes)
int dispsaver; // Turn display on/off (0=always on, 10*n+1: off after n seconds,
// 10*n+2: scanner off after n seconds, RX always shown)
int dispcontrast; // For OLED: set contrast to 0..255 (-1: don't set/leave at factory default)
int startfreq; // spectrum display start freq (400, 401, ...)
int channelbw; // spectrum channel bandwidth (valid: 5, 10, 20, 25, 50, 100 kHz)
int spectrum; // show freq spectrum for n seconds -1=disable; 0=forever
@ -360,6 +363,8 @@ public:
void updateDisplayIP();
void updateDisplay();
void clearDisplay();
void dispsavectlON();
void dispsavectlOFF(int rxactive);
void setIP(String ip, bool isAP);
};

106
RX_FSK/src/json.cpp 100644
Wyświetl plik

@ -0,0 +1,106 @@
#include "json.h"
#include "RS41.h"
extern const char *sondeTypeStrSH[];
extern const char *dfmSubtypeStrSH[];
static char typestr[11];
const char *getType(SondeInfo *si) {
if( si->type == STYPE_RS41 ) {
if ( RS41::getSubtype(typestr, 11, si) == 0 ) return typestr;
} else if ( TYPE_IS_DFM(si->type) && si->d.subtype > 0 && si->d.subtype < 16 ) {
const char *t = dfmSubtypeStrSH[si->d.subtype];
if(t) return t;
sprintf(typestr, "DFMx%X", si->d.subtype);
return typestr;
}
return sondeTypeStrSH[sonde.realType(si)];
}
int float2json(char **buf, int *maxlen, const char *fmt, float value) {
if(isnan(value)) return 0;
int n = snprintf(*buf, *maxlen, fmt, value);
if(n>*maxlen) return -1;
*buf += n; *maxlen -= n;
return n;
}
// To be used by
// - MQTT
// - rdzJSON (for Android app)
// - Web map
int sonde2json(char *buf, int maxlen, SondeInfo *si)
{
SondeData *s = &(si->d);
int n;
n = float2json(&buf, &maxlen, "\"lat\": %.5f,", s->lat);
if(n<0) return -1;
n = float2json(&buf, &maxlen, "\"lon\": %.5f,", s->lon);
if(n<0) return -1;
n = float2json(&buf, &maxlen, "\"alt\": %.1f,", s->alt);
if(n<0) return -1;
n = float2json(&buf, &maxlen, "\"vs\": %.1f,", s->vs);
if(n<0) return -1;
n = float2json(&buf, &maxlen, "\"hs\": %.1f,", s->hs);
if(n<0) return -1;
n = float2json(&buf, &maxlen, "\"climb\": %.1f,", s->vs); // used by HTML map, to be removed (-> vs)
if(n<0) return -1;
n = float2json(&buf, &maxlen, "\"speed\": %.1f,", s->hs); // used by HTML map, to be removed (-> hs)
if(n<0) return -1;
n = float2json(&buf, &maxlen, "\"dir\": %.1f,", s->dir);
if(n<0) return -1;
n = float2json(&buf, &maxlen, "\"temp\": %.1f,", s->temperature );
if(n<0) return -1;
n = float2json(&buf, &maxlen, "\"humidity\": %.1f,", s->relativeHumidity);
if(n<0) return -1;
n = float2json(&buf, &maxlen, "\"pressure\": %.1f,", s->pressure);
if(n<0) return -1;
n = snprintf(buf, maxlen,
"\"type\":\"%s\","
"\"id\": \"%s\"," // TODO: maybe remove in the future, ser is enough, client can calculate APRS id if needed
"\"ser\": \"%s\","
"\"frame\": %u," // raw frame, from sonde, can be 0. (TODO: add virtual frame # as in sondehub?)
"\"vframe\": %d,"
"\"time\": %u,"
"\"sats\": %d,"
"\"freq\": %.2f,"
"\"rssi\": %d,"
"\"afc\": %d,"
"\"launchKT\": %d,"
"\"burstKT\": %d,"
"\"countKT\": %d,"
"\"crefKT\": %d,"
"\"launchsite\": \"%s\","
"\"res\": %d",
getType(si),
s->id,
s->ser,
s->frame,
s->vframe,
s->time,
s->sats,
si->freq,
si->rssi,
si->afc,
s->launchKT,
s->burstKT,
s->countKT,
s->crefKT,
si->launchsite,
(int)si->rxStat[0]
);
if(n>=maxlen) return -1;
buf += n; maxlen -= n;
// add only if available
if(s->batteryVoltage > 0) {
n = snprintf(buf, maxlen, ",\"bat\": %.1f", s->batteryVoltage);
if(n>=maxlen) return -1;
buf += n; maxlen -= n;
}
return 0;
}

Wyświetl plik

@ -0,0 +1,8 @@
#ifndef _JSON_H
#define _JSON_H
#include "Sonde.h"
int sonde2json(char *buf, int maxlen, SondeInfo *si);
#endif

Wyświetl plik

@ -4,9 +4,13 @@
#include <AsyncMqttClient.h>
#include <ESPmDNS.h>
#include "RS41.h"
#include "json.h"
TimerHandle_t mqttReconnectTimer;
extern const char *version_name;
extern const char *version_id;
void mqttCallback(char* topic, byte* payload, unsigned int length) {
Serial.print("Message arrived [");
Serial.print(topic);
@ -30,6 +34,7 @@ void MQTT::init(const char* host, uint16_t port, const char* id, const char *use
mqttClient.setServer(ip, port);
snprintf(buffer, 20, "%s%04d", id, (int)random(0, 1000));
buffer[20] = 0;
Serial.print(buffer);
mqttClient.setClientId(buffer);
if (strlen(password) > 0) {
mqttClient.setCredentials(username, password);
@ -46,8 +51,13 @@ void MQTT::publishUptime()
mqttClient.connect(); // ensure we've got connection
Serial.println("[MQTT] writing");
char payload[12];
snprintf(payload, 12, "%lu", millis());
//char payload[128];
//snprintf(payload, 12, "%lu", millis());
//snprintf(payload, 124, "{\"uptime\": %lu," "\"user\": \"%s\"", millis(), username );
char payload[128];
snprintf(payload, 128, "{\"uptime\": %ld, \"user\": \"%s\", \"rxlat\": %.5f, \"rxlon\": %.5f, \"ver\": \"%s\", \"sub\": \"%s\"}",
millis(), username, sonde.config.rxlat, sonde.config.rxlon, version_name, version_id);
Serial.println(payload);
char topic[128];
snprintf(topic, 128, "%s%s", this->prefix, "uptime");
mqttClient.publish(topic, 1, 1, payload);
@ -59,6 +69,14 @@ void MQTT::publishPacket(SondeInfo *si)
mqttClient.connect(); // ensure we've got connection
char payload[1024];
payload[0] = '{';
int n = sonde2json(payload+1, 1023, si);
if(n<0) {
// ERROR
Serial.println("publishPacket: sonde2json failed, string too long");
}
#if 0
snprintf(payload, 1024, "{"
"\"active\": %d,"
"\"freq\": %.2f,"
@ -134,8 +152,11 @@ void MQTT::publishPacket(SondeInfo *si)
snprintf(payload, 1024, "%s%s%s%s", payload, ",\"subtype\": \"", subtype, "\"" );
}
snprintf(payload, 1024, "%s%s", payload, "}" ); // terminate payload string
#endif
strcat(payload, "}"); // terminate payload string
char topic[128];
snprintf(topic, 128, "%s%s", this->prefix, "packet");
Serial.print(payload);
mqttClient.publish(topic, 1, 1, payload);
}

Wyświetl plik

@ -1,4 +1,4 @@
const char *version_name = "rdzTTGOsonde";
const char *version_id = "master_v0.9.1";
const char *version_id = "devel20220918";
const int SPIFFS_MAJOR=2;
const int SPIFFS_MINOR=16;