Much digging, but what I worked out is this...
	
	
	
	
	
	
	
		
			
			
			
			
			
		
	
	
	
		
	
	
		
	
It returns a list of mount points. Simple and not limited to one card. It works on all the devices that I have tried.
			
			
			
				B4X:
			
		
		
		Sub SDCards As List
    Dim Result As List
    Result.Initialize
    Dim tr As TextReader
    tr.Initialize(File.OpenInput("/proc","mounts"))
    Dim line As String
    Do While True
        line = tr.ReadLine
        If line = Null Then Exit
        ' cols: dev mount type options ......
        Dim Col() As String = Regex.Split(" ",line)
        ' things to ignore
        ' put your false positive mount points here
        If Col(1).StartsWith("/dev") Then Continue
        If Col(1).StartsWith("/proc") Then Continue
        If Col(1).StartsWith("/sys") Then Continue
        If Col(1).StartsWith("/system") Then Continue
        If Col(1).StartsWith("/firmware") Then Continue
        If Col(1).StartsWith("/data") Then Continue
        If Col(1).StartsWith("/mnt/shell") Then Continue
        ' vfat is what we are interested in, but my nexus 5 also uses fuse
        If Col(2) = "vfat" OR Col(2) = "fuse" Then
            Dim s As String = Col(1)
            Result.Add(s)
        End If
    Loop
    tr.Close
    Return Result   
End Sub
	It returns a list of mount points. Simple and not limited to one card. It works on all the devices that I have tried.