USB Device Mode

247 views
Skip to first unread message

Laughlinez

unread,
Jan 29, 2014, 4:01:24 AM1/29/14
to apc-pico-...@googlegroups.com
Guys,

Sorry for long post.

I have come into posession of 4 of these 8750 devices (new boxed). I thought they would be great for our hackspace.

Problem is there is scant information - seems VIA has taken down ALL data, even though they could leave it up r/o whilst they supposedly 'converting'.

I understand we can put Apricot R5 or Android 4 on these using Royal Panda's images by doing the following:

1. Install android SDK onto PC (we used latest as at 10th Jan)
  - Open SDK Manager and install updates and the Android USB Driver (windows 7 64)
  (This just installs USB driver package in folder, to be selected later when device detected by O/S)

2. Put the device (8750) into USB Device mode.
  - start device (android gingerbread)
  - open settings->USB select ADB debugging
  - turn on developer mode
  - shutdown device
  - move sw1 jumper from 1-2 to 2-3 (2-3=USB Device Mode)
  - shutdown device
(is this correct sequence)?


3. Connect provided double ended USB cable to PC and other end to usb port (directly under eth jack).
  - power on 8750 device.

At this point I am expecting USB device to be detected by Win7 64 and ask for driver, (where I would point it to the driver within the adk setup).

problem: I get no device detect - I have tried 2 laptops both with good known USB2 ports, one running win7 64, other linux mint 64.
question: Do I also need a pre-flashed image in either the sdcard or usb port slots at this point.?

Royal Panda identifies a wiki that goes through process via this thread https://groups.google.com/d/msg/apc-pico-itx-boards/fu56X1NqTOU/6R2Of3eiC5IJ
but the TFTboot link is down.

I am expecting the USB device to be recognised, install driver (by selecting sdk version) and then drop to a command prompt within the platform-sdk folder
in order to issue:
adb devices
where this should show me the connected 8750.
(no go, as device not detected it seems)

I would then proceed to install and execute the adb-script.sh via the adb shell to setup the need uboot sequence, via either the USB scriptcmd variant OR the MMC scriptcmd variant depending upon img media source.

So, my questions are:
Where did we go wrong above? no usb device detected?
Also the adb-script details a number of USB ports 11:1 through 11:3 - where are these defined.?

e.g looking at back of board working from right-left, top/bottom we seem to have:

audio line out/green
mic in/pink

eth port
usb-a
usb-b

usb-c
usb-d

hdmi

vga

power

Could someone update usb-a-d to usb 11:1 - 11:3 so I have them recorded correctly.
maybe usb-a (directly under eth jack cannot be used for media)?


If anyone can help, our hackspace will soon be on its way with a 8750 controller for our little PCB mill project, running g-code via linux.

--Laughlinez











Royal Panda

unread,
Jan 29, 2014, 7:38:19 AM1/29/14
to
Hi,

According to this diagram : http://apc.io/media/apc/library/8750/apc-pinout.pdf USB0 is the one which is switched from USB Host to USB Device, and this is the only one. So be sure that you are plugin the right USB Port.

Then, in order to add boot capabilities ( TFTP / USB or both ) have a look here : https://groups.google.com/forum/#!category-topic/apc-pico-itx-boards/bKpazWRp4mw
It's a script using an ADB Shell.

But, if you are able to put an Apricot Image on a sdcard, this will work without any tweaks. And after that, from the Debian linux you will be able to add TFTP or USB boot. (Not the same script than ADB).

To the rest of the community, no I'm not dead, and yes I'am still aiming to fix the GPU issue under Linux, but time is my ennemy.

Good Luck & Have Fun.

Panda

Laughlinez

unread,
Jan 29, 2014, 8:25:13 AM1/29/14
to apc-pico-...@googlegroups.com
Panda,

Thats as I thought, however my problem is getting any of these boards recognised as "usb device" by our 'host' laptops in order to use ADB in first place.
Our boards were new 'boxed' and came with US power supply, USB cable and backplate.
I was using correct USB0 after all, however, even on a newly unboxed board, using steps I outlined in first email I cannot get device recognised as USB from host.

Any Tips? I hope our boards are not foobar

In mean time, I will attempt direct sdcard image of Apricot.

--laughlinez

Royal Panda

unread,
Jan 29, 2014, 1:29:27 PM1/29/14
to apc-pico-...@googlegroups.com
My two cent's :

 - Try to switch the jumper whith the AC adapter unplug.

 - Try to turn ADB on after you switched the jumper.


As far as I remember, I have got one of my two 8750 which never came in device mode...

Good luck and have fun.

Panda

Laughlinez

unread,
Jan 30, 2014, 4:39:43 AM1/30/14
to apc-pico-...@googlegroups.com
Panda,

Switching the jumper with the ac adapter unplugged solved my problem for 3 of our boards. Properly grouding the 4th also brought it back.

I updated the wmtserver boot commands by hand as I could not get the shell script to execute within adb shell.
This has given me usb boot on all boards.

I have booted Apricot R5 on all 4 boards, (using 4 seperate sdcards) seems you cant just switch scdard from one to another without clearing dhcp manually.

We will use 2 of these boards headless, and I understand how to make a null vga / hdmi.
I understand Apricot R5 does not use hdmi anyhow (only vga) - is this correct?

Last question for now:
I booted the cyanogen android 4 image off of usb on two boards with hdmi connected - it came up, but hdmi was unuseable (scan issues).
Is hdmi not supported in this image?

Multiple thanks for you help. Power and jumper problems solved and 4 boards will go to a good use (at least 2 using R5).

--laughlinez

Royal Panda

unread,
Jan 30, 2014, 6:15:03 AM1/30/14
to apc-pico-...@googlegroups.com
Hi,

- First, Apricot R5 is using Tony Prisk kernel, so HDMI driver aren't packed in. It means no HDMI.
- Debian is using a file in order to always assign the same name to a network interface see here : http://www.debian.org/doc/manuals/debian-reference/ch05.en.html#_the_network_interface_name
That's why you got eth0 on the first one, eth1 the second etc...
- You could avoid the electronic trick to boot headless by fixing the framebuffer resolution in U-Boot. And this should also solve the 'scramble' screen of HDMI output when booting android.
- Finally : Android CyanogenMod 7.2 is based on android Gingerbread (2.3). When the GPU part will be fixed in the mainline kernel, maybe Android 4 will be usable.

See you,

Panda

Message has been deleted

pahowells

unread,
Jan 30, 2014, 6:28:08 AM1/30/14
to apc-pico-...@googlegroups.com
As stated, no hdmi on latest R5 image. I reall ybattle to get the R5 image to work properly. I switched back to Apricot R3 on my board and all is well - running a NAS drive and print server on it.
Reply all
Reply to author
Forward
0 new messages