{"id":345,"date":"2012-08-21T10:29:18","date_gmt":"2012-08-21T13:29:18","guid":{"rendered":"http:\/\/linuxrs.com.br\/?p=345"},"modified":"2012-08-21T10:29:18","modified_gmt":"2012-08-21T13:29:18","slug":"wiimote-no-linux-com-wminput-e-wmgui","status":"publish","type":"post","link":"https:\/\/blog.clusterweb.com.br\/?p=345","title":{"rendered":"WiiMote no Linux com WMinput e WMgui"},"content":{"rendered":"<table width=\"100%\" border=\"0\" cellspacing=\"3\" cellpadding=\"3\">\n<tbody>\n<tr>\n<td colspan=\"2\"><\/td>\n<\/tr>\n<tr>\n<td colspan=\"2\"><strong>Pr\u00e9-requisitos e instala\u00e7\u00e3o<\/strong><\/p>\n<div>Nosso objetivo aqui \u00e9 utilizar um <em>Wiimote<\/em> como mouse. \u00d3timo em apresenta\u00e7\u00f5es que exigem a utiliza\u00e7\u00e3o do mouse, navegar pelo Google Earth e jogar jogos de tiro. =D<\/p>\n<p>Pr\u00e9-requisitos:<\/p>\n<div><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/bluetooth.jpg\" alt=\"Linux: WiiMote no Linux com WMinput e WMgui\" width=\"140\" height=\"140\" \/><br \/>\n<a href=\"http:\/\/www.dealextreme.com\/details.dx\/sku.11866%7Er.20538894\">Adaptador Bluetooth<\/a><\/div>\n<div><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/wii.jpg\" alt=\"Linux: WiiMote no Linux com WMinput e WMgui\" width=\"140\" height=\"140\" \/><br \/>\n<a href=\"http:\/\/www.dealextreme.com\/details.dx\/sku.32010%7Er.20538894\">Wiimote <\/a><\/div>\n<p>Requisitos opcionais:<\/p>\n<div><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/ir.jpg\" alt=\"Linux: WiiMote no Linux com WMinput e WMgui\" width=\"140\" height=\"140\" \/><br \/>\n<a href=\"http:\/\/www.dealextreme.com\/details.dx\/sku.2399%7Er.20538894\">LED IR<\/a><\/div>\n<div><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/usb.jpg\" alt=\"Linux: WiiMote no Linux com WMinput e WMgui\" width=\"140\" height=\"140\" \/><br \/>\n<a href=\"http:\/\/www.dealextreme.com\/details.dx\/sku.26060%7Er.20538894\">Lanterna LED<\/a><\/div>\n<p>Distribui\u00e7\u00e3o utilizada: Ubuntu 9.10<\/p>\n<p>Instala\u00e7\u00e3o:<\/p>\n<p><strong>$ sudo apt-get install wminput wmgui<\/strong><\/p>\n<h1>Visualiza\u00e7\u00e3o com WMgui<\/h1>\n<p>O <em>WMgui<\/em> \u00e9 uma interface para visualizar as funcionalidades do Wiimote\/Nunchuck\/Classic.<\/p>\n<p>Nele voc\u00ea conseguir\u00e1 ver os:<\/p>\n<ul>\n<li>Bot\u00f5es funcionando;<\/li>\n<li>Sensores infra-vermelhos;<\/li>\n<li>Sensores de movimentos;<\/li>\n<li>Controles direcionais<\/li>\n<li>Valores de acelera\u00e7\u00e3o(Accel), rota\u00e7\u00e3o(Roll), afastamento(Pitch);<\/li>\n<li>Conte\u00fado da mem\u00f3ria interna do WiiMote;<\/li>\n<li>LEDs e control\u00e1-los.<\/li>\n<\/ul>\n<p>Vamos aos passos:<\/p>\n<p>1. Conecte o adaptador bluetooth (parece um passo \u00f3bvio, mas perdi 2 minutos xingando o controle at\u00e9 lembrar desse passo primordial).<\/p>\n<p>2. Abra um terminal e execute o &#8220;<strong>wmgui<\/strong>&#8220;.<\/p>\n<p>3. FILE &gt; CONNECT, abrir\u00e1 uma janela.<\/p>\n<p>4. Aperte os bot\u00f5es &#8220;1&#8221; e &#8220;2&#8221; do controle, para entrar em &#8220;Discovery Mode&#8221;.<\/p>\n<p>5. Enquanto os LEDs do controle piscam, aperte OK na janela que foi aberta.<\/p>\n<p>6. Habilite todas as funcionalidades do WMgui em SETTINGS.<\/p>\n<p>7. Divirta-se!<\/p>\n<p>Para testar o IR (Infra-Vermelho) sem uma lanterna IR, ap\u00f3s habilit\u00e1-lo no SETTINGS, aponte um controle de TV (ou algo do tipo) e aperte os bot\u00f5es do controle.<\/p>\n<p>No campo IR do wmgui deve aparecer uns pontos pretos. Se n\u00e3o possuir um controle, aponte para o sol! \ud83d\ude09<\/p>\n<\/div>\n<\/td>\n<\/tr>\n<tr>\n<td colspan=\"2\"><strong>Mapeamento com WMinput<\/strong><\/p>\n<div>Com a configura\u00e7\u00e3o padr\u00e3o o <em>WMinput<\/em> j\u00e1 funciona bem, por\u00e9m o controle do mouse \u00e9 feito baseado no aceler\u00f4metro.<\/p>\n<p>Para test\u00e1-lo primeiro temos que subir o m\u00f3dulo UINPUT.<\/p>\n<p>1. <strong>sudo modprobe uinput<\/strong><\/p>\n<p>2. Aperte &#8220;1&#8221;+&#8221;2&#8243; no wiimote<\/p>\n<p>3. <strong>sudo wminput<\/strong><\/p>\n<p>Feito!<\/p>\n<p>J\u00e1 temos um prot\u00f3tipo funcionando.<\/p>\n<p>Vamos ver mais a fundo os arquivos de configura\u00e7\u00e3o.<\/p>\n<p>Todos os arquivos est\u00e3o em <em>\/etc\/cwiid\/wminput\/<\/em>. L\u00e1 voc\u00ea encontrar\u00e1:<\/p>\n<ul>\n<li>default &#8211; Arquivo lido se n\u00e3o for especificado um arquivo de configura\u00e7\u00e3o. Link para acc_ptr<\/li>\n<li>acc_ptr &#8211; Mouse baseado no aceler\u00f4metro<\/li>\n<li>ir_ptr &#8211; Mouse baseado no infra-vermelho<\/li>\n<li>gamepad &#8211; Configura\u00e7\u00e3o para usar o controle CLASSIC. &#8211; N\u00e3o testei porque n\u00e3o tenho um&#8230; =(<\/li>\n<li>nunchuk_acc_ptr &#8211; Mouse baseado no aceler\u00f4metro do Nunchuck<\/li>\n<li>buttons &#8211; Mapeamento dos bot\u00f5es (outros arquivos incluem este em suas confs)<\/li>\n<li>acc_led &#8211; Exemplo para acionar os LEDs do controle<\/li>\n<li>fps_config &#8211; Uma configura\u00e7\u00e3o para jogos de tiro, vale a pena olhar e alterar<\/li>\n<li>nunchuk_stick2btn &#8211; Configura\u00e7\u00e3o para utilizar o Nunchuck em jogos de tiro (Ex. Half-Life)<\/li>\n<li>neverball &#8211; Teoricamente utiliza o aceler\u00f4metro de forma diferente, testei e n\u00e3o funcionou.<\/li>\n<\/ul>\n<p>Teste com o infra-vermelho:<\/p>\n<p>1. Coloque o LED IR na lanterna USB ou a pilha.<\/p>\n<p>2. Ligue-a e posicione sobre ou sob o monitor.<\/p>\n<p>3. Se voc\u00ea ainda n\u00e3o subiu m\u00f3dulo:<\/p>\n<p><strong>$ sudo modprobe uinput<\/strong><\/p>\n<p>4. Aperte &#8220;1&#8221;+&#8221;2&#8243; no wiimote.<\/p>\n<p>5. <strong>sudo wminput -c \/etc\/cwiid\/wminput\/ir_ptr<\/strong><\/p>\n<p>6. Assim que ele responder &#8220;Ready&#8221;, aporte para o LED e DIVIRTA-SE!<\/p>\n<p>Caso apare\u00e7a o seguinte erro:<\/p>\n<p>Put Wiimote in discoverable mode now (press 1+2)&#8230;<br \/>\nNo wiimotes found<br \/>\nunable to connect<\/p>\n<p>1. Tire e coloque de novo a antena Bluetooth.<\/p>\n<p>2. <strong>sudo wminput -c \/etc\/cwiid\/wminput\/ir_ptr<\/strong><\/p>\n<p>3. Aperte &#8220;1&#8221;+&#8221;2&#8243; no wiimote.<\/p>\n<p>4. Espere.<\/p>\n<p>\u00c0s vezes ele demora uns segundos a mais para reconhecer, normal.<\/p><\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n","protected":false},"excerpt":{"rendered":"<p>Pr\u00e9-requisitos e instala\u00e7\u00e3o Nosso objetivo aqui \u00e9 utilizar um Wiimote como mouse. \u00d3timo em apresenta\u00e7\u00f5es que exigem a utiliza\u00e7\u00e3o do mouse, navegar pelo Google Earth e jogar jogos de tiro. =D Pr\u00e9-requisitos: Adaptador Bluetooth Wiimote Requisitos opcionais: LED IR Lanterna LED Distribui\u00e7\u00e3o utilizada: Ubuntu 9.10 Instala\u00e7\u00e3o: $ sudo apt-get install wminput wmgui Visualiza\u00e7\u00e3o com WMgui [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[51],"tags":[14,174,176,175],"class_list":["post-345","post","type-post","status-publish","format-standard","hentry","category-linux-linuxrs","tag-linux","tag-wiimote","tag-wmgui","tag-wminput"],"_links":{"self":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts\/345","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=345"}],"version-history":[{"count":1,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts\/345\/revisions"}],"predecessor-version":[{"id":346,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts\/345\/revisions\/346"}],"wp:attachment":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=345"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=345"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=345"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}