Opções ftdibus.inf. Dispositivos de tecnologia futuros International Ltd. Aplicativo Nota An_107. Opções avançadas do driver

5. Opções ftdibus.inf.

Algumas opções de configuração padrão são configuráveis ​​através de ftdibus.inf. Esta seção descreve as opções disponíveis e como implementá-las.

Ajustando a contagem de repetição de tubos de reset

Em alguns casos raros, pode ser necessário aumentar o número de vezes que o driver tenta redefinir um tubo USB no qual ocorreu um erro, por exemplo, em ambientes barulhentos em que os erros USB podem ocorrer.

O valor padrão para a contagem de repetição do tubo de reset é 50. Este valor padrão pode ser alterado no arquivo ftdibus.inf editando ou incluindo o seguinte fragmento.

[Ftdibus.nt.addservice]
Addreg = ftdibus.nt.addservice.addreg [ftdibus.nt.addservice.addreg] HKR, parâmetros, “RetryresetCount”, 0x00010001,100
Neste exemplo, a solicitação de tubulação de reset é definida como 100. Esse valor é mantido na chave do Registro localizada em:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ FTDIBUS \ Parameters \ RetryresetCoun T

Usando IDs de localização.

Em algumas áreas de aplicação, pode ser desejável instalar dispositivos por local físico em vez de número de série. Nessas instâncias, isso pode ser realizado usando a entrada dos Locídicos no arquivo INF do Driver.
O driver usa locídeos para definir o conjunto de portas USB suportadas. Pode ser usado em sistemas que exigem apenas determinadas portas USB disponíveis, talvez em conjunto com MaxDEVs. O comportamento padrão é que todas as portas USB são suportadas. O padrão pode ser substituído, incluindo Locids na seção Chave de Serviço Ftdibus.inf.

[Ftdibus.nt.addservice]
Addreg = ftdibus.nt.addservice.addreg [ftdibus.nt.addservice.addreg] HKR, parâmetros, “Locados”, 1,21,00,00,00,00,00,00,00,00,00,00,00,00, 00,00.
Neste exemplo, infrações de arquivos inf, três portas USB são suportadas. Localização ID 0x00000021 Representa o controlador de host 1 Porta 1. ID de local 0x00000032 Representa o controlador do host 2 Porta 2.
ID de localização 0x00000011 Representa o controlador do host 0 Porta 1. Este valor é realizado na chave do Registro localizada em
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ FTDIBUS \ Parameters \ Locids

Note que a definição de Locais alterará radicalmente o comportamento do motorista; Entre em contato com o FTDI.

Se você acha que tem que mudar os locais.

Os IDs de localização podem ser obtidos usando a versão mais recente do Utilitário USBView disponível na seção Utilitários do site da FTDI. Uma nota de aplicativo no local IDS AN232B-07 Configurando os drivers VCP do FTDI para usar o ID do local também está disponível.

O USBView pode ser configurado para mostrar IDs de localização selecionando Opções> IDs de localização. A tela disparou abaixo mostra um PC com um hub conectado à localização 0x0000002a e dispositivos conectados nos locais 0x00000019 e 0x00002A3.

Figura 5.1 Vista USB

Figura 5.1 Vista USB

As entradas INF para os dispositivos conectados a estas portas seriam [ftdibus.nt.addservice.addreg] HKR, parâmetros, “Locids”, 1.19,00,00,00,00,2a, 00,00,00
Por favor, note que a entrada INF deve terminar com uma entrada 00 adicional para encerrar a lista de ID de localização.
Se uma tentativa for feita para instalar um dispositivo em um local que não seja suportado, um erro de código 10 (“Este dispositivo não pode iniciar”) é gerado para o novo dispositivo.

Observe que os IDs de local são representados no campo Locídicos como 4 bytes hexadecimais e em byte invertidos
pedido.

Nota também que, embora em controladores host USB sejam indexados de 0 e portas de 1, os IDs de local são calculados ajustando o número do controlador do host para que ele seja indexado de 1

Limitando o número de portas COM que podem ser instaladas

O número de portas COM Virtual FTDI que podem ser instaladas em um sistema podem ser limitadas definindo o parâmetro MaxDEVS. MaxDevs padroniza para 0, o que significa que o recurso é desativado e o driver sempre tentará criar uma porta COM. O padrão pode ser substituído, incluindo um valor máximo maxdevs na seção de tecla de serviço ftdibus.inf.

[Ftdibus.nt.addservice]

Addreg = ftdibus.nt.addservice.addreg [ftdibus.nt.addservice.addreg] hkr, parâmetros, “maxdevs”, 0x00010001,3
Neste exemplo, o número máximo de dispositivos é definido como 3. Esse valor é mantido na chave do Registro localizada em
HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ FTDIBUS \ Parameters \ MaxDevs
Se uma tentativa for feita para instalar mais do que dispositivos MaxDEVs, um erro de código 10 (“Este dispositivo não pode iniciar”) é gerado para o novo dispositivo.
Observe que a configuração de MaxDevs para um valor diferente de zero alterará radicalmente o comportamento do driver; Entre em contato com o FTDI se achar que tem que mudar a MaxDevs.

Substituir a configuração do driver EEPROM

No caso se dispositivos FT232R, FT245R e FT2232, o driver lerá o dispositivo EEPROM para determinar se deseja expor uma porta COM ou não. Os dispositivos anteriores da série B e AM não possuem uma configuração EEPROM para o tipo de driver, portanto, o padrão para instalar uma porta COM. Esse recurso pode ser desligado e a escolha do driver para carga pode ser feita por meio de uma configuração no arquivo de instalação.

Para uma instalação padrão, as seções a seguir podem ser adicionadas ao ftdibus.inf para substituir a configuração EEPROM e carregar o driver VCP:
[Ftdibus.nt.hw] addreg = ftdibus.nt.hw.addreg [ftdibus.ntamd64.hw] addreg = ftdibus.nt.hw.addreg [ftdibus.nt.hw.addreg] HKR ,, “CONFIGDATA”, 0x00010001, 4.
Bit 2 do parâmetro ConfigData determina o driver a ser carregado: Se estiver definido como 1, o driver VCP será carregado (como no exemplo acima); Caso contrário, apenas o driver D2XX é carregado. Portanto, adicionando as seções acima ao arquivo de instalação e, em particular, configurando o valor do ConfigData para 4, fará com que o driver VCP seja carregado, independentemente das configurações do EEPROM.

Este método pode ser estendido para o dispositivo Dual Channel FT2232. Nesse caso, novas seções devem ser criadas para cada canal para permitir que os canais sejam configurados e instalados separadamente. Os fragmentos a seguir mostram as alterações adicionais necessárias para configurar o canal A apenas para carregar o driver D2XX e o canal B para carregar o driver VCP.

[Ftdihw]
% USB \ vid_0403 & pid_6010 & mi_00.devicedesc% = ftdibusa, USB \ vid_0403 & pid_6010 & mi_00
% USB \ vid_0403 & pid_6010 & mi_01.devicedesc% = ftdibusb, USB \ vid_0403 & pid_6010 & mi_01 [ftdihw.ntamd64]
% USB \ vid_0403 & pid_6010 & mi_00.devicedesc% = ftdibusa.ntamd64, USB \ vid_0403 & pid_6010 & mi_00
% USB \ vid_0403 & pid_6010 & mi_01.devicedesc% = ftdibusb.ntamd64, USB \ vid_0403 & pid_6010 & mi_01 [ftdibusa.nt]

CopyFiles = ftdibus.nt.copy, ftdibus.nt.copy2 addreg = ftdibusa.nt.addreg [ftdibusa.ntamd64]
CopyFiles = ftdibus.ntamd64.copy, ftdibus.ntamd64.copy2, ftdibus.ntamd64.copy3 addreg = ftdibusa.nt.addreg
[Ftdibusa.nt.hw] addreg = ftdibusa.nt.hw.addreg [ftdibusa.ntamd64.hw] addreg = ftdibusa.nt.hw.addreg [ftdibusa.nt.hw.addreg] HKR ,, “ConfigData”, 0x00010001, 0 [ftdibusa.nt.services]

Addservice = ftdibus, 0x00000002, ftdibus.nt.addservice [ftdibusa.ntamd64.services]

Addservice = ftdibus, 0x00000002, ftdibus.nt.addservice [ftdibusb.nt] copyfiles = ftdibus.nt.copy, ftdibus.nt.copy2 addreg = ftdibusb.nt.addreg
[Ftdibusb.ntamd64] copyfiles = ftdibus.ntamd64.copy, ftdibus.ntamd64.copy2, ftdibus.ntamd64.copy3 addreg = ftdibusb.nt.addreg
[Ftdibusb.nt.hw] addreg = ftdibusa.nt.hw.addreg [ftdibusb.ntamd64.hw] addreg = ftdibusa.nt.hw.addreg [ftdibusb.nt.hw.addreg] HKR ,, “CONFIGDATA”, 0x00010001, 4 [ftdibusb.nt.services]

Addservice = ftdibus, 0x00000002, ftdibus.nt.addservice [ftdibusb.ntamd64.services]
Addservice = ftdibus, 0x00000002, ftdibus.nt.addservice

Observe que o valor do ConfigData é definido como 0 para o canal A (D2XX) e o valor do configData é definido como 4 para o canal B (VCP) para obter a configuração necessária. Claro, se o ConfigData não estiver incluído no arquivo de instalação, as configurações do EEPROM determinarão qual driver é carregado.

O parâmetro ConfigData é realizado no registro sob a chave

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControls et \ enum \ usb {vid do dispositivo, pid e interface} {número de série} \ DeviceParameters \ configdata

A porta COM também pode ser suprimida após a instalação através da guia Avançado da página de propriedades do conversor de serial USB, que está disponível através do Gerenciador de dispositivos.

Tempo limite de USB.

O tempo limite USB é o tempo máximo em milissegundos que uma solicitação USB pode permanecer em circulação. É improvável que isso precise ser alterado do valor padrão de 5000ms.

Este tempo limite USB (em milissegundos) é configurável através do arquivo Ftdibus Inf nos fragmentos INF mostrados abaixo:
[Ftdibus.nt.hw] addreg = ftdibus.nt.hw.addreg [ftdibus.ntamd64.hw] addreg = ftdibus.nt.hw.addreg [ftdibus.nt.hw.addreg]
HKR, “USBTimeout”, 0x00010001,5000
que corresponde à entrada do registro

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Enum \ USB {DISPOSITIVO VID, PID e
Interface} {número de série} \ DeviceParameters \ usbtimeout
O valor padrão para o tempo limite USB é de 5 segundos (5000ms).

Desativar Escreve EEPROM.

Em alguns casos, pode ser desejável desativar a capacidade de escrever no dispositivo EEPROM. Isso pode ser realizado através de um bit configData no arquivo Ftdibus Inf.
O driver pode ser feito para ignorar quaisquer solicitações de gravação EEPROM, definindo bit 0 do campo ConfigData, conforme mostrado no fragmento INF abaixo:
[Ftdibus.nt.hw] addreg = ftdibus.nt.hw.addreg [ftdibus.ntamd64.hw] addreg = ftdibus.nt.hw.addreg [ftdibus.nt.hw.addreg]
HKR, “CONFIGDATA”, 0x00010001,1
que corresponde à chave do registro
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Enum \ USB \ {dispositivo vid, pid e interface} \ {número de série} \ DeviceParameters \ configdata

Suspensão seletiva USB.

O driver de MDL suporta suspensão seletiva USB, um recurso que permite ao sistema suspender dispositivos que não estão em uso e, assim, reduzir o consumo geral de energia. Suspensão seletiva USB é controlada através de bit 5 do parâmetro CONFIGDATA e o valor SSidletimeout (em milissegundos) no arquivo ftdibus.inf.
Para uma instalação padrão, as seções a seguir podem ser adicionadas ao ftdibus.inf para ativar a suspensão seletiva:

[Ftdibus.nt.hw] addreg = ftdibus.nt.hw.addreg [ftdibus.ntamd64.hw] addreg = ftdibus.nt.hw.addreg [ftdibus.nt.hw.addreg]

HKR ,, “CONFIGDATA”, 0x00010001,0x20
HKR, “SSidletimeout”, 0x00010001.10000

Este fragmento de arquivo INF mostra a suspensão seletiva habilitada e o valor de tempo limite ocioso definido para 10 segundos.
Esses valores são mantidos no registro sob esta chave:

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ enum \ ftdibus {dispositivo vid, pid e número de série} \ 0000 \ Device Parameters
Nota: Se definir suspensão seletiva para a camada de barramento do driver, não deve ser definida na camada de porta (consulte a seção 6.9)

Última atualização em fevereiro 16, 2024 por driverbr

Informações adicionais

Se você tiver problemas para instalar drivers ou outro software para o seu dispositivo (impressora, scanner, monitor, teclado, etc.), informe-nos o modelo do seu dispositivo e a versão do seu sistema operacional (por exemplo: Windows 11, Windows 10 64-bits, Windows 8 64-bits, etc.) e tentaremos ajudá-lo. Escreva para nós..

Localizar as informações do sistema operacional no Windows

Localizar as informações do sistema operacional no Windows 11

Se você não conseguir encontrar drivers (software) para os sistemas operacionais Windows 11, Windows 10, Windows 8, poderá instalar drivers antigos para os sistemas operacionais Windows 7 e Windows Vista. Na maioria dos casos, esses drivers são compatíveis com sistemas operacionais mais recentes, são instalados normalmente e não há problemas.

Como descobrir qual versão do sistema operacional está instalada no seu dispositivo Mac. No menu Apple, no canto superior esquerdo da tela, selecione Sobre este Mac. Você deverá ver o nome do macOS, como macOS Sonoma, seguido pelo número da versão. Se também precisar saber o número de compilação, clique no número da versão para exibi-lo.

instalar driverComo instalar o driver se não houver um arquivo setup.exe e como instalar o driver usando o arquivo .INF. Nesse caso, abra o arquivo baixado que deve conter o driver e use o arquivo .INF para instalar. Neste artigo, informaremos e mostraremos como instalar um driver usando um arquivo .INF.
Software para computadorSoftware essencial para qualquer computador. Se você comprou um novo computador ou reinstalou o sistema operacional, nesta página do site você encontrará todos os softwares necessários e as instruções para instalá-los. Software para sistemas operacionais: Windows 11, Windows 10, Windows 8.1, Windows 7, Vista, XP.
software de scannerSe você não conseguir encontrar um software de scanner ou não souber como usar o scanner para digitalizar documentos e fotos. Esse problema ocorre porque algumas impressoras, scanners e multifuncionais têm apenas drivers, mas nenhum software específico para gerenciar o scanner.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *