MMJoy/MMjoy2

Forum dedicado a Joysticks, HOTAS, Track-Ir, Freetrack, contrôles e cockpit's tipo "faça você mesmo", etc.
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

Destructorbr,

Bem vindo ao "DIY". :)

Em relação a sua pergunta inicial, sobre os 32 botões - que é o máximo utilizável no Windows, sem uso de keymappers:

Voce tem duas opções para ligar estes botões no Arduino e evitar que apertando 3 ou mais ao mesmo tempo apareça outro botão
aceso, fenomeno chamado "keyboard ghosting", comum em ligações em matrix, que são as ligações cruzando linhas, exemplo num teclado comum de computador.

Ligar com uma MATRIX de diodos ou usar um circuito "Shift Register".

Matrix significa combinar linhas x colunas - pinos especificos no Arduino, de 1x2 o que permite ligar 4 botões, a 6x6 que permite ligar os 32 mais 1 HAT (4 botões) = 36.

Acredito que este exemplo "desenhado", ligando 4 botões e 1 HAT explique isso melhor:

Image

Em resumo, numa matrix 6x6 cada linha é compartilhada em até 6 botões e cada coluna é compartilhada em até 6 botões.

Pode ser confeccionada uma placa (PCB) com os diodos e pinos para ligações - mas não precisa se ligar como no desenho acima, que é o ideal para começar.

"Shift Register" são placas adicionais com um circuito integrado CD4021B e resitores, cada uma capaz de controlar até 8 botões.
Na foto do MMJoy2 "pirata" logo acima é esta placa com 4 chips onde estão ligados os botões, switches e encoders.

A vantagem da placa "Shift Register" é conseguir ligações usando menos fios, conveniente num joystick com muitos botões, ex. HOTAS Cougar/Warthog que usam o sistema.
Destructorbr
Posts: 11
Joined: 16 Mar 2016 19:01

Re: MMJoy/MMjoy2

Post by Destructorbr »

Boa tarde sokol1, obrigado pela explicação.
em relação a esse matrix ter esse fantasma, com a simples adição dos diodos esse efeito some, e com isso pode se utilizar mais teclas ao mesmo tempo? todo o teclado matrix tem esse efeito? tipo, também poderia utilizar esse matrix num arduino normal e programar para quando acionar varios botoes?
outra pergunta que me deixou cismado, o que é um HAT? qual a função do mesmo?
obrigado novamente!
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

Isso mesmo, os diodos fazem a corrente elétrica circular apenas em um sentido, assim o botão "fantama" não aparece quando 3 ou 4 são apertados simultaneamente.

Sim, pode criar um códido para outra versão de Arduino (de preferência que tenha USB integrado), para controlar botões usando matrix.

Se não usar, tomando por exemplo o BU0836 do desenho, ficaria limitado a 12 botões ao invéz de 36.

HAT ou POV (point of view - ponto de vista) HAT é este controle direcinal no topo dos joysticks, que em geral controla a camera do jogo, caso não use mouse ou headtrack (TrackIR, Freetrack, EDTracker...).

O nome HAT - chapéu em inglês - vem do formato cônico dos primeiros HAT usados em aviões militares, lá pelo fim dos anos 40 para fins de trimagem, pois lembra o chapéu dos camponeses asiaticos.

Image

Em joysticks "burgueoise" (ex. Warthog) cada HAT diferente tem um nome baseado no formato, pode ser China, Boat, Castle, Valey...
Ecosta
Posts: 113
Joined: 23 Jun 2013 16:57

Re: MMJoy/MMjoy2

Post by Ecosta »

Sokol
Aproveitando a oportunidade do assunto, eu estava me atualizando no SIMHQ no posta do MMJOY e observei a atulização destas placas com shift register utilizando 02 chips compatíveis.
A minha dúvida ficou como realizar a ligação da placa shift register com os botões e com a placa arduino (Pro Micro ou a Teensy 2.00)

[]'s

Ecosta
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

Acho mais prático usar o CD4021B - é o mesmo usado no Tm F22/Cougar/Warthog, Cobra M-5/Mamba, até por ter em formato mais amigável para DIY - o outro, 74H... só tem em SMD.
Você conecta a placa do shift register com 5 fios:

Gnd
Miso
Sck <<< não tenho certeza... :P - É isso mesmo:
CS
+5v

Image

Os CD4021B são ligados em uns nos outros através dos pinos 9, 10 e 11.

https://www.arduino.cc/en/Tutorial/ShiftIn

Teoricamente não tem limite, não sei na prática...
Destructorbr
Posts: 11
Joined: 16 Mar 2016 19:01

Re: MMJoy/MMjoy2

Post by Destructorbr »

21_Sokol1 wrote:Isso mesmo, os diodos fazem a corrente elétrica circular apenas em um sentido, assim o botão "fantama" não aparece quando 3 ou 4 são apertados simultaneamente.

Sim, pode criar um códido para outra versão de Arduino (de preferência que tenha USB integrado), para controlar botões usando matrix.

Se não usar, tomando por exemplo o BU0836 do desenho, ficaria limitado a 12 botões ao invéz de 36.

HAT ou POV (point of view - ponto de vista) HAT é este controle direcinal no topo dos joysticks, que em geral controla a camera do jogo, caso não use mouse ou headtrack (TrackIR, Freetrack, EDTracker...).

O nome HAT - chapéu em inglês - vem do formato cônico dos primeiros HAT usados em aviões militares, lá pelo fim dos anos 40 para fins de trimagem, pois lembra o chapéu dos camponeses asiaticos.

Image

Em joysticks "burgueoise" (ex. Warthog) cada HAT diferente tem um nome baseado no formato, pode ser China, Boat, Castle, Valey...
Então em um arduino mega por exemplo eu não conseguiria usar mais que 12 botões?

Existem algum lugar que possa adquirir esse HAT?
Obrigado!
Ecosta
Posts: 113
Joined: 23 Jun 2013 16:57

Re: MMJoy/MMjoy2

Post by Ecosta »

Obrigado pela dica!
Tá ai algo a ser pesquisado e desenvolvido.
Á propósito: no post do MMJOY, você colocou a imagem "Teensy++2.0 support with 6x6 matrix"para sring layout. Eu fiquei interessado no esquemático para futuro porjeto... poderia, por gentileza, me repassar o esquemático?
Grato!!
[]`s

Ecosta
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

Destructorbr wrote: Então em um arduino mega por exemplo eu não conseguiria usar mais que 12 botões?
Depende do código que usar no Arduino Mega - se o código especificar escanear linhas e colunas, pode usar matrix de diodo igual no MMjoy2,Bu0836...

Exemplo: http://deadfrogstudios.com/warthogpit/i ... ontrollers
Existem algum lugar que possa adquirir esse HAT?
Até hoje só descobri poucos lugares, e só modelos para avião real - alguns pode usar em "josytick".
Na Aircraftspruce - para aviação experimental:

http://www.aircraftspruce.com/catalog/e ... ccess5.php

E na Mouser/Digikey para mercado industrial/militar, preços de 35 a 1000 e tantos dolares.

Ex. CH/Apem: http://www.digikey.com/product-detail/e ... ND/2063280

Ou da Otto: http://www.mouser.com/OTTO/Electromecha ... ?P=1yyh514

Tem uma página na Russia que também vende, mas não lembro o link.

Talvez se cadastrando na Thrustmaster e alegando ter um Cougar pode ser que vendam destes - o frete minímo é 32 Euros:

http://cougar.flyfoxy.com/warranty_parts.php

A solução para DIY é comprar "directional switch" de 4 ou 5 vias no eBay, tipo esse:

http://www.mouser.com/ProductDetail/ALP ... qqIQkRI%3d

E imprimir em 3D o "chapéu". O Debolesis tem alguns modelos na Shapeways:

http://www.shapeways.com/shops/debolestis

Se quiser o "chapeu Chinês" e não tiver ai é só pedir o Debolesis que ele desenha.
Ele cobra só 1 dolar por peça impressa.

BTW - A Shapeways trabalha com impressoras 3D profissional, imprime inclusive em metal.
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

Ecosta wrote: Á propósito: no post do MMJOY, você colocou a imagem "Teensy++2.0 support with 6x6 matrix"para sring layout.
É um suporte para a Teensy++2.0 com matrix de 6x6 e entradas para eixos analógico e digital, para confecção DIY. Anexo.

BTW - Para abrir precisa do Sprint-Layout ou Sprint-Layout Viewer.
Attachments
Teensy++2.0.zip
(38.58 KiB) Downloaded 248 times
Ecosta
Posts: 113
Joined: 23 Jun 2013 16:57

Re: MMJoy/MMjoy2

Post by Ecosta »

Valeu sokol

Obrigadão

[]`s

Ecosta
Destructorbr
Posts: 11
Joined: 16 Mar 2016 19:01

Re: MMJoy/MMjoy2

Post by Destructorbr »

Boa tarde, depois de alguns meses consegui finalizar minha buttonbox com a MMjoy2, depois de ver funcionar a prototipo e realizar alguns testes percebi uma situação, espero que possam me tirar essa dúvida, quando aciono um botão "push button"ou uma chave alavanca, o botão virtual não fica acionado o tempo todo, ele apenas dá um pulso e depois desliga, teria como quando eu manter o botão fisico acionado, o botao virtual também permanecer acionado?
vlw galera!
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

Não lembro direito, mas se estiver testando no JoySetup é assim mesmo.

Testa no Game Controllers do Windows - digita joy.cpl no iniciar e veja se o botão ficará aceso com a chave alavanca ligada.

A maioria dos comandos em jogos é feita para responder a um pulso, não precisa, por exemplo, ficar segurando a tecla G o tempo todo para o trem de pouso ficar em cima ou embaixo. Alías isso acaba causando problemas, tantas teclas apertadas e mantidas depois geraria comandos fantasma.

Dependo em que quer usar.
Destructorbr
Posts: 11
Joined: 16 Mar 2016 19:01

Re: MMJoy/MMjoy2

Post by Destructorbr »

21_Sokol1 wrote:Não lembro direito, mas se estiver testando no JoySetup é assim mesmo.

Testa no Game Controllers do Windows - digita joy.cpl no iniciar e veja se o botão ficará aceso com a chave alavanca ligada.

A maioria dos comandos em jogos é feita para responder a um pulso, não precisa, por exemplo, ficar segurando a tecla G o tempo todo para o trem de pouso ficar em cima ou embaixo. Alías isso acaba causando problemas, tantas teclas apertadas e mantidas depois geraria comandos fantasma.

Dependo em que quer usar.
Fiz isso e no game controllers dá só um pulso, no caso eu preciso que a tecla fique pressionada por exemplo num freio, oi algo que necessite ficar um tempo acionado, que no caso seria apenas uma tecla por vez.... será que isso poderá ser feito?
obrigado.
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

O Troll do SimHQ esta montando este "multi lever throttle" baseado num Arduino/MMJoy2.

As alavancas de metal com suporte para rolamentos são cortadas a laser pelo Dvik (Ukrania).
O PCB de suporte com matrix de diodo para o Arduino foi desenhado pelo construtor - sem nenhuma
experiência prévida nisto (dei umas dicas ;) ) - e encomendado num fabricante online, bem como o PCB dos GMR TLE501x.

Switches, encoders, etc. by China.

Image
http://i1280.photobucket.com/albums/a49 ... gpjsg5.jpg

Image
Image
http://simhq.com/forum/files/usergals/2 ... nder_2.jpg

http://simhq.com/forum/ubbthreads.php/t ... ost4266967
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

Ficou com um bom visual.

Image
Post Reply