index.html 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <title>ArduRemoteID</title>
  6. <meta name="description" content="ArduPilot RemoteID Module.">
  7. <link rel="stylesheet" type="text/css" href="styles/main.css">
  8. <script src='js/jquery.min.js'></script>
  9. <script src='js/tools.js'></script>
  10. </head>
  11. <body>
  12. <a href="/index.html"><img src="images/logo.jpg" alt="ArduPilot"></a></p>
  13. <h1>ArduRemoteID</h1>
  14. <h2>Status</h2>
  15. <fieldset>
  16. <legend>System</legend>
  17. <table class="values">
  18. <tr><td>Version</td><td><div id="STATUS:VERSION"></div></td></tr>
  19. <tr><td>Up Time</td><td><div id="STATUS:UPTIME"></div></td></tr>
  20. <tr><td>Free Memory</td><td><div id="STATUS:FREEMEM"></div></td></tr>
  21. </table>
  22. </fieldset>
  23. <fieldset>
  24. <legend>BasicID</legend>
  25. <table class="values">
  26. <tr><td>UAType</td><td><div id="BASICID:UAType"></div></td></tr>
  27. <tr><td>IDType</td><td><div id="BASICID:IDType"></div></td></tr>
  28. <tr><td>UASID</td><td><div id="BASICID:UASID"></div></td></tr>
  29. </table>
  30. </fieldset>
  31. <fieldset>
  32. <legend>OperatorID</legend>
  33. <table class="values">
  34. <tr><td>IDType</td><td><div id="OPERATORID:IDType"></div></td></tr>
  35. <tr><td>ID</td><td><div id="OPERATORID:ID"></div></td></tr>
  36. </table>
  37. </fieldset>
  38. <fieldset>
  39. <legend>SelfID</legend>
  40. <table class="values">
  41. <tr><td>DescriptionType</td><td><div id="SELFID:DescType"></div></td></tr>
  42. <tr><td>Description</td><td><div id="SELFID:Desc"></div></td></tr>
  43. </table>
  44. </fieldset>
  45. <fieldset>
  46. <legend>System</legend>
  47. <table class="values">
  48. <tr><td>OperatorLocationType</td><td><div id="SYSTEM:OperatorLocationType"></div></td></tr>
  49. <tr><td>ClassificationType</td><td><div id="SYSTEM:ClassificationType"></div></td></tr>
  50. <tr><td>OperatorLatitude</td><td><div id="SYSTEM:OperatorLatitude"></div></td></tr>
  51. <tr><td>OperatorLongitude</td><td><div id="SYSTEM:OperatorLongitude"></div></td></tr>
  52. <tr><td>AreaCount</td><td><div id="SYSTEM:AreaCount"></div></td></tr>
  53. <tr><td>AreaRadius</td><td><div id="SYSTEM:AreaRadius"></div></td></tr>
  54. <tr><td>AreaCeiling</td><td><div id="SYSTEM:AreaCeiling"></div></td></tr>
  55. <tr><td>AreaFloor</td><td><div id="SYSTEM:AreaFloor"></div></td></tr>
  56. <tr><td>CategoryEU</td><td><div id="SYSTEM:CategoryEU"></div></td></tr>
  57. <tr><td>ClassEU</td><td><div id="SYSTEM:ClassEU"></div></td></tr>
  58. <tr><td>OperatorAltitudeGeo</td><td><div id="SYSTEM:OperatorAltitudeGeo"></div></td></tr>
  59. <tr><td>Timestamp</td><td><div id="SYSTEM:Timestamp"></div></td></tr>
  60. </table>
  61. </fieldset>
  62. <fieldset>
  63. <legend>Location</legend>
  64. <table class="values">
  65. <tr><td>Status</td><td><div id="LOCATION:Status"></div><td></tr>
  66. <tr><td>Direction</td><td><div id="LOCATION:Direction"></div><td></tr>
  67. <tr><td>SpeedHorizontal</td><td><div id="LOCATION:SpeedHorizontal"></div><td></tr>
  68. <tr><td>SpeedVertical</td><td><div id="LOCATION:SpeedVertical"></div><td></tr>
  69. <tr><td>Latitude</td><td><div id="LOCATION:Latitude"></div><td></tr>
  70. <tr><td>Longitude</td><td><div id="LOCATION:Longitude"></div><td></tr>
  71. <tr><td>AltitudeBaro</td><td><div id="LOCATION:AltitudeBaro"></div><td></tr>
  72. <tr><td>AltitudeGeo</td><td><div id="LOCATION:AltitudeGeo"></div><td></tr>
  73. <tr><td>HeightType</td><td><div id="LOCATION:HeightType"></div><td></tr>
  74. <tr><td>Height</td><td><div id="LOCATION:Height"></div><td></tr>
  75. <tr><td>HorizAccuracy</td><td><div id="LOCATION:HorizAccuracy"></div><td></tr>
  76. <tr><td>VertAccuracy</td><td><div id="LOCATION:VertAccuracy"></div><td></tr>
  77. <tr><td>BaroAccuracy</td><td><div id="LOCATION:BaroAccuracy"></div><td></tr>
  78. <tr><td>SpeedAccuracy</td><td><div id="LOCATION:SpeedAccuracy"></div><td></tr>
  79. <tr><td>TSAccuracy</td><td><div id="LOCATION:TSAccuracy"></div><td></tr>
  80. <tr><td>TimeStamp</td><td><div id="LOCATION:TimeStamp"></div><td></tr>
  81. </table>
  82. </fieldset>
  83. <h2>Documentation</h2>
  84. <ul>
  85. <li><a href="https://ardupilot.org/ardupilot/index.html">ArduPilot Project</a></li>
  86. <li><a href="https://github.com/ArduPilot/ArduRemoteID">ArduRemoteID Project</a></li>
  87. <li><a href="https://ardupilot.org/plane/docs/common-remoteid.html">ArduPilot RemoteID Documentation</a></li>
  88. <li><a href="https://www.opendroneid.org/">OpenDroneID Website</a></li>
  89. </ul>
  90. <h2>Firmware Update</h2>
  91. <form method='POST' action='#' enctype='multipart/form-data' id='upload_form'>
  92. <input type='file' name='update'>
  93. <input type='submit' value='Update'>
  94. </form>
  95. <div id='progress'>upload progress: 0%</div>
  96. <script>
  97. $('form').submit(function(e) {
  98. e.preventDefault();
  99. var form = $('#upload_form')[0];
  100. var data = new FormData(form);
  101. $.ajax({
  102. url: '/update',
  103. type: 'POST',
  104. data: data,
  105. contentType: false,
  106. processData:false,
  107. xhr: function() {
  108. var xhr = new window.XMLHttpRequest();
  109. xhr.upload.addEventListener('progress', function(evt) {
  110. if (evt.lengthComputable) {
  111. var per = evt.loaded / evt.total;
  112. $('#progress').html('progress: ' + Math.round(per*100) + '%');
  113. }
  114. }, false);
  115. return xhr;
  116. },
  117. success:function(d, s) {
  118. console.log('success!')
  119. },
  120. error: function (a, b, c) {
  121. }
  122. });
  123. });
  124. // poll status information at 1Hz (900ms to cope with some lag)
  125. ajax_json_poll_fill("/ajax/status.json", 900);
  126. </script>
  127. </body>
  128. </html>