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 »

Novo firmware for MMjoy2 (ATMEGA32u4):
New update MMJOY2 [v20150626] https://sites.google.com/site/mmjoyproj ... skacivania
Support 64 buttons + 6 encoders, plus new features: "Timers" for encoders = try from 16-32ms, also new "Shift" button.
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

Apesar de já ter usado o firmware MMjoy (em Mjoy8 e 16, com programador LPT "homemade") não tinha usado o MMjoy2 e seu bootloader via USB.

A oportunidade surgiu ao receber a "missão" de salvar um pedal de leme que foi "estuprado" pelo dono com um pote de 250 gramas de vazelina... :o :lol: :rofl:

Image
http://s18.postimg.cc/d9jtomc3p/MMjoy2_rudder.jpg

O procedimento de gravar o firmware MMjoy2 num Arduino PRO Micro é simples e fácil - e ao mesmo tempo complicado, já que as instruções existentes são confusas, em Inglês e feitas por um Russo que não conhece bem a língua.

Diria que um marinheiro de primeira viagem poderia até achar que a placa estava defeituosa, pois apesar de já ter ajudado (virtualmente) alguns a fazer isso, tive que tentar várias vezes para pegar o fio da meada.

Fiz um PDF (anexo) tentando explicar melhor o processo.
MMjoy2 - Gravação (Flash) do firmware.zip
(1014.08 KiB) Downloaded 208 times
Last edited by 21_Sokol1 on 25 Jan 2016 12:58, edited 4 times in total.
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

Como o PRO Micro é bem "micro" (3.3 x 1.8 cm), sem pontos de fixação, fiz um suporte - usando plástico de uma caixa de CD e uma abraçadeira de Nylon, para prender a placa e o cabo USB, já que a tomada nele é delicada.

Image
image hosting 30 mb
Last edited by 21_Sokol1 on 25 Jan 2016 12:57, edited 1 time in total.
User avatar
40_Griffon
Ala
Ala
Posts: 1667
Joined: 17 Dec 2005 21:00
Location: Santos/SP

Re: MMJoy/MMjoy2

Post by 40_Griffon »

21_Sokol1 wrote:
A oportunidade surgiu ao receber a "missão" de salvar um pedal de leme que foi "estuprado" pelo dono com um pote de 250 gramas de vazelina... :o :lol: :rofl: .
:wasntme: HahAuauaha, quem será que fez isso? :rofl:
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

Atualizei o PDF - algumas imagens estavam muito ruins.
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

Dica sobre um problema do Windows - Controladores de jogos.

Quando setei o "joystick" (Rudder) no MMjo2 inicialmente coloquei 3 eixos:

Leme
rX
rY

Como para testar iria conectar só um HALL sensor no eixo do leme, e os eixos rX e rY "abertos" (sem nada conectados) poderiam atrapalhar, setei de novo como um joystick (Rudder) de apenas 1 eixo.

Testei OK no VKB Joy Test, no DIView e no CloD.

Mas no Windows Controladores de Jogos se selecionasse o "Rudder" e clicasse em propriedades dava "Não conectado"...

Depois voltei o "Rudder" para 3 eixos igual na primeira configuração e o Controladores de Jogos então reconheceu OK.

O que ocorre é que quando se faz a mudança do número de eixos, mas continua com a mesma "identidade": VID e PID o Windows não percebe esta mudança, e assim continuva a esperar um dispositivo de 3 eixos.

Se precisar fazer esta mudança de forma permante, faça o seguinte:

1 - No JoySetup clique em "Clear Register" - isso remove as informações de VID e PID para o "joystick" do Windows.

2 - E/ou use numeros diferentes para VID e PID quando mudar o numero de eixos.
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

Se gravar o firmware no PRO Micro é meio "enigmático", numa Teensy 2.0 é "the flash".

1 - Plugar a Teensy numa porta USB do do computador, com um cabo USB<>Mini USB.

Image

2 - O computador vai reconhecer como "dispositivo desconhecido" e um LED começa a piscar na Teensy.

3- Pressionar o botão de reset na Teensy (já tem o botão soldado na placa), o LED para de piscar e Teensy é reconhecida novamente, como um HID device.

4 - Abra o JoySetup.exe (do pacote MMjoy2).

5 - No JoySetup, em "Device list and configurations" localize um dispositivo com o nome:VID:16C0 PID:0478 () - estes numeros talvez variem.

Image

6 - Selecione este dispositivo e na aba "Firmware" aponte para o arquivo (do pacote MMJoy2): "Firmware_lufa_[MMJOY2.ATMEGA32U4].hex".

7 - No JoySetup, em "Chip" selecione "ATMega32U4", em "Bootloader type" selecione: Teensy2, em "Port(arduino)" deixe como foi detectado.

Image

8 - Clique em "Upload firmware" - uma janela DOS se abrira rapidamente.

9 - Agora, em "Device list and configurations" vai aparecer um novo dispositivo: "VID0000 PID:0000 MMjoy-reset(MMjoy2-20150727) <<< que é seu novo "controlador de joystick", porém esta "vazio", é preciso definir quantos eixos e botões terá, bem como dar-lhe uma "identidade": numéros de VID, PID, se quiser um nome diferente de MMjoy2. Selecione o novo dispositivo e configure estes parametros.

Image

10- No exemplo, foi setado apenas um eixo, usando o "Internal sensor", o pino FO da Teensy 2.0, com 14 bits de resolução (16.384 points), e este eixo foi assignado para a função "Throttle", o número de botões ficou em 0 (zero, já que era só teste), o novo controlador de josytick foi "batizado" como MJ-Teensy, VID: 8884, PID: 8884.
A seguir clicar em "Save settings to device". Após gravar uma nova janela abirar perguntando "Ok.Restart device?", clique em "YES".

Image

11 - O novo controlador de joystick aparecerá no Painel de Controle do Windows > Controladores de Jogos (joy.cpl), e esta pronto para ser usado.
-BOLELAS-
Posts: 59
Joined: 18 Jan 2013 17:07
Location: Portugal, Sintra

Re: MMJoy/MMjoy2

Post by -BOLELAS- »

Qual a diferença entre a teensy 2.0 e a Pro micro? Procurei no site da sparkfun e dizem que a teensy2.0 já não é produzida...
A teensy é exclusiva da PJRC store? Li que não era open source. Vale a pena a teensy 2.0 só pela facilidade de programar? Ou a dificuldade para programar a PRO-micro não é assim tão grande? (eu ainda não adequiri nenhuma placa mas tensiono fazê-lo em breve para iniciar os testes).

Estou tentado a encomendar este clone. http://www.ebay.com/itm/New-Pro-Micro-A ... 0972980117

Será que tem todas as funções que necessito, ou será que vou fazer asneira? Também, pelo preço dela, (sem portes) he he, o dano não é grande :P . Aguardo as vossas opiniões, Obrigado!
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

A Teensy 2.0 ainda tem na PJRC (acho que o frete é meio caro) e no eBay (frete grátis), ou pode usar a Teensy++2.0 que tem
mais pinos, permitindo controlar até 96 botões (matrix 12x8) - acima de 32 precisa de keymaper pois o Windows não "vê".

Não é mais difícil gravar o firmware na PRO Micro, o que tem que fazer a mais é instalar os drivers da porta COM Boootloader,
coisa de segundos, e depois acionar esta porta, que fica aberta por 8 segundos para inicar a gravação.

Apenas que as instruções existentes não eram detalhadas, mas se seguir o "tutorial" que postei aqui não tem erro.

Tem também o incoveniente que não tem botão de "reset" na placa, é preciso colocar dois fios na posição para usar
como tal, mas de qualquer forma terá que soldar as barras de conectores (inclusive na Teensy - acho que a PJRC tem
opções de virem soldados, a custo adicional) para usar depois, assim é só antecipar esta parte.

A vantagem das placas da Sparkfun é a qualidade da construção.

Mas para teste compre um "clone" Chinês da PRO Micro no eBay, ~5$, frete grátis.

De preferência este modelo - pois nele o conector mini-USB (que é frágil) tem 4 pontos de apoio (solda):

http://www.ebay.com/itm/Pro-Micro-ATmeg ... 2101aca3a1
Será que tem todas as funções que necessito, ou será que vou fazer asneira?
Com a PRO Micro pode controlar até 6 eixos e 32 botões (matrix 6x6), usando o firmware MMjoy2 a única diferença
prática entre os diversos modelos de placa Arduino é o número máximo de botões e eixos que é possível controlar, o que
é definido pelo número de pinos existente na placa.
-BOLELAS-
Posts: 59
Joined: 18 Jan 2013 17:07
Location: Portugal, Sintra

Re: MMJoy/MMjoy2

Post by -BOLELAS- »

Pelo preço que vi a Teensy++2.0 não vale a pena, numa situação em que precisasse mais botões ou eixos preferiria usar duas Pro-micro. Falando nisso, existe alguma maneira de usar duas placas Pro-micro e conectá-las ao PC com apenas um cabo de USB? Calculo que não dê para ligar apenas os fios das duas saídas de USB... Teria de usar um HUD de USB?
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

Sim, precisará de HUB USB, de preferência com fonte de alimentação externa.

E em geral a placa mãe de computador tem conectores internos para porta USB extras, porém falta o conector no gabinete, no caso compre um espelho com 2 ou 4 portas para ligar nestes tomadas internas.

http://assets04.webstorelw.com.br/tenan ... 1360687355
User avatar
32_Mariocar
Engrenado
Engrenado
Posts: 2717
Joined: 18 Jan 2005 21:00
Location: Rio de Janeiro

Re: MMJoy/MMjoy2

Post by 32_Mariocar »

Acho que esse tópico está muito bom, e com muitas informações importantes. O que vocês acham de transformar em tópico fixo?
SP!
Mariocar
User avatar
MadMax
Posts: 91
Joined: 21 Apr 2003 21:00

Re: MMJoy/MMjoy2

Post by MadMax »

Apoiado!
-BOLELAS-
Posts: 59
Joined: 18 Jan 2013 17:07
Location: Portugal, Sintra

Re: MMJoy/MMjoy2

Post by -BOLELAS- »

Oi! Preciso confirmar umas coisas. Comprei a placa que o Sokol indicou (pro-micro, pirata) para aplicar no novo throttle.
Quero saber quantos botões tenho disponíveis se utilizar os 6 eixos. (pergunto porque li que se usar menos eixos posso ter mais botões).

Consigo usar 32 botões? (desses 32 botões 10 vou usar para rotary encoders- 5 encoders)

Em 5 dos 6 eixos pretendo usar o sensor TLE5011. No restante um potênciometro deslizante.

Como vou deixar a electrônica para o final não queria ter surpresas desagradáveis de ter de eliminar botões ou eixos já depois de tudo montado.

Será que o Sokol pode dar umas dicas?

Desde já, muito obrigado.
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy/MMjoy2

Post by 21_Sokol1 »

6 Rows X 6 Columns = 36 - 4 do HAT > 32 botões.

Image
image hosting free no registration

BTW - A matrix de diodos deve ser igual dos Mjoy8/16 com os diodos nas colunas e suas listras apontando para o pino do botão/switch.
Post Reply