So, if you search across multiple sites you will see that some
owners have had difficulty with connecting their Android phones to their car via USB. I believe
I have the answer.
To fully tackle this takes a bit of context. Gen1 sync runs Windows Mobile Automotive 7.0, which supports USB synchronization with iOS, USB mass storage, and MTP (media transfer protocol).
Older Android Phones can be slaved as a USB mass storage device -- that is, its system files is completely transparent to the host machine into which it's plugged. This serves as a security risk -- the host machine can potentially corrupt the contents of the device.
Modern Android devices (post kit-kat) allow for its content to be explored through media-transfer protocol. In this instance, the device acts as a barter between its contents and the host computer. When you plug the device into the host, the host asks for the files and the device sends a list of its files. Rather than the host reading/writing directly onto the device's storage, it asks
for the file to be read, and the device will serve the file to the host. Or, the host can ask for a file to be written or deleted, and the device carries it out. This means, therefore, the device's file system does not
have to be compatible with that of the host. Ext4 and exFAT storage on Android devices can be served to a host that may not understand the file system, via MTP.
Through my experimentation with Gen 1 Sync 4.1.2, 4.4, and 4.6, it appears that the older Gen1 Sync ignores
external SD cards. On my OnePlus X, it has an external SD card slot, as well as internal storage. Older versions only see and index the internal storage. In both cases, the entire system's file list is first read.
To get older Gen1 Sync to index MP3 files on the SD card is possible
, and in fact I've been doing it. What you do is create a symlink
-- essentially, any queries to that folder is automatically forwarded to another location. Using an app like FolderMount, you can forward all queries to a specific "Music" folder in internal storage to the external storage. In this manner, I was able to index approximately 5500 songs.
To note, this is relevant only to phones on kitkat/lollipop with an external SD card slot.
The newer Gen1 Sync (v4.6) behaves a bit differently. It was able to index the contents of both the internal storage, and the external SD. The advantage is that you no longer need to create a Symlink. But the drawback is that through seeing the entire contents of the phone, I think exceeds the buffer of the Gen1 Sync system -- the result is that the files are all indexed, but the ID3 tags are not populated at all. In fact, when I left only 20 MP3's on my SD card, it still failed to populate the ID3 tags -- maybe because I have thousands of other files on my SD card.
It should also be noted that the newer Sync is actually how the host computer is supposed to function -- if the phone serves up both partitions, the host device should be looking through both as well. The fact that the older sync iterations ignores
the SD card is actually an error, AFAIK
Unfortunately, this also implies that for those who have large phones with a lot of music as well as other files, this will likely overwhelm the Gen1 Sync system.
Thus, if you have an Android phone and want to be able to USB-sync, do NOT upgrade to 4.6. However, there are other drawbacks to v4.4 (unstable BT) that really means, the best is to stay at 4.1.2. It's not worth the slight upgrade of displaying track information through Bluetooth, IMHO.
The only potential solution, which I haven't found out whether exists yet or not, is an app on the Android side that can restrict what the host sees via MTP. If an Android app can toggle MTP restriction to a select (music) folder only, then it should expedite and improve reliability of indexing