Windows 10 shows "Could not recognize device " when plugged in upsquared through OTG

Hello ,
I have the Up squared 8GB memory / 64 GB storage version.
Problem: Windows 10 shows "Device malfunction, Could not recognize" when plugged in the Up squared board through otg.
Steps: Following steps are performed to use up-squared as gadget mass storage device and to access it from windows 10
1 In bios the OTG device mode is already enabled.
2 In terminal , I ran following commands,
dd bs=1M count=4 if=/dev/zero of=gadget_storage
fdisk -u gadget_storage
- pressed "x" for expert mode
- pressed "s" and entered 8 for 8 sectors
- pressed "h" and entered 1 for 1 head
- pressed "c" and entered 1024 for 1024 cylinders
- pressed "r" to get out of xpert mode
- pressed "n" and then "p" for primary
- Entered the default value to select the partitions and then First sector and Last sectors
- pressed "t" and and pressed "7" to select file system as NTFS
- pressed "w" to save the partition table.
losetup -o512 /dev/loop0 gadget_storage
*// -o 512 setting the byte offset (First sector number[1 in my case] * 512 = 512)
mkfs.ntfs -p 1 -S 8 -H 1 /dev/loop0 8191
*// p sets starting sector number which is 1 , S represent sectors per track which i selected as 8 , H as heads and 8191
*// reperesent total sectors .
losetup -d /dev/loop0
*// detaching the backing store file from loop device
modprobe g_mass_storage stall=0 file=gadget_storage
Connected the upsquared to windows 10 host machine while OTG cable
Problem : windows 10 shows , Device malfunctioned , could not recognize the usb device.
However , I could successfully detect the mass storage in windows 7 and linux ubuntu host systems ,
Could somebody please help me understand what could go wrong with windows 10.
Thank you
Answers
-
@ccalde
As you said , I have set up a new discussion here,
I want to mention one thing is that i have installed ubuntu 16.04 following the steps mentioned on https://wiki.up-community.org/Ubuntu
Now i have configured the Upsquared board in Device mode OTG and created a mass storage using the above steps.
The problem is when I connect the board to windows 10 host machine through otg , I get a notification on my windows laptop, "Windows can not recognize the device or malfunctioned" -
Hi @vini_gajjar
I think your issue is with the format for Windows.
Please, try the next instructions to reformat your UP2 device as mass storage to be detected by Windows:
https://wiki.up-community.org/Serial_console#Storage_device -
Friends, I could solve this issue which I think may not be the only way to solve it.
I downloaded the kernel source, accessed the g_mass_storage.c>
I modified the device speed mentioned in the driver description [USB_SPEED_SUPER to USB_SPEED_HIGH]
built the module and copied it in /lib/modules//kernel/drivers/usb/gadget/
Loaded the module using modprobe and now can access the device from Windows 10.
I did this as i doubted the stability and recognition of otg device [up squared] at usb 3.0 speed.
I could see that the enumeration process always used to fail due to no descriptor values received from upsquared when requested by host.
Categories
- All Categories
- 105 Announcements & News
- 54 Product News - New Product/Product Change Notice/ End-of-life
- 185 Welcome Developers!
- 55 Unboxing & Project Sharing
- 48 Tech Updates
- 693 UP Products
- 11 UP 7000
- 1 UP Squared i12
- 10 UP Xtreme i12
- 11 UP Squared Pro 7000
- 1 UP Element i12 Edge
- 19 UP Squared V2
- 59 UP 4000
- 24 UP Xtreme i11
- 35 UP Squared 6000
- 60 UP Squared Pro
- 143 UP Xtreme
- 837 UP Squared
- 1.4K UP Board
- 89 UP Core Plus
- 222 UP Core
- 3 UP Xtreme Lite
- 44 UP AI Edge
- 216 Starter Kits & Peripheral