MMJoy/MMjoy2

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

MMJoy/MMjoy2

Post by 21_Sokol1 »

ATENÇÃO - devido a obsolência do ATMEGA8/16/32/168/328 (USB 1.0 por software, baixa frequência de operação) o último firmware do MMJoy com suporte a estes chips é o [v20140528] de 28.05.2014.

No lugar desses ATMEGA8/16/32/168/328 (USB 1.1) use as baratas placas ARDUINO Leonardo PRO Micro/Teensy, etc, baseadas no ATMEGA32u4 (USB 2.0 por hardware) e o firmware MMjoy2, vide postagem na sequência.

O custo de uma placa PRO Micro no eBay é praticamente o mesmo de um chip ATMEGA8/16...328 por aqui, assim não é mais vantajoso montar a placa
.

Página do firmware MMJoy2 (Em Russo - compreenssível em Inglês pelo Google Translator.

> https://sites.google.com/site/mmjoyproject/

Tópico original - obsoleto.
O MMJOY é um novo firmware para as placas controladores de joystick montadas (D.I.Y.) segundo o antigo (2004) projeto Mjoy ou Mjoy 16 ou para as placas protótipos (estilo Arduino) METABOARD e AVR USB MEGA16.

Este firmware não é restrito aos microcircuitos AMTEL ATMEGA8 ou 16 do projeto Mjoy original, pode usar o ATMEGA 32, ATMEGA168, ATMEGA328 e cristal de 12, 16 e 20 MHZ.

O uso de cristal de maior frequência, associado a drivers HID modificados permite a transmissão de dados entre o controlador e o computador acima de 300 HZ.
O Mjoy16 original devido a frequência de 12 MHZ e a grande quantidade de botões (112) a monitorar é lento neste quesito.

Tambem para melhorar a taxa de transmissão o novo firmware restringe o numero de botões para 52 (48 botões +HAT).

A página do projeto MMJoy esta em Russo, mas é fácil de entender em Inglês usando o Google Translator.

https://sites.google.com/site/mmjoyproject/

O diferencial destes novos firmware é permitir personalizar o controlador através de um Software chamado "Configurator".

Quer um controlador de apenas 3 eixos e 0 botões para usar num pedal de leme?

É só desabilitar no Configurator os demais eixos, os botões e HAT e salvar na memória do controlador, o que é feito através do cabo USB.

O nome do seu "joystick" pode ser o que quiser - limitado a 10 caracteres.

Permite definir o numero de HID e VID do "joystick" fazendo com o mesmo seja visto antes ou depois de outros joysticks instalados no computador.

Exemplo - um Mjoy montado as uns 5 anos, regravado com o firmware MMJoy, com o HID/VID definido para ser visto após um Saitek Cyborg e o nome para MMjoy (achei Sokol1 meio bocó :P :lol: ).

http://i42.tinypic.com/ieh0jl.jpg

Como o Windows "vê" joystick com um máximo de 8 eixos, 32 botões e HAT o Configurator permite dividir o MMjoy (51)em dois josyticks virtuais, veja na foto acima a direita, em baixo.
Um com 6 eixos, 32 botões e HAT
Outro com 2 eixos, 16 botões.
Assim evita-se o uso de keymapper para "ver" os botões acima de 32.

Nota:HAT2, 3, 4 são habilitados apenas para o ATMEGA8.

O Configurator permite inversão dos eixos, e também ativar o modo "ZOOM" nos eixos, esse modo quando ativado - pressionando um botão - divide o movimento da alavanca do josytick por um número definido, exemplo 2, permitindo um controle mais preciso.
Um exemplo típico seria controle de mísseis/radar em simuladores DCS.

Ou desativar a resposta de um eixo ao pressionar um botão, mesmo que contine a mover a alavanca.
Exemplo de uso, trimar o DCS Ka-50 Black Shark em voo nivelado.

Permite também definir se um eixo vai ser auto calibrado ou não ao plugar o controlador no micro.

O botões podem ser configurados como momentâneos (tipo tecla de teclado), como toggle switch (alavanca) - o botão definido como ON para o toggle switch apenas executa a função ON, a OFF deve ser executada por outro.

Permite tambem simular toggle switch existente no painel do simulador usando botões momentâneos (sequencialmente).

No momento não a suporte para encoder, mas o desenvolvedor Mega_MOZG_13 disse estar trabalhando nisto.

A última novidade deste firmware é o suporte a eixo digital, através do integrado ADC MCP3201 que converte o sinal analógico do potênciometro, sensor HAL, ou Magneto Resitor em sinal digital.

https://mmjoy.googlecode.com/svn/wiki/e ... cp3201.png
https://mmjoy.googlecode.com/svn/wiki/e ... onnect.png
Como recomendação básica para o Mjoy8 usar este esquema elétrico (Mercury) ao invés dos antigos Mindaugas/LazyCamel.
https://mmjoy.googlecode.com/svn/wiki/e ... 11plus.png

O eixo no modo digital (a exemplo dos joystick, pedal de leme VKB) permite o uso de cabos longos - até 250 cm - sem que o eixo apresente ruído excessivo, alem de maior estabilidade no sinal.

Neste tópico da Wiki do MMJoy tem um intessante teste com sensores HALL e Magneto Resistor*.

https://code.google.com/p/mmjoy/wiki/ExtenralADC

Exemplo, o Magneto Resitor KMZ41 + MCP3201 montados numa protoboard.

https://mmjoy.googlecode.com/svn/wiki/e ... res1_t.png
Esquema para montar o KMZ41 http://www.g0l.ru/content/1/imgs/kmz41shematics.gif
Exemplo - comercial - de uso: http://www.g0l.ru/blog/n3690

O readme do Configurator em Inglês fui eu (e o GT) que traduzi, eventualmente posso fazer em Português caso haja interesse (duvide-o-dó :lol: ).

* Um sensor HALL mede a força do campo magnético, o Magneto Resistor a direção do campo magnético, sendo mais apropriado e fácil de instalar/calibrar num dispositivo que mede ângulos, a exemplo de joystick. É usado na indústria automotiva.
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy

Post by 21_Sokol1 »

Good news: MMoy2

https://sites.google.com/site/mmjoyproject/

O Mega_Mogz portou o firmware do MMjoy (Mjoy) para o hardware Arduino, como as placa protótipos:

Leonardo Pro MICRO - ATMEGA32u4 (5.50$ em Hong Kong)
Arduino Teensy 2.0 - ATMEGA32u4 - (16/20$)

Estas placas são baseadas em chips ATMEL com USB 2.0 por hardware, o que permite um barramento de ~500 b/s (o que neste quesito teoricamente coloca controladores como os usados em Fighterstick, Warthog... "debaixo do braço").

Image

Basta gravar o firmware MMjoy2 nestas placas usando o próprio cabo de conexão USB e com o programa configurador (MMJoySetub) para definir o "joystick" como quiser.

Tutorial para gravação do firmware:

https://www.gavca.com/phpBB3/viewtopic. ... 05#p167973
https://www.gavca.com/phpBB3/download/file.php?id=183

Tópicos "MMJoy2"

No SimHQ:

http://simhq.com/forum/ubbthreads.php/t ... ost3899105

No DCS World:

https://forums.eagle.ru/showthread.php?t=120049

No IL-2 Sturmovik (BoS) - em Russo:

https://forum.il2sturmovik.ru/topic/466 ... delnogo-k/

No War Thunder - em Russo:

https://forum.warthunder.ru/index.php?/ ... zhoistika/

TLE 5010 pronto para usar:

https://www.yoycart.com/Product/521365312829/

Sokol1
=AN=Apache

Re: MMJoy

Post by =AN=Apache »

Olá !!! Aproveitando o tópico queria saber se existe alguma placa que reconheça 8 enconders de um só vez... Sei que que existe a Mjoy 16 que aceita ate 4 enconders que encontro no ML por 165 Dilmas, Estou procurando algo pelo ebay e não estou encontrando, Alguém poderia e dar uma dica ?

Abraços a todos e um Feliz Ano Novo
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy

Post by 21_Sokol1 »

BU0836A (39,33$) suporta até 16 encoders ou seja as 32 posições de botões da placa (usando 16 encoders e 0 botões, ou 8 encoders e 16 botões, etc)

DSD 32 Button Controller (35$ frete grátis) é mesma coisa.

StargateNG (~52$) parece suportar até 12 dependendo do firmware - já que tem 24 pinos para botões... (A documentação é pobre em informação...)

Ou, compre duas Leonardo PRO Micro no eBay (5.50$ cada) grave o firmware do MMjoy com suporte a 4 encoder (em cada) - de quebra leva 12 eixos e uns 56 botões...

Sokol1
=AN=Apache

Re: MMJoy

Post by =AN=Apache »

Sokol eu já comprei duas BU0836A 12-Bit Joystick Controller e estou aguardando chegar... Nas especificações no site não fala nada sobre enconders e achei que não funcionava, mas se voce diz que funciona perfeito !!!

Muito obrigado pela força Sokol vc como sempre nos ajudando


Gostei da opção Leonardo PRO Micro pois quero um placa para uma caixa de controle para utilizar encoders trims e o preço está excelente, sabe me informar sobre a qualidade ?

Andei procurando no ebay porém tenho dúvidas qual dessa qeu teria que comprar , tem como me da u help ?

segue o Link :http://www.ebay.com/sch/i.html?_odkw=en ... & _sacat=0

Tenho dúvida também de como eu gravaria esse firmware da Mjoy e onde encontro para baixar por acaso seria esse firmware (Firmware_vusb [v20131224]. Rar) ? !!!
E gravo direto no PC ou tem que ser e socket especial ?

Um FELIZ ANO NOVO PRA VC

ABRAÇOS
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy

Post by 21_Sokol1 »

=AN=Apache wrote: Leonardo PRO Micro .... informar sobre a qualidade ?
Bem, não testei, mas diria que a qualidade é típica de cópia chinesa: ou funciona ou não funciona. :lol:
no ebay
Sim, são estas do link.
Tenho dúvida também de como eu gravaria esse firmware da Mjoy e onde encontro para baixar por acaso seria esse firmware (Firmware_vusb [v20131224]. Rar) ? !!!
E gravo direto no PC ou tem que ser e socket especial ?
Os firmwares são os da página do projeto MMjoy, no Code.Google:

https://code.google.com/p/mmjoy/downloads/list

O firmware _vusb é para placas baseadas em ATMEL USB 1.1 (como a MMjoy).
O firmware _lufa é para placas baseadas em ATMEL USB 2.0 (PRO Micro, Teensy).

Pelo que o Mega_Mogz diz o firmware _lufa precisa ser gravado na PRO Micro por um programador externo (vou ver com ele qual seria).
Na Teensy parece que é transferido do PC para a placa é via cabo USB, já que esta tem bootloader.

Nos MMjoy uso a porta LPT1 (impressora) de um micro velho e um cabo DIY e o programa PonyProgram.

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

Re: MMJoy

Post by 21_Sokol1 »

Incluido na Code.Google, pelo China, como gravar o firmware MMjoy na Leonardo PRO Micro.

É preciso de um USB ISP USBasp programmer V 2.0 (atenção ao modelo do cristal paralelo a placa, conforme descrito no link abaixo - vide foto do programador), custa uns 3$ no eBay - provavelmente o vendedor da PRO Micro tem.
O software usado para a graação é o WinAVR (free).

https://code.google.com/p/mmjoy/wiki/UpdateFirmware_eng

"Piece of cake!" ;)

Sokol1
Ecosta
Posts: 113
Joined: 23 Jun 2013 16:57

Re: MMJoy

Post by Ecosta »

21_Sokol1 wrote:BU0836A (39,33$) suporta até 16 encoders ou seja as 32 posições de botões da placa (usando 16 encoders e 0 botões, ou 8 encoders e 16 botões, etc)

DSD 32 Button Controller (35$ frete grátis) é mesma coisa.

StargateNG (~52$) parece suportar até 12 dependendo do firmware - já que tem 24 pinos para botões... (A documentação é pobre em informação...)

Ou, compre duas Leonardo PRO Micro no eBay (5.50$ cada) grave o firmware do MMjoy com suporte a 4 encoder (em cada) - de quebra leva 12 eixos e uns 56 botões...

Sokol1
Oi Sokol et all
Estou com uma dúvida quanto a gravação do firmware MMJOY na minha placa MJOY16.
O Programa para ser utilizado é o PONYPROG ou se utiliza outro?
Quanto a configuração do FUSE BITS, onde eu lanco essas configurações segundo http://code.google.com/p/mmjoy/wiki/FUSE

[]`s e Salute
Ecosta
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy

Post by 21_Sokol1 »

Se o Mjoy é com o ATMEGA8, 18 ou 16 pode usar o Ponyprog do site oficial.

O Secury & Bits (Fuse) os originais do Mindaugas:

http://georgeboles.no-ip.org/Mjoy_16MW_ ... tyBits.jpg

Se for com o ATMEGA 328 é preciso de um versão do Ponyprog modificada por terceiros, a 2.08
a do site não reconhece o ATMEGA 32, lançado depois.

Já o Fuses para esta versão não sei qual usam, mas use o calculador da Code Google.

Os russos usam o cabo USB ISP e o WinAVR para gravar qualquer Mjoy - como descrito no link anterior,
é mais seguro (para o PC) que usar a LPT1 (que os novos não tem).
No caso de usar a LPT1 os cabos entre a DB25 e o Mjoy deve ser o mais curto possível (uns 15 cm).

Sokol1
Ecosta
Posts: 113
Joined: 23 Jun 2013 16:57

Re: MMJoy

Post by Ecosta »

21_Sokol1 wrote:Se o Mjoy é com o ATMEGA8, 18 ou 16 pode usar o Ponyprog do site oficial.

O Secury & Bits (Fuse) os originais do Mindaugas:

http://georgeboles.no-ip.org/Mjoy_16MW_ ... tyBits.jpg
Obrigado meu camarada! entretanto, verifiquei que tem uma diferença entre os settings originais do MINDAUGAS e os settings na sessão WIKI da página MMJOY quanto às opções, por exemplo: nos settings do MINDAUGAS não tem a opção BODLEVEL e BODEN selecionadas e nos settings do MEGAMOZG tem ambas as opções selecionadas... e agora :^)
21_Sokol1 wrote: Se for com o ATMEGA 328 é preciso de um versão do Ponyprog modificada por terceiros, a 2.08
a do site não reconhece o ATMEGA 32, lançado depois.
Os russos usam o cabo USB ISP e o WinAVR para gravar qualquer Mjoy - como descrito no link anterior,
é mais seguro (para o PC) que usar a LPT1 (que os novos não tem).
No caso de usar a LPT1 os cabos entre a DB25 e o Mjoy deve ser o mais curto possível (uns 15 cm).
Eu tenho a versão 2.07 C instalada e na lista de chips AVR, tem a opção para ATMEGA 8, 32 e 168. Por enquanto eu vou instalar o firmware num ATMEGA 16 e num ATMEGA 32 utilizando o PCB de uma Mjoy16. Eu já comprei a plaquinha específica USB ISP para utilizar com dois ATMEGAS 328 que eu tenho para a montagem das placas MMJOY8 (inclusive com o seu layout de PCB - layout recomendado pelo próprio MEGAMOZG :rock: ). O jeito será esperar a plaquinha e utilizar o WINAVR ou procurar por este mod do PONYPROG. Eu terei que usar cabo serial porque só tenho serial no meu PC.
21_Sokol1 wrote:Já o Fuses para esta versão não sei qual usam, mas use o calculador da Code Google.
Na página que calcula quais "FUSE BITS" sejam utilizados, tem duas opções para clicar "APPLY FEATURE SETTINGS" e "APPLY MANUAL FUSE BIT SETTINGS": Qual será a utilidade de tais opções? Será com o AVRDUDE?
[]`s e Salute
Ecosta




Sokol1[/quote]
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy

Post by 21_Sokol1 »

Ecosta,

Quando eu estava testando os firmwares MMjoy para o MEGA_Mogz usei os FUSES do Mindaugas, no Mjoy8 e no Mjoy16 (já li que pode usar este no 8 também).

Mas eu confiaria nos settings do MEGA_Mogz, vide outras modificações introduzidas por ele e outros no Mjoy original.

De uma olhada neste tópico no Sukhoi, tem link para o PonyProg 2.08, e os fuses usados pelo Swiff_CCCP para o ATMEGA 328:

http://www.sukhoi.ru/forum/showthread.p ... ost2042970

http://www.sukhoi.ru/forum/attachment.p ... 1387828592

Aqui fala de programação usando o programa FLIP.

http://microsin.net/programming/AVR/avr-usb32u4.html

No X-simulator.de, no inicio do tópico tem um esquema de programador via serial.

Sokol1
Ecosta
Posts: 113
Joined: 23 Jun 2013 16:57

Re: MMJoy

Post by Ecosta »

21_Sokol1 wrote:Ecosta,

Quando eu estava testando os firmwares MMjoy para o MEGA_Mogz usei os FUSES do Mindaugas, no Mjoy8 e no Mjoy16 (já li que pode usar este no 8 também).

Mas eu confiaria nos settings do MEGA_Mogz, vide outras modificações introduzidas por ele e outros no Mjoy original.
Ok! vou utilizar os settings inidicados por ele. Vai faltar apenas os settings para o ATMEGA 32, mas esse setting eu peço pro MEGA MOGZ me indicar.
21_Sokol1 wrote:De uma olhada neste tópico no Sukhoi, tem link para o PonyProg 2.08, e os fuses usados pelo Swiff_CCCP para o ATMEGA 328:

http://www.sukhoi.ru/forum/showthread.p ... ost2042970

http://www.sukhoi.ru/forum/attachment.p ... 1387828592

Aqui fala de programação usando o programa FLIP.

http://microsin.net/programming/AVR/avr-usb32u4.htm
Consegui o PONYPROG modificado para ATMEGA 328 conforme foi indicado pelo Swiff_CCCP
21_Sokol1 wrote:No X-simulator.de, no inicio do tópico tem um esquema de programador via serial.
Obrigado pela referência do circuito. Bem básico, fácil de montar e componentes tranquilos de se encontrar

Obrigado SOKOL mais uma vez pela sua ajuda!
[]`s e Salute!
Ecosta
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: MMJoy

Post by 21_Sokol1 »

Para os mc ATMEGA 2.0 (ex. Leonardo PRO MICRO...) o Mega_Mozg desenvolveu um "MMjoy Loader" que dispensa um programador USBISP - usa o próprio cabo de conexão USB - para gravar o firmware.

http://www.sukhoi.ru/forum/attachment.p ... 1391886490

O Code.Google proibiu donwloads - portanto baixar algum arquivo na página clique em "View RAW file".

Este "MMJoy Loader" pode ser usado também para gravar o firmware do FFAdapter - adaptador USB para os antigos
M$ Sidewinder Force Feedback PRO gameporte.

http://www.sukhoi.ru/forum/showthread.p ... ost2053083

Sokol1
Ecosta
Posts: 113
Joined: 23 Jun 2013 16:57

Re: MMJoy

Post by Ecosta »

21_Sokol1 wrote:Para os mc ATMEGA 2.0 (ex. Leonardo PRO MICRO...) o Mega_Mozg desenvolveu um "MMjoy Loader" que dispensa um programador USBISP - usa o próprio cabo de conexão USB - para gravar o firmware.

O Code.Google proibiu donwloads - portanto baixar algum arquivo na página clique em "View RAW file".

Este "MMJoy Loader" pode ser usado também para gravar o firmware do FFAdapter - adaptador USB para os antigos
M$ Sidewinder Force Feedback PRO gameporte.

http://www.sukhoi.ru/forum/showthread.p ... ost2053083

Sokol1
Mestre Sokol1

Eu construi o programador AVR para porta serial (aquele modelo citado no forum do xSimulator), porém a minha duvida é quanto a sequência de de ligação do cabo serial do gravador/ cabo USB do mjoy. você pode me ajudar na sequência de quem liga/ desliga antes e após a gravação do firmware?

A propósito, sobrou um PCB do gravador AVR para cabo serial e caso tenha interesse, eu posso te remeter.

Salute e []`s

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

Re: MMJoy

Post by 21_Sokol1 »

Ecosta,

Com o programador via LPT1 faço assim:
Conecto o cabo do programador no Mjoy.
Conecto o programador na porta LPT1.
Conecto o cabo USB (que no caso serve apenas como fonte de energia 5v).

Depois da gravação inverto o processo, desconectando primeiro o cabo USB.
Assim ao desconectar o programador da LPT1 - que é uma porta sensível - ele não estará energizado
e a chance de dar xabu na LPT1 será menor, e acho que no ATMEGA também.
Tem uns casos de ATMEGA travado que suspeito ter sido por desconectar o programador energizado.

Já usei isso umas ~20 vezes e nunca deu zica.

Sokol1
Post Reply