1"use strict";(self.webpackChunktechtoolbox=self.webpackChunktechtoolbox||[]).push([[6346],{3905:(e,t,o)=>{o.d(t,{Zo:()=>s,kt:()=>B});var n=o(7294);function r(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,n)}return o}function i(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};t%2?a(Object(o),!0).forEach((function(t){r(e,t,o[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):a(Object(o)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))}))}return e}function A(e,t){if(null==e)return{};var o,n,r=function(e,t){if(null==e)return{};var o,n,r={},a=Object.keys(e);for(n=0;n<a.length;n++)o=a[n],t.indexOf(o)>=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)o=a[n],t.indexOf(o)>=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}var l=n.createContext({}),d=function(e){var t=n.useContext(l),o=t;return e&&(o="function"==typeof e?e(t):i(i({},t),e)),o},s=function(e){var t=d(e.components);return n.createElement(l.Provider,{value:t},e.children)},u="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},h=n.forwardRef((function(e,t){var o=e.components,r=e.mdxType,a=e.originalType,l=e.parentName,s=A(e,["components","mdxType","originalType","parentName"]),u=d(o),h=r,B=u["".concat(l,".").concat(h)]||u[h]||c[h]||a;return o?n.createElement(B,i(i({ref:t},s),{},{components:o})):n.createElement(B,i({ref:t},s))}));function B(e,t){var o=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var a=o.length,i=new Array(a);i[0]=h;var A={};for(var l in t)hasOwnProperty.call(t,l)&&(A[l]=t[l]);A.originalType=e,A[u]="string"==typeof e?e:r,i[1]=A;for(var d=2;d<a;d++)i[d]=o[d];return n.createElement.apply(null,i)}return n.createElement.apply(null,o)}h.displayName="MDXCreateElement"},958:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>c,frontMatter:()=>a,metadata:()=>A,toc:()=>d});var n=o(7462),r=(o(7294),o(3905));const a={sidebar_position:9},i="Wireless Download",A={unversionedId:"Getting Started/wd",id:"Getting Started/wd",title:"Wireless Download",description:"* Video Tutorial - The IP adress used in the video may not match modern control hubs, make sure to change it to the right one.",source:"@site/docs/Getting Started/wd.md",sourceDirName:"Getting Started",slug:"/Getting Started/wd",permalink:"/docs/Getting Started/wd",draft:!1,tags:[],version:"current",sidebarPosition:9,frontMatter:{sidebar_position:9},sidebar:"tutorialSidebar",previous:{title:"Telemetry",permalink:"/docs/Getting Started/tele"},next:{title:"The Sleep Command",permalink:"/docs/Getting Started/sleep"}},l={},d=[{value:"Android Debug Bridge",id:"android-debug-bridge",level:3},{value:"ADB File Path",id:"adb-file-path",level:3},{value:"Adding to Path",id:"adding-to-path",level:3},{value:"Control Hub Connection",id:"control-hub-connection",level:3},{value:"Usage in Android Studio",id:"usage-in-android-studio",level:3}],s={toc:d},u="wrapper";function c(e){let{components:t,...a}=e;return(0,r.kt)(u,(0,n.Z)({},s,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"wireless-download"},"Wireless Download"),(0,r.kt)("admonition",{title:"Resources",type:"note"},(0,r.kt)("ul",{parentName:"admonition"},(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://www.youtube.com/watch?v=bCNUGSwhHZk"},"Video Tutorial")," - The IP adress used in the video may not match modern control hubs, make sure to change it to the right one."))),(0,r.kt)("h3",{id:"android-debug-bridge"},"Android Debug Bridge"),(0,r.kt)("p",null,"We will be using something called Android Debug Bridge(ADB) to download the code wirelessly to the robot. First, you should add the adb executable in your files to your path variables so it can be accessed from everywhere."),(0,r.kt)("h3",{id:"adb-file-path"},"ADB File Path"),(0,r.kt)("p",null,"Here is the default adb file path on windows computers"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'C:\\Users\\"User Name"\\AppData\\Local\\Android\\SDK\\platform-tools\n')),(0,r.kt)("p",null,"If we don't add the adb path to path variables, we won't be able to access it from our Android Studio IDE Environment"),(0,r.kt)("h3",{id:"adding-to-
1path"},"Adding to Path"),(0,r.kt)("p",null,"To go to your environment variables, first open the control panel on your computer, then go to these sections."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"System and Security>>System>>Advanced System Settings>>Environment Variables\n")),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Example banner",src:o(170).Z,width:"204",height:"263"})),(0,r.kt)("p",null,"The user variables should have a left side that looks something like this with different variable types. Double click the path variable. Then, hit browse, and then to go the previously mentioned file path for adb. After you have gone to the file path, hit OK and then you will have that file path saved"),(0,r.kt)("p",null,"Now, you can use the adb executable anywhere since it is one of your computer's path variables!"),(0,r.kt)("h3",{id:"control-hub-connection"},"Control Hub Connection"),(0,r.kt)("p",null,"First, you have to connect to the wifi network of your control hub, by clicking on wifi networks and finding your control hub's network. Make sure that your robot is on and the control hub has a green light before doing this."),(0,r.kt)("h3",{id:"usage-in-android-studio"},"Usage in Android Studio"),(0,r.kt)("p",null,"Now, in Android Studio, go to the terminal tab, which is found at the bottom bar of the screen.\nUse this line to ensure nothing else is connected via adb"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"adb disconnect\n")),(0,r.kt)("p",null,"Use this to connect to the control hub"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"adb connect 192.168.43.1:5555\n")),(0,r.kt)("p",null,"The numbers after the connect are the ip address of the Control Hub. If you are using a robot phone instead, you must find the ip address of the phone by looking at the Program and Manage section of the phone."),(0,r.kt)("p",null,"Now that you are wirelessly connected, all you need to do to download your code is hit the green play button at the top of the android studio IDE."))}c.isMDXComponent=!0},170:(e,t,o)=>{o.d(t,{Z:()=>n});const n="data:image/png;base64,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"}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.