kopia lustrzana https://github.com/dl9rdz/rdz_ttgo_sonde
Porównaj commity
4 Commity
981e548627
...
9fd737a267
Autor | SHA1 | Data |
---|---|---|
dl9rdz (via Travis CI) | 9fd737a267 | |
dl9rdz (via Travis CI) | 555e0395a4 | |
dl9rdz (via Travis CI) | 1792ac5dcd | |
dl9rdz (via Travis CI) | 016b2e5ef8 |
|
@ -1 +1,3 @@
|
|||
tentative fix of M20 misclassification as M10 (untested)
|
||||
devel version (no changes)
|
||||
new devel based on master0.9.4
|
||||
|
|
Plik binarny nie jest wyświetlany.
|
@ -0,0 +1 @@
|
|||
Enhanced WiFi setup
|
Plik binarny nie jest wyświetlany.
|
@ -1 +1 @@
|
|||
<html><body><p>devel20231212-B17</p></body></html>
|
||||
<html><body><p>devel20240107-B17</p></body></html>
|
||||
|
|
|
@ -1,3 +1,22 @@
|
|||
livemap.html 720
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>rdzTTGOSonde Server LiveMap</title>
|
||||
<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.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.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>
|
||||
<body>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
style.css 7441
|
||||
body, html {
|
||||
height: 100%;
|
||||
|
@ -391,151 +410,6 @@ p{
|
|||
background: grey !important;
|
||||
}
|
||||
}
|
||||
livemap.html 720
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>rdzTTGOSonde Server LiveMap</title>
|
||||
<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.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.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>
|
||||
<body>
|
||||
<div id="map"></div>
|
||||
</body>
|
||||
</html>
|
||||
map.html 1206
|
||||
<html>
|
||||
<head>
|
||||
<script>
|
||||
maptype = "SH"; // TODO: Get from config
|
||||
|
||||
const maps = {
|
||||
"WS": ["https://www.wettersonde.net/map.php", (s)=>"?sonde="+s, (lat,lon)=>""],
|
||||
"SH": ["https://sondehub.org/", (s)=>s, (lat,lon)=>'#!mz=8&mc=' + lat + ',' + lon],
|
||||
"RS": ["https://radiosondy.info/", (s)=>"sonde.php?sondenumber="+s, (lat,lon)=>""],
|
||||
"OW": ["https://v2.openwx.de/start.php", (s)=>"?sonde="+s, (lat,lon)=>"?mode=mobile"],
|
||||
};
|
||||
|
||||
data = ["T4420541",63.5,-20.0];
|
||||
document.addEventListener("DOMContentLoaded", function(){
|
||||
fetch('live.json')
|
||||
.then((response) => response.json())
|
||||
.then((data) => {
|
||||
if (data.gps===undefined) { data.gps={} };
|
||||
console.log(data.gps.lat, data.gps.lon, data.sonde.ser);
|
||||
if( (data.sonde.ser||'')=='' && !(data.gps.lat===undefined) ) {
|
||||
urlarg = maps[maptype][2](data.gps.lat, data.gps.lon);
|
||||
} else {
|
||||
urlarg = maps[maptype][1](data.sonde.ser||'');
|
||||
}
|
||||
iftxt='<iframe src="' + maps[maptype][0] + urlarg + '" style="border:1px solid #00A3D3;border-radius:20px;height:98vh;width:100%"></iframe>';
|
||||
document.getElementsByTagName('body')[0].innerHTML = iftxt;
|
||||
})
|
||||
})
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
rdz.js 1843
|
||||
let stypes=new Map();
|
||||
stypes.set('4', 'RS41');
|
||||
stypes.set('R', 'RS92');
|
||||
stypes.set('D', 'DFM');
|
||||
stypes.set('M', 'M10/M20');
|
||||
stypes.set('3', 'MP3H');
|
||||
|
||||
function footer() {
|
||||
document.addEventListener("DOMContentLoaded", function(){
|
||||
var form = document.querySelector(".wrapper");
|
||||
form.addEventListener("input", function() {
|
||||
document.querySelector(".save").disabled = false;
|
||||
});
|
||||
document.querySelector(".save").disabled = true;
|
||||
});
|
||||
}
|
||||
|
||||
/* Used by qrg.html in RX_FSK.ino */
|
||||
function prep() {
|
||||
var stlist=document.querySelectorAll("input.stype");
|
||||
for(txt of stlist){
|
||||
var val=txt.getAttribute('value'); var nam=txt.getAttribute('name');
|
||||
if(val=='2') { val='M'; }
|
||||
var sel=document.createElement('select');
|
||||
sel.setAttribute('name',nam);
|
||||
for(stype of stypes) {
|
||||
var opt=document.createElement('option');
|
||||
opt.value=stype[0];
|
||||
opt.innerHTML=stype[1];
|
||||
if(stype[0]==val) { opt.setAttribute('selected','selected'); }
|
||||
sel.appendChild(opt);
|
||||
}
|
||||
txt.replaceWith(sel);
|
||||
}
|
||||
}
|
||||
|
||||
function qrgTable() {
|
||||
var tab=document.getElementById("divTable");
|
||||
|
||||
var table = "<table><tr><th>Ch</th><th>Active</th><th>Frequency</th><th>Decoder</th><th>Launchsite</th></tr>";
|
||||
for(i=0; i<qrgs.length; i++) {
|
||||
var ck = "";
|
||||
if(qrgs[i][0]) ck="checked";
|
||||
table += "<tr><td class=\"ch\">" + (i+1) + "</td><td class=\"act\"><input name=\"A" + (i+1) + "\" type=\"checkbox\" " + ck + "/></td>";
|
||||
table += "<td><input name=\"F" + (i+1) + "\" type=\"text\" size=7 value=\"" + qrgs[i][1] + "\"></td>";
|
||||
table += "<td><input class=\"stype\" name=\"T" + (i+1) + "\" value=\"" + qrgs[i][3] + "\"></td>";
|
||||
table += "<td><input name=\"S" + (i+1) + "\" type=\"text\" value=\"" + qrgs[i][2] +"\"></td></tr>";
|
||||
}
|
||||
table += "</table>";
|
||||
tab.innerHTML = table;
|
||||
prep();
|
||||
footer();
|
||||
}
|
||||
|
||||
upd.html 1353
|
||||
<html><head>
|
||||
<link rel="stylesheet" type="text/css" href="style.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
|
||||
<form action="update.html" method="post"><p>Currently installed: %FULLNAMEID%</p>
|
||||
<p>
|
||||
Available master: <span id="masterDiv">(...checking...)</span>
|
||||
|
||||
<br>
|
||||
Available devel: <span id="develDiv">(...checking...)</span>
|
||||
|
||||
</p>
|
||||
<input type="submit" name="master" value="Master-Update"></input><br>
|
||||
<input type="submit" name="devel" value="Devel-Update"><br>
|
||||
<p>Note: If suffix is the same, update should work fully. If the number is different, update contains changes in the file system. A full re-flash is required to get all new features, but the update should not break anything. If the letter is different, a full re-flash is mandatory, update will not work</p></form>
|
||||
|
||||
<script>
|
||||
const masterInfo = document.getElementById('masterDiv');
|
||||
const develInfo = document.getElementById('develDiv');
|
||||
|
||||
let request = new XMLHttpRequest();
|
||||
request.open('GET', 'http://rdzsonde.mooo.com/master/update-info.html');
|
||||
request.onload = function() {
|
||||
masterInfo.innerHTML = request.response.replace(/<[^>]*>/g, '');
|
||||
}
|
||||
request.send();
|
||||
let drequest = new XMLHttpRequest();
|
||||
drequest.open('GET', 'http://rdzsonde.mooo.com/devel/update-info.html');
|
||||
drequest.onload = function() {
|
||||
develInfo.innerHTML= drequest.response.replace(/<[^>]*>/g, '');;
|
||||
}
|
||||
drequest.send();
|
||||
</script>
|
||||
</body></html>
|
||||
livemap.js 19784
|
||||
try {
|
||||
var check = $(document);
|
||||
|
@ -1067,6 +941,186 @@ function bearing(latlng1, latlng2) {
|
|||
bearing = bearing < 0 ? bearing-360 : bearing;
|
||||
return Math.round(bearing);
|
||||
}
|
||||
index.html 4368
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>rdzTTGOSonde Server</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta charset="UTF-8">
|
||||
<link rel="icon" href="data:,">
|
||||
<link rel="stylesheet" type="text/css" href="style.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="wrapper"><div class="header">
|
||||
<div class="topnav" id="myTopnav">
|
||||
<a href="#qrg" onclick="selTab(event,'QRG')" class="tablinks" id="defaultTab">QRG</a>
|
||||
<a href="#data" onclick="selTab(event,'Data')" class="tablinks">Data</a>
|
||||
<a href="#map" onclick="selTab(event,'Map')" class="tablinks">Map</a>
|
||||
<a href="#livemap" onclick="document.location.href='livemap.html'" class="tablinks">LiveMap</a>
|
||||
<a href="#ctrl" onclick="selTab(event,'Control')" class="tablinks">Control</a>
|
||||
<a href="#config" onclick="selTab(event,'Config')" class="tablinks">Config</a>
|
||||
<a href="#wifi" onclick="selTab(event,'WiFi')" class="tablinks">WiFi</a>
|
||||
<a href="#about" onclick="selTab(event,'About')" class="tablinks">About</a>
|
||||
<a href="javascript:void(0);" class="icon" onclick="myFunction()">
|
||||
<span class="hamburger"></span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="QRG" class="tabcontent" data-src="qrg.html">
|
||||
<iframe class="tci" src="" ></iframe>
|
||||
</div>
|
||||
|
||||
<div id="WiFi" class="tabcontent" data-src="wifi.html">
|
||||
<iframe class="tci" src="" ></iframe>
|
||||
</div>
|
||||
|
||||
<div id="Data" class="tabcontent" data-src="status.html">
|
||||
<iframe class="tci" src="" ></iframe>
|
||||
</div>
|
||||
|
||||
<div id="Map" class="tabcontent" data-src="map.html">
|
||||
<iframe class="tci" src="" ></iframe>
|
||||
</div>
|
||||
|
||||
<div id="Config" class="tabcontent" data-src="config.html">
|
||||
<iframe class="tci" src="" ></iframe>
|
||||
</div>
|
||||
|
||||
<div id="Control" class="tabcontent" data-src="control.html">
|
||||
<iframe class="tci" src="" ></iframe>
|
||||
</div>
|
||||
|
||||
<div id="About" class="tabcontent">
|
||||
<div class="tci">
|
||||
%VERSION_NAME%<br>
|
||||
Copyright © 2019-2022 by Hansi Reiser, DL9RDZ<br>
|
||||
(version %VERSION_ID%)<br><br>
|
||||
|
||||
<a href="/upd.html">Check for update (requires TTGO internet connection via WiFi)</a><br><br>
|
||||
|
||||
with contributions by Vigor and Xavier (M20 support),
|
||||
<a href="https://github.com/LukePrior">Luke Prior</a> and <a href="https://github.com/oh3bsg">OH3BSG</a> (SondeHub support),
|
||||
<a href="https://www.dl2mf.de/" target="_blank">Meinhard Guenther, DL2MF</a>,
|
||||
<a href="https://github.com/bazjo">Johannes</a>, <a href="http://www.p1337.synology.me/dokuwiki/doku.php?id=public:wettersonden">Robert Stefanowicz</a>,
|
||||
<a href="https://github.com/puspis">Josema</a>, and probably some more people I forgot to mention here.
|
||||
|
||||
<br>
|
||||
<br>
|
||||
Autodetect info: %AUTODETECT_INFO%<br>
|
||||
<br>
|
||||
RS92 RINEX eph state: %EPHSTATE%<br>
|
||||
<br>
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License as
|
||||
published by the Free Software Foundation; either version 2 of
|
||||
the License, or (at your option) any later version.<br>
|
||||
See <a href="https://www.gnu.org/licenses/gpl-2.0.txt">https://www.gnu.org/licenses/gpl-2.0.txt</a>
|
||||
for details.
|
||||
</div>
|
||||
<div class="footer"><span></span><span class="ttgoinfo">rdzTTGOserver %VERSION_ID%</span></div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<script>
|
||||
function selTab(evt, id) {
|
||||
var i, tabcontent, tablinks;
|
||||
tabcontent=document.getElementsByClassName("tabcontent");
|
||||
for(i=0; i<tabcontent.length; i++) {
|
||||
tabcontent[i].style.display = "none";
|
||||
var link = tabcontent[i].dataset.src;
|
||||
if(link) {
|
||||
var iframe = tabcontent[i].getElementsByTagName("iframe")[0];
|
||||
iframe.setAttribute("src", "");
|
||||
}
|
||||
}
|
||||
tablinks=document.getElementsByClassName("tablinks");
|
||||
for(i=0; i<tablinks.length; i++) {
|
||||
tablinks[i].className = tablinks[i].className.replace(" active", "");
|
||||
}
|
||||
var act = document.getElementById(id);
|
||||
act.style.display = "flex";
|
||||
evt.currentTarget.className += " active";
|
||||
|
||||
var link = act.dataset.src;
|
||||
if(link) {
|
||||
var iframe = act.getElementsByTagName("iframe")[0];
|
||||
iframe.setAttribute("src", link);
|
||||
}
|
||||
var x = document.getElementById("myTopnav");
|
||||
x.className = "topnav";
|
||||
}
|
||||
/* Toggle between adding and removing the "responsive" class to topnav when the user clicks on the icon */
|
||||
function myFunction() {
|
||||
var x = document.getElementById("myTopnav");
|
||||
if (x.className === "topnav") {
|
||||
x.className += " responsive";
|
||||
} else {
|
||||
x.className = "topnav";
|
||||
}
|
||||
}
|
||||
document.getElementById("defaultTab").click();
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
rdz.js 1843
|
||||
let stypes=new Map();
|
||||
stypes.set('4', 'RS41');
|
||||
stypes.set('R', 'RS92');
|
||||
stypes.set('D', 'DFM');
|
||||
stypes.set('M', 'M10/M20');
|
||||
stypes.set('3', 'MP3H');
|
||||
|
||||
function footer() {
|
||||
document.addEventListener("DOMContentLoaded", function(){
|
||||
var form = document.querySelector(".wrapper");
|
||||
form.addEventListener("input", function() {
|
||||
document.querySelector(".save").disabled = false;
|
||||
});
|
||||
document.querySelector(".save").disabled = true;
|
||||
});
|
||||
}
|
||||
|
||||
/* Used by qrg.html in RX_FSK.ino */
|
||||
function prep() {
|
||||
var stlist=document.querySelectorAll("input.stype");
|
||||
for(txt of stlist){
|
||||
var val=txt.getAttribute('value'); var nam=txt.getAttribute('name');
|
||||
if(val=='2') { val='M'; }
|
||||
var sel=document.createElement('select');
|
||||
sel.setAttribute('name',nam);
|
||||
for(stype of stypes) {
|
||||
var opt=document.createElement('option');
|
||||
opt.value=stype[0];
|
||||
opt.innerHTML=stype[1];
|
||||
if(stype[0]==val) { opt.setAttribute('selected','selected'); }
|
||||
sel.appendChild(opt);
|
||||
}
|
||||
txt.replaceWith(sel);
|
||||
}
|
||||
}
|
||||
|
||||
function qrgTable() {
|
||||
var tab=document.getElementById("divTable");
|
||||
|
||||
var table = "<table><tr><th>Ch</th><th>Active</th><th>Frequency</th><th>Decoder</th><th>Launchsite</th></tr>";
|
||||
for(i=0; i<qrgs.length; i++) {
|
||||
var ck = "";
|
||||
if(qrgs[i][0]) ck="checked";
|
||||
table += "<tr><td class=\"ch\">" + (i+1) + "</td><td class=\"act\"><input name=\"A" + (i+1) + "\" type=\"checkbox\" " + ck + "/></td>";
|
||||
table += "<td><input name=\"F" + (i+1) + "\" type=\"text\" size=7 value=\"" + qrgs[i][1] + "\"></td>";
|
||||
table += "<td><input class=\"stype\" name=\"T" + (i+1) + "\" value=\"" + qrgs[i][3] + "\"></td>";
|
||||
table += "<td><input name=\"S" + (i+1) + "\" type=\"text\" value=\"" + qrgs[i][2] +"\"></td></tr>";
|
||||
}
|
||||
table += "</table>";
|
||||
tab.innerHTML = table;
|
||||
prep();
|
||||
footer();
|
||||
}
|
||||
|
||||
cfg.js 8066
|
||||
var cfgs = [
|
||||
[ "", "General configuration", "https://github.com/dl9rdz/rdz_ttgo_sonde/wiki/General-configuration" ],
|
||||
|
@ -1243,128 +1297,74 @@ function configTable() {
|
|||
}
|
||||
acc[0].click();
|
||||
}
|
||||
index.html 4368
|
||||
<!DOCTYPE html>
|
||||
map.html 1206
|
||||
<html>
|
||||
<head>
|
||||
<title>rdzTTGOSonde Server</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta charset="UTF-8">
|
||||
<link rel="icon" href="data:,">
|
||||
<link rel="stylesheet" type="text/css" href="style.css">
|
||||
<script>
|
||||
maptype = "SH"; // TODO: Get from config
|
||||
|
||||
const maps = {
|
||||
"WS": ["https://www.wettersonde.net/map.php", (s)=>"?sonde="+s, (lat,lon)=>""],
|
||||
"SH": ["https://sondehub.org/", (s)=>s, (lat,lon)=>'#!mz=8&mc=' + lat + ',' + lon],
|
||||
"RS": ["https://radiosondy.info/", (s)=>"sonde.php?sondenumber="+s, (lat,lon)=>""],
|
||||
"OW": ["https://v2.openwx.de/start.php", (s)=>"?sonde="+s, (lat,lon)=>"?mode=mobile"],
|
||||
};
|
||||
|
||||
data = ["T4420541",63.5,-20.0];
|
||||
document.addEventListener("DOMContentLoaded", function(){
|
||||
fetch('live.json')
|
||||
.then((response) => response.json())
|
||||
.then((data) => {
|
||||
if (data.gps===undefined) { data.gps={} };
|
||||
console.log(data.gps.lat, data.gps.lon, data.sonde.ser);
|
||||
if( (data.sonde.ser||'')=='' && !(data.gps.lat===undefined) ) {
|
||||
urlarg = maps[maptype][2](data.gps.lat, data.gps.lon);
|
||||
} else {
|
||||
urlarg = maps[maptype][1](data.sonde.ser||'');
|
||||
}
|
||||
iftxt='<iframe src="' + maps[maptype][0] + urlarg + '" style="border:1px solid #00A3D3;border-radius:20px;height:98vh;width:100%"></iframe>';
|
||||
document.getElementsByTagName('body')[0].innerHTML = iftxt;
|
||||
})
|
||||
})
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="wrapper"><div class="header">
|
||||
<div class="topnav" id="myTopnav">
|
||||
<a href="#qrg" onclick="selTab(event,'QRG')" class="tablinks" id="defaultTab">QRG</a>
|
||||
<a href="#data" onclick="selTab(event,'Data')" class="tablinks">Data</a>
|
||||
<a href="#map" onclick="selTab(event,'Map')" class="tablinks">Map</a>
|
||||
<a href="#livemap" onclick="document.location.href='livemap.html'" class="tablinks">LiveMap</a>
|
||||
<a href="#ctrl" onclick="selTab(event,'Control')" class="tablinks">Control</a>
|
||||
<a href="#config" onclick="selTab(event,'Config')" class="tablinks">Config</a>
|
||||
<a href="#wifi" onclick="selTab(event,'WiFi')" class="tablinks">WiFi</a>
|
||||
<a href="#about" onclick="selTab(event,'About')" class="tablinks">About</a>
|
||||
<a href="javascript:void(0);" class="icon" onclick="myFunction()">
|
||||
<span class="hamburger"></span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="QRG" class="tabcontent" data-src="qrg.html">
|
||||
<iframe class="tci" src="" ></iframe>
|
||||
</div>
|
||||
|
||||
<div id="WiFi" class="tabcontent" data-src="wifi.html">
|
||||
<iframe class="tci" src="" ></iframe>
|
||||
</div>
|
||||
|
||||
<div id="Data" class="tabcontent" data-src="status.html">
|
||||
<iframe class="tci" src="" ></iframe>
|
||||
</div>
|
||||
|
||||
<div id="Map" class="tabcontent" data-src="map.html">
|
||||
<iframe class="tci" src="" ></iframe>
|
||||
</div>
|
||||
|
||||
<div id="Config" class="tabcontent" data-src="config.html">
|
||||
<iframe class="tci" src="" ></iframe>
|
||||
</div>
|
||||
|
||||
<div id="Control" class="tabcontent" data-src="control.html">
|
||||
<iframe class="tci" src="" ></iframe>
|
||||
</div>
|
||||
|
||||
<div id="About" class="tabcontent">
|
||||
<div class="tci">
|
||||
%VERSION_NAME%<br>
|
||||
Copyright © 2019-2022 by Hansi Reiser, DL9RDZ<br>
|
||||
(version %VERSION_ID%)<br><br>
|
||||
|
||||
<a href="/upd.html">Check for update (requires TTGO internet connection via WiFi)</a><br><br>
|
||||
|
||||
with contributions by Vigor and Xavier (M20 support),
|
||||
<a href="https://github.com/LukePrior">Luke Prior</a> and <a href="https://github.com/oh3bsg">OH3BSG</a> (SondeHub support),
|
||||
<a href="https://www.dl2mf.de/" target="_blank">Meinhard Guenther, DL2MF</a>,
|
||||
<a href="https://github.com/bazjo">Johannes</a>, <a href="http://www.p1337.synology.me/dokuwiki/doku.php?id=public:wettersonden">Robert Stefanowicz</a>,
|
||||
<a href="https://github.com/puspis">Josema</a>, and probably some more people I forgot to mention here.
|
||||
|
||||
<br>
|
||||
<br>
|
||||
Autodetect info: %AUTODETECT_INFO%<br>
|
||||
<br>
|
||||
RS92 RINEX eph state: %EPHSTATE%<br>
|
||||
<br>
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License as
|
||||
published by the Free Software Foundation; either version 2 of
|
||||
the License, or (at your option) any later version.<br>
|
||||
See <a href="https://www.gnu.org/licenses/gpl-2.0.txt">https://www.gnu.org/licenses/gpl-2.0.txt</a>
|
||||
for details.
|
||||
</div>
|
||||
<div class="footer"><span></span><span class="ttgoinfo">rdzTTGOserver %VERSION_ID%</span></div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<script>
|
||||
function selTab(evt, id) {
|
||||
var i, tabcontent, tablinks;
|
||||
tabcontent=document.getElementsByClassName("tabcontent");
|
||||
for(i=0; i<tabcontent.length; i++) {
|
||||
tabcontent[i].style.display = "none";
|
||||
var link = tabcontent[i].dataset.src;
|
||||
if(link) {
|
||||
var iframe = tabcontent[i].getElementsByTagName("iframe")[0];
|
||||
iframe.setAttribute("src", "");
|
||||
}
|
||||
}
|
||||
tablinks=document.getElementsByClassName("tablinks");
|
||||
for(i=0; i<tablinks.length; i++) {
|
||||
tablinks[i].className = tablinks[i].className.replace(" active", "");
|
||||
}
|
||||
var act = document.getElementById(id);
|
||||
act.style.display = "flex";
|
||||
evt.currentTarget.className += " active";
|
||||
|
||||
var link = act.dataset.src;
|
||||
if(link) {
|
||||
var iframe = act.getElementsByTagName("iframe")[0];
|
||||
iframe.setAttribute("src", link);
|
||||
}
|
||||
var x = document.getElementById("myTopnav");
|
||||
x.className = "topnav";
|
||||
}
|
||||
/* Toggle between adding and removing the "responsive" class to topnav when the user clicks on the icon */
|
||||
function myFunction() {
|
||||
var x = document.getElementById("myTopnav");
|
||||
if (x.className === "topnav") {
|
||||
x.className += " responsive";
|
||||
} else {
|
||||
x.className = "topnav";
|
||||
}
|
||||
}
|
||||
document.getElementById("defaultTab").click();
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
upd.html 1353
|
||||
<html><head>
|
||||
<link rel="stylesheet" type="text/css" href="style.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
|
||||
<form action="update.html" method="post"><p>Currently installed: %FULLNAMEID%</p>
|
||||
<p>
|
||||
Available master: <span id="masterDiv">(...checking...)</span>
|
||||
|
||||
<br>
|
||||
Available devel: <span id="develDiv">(...checking...)</span>
|
||||
|
||||
</p>
|
||||
<input type="submit" name="master" value="Master-Update"></input><br>
|
||||
<input type="submit" name="devel" value="Devel-Update"><br>
|
||||
<p>Note: If suffix is the same, update should work fully. If the number is different, update contains changes in the file system. A full re-flash is required to get all new features, but the update should not break anything. If the letter is different, a full re-flash is mandatory, update will not work</p></form>
|
||||
|
||||
<script>
|
||||
const masterInfo = document.getElementById('masterDiv');
|
||||
const develInfo = document.getElementById('develDiv');
|
||||
|
||||
let request = new XMLHttpRequest();
|
||||
request.open('GET', 'http://rdzsonde.mooo.com/master/update-info.html');
|
||||
request.onload = function() {
|
||||
masterInfo.innerHTML = request.response.replace(/<[^>]*>/g, '');
|
||||
}
|
||||
request.send();
|
||||
let drequest = new XMLHttpRequest();
|
||||
drequest.open('GET', 'http://rdzsonde.mooo.com/devel/update-info.html');
|
||||
drequest.onload = function() {
|
||||
develInfo.innerHTML= drequest.response.replace(/<[^>]*>/g, '');;
|
||||
}
|
||||
drequest.send();
|
||||
</script>
|
||||
</body></html>
|
||||
|
|
Plik binarny nie jest wyświetlany.
|
@ -7,11 +7,15 @@
|
|||
<p class="view"><a href="https://github.com/dl9rdz/rdz_ttgo_sonde">View the Project on GitHub <small>dl9rdz/rdz_ttgo_sonde</small></a></p>
|
||||
</header><section><h1 id="rdz_ttgo_sonde">rdz_ttgo_sonde</h1>
|
||||
<h2>Master repository</h2><ul>
|
||||
<li><a href="master/update.ino.bin">update.ino.bin</a> (Jul 9 10:20:50 2023)</li>
|
||||
<li><a href="master/update.ino.bin">update.ino.bin</a> (Jan 7 12:50:49 2024)</li>
|
||||
|
||||
<li><a href="master/update-info.html">update-info.html</a> (Jul 9 10:20:50 2023)</li>
|
||||
<li><a href="master/update-info.html">update-info.html</a> (Jan 7 12:50:49 2024)</li>
|
||||
|
||||
<li><a href="master/update.fs.bin">update.fs.bin</a> (Jul 9 10:20:50 2023)</li>
|
||||
<li><a href="master/update.fs.bin">update.fs.bin</a> (Jan 7 12:50:49 2024)</li>
|
||||
|
||||
<li><a href="master/master_v0.9.4-B17-full.bin">master_v0.9.4-B17-full.bin</a> (Jan 7 12:50:49 2024)</li>
|
||||
|
||||
<li><a href="master/master_v0.9.4-B17-changelog.txt">master_v0.9.4-B17-changelog.txt</a> (Jan 7 12:50:49 2024)</li>
|
||||
|
||||
<li><a href="master/master_v0.9.3-B17-full.bin">master_v0.9.3-B17-full.bin</a> (Jul 9 10:20:50 2023)</li>
|
||||
|
||||
|
@ -42,17 +46,23 @@
|
|||
<li><a href="master/master_v0.6a-full.bin">master_v0.6a-full.bin</a> (Apr 29 21:03:35 2019)</li>
|
||||
|
||||
</ul><h2>Development repository</h2><ul>
|
||||
<li><a href="devel/update.ino.bin">update.ino.bin</a> (Dec 12 19:44:19 2023)
|
||||
<li><a href="devel/update.ino.bin">update.ino.bin</a> (Jan 7 22:38:07 2024)
|
||||
</li>
|
||||
|
||||
<li><a href="devel/update.fs.bin">update.fs.bin</a> (Nov 10 09:47:19 2023)
|
||||
<li><a href="devel/update.fs.bin">update.fs.bin</a> (Jan 7 12:57:35 2024)
|
||||
</li>
|
||||
|
||||
<li><a href="devel/test-st7789-0x10000.bin">test-st7789-0x10000.bin</a> (May 28 22:13:03 2022)
|
||||
</li>
|
||||
|
||||
<li><a href="devel/devel20231212-B17-full.bin">devel20231212-B17-full.bin</a> (Dec 12 19:44:19 2023)
|
||||
<li><a href="devel/devel20240107-B17-full.bin">devel20240107-B17-full.bin</a> (Jan 7 22:38:07 2024)
|
||||
<br>Enhanced WiFi setup
|
||||
</li>
|
||||
|
||||
<li><a href="devel/devel20231212-B17-full.bin">devel20231212-B17-full.bin</a> (Jan 7 13:10:50 2024)
|
||||
<br>tentative fix of M20 misclassification as M10 (untested)
|
||||
devel version (no changes)
|
||||
new devel based on master0.9.4
|
||||
</li>
|
||||
|
||||
<li><a href="devel/devel20231203-B17-full.bin">devel20231203-B17-full.bin</a> (Dec 3 22:53:21 2023)
|
||||
|
|
|
@ -0,0 +1,123 @@
|
|||
Squashed commit of the following:
|
||||
|
||||
commit fcaf88779dc91cec69f9359406d3aed904e55b6d
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Sun Jan 7 12:22:16 2024 +0000
|
||||
|
||||
(read partition table; preparation for future file system upload script)
|
||||
|
||||
commit 9c7491d389a2c164e4a1675af225646812da7171
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Sat Jan 6 23:51:44 2024 +0000
|
||||
|
||||
better license info on external libraries
|
||||
|
||||
commit 12ede0e81d71a4c9ba0a26bddb408a5010e46c6f
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Mon Dec 18 19:12:36 2023 +0100
|
||||
|
||||
esp32 version update
|
||||
|
||||
commit 1687117bec2a60a1ad73305f73a9f7c402b5afce
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Tue Dec 12 19:36:47 2023 +0000
|
||||
|
||||
tentative fix of M20 misclassification as M10 (untested)
|
||||
|
||||
commit ff5aec544ecbede934a9e70dd742e57f199994b0
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Tue Dec 12 19:27:23 2023 +0000
|
||||
|
||||
tentative fix of M20 misclassification as M10 (untested)
|
||||
|
||||
commit 2b88e072aca924f280547b8277a31f4466e6c85c
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Sun Dec 10 16:11:51 2023 +0000
|
||||
|
||||
reduce image size with platformio builds, make it (almost) same as for Arduino builds
|
||||
|
||||
commit 8ee071de35c47b26e9b051eca6b4a775615206cf
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Sun Dec 3 22:45:44 2023 +0000
|
||||
|
||||
T-Beam 1.2: charge battery fix
|
||||
|
||||
commit 681f43676726e57049d6e91a8236b2f357669b36
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Sun Dec 3 16:00:13 2023 +0000
|
||||
|
||||
newer library versions
|
||||
|
||||
commit 6551fa0b5d4df5bba98135aa5d03afbccbafbe72
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Fri Nov 10 09:43:02 2023 +0000
|
||||
|
||||
chasemapper: id format with type, as in auto_rx
|
||||
|
||||
commit e5c2e2db7745fcb40f8bbe1a1c596ecc88c83d1a
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Tue Aug 29 20:15:53 2023 +0000
|
||||
|
||||
more explanation in About tabw
|
||||
|
||||
commit aec4d3986761a9c1e0c48c78b0576d45310d87d4
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Tue Aug 29 01:00:53 2023 +0000
|
||||
|
||||
fix travis build / wget issue with github
|
||||
|
||||
commit d7026abb7b75e977251e4d1c70ecb167827f1a51
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Tue Aug 29 00:22:48 2023 +0000
|
||||
|
||||
fix bug in eph config editor
|
||||
|
||||
commit 6c98891b630b9330e75ecd870b5dd9b208218fd8
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Mon Aug 28 12:35:06 2023 +0000
|
||||
|
||||
AXP2101: add missing irq handler
|
||||
|
||||
commit c1231a11d42de37dd81221b16b45c5ef0de45040
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Mon Aug 28 12:02:36 2023 +0000
|
||||
|
||||
bugfix (APX2101 related)
|
||||
|
||||
commit 86263a7ad19c2a5dd2814b814fb1890224cf0b6e
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Mon Aug 28 10:13:39 2023 +0000
|
||||
|
||||
fix
|
||||
|
||||
commit 35156948cb772f27daed96e7a1621bd514dfc904
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Mon Aug 28 10:07:09 2023 +0000
|
||||
|
||||
yet another fix for ftp eph
|
||||
|
||||
commit 3ddbebf2fccc311f6e595172eb0c7b450429f8c4
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Sat Aug 26 23:33:33 2023 +0000
|
||||
|
||||
untested axp2101 support
|
||||
|
||||
commit 60e97d917b699be32c06f1c89cde82335ba7b80b
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Sat Aug 26 17:19:38 2023 +0000
|
||||
|
||||
pmu reorg, preparing for axp2101
|
||||
|
||||
commit 082b6ccdf54e494e03a8650d2aee4277277da57d
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Tue Aug 22 22:28:37 2023 +0000
|
||||
|
||||
fix posInfo bug; aprs timeout convert seconds to ms
|
||||
|
||||
commit deec0d362fd369bbc647a257e5d2299e0ca5d04c
|
||||
Author: Hansi, dl9rdz <dl9rdz@darc.de>
|
||||
Date: Sun Jul 9 12:10:53 2023 +0200
|
||||
|
||||
(sync with master)
|
||||
some code reorganization, preliminary SD card code (not active)
|
||||
APRS timeout added
|
Plik binarny nie jest wyświetlany.
|
@ -1 +1 @@
|
|||
<html><body><p>master_v0.9.3-B17</p></body></html>
|
||||
<html><body><p>master_v0.9.4-B17</p></body></html>
|
||||
|
|
1236
master/update.fs.bin
1236
master/update.fs.bin
Plik diff jest za duży
Load Diff
Plik binarny nie jest wyświetlany.
Ładowanie…
Reference in New Issue