Skip to content

Commit

Permalink
Update to 4.0 without fixing issues
Browse files Browse the repository at this point in the history
  • Loading branch information
iamwood committed Oct 1, 2018
1 parent 7d0235b commit 2e39a94
Show file tree
Hide file tree
Showing 348 changed files with 37,319 additions and 3,647 deletions.
6 changes: 3 additions & 3 deletions library/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ android {
defaultConfig {
minSdkVersion 19
targetSdkVersion 19
versionCode 10
versionName "3.7.0"
versionCode 11
versionName "4.0.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

ndk {
Expand All @@ -34,7 +34,7 @@ project.archivesBaseName = 'robotcore-repackaged'
dependencies {
implementation 'com.android.support:support-annotations:27.1.1'

implementation 'com.github.modular-ftc:vuforia-repackaged:3.7.0'
implementation 'com.github.modular-ftc:vuforia-repackaged:4.0.0'

implementation 'com.google.code.gson:gson:2.8.5'
implementation 'org.danilopianini:gson-extras:0.2.1'
Expand Down
18 changes: 17 additions & 1 deletion library/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http:https://schemas.android.com/apk/res/android"
package="com.qualcomm.robotcore">
package="com.qualcomm.robotcore"
android:versionCode="46"
android:versionName="8.0" >

<uses-sdk
android:minSdkVersion="19"
android:targetSdkVersion="19" />

<uses-permission
android:name="android.permission.ACCESS_WIFI_STATE"
Expand All @@ -27,10 +33,20 @@
<uses-permission
android:name="android.permission.WRITE_SETTINGS"
android:required="true" />

<!--
"Allows applications to access serial ports via the SerialManager.". So, uncertain we need,
as we don't use the SerialManager.
-->
<uses-permission
android:name="android.permission.SERIAL_PORT"
android:required="true" />

<!-- see AppUtil.setTimeZone() -->
<uses-permission
android:name="android.permission.SET_TIME_ZONE"
android:required="true" />

<!--
Note: we suspect that this (android.permission.WAKE_LOCK) is no
longer needed, but haven't yet found the time necessary to verify
Expand Down
3 changes: 1 addition & 2 deletions library/src/main/assets/connection.html
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@

var uaIsAndroid = rcInfo.ftcUserAgentCategory !== "OTHER";

document.getElementById("id_rc_name").innerHTML = rcInfo.deviceName;
document.getElementById("id_network_name").innerHTML = rcInfo.networkName;
document.getElementById("id_passphrase").innerHTML = rcInfo.passphrase;
document.getElementById("id_server_url").innerHTML = rcInfo.serverUrl;
Expand Down Expand Up @@ -116,7 +115,7 @@

<div class="bordered-text-block">
<h1>Robot Controller Connection Info</h1>
<p class="web_server_banter">The <span id="id_span_connected">connected </span>robot controller, <span id="id_rc_name">(name)</span>, resides on the wireless network named:</p>
<p class="web_server_banter">The <span id="id_span_connected">connected </span>robot controller resides on the wireless network named:</p>
<p class="web_server_datum"><span id="id_network_name">(network)</span></p>

<p class="web_server_banter">The passphrase for this network is:</p>
Expand Down
13 changes: 11 additions & 2 deletions library/src/main/assets/frame.html
Original file line number Diff line number Diff line change
Expand Up @@ -166,12 +166,21 @@

function navTo(page) {
console.log("navigating to '" + page + "'");
makeButtonActive(findNavButtonForPage(page));
theIFrame.src = page;
}

function navToJavaFile(javaFileName) {
console.log("navigating to java file '" + javaFileName + "'");
makeButtonActive(document.getElementById('id_nav_onbotjava'));
theIFrame.src = URI_NAV_ONBOTJAVA + '?/src/' + javaFileName;
}

function makeButtonActive(button) {
clearActiveFromNavButtons();
var button = findNavButtonForPage(page);
if (button) {
addClass(button, "active");
}
theIFrame.src = page;
}

// Dismiss menu on click in 'collapsed' case
Expand Down
Binary file removed library/src/main/assets/java/Blocks-classes.jar
Binary file not shown.
Binary file removed library/src/main/assets/java/FtcCommon-classes.jar
Binary file not shown.
Binary file removed library/src/main/assets/java/Hardware-classes.jar
Binary file not shown.
Binary file removed library/src/main/assets/java/Inspection-classes.jar
Binary file not shown.
Binary file removed library/src/main/assets/java/RobotCore-classes.jar
Binary file not shown.
Binary file not shown.
2 changes: 2 additions & 0 deletions library/src/main/assets/js/util.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,10 @@ var URI_DOWNLOAD_FILE;
var URI_RENAME_RC;
var URI_UPLOAD_EXPANSION_HUB_FIRMWARE;
var URI_UPDATE_CONTROL_HUB_APK;
var URI_UPLOAD_WEBCAM_CALIBRATION_FILE;
var PARAM_NAME;
var PARAM_NEW_NAME;
var PARAM_AP_PASSWORD;
var URI_NAV_HOME;
var URI_NAV_MANAGE;
var URI_NAV_HELP;
Expand Down
142 changes: 130 additions & 12 deletions library/src/main/assets/manage.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,46 @@
<div class="bordered-text-block">
<div>
<h1>Robot Controller Name</h1>
<p>Change the name of the robot controller.</p>
<p>Change the name of the robot controller. If using wireless access point mode this will also be the name of
the broadcasting ssid.</p>
<p>
<input id="id_rc_name" class="centered-feedback" type="text" value="(name)"><button id="id_change_name_button" class="aligned-select-button" onclick="onRenameRC()">Change Name</button>
</p>
</div>
<div>
<h1>Access Point Password</h1>
<p>Change the password for the wireless access point. Only applicable for the REV Control Hub</p>
<p>
<!-- Value chosen to intentionally fail password validation -->
<input id="id_ap_password" class="centered-feedback" type="password" value="BADBEEF"><button id="id_change_ap_passowrd" class="aligned-select-button" onclick="onChangeApPassword()">Change Password</button>
</p>
</div>
<div>
<h1>Access Point Channel</h1>
<p>Change the operating channel for the wireless access point. Only applicable for the REV Control Hub</p>
<p>
<!-- Value chosen to intentionally choose auto select -->
<select id="id_ap_channel" class="centered-feedback">
<option value="-1" selected></option>
<option value="0">Auto</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
</select>
<button id="id_change_ap_channel" class="aligned-select-button" onclick="onChangeApChannel()">Change Channel</button>
</p>
</div>
</div>
<br>
<div class="bordered-text-block">
<div id="id_download_logs">
<h1>Download Robot Controller Logs</h1>
<p>Examination of activity logs from the robot controller can sometimes help diagnose problems and bugs.</p>
Expand Down Expand Up @@ -61,6 +96,25 @@ <h1>Update Robot Controller App &amp; Reboot</h1>
</div>
</div>
</div>
<div id="id_upload_webcam_calibration">
<h1>Upload Webcam Calibration File</h1>
<p>Upload a webcam calibration file.</p>
<div>
<p>
<input id="id_input_file_webcam_calibration" type="file" class="hidden hidden-input-file">
<input id="id_webcam_calibration_feedback" readonly class="upload-feedback" type="text" value="(webcam_calibration)">
<button id="id_webcam_calibration_button" class="aligned-select-button" >Select Webcam Calibration File...</button>
<button id="id_action_webcam_calibration" class="aligned-action-button" onclick="uploadWebcamCalibration();">Upload</button>
</p>
<p id="id_webcam_calibration_upload_complete" class="text-ok"></p>
<div class="progress hidden">
<div id="id_webcam_calibration_progress" class="progress-bar" role="progressbar"
aria-valuemin="0" aria-valuemax="100" aria-valuenow="70" style="width:70%">
70%
</div>
</div>
</div>
</div>
</div>

<script type="text/javascript" src="/js/rc_config.js"></script>
Expand Down Expand Up @@ -107,6 +161,9 @@ <h1>Update Robot Controller App &amp; Reboot</h1>
initUpload('id_input_file_firmware', 'id_firmware_feedback', 'id_firmware_button', '.bin', 'id_action_firmware', null /* 'id_firmware_progress' */);
initUpload('id_input_file_apk', 'id_apk_feedback', 'id_apk_button', '.apk', 'id_action_apk', 'id_apk_progress');

$('#id_id_webcam_calibration_upload_complete').hide();
initUpload('id_input_file_webcam_calibration', 'id_webcam_calibration_feedback', 'id_webcam_calibration_button', '.xml', 'id_action_webcam_calibration', null /* 'id_webcam_calibration_progress' */);

var uploadProgress = function(file, progress, xhr, e) {
if (e.lengthComputable) {
var loaded = Math.round(100 * (e.loaded / e.total));
Expand Down Expand Up @@ -177,20 +234,81 @@ <h1>Update Robot Controller App &amp; Reboot</h1>
xhr.send();
}

var uploadWebcamCalibration = function () {
var feedback = document.getElementById('id_webcam_calibration_feedback');
var progress = null // hasFunctionalProgress() ? document.getElementById('id_webcam_calibration_progress') : null;
var file = feedback.dataFile;
console.log("uploadWebcamCalibration() name=" + file.name);
var url = URI_UPLOAD_WEBCAM_CALIBRATION_FILE;
uploadFile(file, url,
function(xhr, e) { uploadProgress(file, progress, xhr, e); },
function(xhr, e) {
uploadSuccess(file, progress, xhr, e);
showToast('id_webcam_calibration_upload_complete', 'Webcam Calibration upload complete');
},
function(xhr, e) { uploadFailure(file, progress, xhr, e); });
}

var onRenameRC = function () {
console.log("onRenameRC()");
var newName = document.getElementById("id_rc_name").value;
console.log("newName=" + newName);
var xhr = new XMLHttpRequest();
var params = PARAM_NAME + '=' + encodeURIComponent(newName);
xhr.open('POST', URI_RENAME_RC, true /*async*/);
xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
refreshRCInfo();
}
};
var newName = document.getElementById("id_rc_name").value.trim();
if(newName.length < 2 || newName.length > 40) {
alert("RC Name must be between 2 and 20 chars");
}
else {
console.log("newName=" + newName);
var xhr = new XMLHttpRequest();
var params = PARAM_NAME + '=' + encodeURIComponent(newName);
xhr.open('POST', URI_RENAME_RC, true /*async*/);
xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
refreshRCInfo();
}
};
xhr.send(params);
}
}

var onChangeApPassword = function () {
console.log("onChangeApPassword()");
var newPw = document.getElementById("id_ap_password").value;
if(newPw.length < 8 || newPw.length > 128) {
alert("Password must be between 8 and 128 chars");
}
else {
var xhr = new XMLHttpRequest();
var params = PARAM_NAME + '=' + encodeURIComponent(newPw);
xhr.open('POST', URI_CHANGE_AP_PASSWORD, true /*async*/);
xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
refreshRCInfo();
}
};
xhr.send(params);
}
}

var onChangeApChannel = function () {
console.log("onChangeApChannel()");
var newCh = $("#id_ap_channel").val();
if (newCh < 0 || newCh > 11) {
alert("Please select Auto or a channel from 1 - 11")
}
else {
console.log(newCh);
var xhr = new XMLHttpRequest();
var params = PARAM_NAME + '=' + encodeURIComponent(newCh);
xhr.open('POST', URI_CHANGE_AP_CHANNEL, true /*async*/);
xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
refreshRCInfo();
}
};
xhr.send(params);
}
}

var refreshRCInfo = function () {
Expand Down
Loading

0 comments on commit 2e39a94

Please sign in to comment.