O verdadeiro papel do adaptador USB-para-PS/2 incluído nos mouses da Microsoft
(devblogs.microsoft.com)- Nos primórdios do USB, os mouses da Microsoft frequentemente vinham com um pequeno adaptador verde que permitia conectar um USB Type-A como se fosse um plugue PS/2
- USB e PS/2 são protocolos completamente diferentes, portanto o adaptador por si só não convertia os sinais
- O adaptador não tinha circuitos internos; era mais próximo de um adaptador físico passivo, que apenas ligava pinos de um lado aos do outro
- A conversão real acontecia no próprio mouse, que detectava nos pinos sinais no estilo USB ou no estilo PS/2 e mudava seu modo de operação por conta própria
- É difícil usar como conversor universal um adaptador encontrado na gaveta; o funcionamento depende de haver, do outro lado, um mouse dual-bus
O que o adaptador USB-para-PS/2 fazia
- Nos primórdios do USB, muitos mouses da Microsoft vinham com um plugue USB na ponta do cabo e, junto, um pequeno adaptador verde que o transformava no formato de um plugue PS/2
- Esse adaptador não traduzia o protocolo entre USB e PS/2
- Os dois padrões são protocolos distintos, sem compatibilidade direta de nenhuma forma
Quem tratava a conversão era o mouse, não o adaptador
- O adaptador era um dispositivo puramente mecânico e passivo
- Conectava um conjunto de pinos a outro conjunto de pinos
- Não tinha circuitos internos
- Não tinha função de interpretação de sinais nem de conversão de protocolo
- A decisão real acontecia dentro do mouse
- O mouse detectava se estava recebendo nos pinos sinais parecidos com USB ou sinais parecidos com PS/2
- Conforme o resultado da detecção, o mouse mudava seu próprio modo de operação
- Por isso, a função de conversão dependia da implementação no lado do mouse, não do adaptador
Uma estrutura parecida com a de adaptadores de tomada
- Esse método é parecido com os adaptadores de tomada baratos que mudam o formato do plugue de energia entre países
- Adaptadores de tomada também não têm inteligência; apenas conectam fisicamente um tipo de plugue a outro
- A compatibilidade real fica a cargo do próprio aparelho ou do adaptador de energia dele
Por que é fácil confundi-lo com um conversor universal de mouse
- Mesmo que você encontre um adaptador USB-para-PS/2 desses em uma gaveta, não dá para considerá-lo um adaptador universal de mouse
- Como é uma peça que apenas muda a conexão física, ele só pode funcionar se o mouse conectado suportar os dois modos
- A conversão real ocorre no mouse dual-bus conectado do outro lado
Cuidados ao ver adaptadores semelhantes vendidos hoje
- Pelos resultados de busca na internet, ainda há pessoas fabricando adaptadores de mouse desse tipo
- Não fica claro se os produtos disponíveis para compra são adaptadores inteligentes, que traduzem os protocolos de sinal PS/2 e USB, ou adaptadores puramente mecânicos que pressupõem que o mouse é responsável pela conversão
1 comentários
Opiniões no Hacker News
Uau, isso me trouxe muitas lembranças. Lá por 2000 ou 2001, ganhei de presente um mouse óptico, algo que eu queria havia muito tempo porque jogar StarCraft com mouse mecânico era bem sofrido.
Claro que era um mouse USB, e meu computador só tinha PS/2. Comprei um adaptador, mas mesmo testando por bastante tempo com vários PCs e mouses, ele não funcionava de jeito nenhum.
No fim, levei a uma oficina de eletrônicos; eles abriram por dentro e me explicaram que era um adaptador falso, só com os fios ligados, sem nenhum circuito real de suporte a USB. Só agora entendi por que esse tipo de coisa existia; por um tempo, achei apenas que tinha comprado um adaptador falsificado.
Talvez a intenção fosse parecer que havia algo lá dentro para dar uma aparência “mais real”, mas, nesse caso, colocar até um CI de 1 centavo teria sido mais convincente, então ainda não consigo entender muito bem.
Uma vez tive uma conversa bem constrangedora com um vendedor da PC World.
Eu tinha recebido da empresa um servidor antigo aposentado para estudar em casa; o problema era que ele não tinha USB.
Quando disse que estava procurando um teclado PS/2, o funcionário disse que eles não vendiam isso, mas que eu podia usar qualquer teclado USB; expliquei que precisava de um teclado PS/2 porque não havia portas USB.
Depois de ir e voltar algumas vezes para falar com o gerente, ele acabou dizendo de novo que bastava usar USB; no fim, descobri que ele achava que eu queria comprar um teclado de PlayStation 2 e nunca tinha ouvido falar de PS/2.
Acho que em algum lugar tenho um mouse antigo que vinha com um adaptador PS/2-USB. Só vou lembrar se era um mouse PS/2 com adaptador PS/2-USB, ou um mouse USB com adaptador USB-PS/2, quando eu o tirar de onde está.
Mais detalhes e um contexto histórico interessante podem ser vistos aqui: https://superuser.com/questions/704920/how-to-determine-if-u...
Por volta de 2014, a grande maioria dos mouses e teclados oferecia suporte a protocolo duplo, mas parece que por volta de 2019 começaram a aparecer os primeiros relatos de dispositivos somente USB.
Muitos dos SoCs de mouse mais baratos provavelmente ainda são de protocolo duplo, porque continuam sendo produzidos do mesmo jeito desde quando foram projetados e funcionavam bem.
A explicação da pinagem e do método de detecção de protocolo está aqui: https://retrocomputing.stackexchange.com/questions/28288/how...
Tenho um sampler Roland S760 do começo dos anos 90. Uma das inovações da Roland nessa faixa mais barata foi permitir conectar um monitor e um mouse, tornando muito mais fácil cortar samples e programar patches, em vez de ficar olhando para a telinha do Akai S1000 da época ou para o display ainda menor de 2 linhas do S760.
O conector do mouse é MSX, hoje muito difícil de encontrar, então meu equipamento veio com um conector DIY MSX->PS/2. O mouse PS/2 que veio junto estava quase no fim da vida, e tentei trocá-lo por algo mais moderno, mas, na época, o único que eu conseguia encontrar era um mouse da MS com conector USB-PS/2 incluído. Liguei e ele mal funcionava; eu não entendia de jeito nenhum o motivo.
Quando finalmente encontrei um mouse PS/2 novo de estoque antigo, voltou a funcionar perfeitamente. Até ler este texto, eu não sabia por que não tinha funcionado.
O S760 é um sampler excelente. Não tem a complexidade de um motor de sintetizador completo, mas parece uma versão sampler do JD990, e ficou famoso porque o filtro digital multimodo do S760 virou parte do som característico do Daft Punk e de vários outros músicos.
Para usar dispositivos USB modernos em computadores retrô, é preciso um conversor ativo. Alguns anos atrás, fiz um para vários computadores.
https://github.com/dekuNukem/USB4VC
Há também um projeto mais recente, o HIDman, mas ele é exclusivo para PC.
https://github.com/rasteri/HIDman
O mouse Logitech G305 é de 1000 Hz, então configurei o ps2x2pico para forçar a taxa de polling do mouse a 100 Hz, deixando o cursor muito suave no Windows 98 mesmo sem programas como o PS2Rate. O rollover de N teclas do teclado Keychron S1 também funciona perfeitamente.
https://github.com/No0ne/ps2x2pico
Só de ver que o título e a URL eram de microsoft.com, eu tinha 99% de certeza de que seria um texto do Raymond Chen no Old New Thing
Seria bom se fizessem isso também neste caso. fortune.com é um bom exemplo: o blog é bem ruim, então agora na primeira página aparece algo como “fortune.com/blogs”, e não simplesmente fortune.com
Ainda tenho o teclado que eu usava no meu primeiro computador 386/33. Consigo conectá-lo ao meu Mac atual por meio de uma cadeia de adaptadores DIN5 -> PS/2 -> USB-A -> USB-C
Estou ansioso pelo dia em que poderei alongar ainda mais essa cadeia de adaptadores
Funciona até em arm64
Mesmo depois de cerca de 35 anos, ainda funciona muito bem e eu o uso todos os dias. Espero não precisar acrescentar outro adaptador à cadeia no futuro, mas vai saber
Teclados do fim dos anos 90 e começo dos anos 2000 também faziam algo parecido com frequência. O controlador suportava tanto PS/2 quanto USB, e o teclado vinha com um plugue PS/2 e um adaptador passivo
Por isso, para usar em computadores modernos um teclado PS/2 projetado antes da adoção do USB, como um Model M, é preciso escolher um adaptador PS/2-USB ativo que realmente converta o protocolo
Muitos teclados mecânicos gamer ainda suportam PS/2 por causa das interrupções mencionadas
Tenho pouca experiência, mas depurando algumas impressoras 3D antigas no Linux aprendi que o U de USB é mesmo quase “universal”: ele passa dados seriais para o sistema operacional, drivers e software processarem
O modo como adaptadores baratos de DisplayPort para HDMI funcionam é parecido: o adaptador em si é totalmente passivo
Muitos dispositivos com saída DisplayPort suportam modo múltiplo e podem alternar para emitir sinais HDMI ou DVI baseados em TMDS, em vez de pacotes DP. Essas portas às vezes têm o logotipo ++DP
Por isso é difícil encontrar adaptadores baratos de fonte HDMI para receptor DisplayPort: a inteligência necessária não está embutida no dispositivo de origem
Um monitor Dell antigo só suportava HDMI 1.3, então, para usar a resolução completa, era preciso usar a entrada DisplayPort ou dual-link DVI, e dispositivos modernos normalmente não têm nenhuma das duas. Esse dispositivo resolveu o problema e permitiu usar 2560x1440
DP->HDMI exige no mínimo algum circuito eletrônico, como um level shifter
Fugindo um pouco do assunto, há pouco tempo o teclado interno de um ThinkPad X1C 12ª geração relativamente novo parou de funcionar. Conectei um teclado USB e procurei no ring buffer do kernel Linux e em outros lugares algum erro que explicasse o problema
Para minha surpresa, o teclado interno não era USB, e sim i8042. Não sou da área de hardware, mas eu meio que presumia que hoje em dia tudo fosse USB. Pelo jeito, i8042 é o protocolo PS/2 mencionado no texto
Não encontrei nenhum erro, mas depois de reiniciar ele voltou a funcionar
Como o lado do teclado precisa de um controlador, também faz sentido não usar USB
Muitos ECs têm um bloco IP compatível com 8042 embutido para isso. Para o software, parece exatamente um teclado e mouse PS/2, mas a camada física pode nem existir mais. Laptops antigos que suportavam teclado e mouse PS/2 externos talvez tivessem uma interface PS/2 real
Se o teclado parou completamente, eu suspeitaria de um bug no firmware do EC ou de algum glitch aleatório