AI2 test page says "NO, your phone is not connected via USB"

874 views
Skip to first unread message

Jan Saga

unread,
Apr 18, 2018, 6:52:30 AM4/18/18
to mitappinv...@googlegroups.com
Hi
I'm having problems geting the AI2 running on Windows7 with a USB connection to my android phone.
I have intalled the USB driver for my Cubot x18 and turned on "Debugging USB".
The appinventor.mitedu/test/ webpage says:
"Yes, aiStarter v2.3.0 running!
   No, your phone is not connected via USB"

I installed the required driver for my Android on my computer     I installedl MIT Companion on to my Android from the Play Store.   I did check the USB Debugging box in the Android Settings in mydevice.

If there is a simmilar thread could you point me to it?
Thanks.

Abraham Getzler

unread,
Apr 18, 2018, 1:58:27 PM4/18/18
to MIT App Inventor Forum
Is this your first time using AI2?

You have to start a project at http://ai2.appinventor.mit.edu/
and use the Connect pulldown.

So far, you have only set up the debugging tool.

If that's not the case, check this forum for 'USB' in the FAQ.

ABG

Evan Patton

unread,
Apr 18, 2018, 2:10:19 PM4/18/18
to MIT App Inventor Forum
Hi Jan,

Here are two other things you may need to do:

1. When your device is plugged in, you may need to put it into a specific mode. For example, if the phone is in picture transfer mode (PTP), you may need to switch it into MTP (media transfer protocol) or vice versa. Make sure that it isn't set to "Charging Only" otherwise it will not exchange any data with the computer.
2. The first time you plug your phone in, the phone should prompt you to authorize your computer. It will show you a string of hexadecimal characters separated by colons, e.g. 01:23:45:67:89:AB:CD:EF, and a checkbox to "Always trust this computer." You will have to answer Yes to this prompt before you will be able to communicate with your device.

Regards,
Evan

Abraham Getzler

unread,
Apr 18, 2018, 3:17:13 PM4/18/18
to MIT App Inventor Forum

Jan Saga

unread,
Apr 20, 2018, 3:28:17 AM4/20/18
to MIT App Inventor Forum
Thanks for the tips so far but no positive result.

I did try connecting through Connect pulldown USB in the Ai2 and it says that "AI2 does not see your device, make sure the cable is plaged in and drivers are correct".

I thought the USB connection test page was for checking if the the computer can see/talk to the phone.  The test page does not see my phone and the AI2 neither.

On the phone after connecting it to the computer via USB I have 4 options:   1. charging.   2 file transfer (it works fine)  3 PTP    4 MIDI.   I tried all 4 options.

The phon is with clean android 7.0,  core version 3.18.35

Evan Patton

unread,
Apr 20, 2018, 10:27:56 AM4/20/18
to MIT App Inventor Forum
Hi Jan,

The USB support is built on top of the Android Debug Bridge. You can use this utility to help us diagnose your problem further.

1. Open a command prompt. Usually the fastest way to do this is press Windows+R, type cmd.exe, and press enter.
2. In the prompt that opens, type (including quotes): "C:\Program Files (x86)\AppInventor\commands-for-AppInventor\adb.exe" devices and press enter.
3. You should get something that looks like this (actual values will vary):
List of devices attached
be42b13eca80    device

If you don't see anything, that means that ADB isn't detecting your device for some reason.
If you see "offline", your phone is detected but isn't responding to ADB. You may need to restart your phone.
If you see "unauthorized", then your phone doesn't trust your computer. You can go into the debugging menu and clear USB authorizations, and then run the ADB command again and it should prompt for authorization
If you see "device", then you are able to connect to your phone with ADB, and there is a problem elsewhere, possibly in App Inventor.

Regards,
Evan

Jan Saga

unread,
Apr 26, 2018, 5:19:14 AM4/26/18
to MIT App Inventor Forum
Hi Evan,
So I connected the phone with ADB via USB,  turnd on AI2 and aiStarter,  and in command prompt enter with quotes what you wrote.
Here is the rerult:

C:\Users\Lenovo>"C:\Program Files (x86)\AppInventor\commands-for-AppInventor\adb
.exe"
Android Debug Bridge version 1.0.32

 -a                            - directs adb to listen on all interfaces for a c
onnection
 -d                            - directs command to the only connected USB devic
e
                                 returns an error if more than one USB device is
 present.
 -e                            - directs command to the only running emulator.
                                 returns an error if more than one emulator is r
unning.
 -s <specific device>          - directs command to the device or emulator with
the given
                                 serial number or qualifier. Overrides ANDROID_S
ERIAL
                                 environment variable.
 -p <product name or path>     - simple product name like 'sooner', or
                                 a relative/absolute path to a product
                                 out directory like 'out/target/product/sooner'.

                                 If -p is not specified, the ANDROID_PRODUCT_OUT

                                 environment variable is used, which must
                                 be an absolute path.
 -H                            - Name of adb server host (default: localhost)
 -P                            - Port of adb server (default: 5037)
 devices [-l]                  - list all connected devices
                                 ('-l' will also list device qualifiers)
 connect <host>[:<port>]       - connect to a device via TCP/IP
                                 Port 5555 is used by default if no port number
is specified.
 disconnect [<host>[:<port>]]  - disconnect from a TCP/IP device.
                                 Port 5555 is used by default if no port number
is specified.
                                 Using this command with no additional arguments

                                 will disconnect from all connected TCP/IP devic
es.

device commands:
  adb push [-p] <local> <remote>
                               - copy file/dir to device
                                 ('-p' to display the transfer progress)
  adb pull [-p] [-a] <remote> [<local>]
                               - copy file/dir from device
                                 ('-p' to display the transfer progress)
                                 ('-a' means copy timestamp and mode)
  adb sync [ <directory> ]     - copy host->device only if changed
                                 (-l means list but don't copy)
                                 (see 'adb help all')
  adb shell                    - run remote shell interactively
  adb shell <command>          - run remote shell command
  adb emu <command>            - run emulator console command
  adb logcat [ <filter-spec> ] - View device log
  adb forward --list           - list all forward socket connections.
                                 the format is a list of lines with the followin
g format:
                                    <serial> " " <local> " " <remote> "\n"
  adb forward <local> <remote> - forward socket connections
                                 forward specs are one of:
                                   tcp:<port>
                                   localabstract:<unix domain socket name>
                                   localreserved:<unix domain socket name>
                                   localfilesystem:<unix domain socket name>
                                   dev:<character device name>
                                   jdwp:<process pid> (remote only)
  adb forward --no-rebind <local> <remote>
                               - same as 'adb forward <local> <remote>' but fail
s
                                 if <local> is already forwarded
  adb forward --remove <local> - remove a specific forward socket connection
  adb forward --remove-all     - remove all forward socket connections
  adb reverse --list           - list all reverse socket connections from device

  adb reverse <remote> <local> - reverse socket connections
                                 reverse specs are one of:
                                   tcp:<port>
                                   localabstract:<unix domain socket name>
                                   localreserved:<unix domain socket name>
                                   localfilesystem:<unix domain socket name>
  adb reverse --norebind <remote> <local>
                               - same as 'adb reverse <remote> <local>' but fail
s
                                 if <remote> is already reversed.
  adb reverse --remove <remote>
                               - remove a specific reversed socket connection
  adb reverse --remove-all     - remove all reversed socket connections from dev
ice
  adb jdwp                     - list PIDs of processes hosting a JDWP transport

  adb install [-lrtsd] <file>
  adb install-multiple [-lrtsdp] <file...>
                               - push this package file to the device and instal
l it
                                 (-l: forward lock application)
                                 (-r: replace existing application)
                                 (-t: allow test packages)
                                 (-s: install application on sdcard)
                                 (-d: allow version code downgrade)
                                 (-p: partial application install)
  adb uninstall [-k] <package> - remove this app package from the device
                                 ('-k' means keep the data and cache directories
)
  adb bugreport                - return all information from the device
                                 that should be included in a bug report.

  adb backup [-f <file>] [-apk|-noapk] [-obb|-noobb] [-shared|-noshared] [-all]
[-system|-nosystem] [<packages...>]
                               - write an archive of the device's data to <file>
.
                                 If no -f option is supplied then the data is wr
itten
                                 to "backup.ab" in the current directory.
                                 (-apk|-noapk enable/disable backup of the .apks
 themselves
                                    in the archive; the default is noapk.)
                                 (-obb|-noobb enable/disable backup of any insta
lled apk expansion
                                    (aka .obb) files associated with each applic
ation; the default
                                    is noobb.)
                                 (-shared|-noshared enable/disable backup of the
 device's
                                    shared storage / SD card contents; the defau
lt is noshared.)
                                 (-all means to back up all installed applicatio
ns)
                                 (-system|-nosystem toggles whether -all automat
ically includes
                                    system applications; the default is to inclu
de system apps)
                                 (<packages...> is the list of applications to b
e backed up.  If
                                    the -all or -shared flags are passed, then t
he package
                                    list is optional.  Applications explicitly g
iven on the
                                    command line will be included even if -nosys
tem would
                                    ordinarily cause them to be omitted.)

  adb restore <file>           - restore device contents from the <file> backup
archive

  adb help                     - show this help message
  adb version                  - show version num

scripting:
  adb wait-for-device          - block until device is online
  adb start-server             - ensure that there is a server running
  adb kill-server              - kill the server if it is running
  adb get-state                - prints: offline | bootloader | device
  adb get-serialno             - prints: <serial-number>
  adb get-devpath              - prints: <device-path>
  adb status-window            - continuously print device status for a specifie
d device
  adb remount                  - remounts the /system and /vendor (if present) p
artitions on the device read-write
  adb reboot [bootloader|recovery] - reboots the device, optionally into the boo
tloader or recovery program
  adb reboot-bootloader        - reboots the device into the bootloader
  adb root                     - restarts the adbd daemon with root permissions
  adb usb                      - restarts the adbd daemon listening on USB
  adb tcpip <port>             - restarts the adbd daemon listening on TCP on th
e specified port
networking:
  adb ppp <tty> [parameters]   - Run PPP over USB.
 Note: you should not automatically start a PPP connection.
 <tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
 [parameters] - Eg. defaultroute debug dump local notty usepeerdns

adb sync notes: adb sync [ <directory> ]
  <localdir> can be interpreted in several ways:

  - If <directory> is not specified, /system, /vendor (if present), and /data pa
rtitions will be updated.

  - If it is "system", "vendor" or "data", only the corresponding partition
    is updated.

environmental variables:
  ADB_TRACE                    - Print debug information. A comma separated list
 of the following values
                                 1 or all, adb, sockets, packets, rwx, usb, sync
, sysdeps, transport, jdwp
  ANDROID_SERIAL               - The serial number to connect to. -s takes prior
ity over this if given.
  ANDROID_LOG_TAGS             - When used with the logcat option, only these de
bug tags are printed.

C:\Users\Lenovo>

In the aiStarter I have got a line that repeats itself forever:

127.0.0.1 - - [26/Apr/2018 11:17:59] "GET /ucheck/ HTTP/1.1" 200 40

ahh and the time in this line changes.

Reply all
Reply to author
Forward
0 new messages