twittering-mode: usando Twitter no EMACS

Faz tempo que não posto aqui… E tem alguns motivos isso:

O primeiro foi o início de mais um projeto pessoal, o Aulas de C, que visa ensinar a base de C para os interessados em tal linguagem de programação. A idéia é aprender-se o que é mais interessante primeiro, e deixar tecnicidades e detalhes mais exóticos para depois, conforme forem sendo necessários. Não é um curso mesmo, mas sim uma forma de se aprender fazendo.
Mas o mais importante é bem mais simples: falta de algo útil para escrever.
Bem, isso acabou agora.
Recentemente, perdi o suporte ao Echofon na minha antiga estação de trabalho Linux… Os clientes modernos nenhum pegava e os que pegavam eram antigos e/ou sobrecarregavam meu sistema…
O que fazer?“, pensei
Como eu uso EMACS para várias atividades no meu dia-a-dia profissional, me ocorreu pesquisar por meios para usar o mesmo como um cliente de Twitter. E acabei encontrando o twittering-mode, um modo que permite ao EMACS navegar no Twitter de forma extremamente rápida e eficiente, com ícones, RT e a possibilidade de abrir-se timelines de outros usuários e ver-se hashtags.
A idéia aqui é explicar o básico sobre como utilizar o twittering-mode e algumas dicas de uso que me ocorreram no uso diário.

Instalando

Você vai precisar pegar o pacote do twittering-mode. Nesse caso, existe tanto a opção de baixar um tarball em http://twmode.sf.net quanto a que considero mais recomendável. Para isso, você precisará do git instalado na sua máquina. Faça um clone do repositório do github.com do twittering-mode na sua máquina com o comando:

git clone git://github.com/hayamiz/twittering-mode.git

Isso permitirá que você tenha os recursos mais atuais e correções de bugs, como a possibilidade de usar o migre.me como encurtador de URLs e uma correção no caso do uso de um arquivo de avatares que obrigava você a limitar o número de avatares a serem armazenados.
Seja como for, vamos começar a instalação. Antes, porém, você precisará do EasyPG para o EMACS. No EMACS a partir da versão 23 o EasyPG é parte do mesmo. Para trás do 23, é necessário baixar ele no link mostrado anteriormente. Além disso, você precisará instalar no seu ambiente os pacotes wget, curl, openssl e/ou gnutls, além do ImageMagick para os avatares e do GnuPG, que será usado para que não precisemos fazer autenticação OAuth toda santa vez. Sugiro que, por via das dúvidas, instale todos eles. Uma coisa a se mencionar, antes de seguirmos adiante, é que o twittering-mode só é compatível com EMACS 21.3 ou melhor, e ainda assim suas funcionalidades totais só estão disponíveis em ambientes a partir do EMACS 22. Adianto que não existe nenhuma perda perceptível de performance ou funcionalidades reais em ambientes de EMACS 21.3 até 22. Uso ele em um EMACS 21.4 e funciona de maneira muito boa, apenas com algumas “facilidades” ausentes, mas sem maiores problemas.
OK, vejamos a instalação:
Descompacte o tarball do twittering-mode em algum lugar no seu load-path (o caminho onde o EMACS busca suas extensões). Caso não saiba qual o caminho, descompacte-o em qualquer caminho que nós iremos explicar como adicionar o mesmo no load-path. Vamos assumir como exemplo o caminho ~/twittering-mode. Se seu EMACS for anterior ao 23, também baixe o pacote EasyPG e o descompacte em algum lugar (consideraremos como exemplo ~/epg).
Bem, antes de começarmos a usar o Twitter no EMACS, vamos fazer algumas configurações. Abra o EMACS e carregue seu arquivo de configuração .emacs (~/.emacs). Antes de começarmos, vamos adicionar no início do .emacs as seguintes linhas:

(add-to-list 'load-path "~/twittering-mode")

Essa linha avisa ao EMACS a procurar novos modos no caminho adicionado. No caso, estamos adicionando o pacote básico do twittering-mode ao load-path do EMACS, de modo que ele possa ser usado. Além disso, nas versões antigas do EMACS (anteriores à 23), precisamos adicionar o EasyPG:

(add-to-list 'load-path "~/epg")

Então adicionamos o comando que irá carregar no EMACS o módulo do twittering-mode:

(require 'twittering-mode)

Com isso, já fizemos uma configuraçao rápida. Salve o .emacs, feche o EMACS e abra-o novamente.

Navegação básica

Use o atalho M-x (Meta-x) para ir ao minibuffer e abra o modo com o comando twittering-mode. Uma série de cargas serão feitas e aparecerá uma mensagem pedindo o OAuth Authorization PIN. Uma janela de navegador será aberta pelo EMACS pedindo que você autorize o twittering-mode (twmode) no seu usuário do Twitter. Confirme a autorização e copie no EMACS o número que irá aparecer após a confirmação. Esse número é o PIN que você precisa. Aguarde alguns instantes que o EMACS irá carregar, com a ajuda dos utilitários instalados anteriormente, sua Timeline em um buffer chamado :home.
Cada Timeline aberta, seja sua, seja de um usuário ou hashtag, fica em um buffer do EMACS separado. Embora o twittering-mode disponibilize atalhos específicos para navegar entre as TL, particularmente prefiro usar os atalhos do próprio EMACS, que continuam funcionando normalmente.
Você move-se normalmente pelo buffer (que é read-only) usando os comandos de movimentação padrão do EMACS ou as setas  e PgUp e PgDn se você tiver o modo pc-select. Alguns atalhos bem úteis (lembrando que os atalhos são case-sensitive):

  • j – Desce para o tweet anterior (em termos de tempo). Se chegar no final da Timeline carregada, irá carregar tweets mais antigos. Normalmente são carregados de 20 a 20 twits, mas esse valor pode ser configurado através de uma variável do EMACS. Veremos customizações mais adiante;
  • k – Avança para o próximo tweet (em termos de tempo);
  • n – volta para o tweet anterior postado pelo mesmo usuário do tweet onde você está;
  • p – avança para o próximo tweet postado pelo mesmo usuário do tweet onde você está;
  • H – vai para o topo da Timeline;
  • G – vai para o final da Timeline;
  • g – carrega novos tweets à Timeline. O twittering-mode tem auto-update para a Timeline, mas esse pode ser desligado se necessário, e então usa-se esse atalho para carregar-se novos tweets. Esse atalho pode ser usado com o auto-update ativo;
  • r – mostra replies ao tweet onde você está;
  • C-c C-e – limpa o buffer da Timeline em questão;
  • q – fecha a Timeline;
  • v – sobre uma hashtag ou o nome de usuário, abre em um novo buffer a Timeline da hashtag ou usuário (Nota: em alguns casos, os acentos em uma hashtag poderão aparecer como caracteres randômicos… Isso se deve a um problema na tratativa das hashtags e não há previsão para correção)
  • V – permite você abrir uma Timeline de qualquer usuário que você quiser, bastando digitar o nick do usuário (lembrando que ele não abrirá TLs protegidas, exceto se você seguir o usuário). Além disso, existem alguns nomes especiais que ele usa para TLs relacionadas ao usuário:
  1. :home – sua timeline;
  2. :replies – respostas a seus tweets (incluindo RTs “editados”);
  3. :direct_messages – mensagens diretas que você recebeu;
  4. :favorites – tweets que você marcou como favoritos;
  • u – Postar um twit – Abrirá uma janela de edição onde você poderá escrever o seu tweet normalmente. Para enviar o tweet, use o atalho C-c C-c. Caso deseje cancelar o twit, use o atalho C-c C-k. [F4] irá encurtar qualquer URL que esteja no tweet;
  • [Enter] – Permite editar um reply ao tweet apontado pelo cursor. Em cima de um link, abre-o no navegador padrão do sistema. Sobre um nome de usuário, abre seu profile no Twitter. Sobre uma hashtag, abre uma pesquisa sobre ela no Twitter;
  • C-c [Enter] – Permite dar um RT “antigo” (como Reply) do tweet apontado pelo cursor;
  • C-u C-c [Enter] – Permite enviar um RT “novo” (da API do Twitter) do tweet apontado pelo cursor;
  • d – Permite enviar uma mensagem direta a um usuário. É considerado por padrão que o DM irá para o usuário que postou o tweet onde o cursor está, mas você pode digitar o nick de qualquer usuário;
  • a – Ativa/Desativa a auto-atualização da TLs atual (padrão ativo);
  • i – Ativa/Desativa a exibição de avatares da TLs atual (padrão ativo);
  • s – Ativa/Desativa rolamento da TL atual (padrão desativado);
  • C-c C-t – Permite definir uma hashtag padrão para seus posts – útil na cobertura de um evento;
Esses comandos oferecem uma navegação básica que deve ser o suficiente para o uso cotidiano. Para maiores informações, consulte a entrada do twittering-mode no EMACSWiki.org.

Customizando

Como tudo no EMACS, o twittering-mode é muito customizável. Infelizmente ele não é customizável pelo customize-mode, portanto as customizações normalmente são feitas pelo .emacs ou fazendo eval de setq no *scratch*. Vamos falar então da customização via .emacs.
Abaixo estou copiando o trecho do meu .emacs para definir algumas variáveis padrão, além de usar alguns hooks do twittering-mode para mudar alguns atalhos e para fazer com que o twittering-mode exiba notificações de novos tweets:

;; Configurações do twmode (twmode.sf.net)
(setq twittering-use-master-password t) ;; voce precisara do EasyPG para EMACS (no 23 vem junto)
(setq twittering-timer-interval 300     ; 3 minutos para atualizar as TLs
      twittering-tinyurl-service ‘migre.me
      twittering-url-show-status nil
      twittering-icon-mode t
      twittering-initial-timeline-spec-string ‘(“:home” “:favorites” “:replies”)
      twittering-number-of-tweets-on-retrieval 60
      twittering-scroll-mode t
      twittering-use-icon-storage t
      twittering-icon-storage-limit nil
      )

 (add-hook ‘twittering-mode-hook
           (lambda ()
             (mapc (lambda (pair)
                     (let ((key (car pair))
                           (func (cdr pair)))
                       (define-key twittering-mode-map
                         (read-kbd-macro key) func)))
                   ‘((“F” . twittering-friends-timeline)
                     (“R” . twittering-replies-timeline)
                     (“U” . twittering-home-timeline)
                     (“f” . twittering-favorite)))))

(add-hook ‘twittering-new-tweets-hook (lambda ()
   (let ((n twittering-new-tweets-count))
     (start-process “twittering-notify” nil “notify-send”
                    “-i” “/usr/share/pixmaps/gnome-emacs.png”
                    “Novas mensagens”
                    (format “Tem %d nova%s mensage%s no Twitter!”
                            n (if (> n 1) “s” “”) (if (> n 1) “ns” “m”))))))

A variável twittering-use-master-password t, é muito útil, e ela que exige o EasyPG. Normalmente, o twittering-mode irá lhe obrigar a obter um novo PIN a cada vez que você tentar entrar nele, o que vai chegar um momento e tornar-se muito chato. Ao ativar essa variável twittering-use-master-password, você irá criar uma senha mestra de acesso ao twittering-mode e o mesmo irá guardar o PIN em um arquivo .twittering-mode.gpg, que ele abrirá e lerá ao começar a usar o twittering-mode.
As demais variáveis são:

  • twittering-timer-interval – Define o intervalo de atualização em segundos (padrão 90 segundos – 1,5 minutos);
  • twittering-tinyurl-service – Define qual será o serviço de encurtador de URLs a ser utilizado entre alguns que o twittering-mode consegue usar: ‘tinyurl, ‘bit.ly, ‘goo.gl, ‘is.gd, ‘toly, ‘j.mp e ‘migre.me (esse último apenas na versão do github na época em que esse post foi escrito). Se você desejar utilizar especificamente bit.ly e j.mp precisará definir também duas variáveis (twittering-bitly-login e twittering-bitly-api-key) com informações sobre seu usuário e chave de API do bit.ly. ou do. j.mp Padrão ‘tinyurl;
  • twittering-url-show-status – Mostra o tráfego utilizado depois de uma atualização de TL. Padrão nil;
  • twittering-icon-mode – Ativa o modo de visualização de avatares. Padrão nil;
  • twittering-initial-timeline-spec-string – Uma lista de TLs a serem abertas no momento da inicialização do twittering-mode. O padrão é abrir apenas a TL do usuário (“:home“);
  • twittering-number-of-tweets-on-retrieval – Número de twits a serem obtidos por vez… Padrão 20, com limite máximo de 200.
  • twittering-scroll-mode – define se a TL vai rolar de modo a manter o tweet que está sendo lido como o atual ou se vai fazer com que o EMACS desça os twits não lidos. O padrão é nil, que indica o 2° comportamento. Para ativar o primeiro, basta definir essa variável com qualquer valor não-nil usando setq.
  • twittering-use-icon-storage – Permite que o twittering-mode faça um cache dos avatares que ele consegur carregar, o que aumenta o desempenho, mas consome memória. Padrão nil. Deve ser definido para qualquer outro valor para ser ativado. Por padrão, o cache de avatares fica gravado em .twittering-mode-icons.gz, que é gravado ao sair-se do EMACS e aberto no momento em que chamamos o twittering-mode. É possível mudar-se o nome desse arquivo modificando-se a variável twittering-icon-storage-file;
  • twittering-icon-storage-limit – Se você utilizar o cache de avatares, você pode estipular ou não um valor padrão de avatares a serem usados modificando essa variável. O padrão é 500. Se não desejar limitar o número de avatares salvos no cache, defina essa variável como nil;

Após definirmos todas as variáveis que queremos, também realizamos algumas modificações em dois hooks. Um para fazermos uma modificação de atalhos (no caso, defini f para abrir a TL de favoritos) e a outra para fazer com que notificações sejam exibidas no momento em que houver o recebimento de novos twits. Essas dicas foram coletadas na entrada do twittering-mode no EMACSWiki.org.
Essa é apenas uma introdução ao twittering-mode, e na Internet existe muita coisa sobre ele. Espero que tenha sido útil. Se quiser me adicionar no Tweeter, meu usuário é @hufflepuffbr.

[Update 15:17 2011-08-18] A pedidos, um snapshot do twittering-mode em uso!

Anúncios

Configurando Ubuntu Linux como media server para Xbox360

Olá!

Já faz algum tempo que eu não posto nada no blog, e o motivo é que realmente não estava com assunto para postar. Porém, agora tem um bom assunto para postar.

XBOX 360Como alguns sabem, tenho vários consoles de videogames, entre eles já citados um Nintendo DS (na verdade agora tenho um Nintendo DSi mais dois Nintendo DS) e um PSP. Como não poderia deixar de ser, tenho meus consoles de mesa: um PS2, um Wii e um XBOX 360.

O último foi uma aquisição que fiz com o objetivo duplo de jogar (obviamente) e de utilizar como Media Center. Mas como tudo que envolve a Microsoft, descobri que existe um trabalho bastante significativo para colocar vídeos para rodar no XBOX 360, quem dirá disponibilizar esse vídeos em modo Media Server (ou seja, de modo que os vídeos estejam no computador caseiro e sejam buscados pelo XBOX via rede)

Em parte isso se deve a problemas de protocolo e em parte a formatos de arquivo. Então iremos dividir o artigo em duas partes. A primeira, sobre como codificar vídeos para o formato do XBOX 360, e a segunda sobre como disponibilizar os vídeos codificados da maneira correta via rede.

Codificando vídeos para o formato do XBOX 360

O XBOX 360 possui formatos muito determinados sobre como os videos devem ser codificados para ele. No caso, adotaremos um enocde para WMV (Windows Media Video), e utilizaremos uma ferramenta gráfica para Linux, o Hyper Video Converter, que nada mais e que um frontend para MPlayer/Mencoder e ffmpeg. Procure e baixe no site o pacote .deb ou .rpm e instale conforme a suia distro. Ele irá criar um ícone no Menu K /Aplicações. Abra o programa. Ao abrir, uma janela como a abaixo irá aparecer.

Primeira coisa: você vai precisar criar um diretório onde você irá jogar seus arquivos encodados. No meu caso: /home/teste/video. Isso será importante no segundo estágio, quando formos disponibilizar os vídeos via rede. Por agora, escolha qualquer pasta. Em encoder, escolha ffmpeg. Iremos trabalhar com ele por enquanto. Clique em “Encoder Settings”. Você receberá uma janela como a seguinte:

No caso, ele já está com todas as informações sobre como o vídeo deve ser codificado, segundo o link apresentado anteriormente.No caso, optamos por encodar o vídeo em formato WMV2 em Video Codec, que é o único que permite encodar vídeos com saída em FullHD para ele. De qualquer modo, utilizaremos a resoloção como 720p, setada em Video Size (perceba que ela foi colocada em Custom e o valor digitado na caixa de texto em baixo). O Aspect foi deixado em 1:1 (acredito que isso permita que o Aspect Ratio original dos vídeos a serem encodados, sem os distorcer). Setamos o Container Format para ASF. Isso é importante pois o formato ASF é o container padrão para o Windows Media Video. O Video Bitrate pode ser definido para qualquer valor, mas acredito que entre 5000 a 10000 kbps é o suficiente. Menor bitrate implica em maior granulação, enquanto um Bitrate menor pode servir apenas para aumentar demais o arquivo (que ficará enorme). Deixe Target em default.pois ele serve apenas para alguns pré-defs relacionados com DVD (portanto, não é uma boa idéia mexer aí). O Audio Format ddverá ser configurado para wma2 (Windows Media Audio versão 2). Audio Bitrate pode ser deixado em qualquer valor, então 128 kbps deve ser um valor adequado (caso encode shows, pode desejar aumentar esse valor, conforme a qualidade das fontes originais). Sample Rate não têm restrições também, então deixamos em 44100 bps, que é o valor padrão para CD ou DVD.

Precisaremos de algumas configurações mais avançada, então clique em Advanced Settings para que a janela pareça com a seguinte:

A única coisa que precisamos deifinir aqui é o Framerate. Clique na caixa correspondente e defina o valor. No caso atual meu, defini como 25 fps. Se desejar, o limite é de 30 fps conforme o link apresentado anteriormente.

Na aba Misc. Video Settings, existem poucas opções interessantes.

Eu uso por costume 2-pass encoding, mas segundo alguns não faz a menor diferença. Se tiver dúvidas, não mexa nessa aba e aceite os padrões, clicando em OK ao terminar. Clique em Open Files para adicionar videos para conversão. Se selecionar mais de um vídeo, selecione a opção convert all input. Mude a Extensão para wmv e clique em Create Command. Ele irá apresentar na caixa de diálogo de baixo a linha de comando a ser executada. Clique em Convert e aguarde.

A conversão demorará significativamente e, além disso, gerará arquivos enormes (700 MB para 20 min), portanto tenha muito HD livre ao tentar isso ou jogue a saída para um pendrive. Na realidade, precisaremos usar um Pendrive depois do vídeo convertido.

Testando o vídeo

Uma vez que você tenha codificado seu vídeo (lembre-se de ter todos os codecs instalados em sua máquina, inclusive – e especialmente – os de WMV), o vídeo será colocado na pasta indicada em Output Directory, com o nome original e extensão definida em Extension (no nosso caso, wmv). Copie o arquivo para um pendrive e leve ao XBOX 360. Conecte o pendrive por uma das entradas USB, seja as traseiras (próximas à entrada de rede) ou as dianteiras (em baixo do botão de força, protegidas por uma tampa). Ligue o XBOX.

No Dashboardo do XBOX 360, escolha a opção “Biblioteca de Vídeo“. Aperte A.

A opção “Dispositivo Portátil” deverá estar acesa. Selecione-a e navegue no conteúdo do pendrive até achar o arquivo codificado. Selecione-o e clique em Executar. Ele deverá ser exibido. Caso não seja, verifique as configurações de vídeo anteriormente citadas e modifique-as até que o resultado final seja de seu agrado.

Para facilitar a vida, o Hyper Video Converter aceita que você salve Profiles de configurações de vídeo. Uma vez que você tenha a opção adequada, salve-a clicando em Save Profile no Encoder Settings e dê um nome ao mesmo na janela que irá aparecer (ele não sobrescreve profiles existentes). Para carregar um profile, clique em Manage Profiles na janela principal.

Escolha o programa utilizado (no nosso caso, ffmpeg) selecione o profile desejado e clique em Load.

Ok… Uma vez que o vídeo esteja funcionando corretamente, você irá se pegar pensando no tamanho do vídeo gerado e em como isso é dose de ter que ser feito o tempo todo. No caso, vamos utilizar o uShare como servidor de mídia (Media Server), por meio do protocolo uPnP A/V.

Cnfigurando o Media Center

Primeiro, instale como padrão o uShare conforme sua distro. A maioria das distros modernas oferecem o uShare a partir de seus repositórios padrão, assim como suas dependências. Use os comandos adequados para instalar o uShare.

Como root (ou usando sudo), abra um editor de arquvios e procure o arquivo /etc/ushare.conf. Será necessárias algumas modificações nesse arquivo para disponibilizar os vídeos via rede. O arquivo irá se parecer com algo como abaixo.

# /etc/ushare.conf
# Edit this file with 'dpkg-reconfigure ushare'
# Configuration file for uShare
# uShare UPnP Friendly Name (default is 'uShare').
USHARE_NAME=hufflepuff
# Interface to listen to (default is eth0)
# Ex : USHARE_IFACE=eth1
USHARE_IFACE=eth1
# Port to listen to (default is random from IANA Dynamic Ports range)
# Ex : USHARE_PORT=49200
USHARE_PORT=
# Port to listen for Telnet connections
# Ex : USHARE_TELNET_PORT=1337
USHARE_TELNET_PORT=
# Directories to be shared (space or CSV list).
# Ex: USHARE_DIR=/dir1,/dir2
USHARE_DIR=/home/teste/videos
# Use to override what happens when iconv fails to parse a file name.
# The default uShare behaviour is to not add the entry in the media list
# This option overrides that behaviour and adds the non-iconv'ed string into
# the media list, with the assumption that the renderer will be able to
# handle it. Devices like Noxon 2 have no problem with strings being passed
# as is. (Umlauts for all!)
#
# Options are TRUE/YES/1 for override and anything else for default behaviour
USHARE_OVERRIDE_ICONV_ERR=yes
# Enable Web interface (yes/no)
USHARE_ENABLE_WEB=yes
# Enable Telnet control interface (yes/no)
USHARE_ENABLE_TELNET=no
# Use XboX 360 compatibility mode (yes/no)
USHARE_ENABLE_XBOX=yes
# Use DLNA profile (yes/no)
# This is needed for PlayStation3 to work (among other devices)
USHARE_ENABLE_DLNA=no

A maior parte das conbfigurações podem ser deixadas no padrão da distro. No caso, vamos falar das configurações que devem ser modificadas.

  • USHARE_NAME=hufflepuff - Essa linha informa o nome pelo qual sua máquina será conhecida como Media Center. Escolha o nome que lhe aprouver;
  • USHARE_IFACE=eth1 - Essa linha indica qual interface de rede será usada como saída para o seu Media Center. A não ser que você tenha várias placas de rede e/ou algum problema com a interface de rede padrão (eth0), pode deixar em branco. Caso contrário, escolha a inferface a ser utilizada, lembrando que o XBOX 360 deve estar conectado fisicamente à estrutura de rede desejada;
  • USHARE_DIR=/home/teste/video - Essa linha é uma das que devem ser obrigatoriamente modificada. Ela indica onde o uShare deverá buscar arquivos de mídia. No meu caso, /home/teste/video. Lembre-se de dar o mesmo caminho dado no Hyper Video Converter, ou então selecionar vários caminhos, separando-os por vírgulas.
  • USHARE_ENABLE_WEB=yes - Essa linha é útli ao administrar os compartlhamentos a serem buscados. Se você ativar essa opção, a janela de administração do uShare estará disponível em http://<servidor&gt;:<porta>/web/ushare.html, onde <servidor> representa o IP ou DNS do servidor uShare (repare que esse nome não precisa ser o mesmo e pode não ter relação com o nome uPnP indicado em USHARE_NAME) e  <porta> é a porta definida pelo uShare para atender (normalmente 49152, modificada em USHARE_PORT);
  • USHARE_ENABLE_TELNET=no - Essa linha tem a mesma funcionalidade e uso da anterior, USHARE_ENABLE_WEB, mas usando Telnet ao invés do navegador. Como isso pode ser um potencial furo de segurança (uma vez que o Telnet não é um protocolo conhecido pela segurança), é recomendável deixar essa opção em no;
  • USHARE_ENABLE_XBOX=yes – Essa opção é a que define o suporte para o XBOX 360 e deve estar obrigatoriamente em yes;
  • USHARE_ENABLE_DLNA=no – Essa opção define o suporte para alguns recursos avançados em uPnP A/V. Essa opção é usada em especial no PS3 e em outros Media Centers, mas usar essa opção no XBOX 360 apenas serve para confundir o sistema. No caso, deixe-a em no se for usar o XBOX 360 como Media Center;

Com isso definimos toda a configuração necessária para o mesmo no Linux. Inicie o servidor conforme a distro (normalmente service ushare start como root). Nota: no Ubuntu por algum motivo o uShare ignora sumariamente a opção USHARE_ENABLE_XBOX=yes, portanto devemos forçar o suporte a XBOX 360. Para isso, inicie o uShare em um terminal ushare -x. Antes disso, pare o servidor uShare (normalmente com sudo service ushare stop). O uShare pode ser iniciado sem obrigatoriedade de superusuário por usar portas TCP altas (acima de 1024). Mantenha o terminal aberto enquanto não estiver o usando. Como opção, pode ser usado o comando nohup ushare -x & para fazer com que o uShare rode em backgroung.

Configuração no XBOX 360:

Primeiro, ligue o XBOX 360 à rede onde o Media Server uShare está ligado (nomralmente conectando um cabo entre o roteador da rede do uShare e o XBOX 360). Em seguida, ligue o XBOX 360 e vá em “Configurações de Sistema“.

Vá em Configurações de Rede.

Selecione Testar Conexão no PC. Ele poderá dar um aviso de desconectar os usuários do videogame. Confirme e aguarde. Ele deverá aparecer uma máquina com o nome dado por voce em USHARE_NAME.

Tudo OK, aperte A e volte para o Dashboard e escolha a opção “Biblioteca de Vídeo“. Aperte A.

Deve ter uma opção com o nome da sua máquina. Escolha-a. Uma lista dos vídeos disponíveis na sua pasta deve aparecer. Atenção: ele não fará distinção de pastas, colocando todo o conteúdo dentro da pasta espalhado. Escolha o vídeo desejado e clique em Reproduzir:

E aproveite os seus vídeos. Utilizar o XBOX 360 como Media Center dá um certo trabalho, mas vale a pena!

PS: As telas do XBOX 360 foram fotografadas com uma câmera FujiFilm FinePix s5100fd com alta qualidade a partir de uma teve LCD 32″ buster 720p.

Leia mais deste post

AnyRemote – Controlando seu PC pelo Celular

Olá!

Fale a verdade, você já se pegou em situações onde um bom controle remoto para o computador seria uma ótima idéia, como em uma apresentação, ou quando você está usando seu PC para ouvir música e está lavando louça e quer ouvir uma música em especial qualquer (bem, no meu caso foi Get Over, da trilha sonora do anime Hikaru no Go… :P). De qualquer modo, é um momento onde tudo o que você quer é controlar seu PC sem ter que chegar perto do seu teclado ou mouse.
Pois bem, para apresentações existem alguns controles remotos que conseguem “substituir” um mouse, mas são caros.
Pois bem: tem um celular com suporte a bluetooth e J2ME? Usa Linux? Então sem problemas!
Existe um software chamado AnyRemote que transforma um celular Bluetooth em controle remoto por meio de um cliente J2ME que deve ser enviado para o celular. É importante que a JVM J2ME do celular suporte Bluetooth por meio de JSR (Java Specification Request) 82. No meu caso, o teste foi feito com um celular Nokia 6085 e funcionou perfeitamente. No site do AnyRemote existe uma lista dos celulares suportados.
OK, então mão na massa.
Primeiro, tenha certeza de ter as dependências do mesmo instalado: você precisará de pacotes de bluettoth (libbluez, obex e libbluetooth), além de python e PyKDE (python e python-kde) ou Gtk Python. Se você já fez alguma operação Bluetooth com o seu celular em Linux, provavelmente terá tudo o que é necessário. Caso contrário, existem muitos tutorias na Internet sobre como configurar corretamente seu dongle (chaveiro USB) de Bluetooth no Linux.
Embora a maior parte das distribuições contem com o AnyRemote nos repositórios, vamos fazer a instalação a partir dos pacotes oferecidos no site do AnyRemote, pois eles são mais atualizados com arquivos para controle de aplicações e afins. No site do AnyRemote, clique em Download e baixe os seguintes pacotes (obviamente, no formato compatível com sua distribuição – no meu caso, como Debianista, os arquivos são .deb):

  • Cliente em Linha de Comando:
  • Cliente Gráfico – aqui utilizaremos o kAnyRemote para o KDE. Existe também o gAnyRemote para o GNOME, mas não comentaremos ele aqui:
  • Cliente J2ME – ele pode ser baixado também via WAP, mas o próprio kAnyRemote ao detectar o celular permite que o cliente J2ME seja enviado para o celular via Bluetooth:

Baixado tudo isso e instalado as dependências, conecte seu dongle Bluetooth. Caso necessário, faça todas as configurações exigidas para a comunicação entre seu celular e o computador via Bluetooth. É fundamental que todos esses recursos estejam corretamente configurados antes da instalação, pois o AnyRemote (e o kAnyRemote) utiliza-se da estrutura Bluetooth do Linux. Em distribuições mais atuais, tudo resume-se a espetar o dongle que ele é auto-identificado. Instale os arquivos baixados conforme a sua distribuição. Ligue o seu Celular e ative a função Bluetooth do mesmo.
Abra então o kAnyRemote. Ele irá jogar na System Tray (Bandeja do Sistema) um pequeno ícone o identificando. Clique com o botão direito em cima dele e você terá um menu como o exibido ao lado. Clique em Start e você irá ativar o serviço do AnyRemote. PS: perceba que também deve ter na System Tray um ícone com o símbolo do Bluetooth, que indica que tem um adaptador Bluetooth conectado e reconhecido. Ele não precisa estar azul nesse momento, pois não há operações nele.
Tela Principal do kAnyRemoteAgora, vamos trabalhar o AnyRemote. Dê dois cliques no ícone do kAnyRemote ou então clique com o botão direito do mouse e escolha Restore. Você irá receber uma janela igual à do lado (clique para ampliar). Essa é a janela principal do kAnyRemote, por onde você configura quais programas podem ou não serem controlados pelo AnyRemote. Existem várias opções para configurar aqui: iremos mexer apenas nos clientes cujo modo for Server (servidor). O outro modo, AT, é um modo que utiliza comandos AT (de modem) via WiFi ou infravermelho para controlar o computador, mas não falaremos dele aqui. O Modo Server é o modo que utiliza Bluetooth (e em alguns dispositivos, infravermelho). Existe ainda o Bemused, sobre o qual também não falaremos.
Ele é dividido em três Estados: Disponível (o programa a ser controlado está instalado, mas o agente do AnyRemote não está ativo para ele), Gerenciado (o agente está ativo) e Não-Disponível (o programa a ser controlado não está instalado). No caso, temos vários agentes Disponíveis, mas apenas um Gerenciado, que é o All_in_1, que funciona como “controle remoto universal”. Sugiro que deixe apenas esse em Gerenciado. Para desativar os demais, selecione qualquer um que esteja como Gerenciado e clique em “Parar”.

Tudo OK, é hora de enviarmos o cliente J2ME ao celular. Clique em Setup | Devices. Ele irá abrir uma janela que irá investigar todos os seus dispositivos Bluetooth. Espere um pouco e ele deve mostrar o seu dispositivo. No meu caso, é o “Nokia Fábio” ao lado. Selecione-o e clique duas vezes.
Agora, já indicamos ao AnyRemote que esse dispositivo pode acessar o computador, mas ainda ele  não o fará pois não tem o cliente J2ME instalado. Para fazer o deploy desse cliente, você também pode, caso a solução do envio automatizado não funcio, enviar o arquivo normalmente por OBEX File Transfer do Linux ou então por download do mesmo via WAP (lembrando que você precisará enviar dois arquivos, um .JAR e um .JAD). Mas vamos ao envio automatizado.

Ao clicar duas vezes, você receberá uma janela para fazer os ajustes das configurações para aquele celular. Primeiro, clique em Ping para verificar se está tudo OK e a comunicação é efetiva. O Celular pode perguntar se deseja aceitar comunicação e ou pareamento do mesmo com o computador. Confirme e, caso necessário, forneça a senha de pareamento (normalmente o computador pede para definir uma. Apenas escolha uma senha que você considere adequada e confirme a mesma senha no celular). Tudo OK, basta clicar em “Enviar Java”. Confirme o alerta que seu Celular deverá dar para o envio do arquivo. Tudo OK, clique em OK para sair. Uma configuração avançada é fazer com que uma determinada configuração do AnyRemote seja carregada de imediato no Celular uma vez que ele conecte-se ao AnyRemote. Para isso, clique em “Escolher” e escolha o arquivo .cfg correspondente.
Tudo bem… Agora é a hora da verdade: abra seu celular e vá ao menu de Aplicações do mesmo. Lá deverá estar listado o AnyRemote. Escolha-o. Pode ser que o celular pergunte se você deseja a aplicação usar recursos de conectividade. Permita, pois é justamente o acesso ao Bluetooth. Tudo correndo bem, o cliente irá automaticamente identificar uma conexão, à qual você irá se ligar. Você entrará no menu do All_in_1 (imaginando que ele esteja ativo). Escolha o programa que você deseja controlar. Em alguns casos na tela irá parecer com a imagem ao lado. Nesse caso, cada um dos símbolos representa a tecla do teclado do celular que deve ser pressionada para fazer a função ser ativada. Por exemplo, para suprimir o som na tecla ao lado, digite 2. Para fechar o programa, tecle 8 e para parar a música tecle 0. Em outros casos irá aparecer outros layouts. Nesses casos, utilize as teclas direcionais do celular para mover até a opção desejada e aperte o botão central do celular (o que normalmente fica dentro do direcional) para executar a opção.

Para terminar, existe formas de configurar o comportamento tanto do AnyRemote quanto do kAnyRemote. Vá em Setup | Preferences. Você receberá uma janela como a da imagem ao lado (clique para ampliar). Existe uma série de ajustes que você pode configurar, mas os mais interessantes são o Auto-Startup (para fazer com que o kAnyRemote seja carregado ao iniciar o KDE/GNOME) e as opções de Show in List, que filtram quais configurações devem ser apresentadas pelo kAnyRemote. Sugiro que se desmarque as configurações de Modo AT (uma vez que não as usaremos) e que marque-se a opção Custom Made, que indica que configurações não relacionadas a Aplicativos também devam ser apresentadas. Entre tais configurações consta a All_in_1 que citamos aqui.
Na realidade, existe muito mais para se falar sobre o AnyRemote, pois ele é poderoso o bastante para, em conjunto com as aplicações Linux que possuam algum tipo de chamada distribuída (como o DCOP do KDE ou mesmo disparos por linha de comando), ser customizada para controle remoto de praticamente qualquer aplicação. Basta apenas estudar a documentação disponível no site do AnyRemote.
Em tempo: para o pessoal que desejar saber mais sobre o AnyRemote, em especial sobre o uso do gAnyRemote, veja esse artigo do Blog do Venilton.

Powered by ScribeFire.

Nintendo DS em Wifi com o roteador Linksys WRT54G

Não sei se já comentei antes, mas sou o feliz dono de um Nintendo DS. Comprei ele pois queria um videogame simples e divertido, com jogos interessantes. Quando um colega me apresentou o Nintendo DS, com jogos como Trauma Center, Ouendan!, Mario Kart e Mario Party, foi paixão à primeira vista, principalmente pelos jogos que usam a stylus (operar o cara virtualmente no Trauma Center é o máximo).

Um dos recursos mais interessantes do DS é que ele pode usar o sistema de WiFi que possui para jogos multiplayer inclusive para jogar via Internet, bastando que você tenha um roteador WiFi 801.22 tradicional. No meu caso, possuo um Linksys WRT52G. No caso, vou falar sobre como configurá-lo para usar com o DS com uma boa segurança (na medida do possível).
É bom começarmos esclarecendo um fato: o DS infelizmente não aceita seguranças baseadas em WPA ou em WEP acima de 60 bits. No caso, a melhr coisa a se fazer é bloquear também o acesso por outros meios. Particularmente a trava de acesso pelo MAC (Media Access Control) é bastante interessante, pois é razoavelmente difícil burlar-se o controle de acesso dessa maneira (existem técnicas de ARP poisoning e ARP spoofing que permitem enganar esse tipo de trava, mas ainda assim é algo com um bom grau de segurança). Isso pode tornar o acesso um tanto inconveniente, mas é como se diz: a segurança é inversamente proporcional à conveniência.
Bem, então vamos nessa:
1-) Configurando o WiFi:
É importante começar avisando que, embora o utilitário de configuração inicial do roteador seja em Windows, uma vez essa configuração seja feita (acredito que deva funcionar via Wine, mas comigo não deu certo), a configuração pode ser feita totalmente pelo navegador, inclusive em Linux (Firefox, Konqueror e Epiphany todos funcionam com a ferramenta de administração do Linksys). È recomendável ativar-se o DHCP, pois isso oferece alguma conveniência na configuração.
OK… Com o roteador instalado, vamos ao que interessa: abra seu navegador e vá para o endereço do roteador (normalmente http://192.168.1.1). Seu navegador irá pedir um login e senha. O login é vazio, a senha você deve usar a definida no momento da configuraçãoi inicial (ou qualquer outra que você tenha definido para o administrador). Você irá então cair na janela de administração geral. A navegação é simples na ferramenta de administração: existem duas barras, uma preta e uma azul. A preta são as opções principais, enquanto a azul são as sub-opções. No caso, clique em “Sem Fios“. Você irá para uma página como a abaixo:


Clique para ampliar

Você irá cair na opção “Definições sem fios básicas“. Para liberar de maneira básica seu DS em WiFi basta configurar essa página. No modo, você pode deixar “misto”, de modo que hardware wireless mais potente possa usar velocidades maiores (ao menos enquanto o DS não estiver presente). No SSID coloque qualquer nome que desejar. A única sugestão é não deixar no valor padrão da Linksys (linksys). No meu caso, o SSID está definido para “hogwarts”. Quando quiser deixar o WiFi desligado, selecione “nenhum” nessa opção.
A opção “Canal sem fio” está marcada pois existe um certo debate sobre qual canal deixar. Em muitas comunidades, aconselha-se o canal 6, pois é um consenso. Na realidade, não há nada que o impeça de deixar em qualquer canal. Eu preferi deixar no 6, portanto é a seu critério.
A opção “Difusão de SSID sem fios” é uma opção que você pode avaliar para aumentar um pouco a segurança: em modo normal, toda rede WiFi faz a difusão do seu SSID para anunciar sua presença. Porém, algumas pessoas preferem desativar esse recurso, crendo que ele torna a rede insegura. Como é possível descobrir-se o SSID por força bruta, ainda que não seja fácil, esse recurso não é muito interessante, pois também irá dificultar seu acesso à rede (você precisará lembrar totalmente o nome do SSID da sua rede). Eu prefiro deixar esse recurso ativo e fazer o controle de acesso via MAC, mas isso também é opção sua.
Clique em “Guardar Definições” e pronto: sua wireless estará ativa. Vamos fazer um teste rápido.
2-) Testando sua conexão com a Internet no DS:
Pegue seu DS e escolha um jogo que permita acesso à Nintendo WFC (World Friend Connection). Sugiro Mario Kart DS ou Bleach. No caso, falaremos de Mario Kart DS. Escolha a opção “Nintendo WFC” e em seguida vá para “Nintendo WFC Settings”. A partir daqui, a janela de configuração é genérica. Você verá a tela abaixo:

Selecione “Nintendo Wi-Fi Connection Settings” com a stylus. Você receberá um assistente de conexão como o abaixo na Touch Screen:

Aqui no caso percebemos que o DS tem como receber até 3 redes WiFi para acessar. Toque em um dos “None” para ir ao “Settings” como abaixo:

Selecione a opção “Search for an Access Point”. Aqui é importante ressaltar algumas coisas:

  1. Nesse momento, devem ser encontradas todas as redes wireless na região de potência do DS. Se você não permitiu anúncio do SSID, você pode ter alguns problemas para localizar sua rede se ouver outras redes cujo SSID não esteja sendo anunciado. Por isso, em um primeiro momento, é interessante configurar o roteador para anunciar o SSID. Depois de configurar a rede no seu DS, desativar o SSID não faz a menor diferença;
  2. O DS irá mostrar para você as seguintes situações para cada rede wifi detectada. Verifique a sua e siga como for descrito:

Quando aparece dessa forma, é indicação que a rede do SSID indicado (no exemplo, MY_WIRELESS) está aberta e portanto basta selecioná-la. Se a rede tiver DHCP e nenhum outro controle de acesso, bastará selecionar com a stylus essa rede e esperar o teste de conexão confirmar a conexão. Esse deve ser o estado da rede no presente momento após esta configuração inicial do roteador.

Quando aparece dessa forma, é indicação que a rede do SSID indicado (no exemplo, MY_WIRELESS) está protegida por WEP (Wired Equivalent Privacy) de 60 bits, que o DS pode acessar. Essa criptografia é muito fraca, mas pode ser melhor que nada se combinada com outros elementos de segurança. De qualquer forma, para acessar essa rede, após cselecionar com a stylus essa rede, você precisará fornecer a WEP Key da mesma. Veremos mais sobre isso adiante.

Quando aparece dessa forma, é indicação que a rede do SSID indicado (no exemplo, MY_WIRELESS) está protegida por formas de criptografia que o DS não consegue trabalhar (normalmente WEP de 124 bits ou WPA). O DS não será capaz de acessar esse tipo de rede, não importa o que aconteça. Nesse caso, a melhor coisa é desativar a criptografia ou a definir para WEP de 60 bits. Veremos mais sobre isso depois.
Se você seguiu o tutorial como está e deixou os padrões de fábrica do roteador, bastará selecionar o seu SSID e o resto será questão de esperar que o roteador ofereça via DHCP um IP. O DS irá testar a conexão e, se tudo ocorrer bem, ele irá apresentar uma mensagem “Test Sucessful”. Caso contrário, consulte a página de ajuda da Nintendo e o manual do roteador.
Tudo OK, basta apertar B para voltar ao jogo (no caso Mario Kart), e selecionar a opção de conexão à WFC. No caso “Nintendo WFC Connect”. Aguarde alguns instantes e você poderá começar a jogar via Internet.

3-) Melhorando a segurança:
OK… Na realidade, já temos conexão via DS à Internet e podemos jogar online via Nintendo WFC. Porém, ainda temos mais coisas a fazer. Se você seguiu tudo como fizemos, nosso roteador Wireless é um hotspot, ou seja, é um ponto de acesso totalmente aberto com o mundo. Isso pode ser perigoso pois podemos ser usados como ponto de acesso à rede para piratas de computador que localizem nossa rede via wardriving/warchalking (para resumir, a prática de localizar e marcar redes de Internet abertas). Vamos então começar a melhorar a segurança na medida do possível.
A primeira coisa que iremos fazer é implementar o WEP de 60bits. Embora esse protocolo a muito tenha sido derrubado e portanto não é considerado mais seguro, combinado com outros elementos pode nos dar uma segurança considerável. Portanto, vamos ativá-las nem que seja para dificultar ao máximo o acesso não-autorizado à rede Wireless.
Abra o gerenciador do roteador e selecione o menu “Sem fios”, opção “Segurança sem Fios”.


Clique para ampliar

No caso, a segurança é definida nas primeiras duas listas. Na primeira, “modo de Segurança”, escolha WEP. Na segunda, “Encriptação WEP”, escolha “64 Bits 10 dígitos hexadecimais”. Defina uma chave em Frase-passe e clique no botão “Gerar”.
Perceba que logo abaixo existem quatro caixas com os textos “Chave 1” a “Chave 4”. No caso, são justamente essas chaves que você deverá passar para o DS. Anote uma dessas chaves, pois ela será inserida no DS. Clique em “Guardar Alterações”.
Se você tentar usar agora o DS para jogar ou navegar na Internet, você não irá conseguir, pois a rede está com criptografia. Vamos ver como corrigir.
Proceda como anteriormente para entrar na janela de configuração de Wifi do DS mostrada anteriormente. Se você usar Bleach – Blade of Fate, acesse “Versus Mode”, em seguida “Nintendo Wi-Fi Connection” (a opção com o Kon) e em seguida “Setup”. Toque em “Nintendo Wi-Fi Connection Settings”. Sua conexão configurada deve estar em “Ready”. Toque em “Ready” e você cairá em uma janela como a seguinte:

Essa janela é onde você pode ajustar manualmente todas as suas configurações. No caso, para reabilitar nossa conexão, teremos que dar a chave WEP. Para isso, toque em “Edit” na linha “WEP Key”. Aparecerá um teclado para você entrar a chave WEP. Digite a chave WEP que você anotou, gerada pelo roteador e confirme. Em seguida, toque em “Test Connection”. Caso você receba o “Connection Sucessful”, clique em “Save Setting”.
Já temos uma segurança por criptografia, mas como disse o WEP 60 Bits suportado pelo DS é muito fraco. No caso, confiar apenas nessa criptografia é uma tolice, pois ela pode ser obtida facilmente por análises e quebrada rapidamente. No caso, vamos aumentar a segurança restringindo o acesso pelo MAC.
3-) Restringindo via MAC:
O MAC (Media Access Control) é um endereço físico estipulado pelo protocolo de redes Ethernet (protocolo padrão abaixo do IP) que é adicionado por padrão a qualquer placa de rede Ethernet ou compatível (como o WiFi 801.22). Normalmente não é fácil clonar um MAC, uma vez que ele vem gravado diretamente no hardware da placa (ou no caso, do DS), mas existem mecanismos que permitem fazer MAC Spoofing (exige que o hardware cujo MAC será clonado esteja fora do ar). Ainda assim, essa restrição é a melhor forma de impedir o acesso não autorizado ao roteador WiFi, uma vez que o processo de MAC Sppofing não é algo simples de ser feito.
Antes de ativarmos esse modo, devemos pegar o endereço MAC de todos os hardware que irão acessar o rotador sem fio. No caso, falaremos especificamente do DS. Para placa de redes WiFi (como as de notebooks), existem comandos que fornecem esse endereço.
Ligue o DS e vá para o “Nintendo Wi-Fi Connection Setup” conforme seu jogo. Toque em “Options”. Você receberá uma janela como a seguinte:

Escolha a opção “System Information”. Você receberá a janela a seguir:

Perceba que existem dois valores: o de baixo, “Nintendo Wi-Fi Connection ID” , é importante pois ele é usado para “amarrar” os códigos pessoais de uso dos jogos multiplayer (chamados de “Friend Codes”) ao DS em questão. Se você trocar de DS, poderá não ficar mais acessível a aqueles contra quem você já jogou. Para “voltar a ficar disponível”, use a opção “Transfer Nintendo WFC Configuration” do menu anterior. Cuidado ao fazer isso: você poderá, caso haja problemas de carga de bateria, inutilizar seu sistema de rede dos dois DS, pois os DS envolvido estarão trocando seus endereços MAC. Você foi avisado!
Voltando: o valor que nos interessa é o outro, “MAC Address” que é uma seqüência de 6 números hexadecimais. Anote esses valores, mas substituindo os traços (-) por dois-pontos(:), pois essa é a anotação normal do MAC.
Anotado esse valor, podemos voltar à configuração do roteador. Entre no gerenciador, escolha menu “Sem Fios”, opção “Filtro MAC sem fios”. Você chegará a uma tela parecida com a abaixo:


Clique para ampliar

Primeiro de tudo, escolha a opção “Ativar” em “Filtro MAC sem fios”. Em seguida, vão aparecer as opções “Impedir” e “Permitir Apenas”. Escolha a segunda, pois desejamos que apenas os dispositivos cujo MAC estejam na tabela possam acessar nosso roteador. Clique em “Editar lista de filtros de MAC”. Um popup irá aparecer com uma tela similar à seguinte:


Clique para ampliar

Veja que você pode listar até 20 dispositivos nessa tabela. Coloque o endereço MAC do DS anotado anteriormente em uma das caixas de texto. Ao terminar, clique em “Guardar Alterações” nessa popup. Lembre de entrar todos os endereços MAC de todos os dispositivos sem fio que vão se conectar a esse roteador. Isso inclui: notebook, desktop com placas ou dongles USB WiFi, Palms, PSPs, Nintendo Wiis, celulares como o iPhone e qualquer outro hardware com suporte na 801.22 e que você deseje que acesse esse roteador. Lembre-se de neles introduzir também a WEP Key definida anteriormente. Clique em “Guardar definições” na tela anterior. Para testar, ligue seu DS e conecte-se normalmente à WFC, como demonstramos anteriormente.
4-) Conclusão:
O Nintendo DS é um console simples, divertido e que permite vários recursos interessantes, como a conexão via WiFi com jogadores de todo o mundo. Mas fazermos isso com segurança temos alguma mão de obra setando o máximo de opções de segurança possível. Porém, quando você jogar sua primeira partida de Mario Kart ou Bleach ou qualquer outro jogo via WFC, você irá perceber que todo esse esforço vale realmente a pena.
Update: Normalmente os ajustes acima funcionam bem para o Nintendo Wii, com algumas alterações:

  • O Canal a ser usado deve ser o 1 ou o 11, conforme recomendação no manual do usuário;
  • Algumas vezes, caso o sistema não conecte-se, pode ser a criptografia WEP. Nesse caso, desative a criptografia WEP. Com a proteção de rede MAC você tem proteção o suficiente contra o uso anormal da rede. Obviamente a criptografia de dados deve ser avaliada;