SMS Powerview para controle do Nobreak Manager III Senoidal -Solucionado

Iniciado por jomanolo, 20 de Setembro de 2011, 23:27

tópico anterior - próximo tópico

jomanolo

Amigos , conto-lhes em resumo os passos para instalação do software Powerview da SMS para controlar e monitorar seu nobreak das linhas Manager Senoidal. O programa pode ser baixado no site da SMS principalmente no cadastro do serviço Alerta 24 horas. Para quem não sabe você precisa de cadastrar lá primeiro antes de poder baixar o software. https://www.alerta24h.com.br/

Para variar o programa na versão Windows é mais facil de instalar e ja está automaticamente configurado. Para nós amantes do Linux temos a nossa própria diversão.  Baixem a versão para Linux que roda acima do Kernel 2.6.15.

Importante: Necessário ter instalado o Java JRE no linux para o programa funcionar. Ai é que começa o problema. Se sua distro for 32bits i586 etc será mais facil. Como eu estou usando Kubuntu 64bits tive alguns problemas para fazer a configuração mas agora já dominei o problema.


O programa está em formato tar.gz após baixa-lo descompacte numa pasta padrão. Ex: SMS. Vai ser criado outra pasta sms_install.

Será necessário agora verificar sua versão do JRE. Eu recomendo que baixem o java no site oficial :
http://www.java.com/pt_BR/download/linux_manual.jsp?locale=pt_BR

Escolham a versão 32 ou 64bits de acordo com o Kernel. Não pode usar o Java errado pois não vai funcionar. Eu consegui rodar após muito custo no final das contas usando o JRE 1.6.0.27. Não garanto que funcione com outras versões principalmente para x86_64. Depois vão entender o motivo.

Para instalar, basta abrir o famoso terminal no diretório que foi descompactado o programa. Deve estar logado como root para isso.
Rode a instalação # sudo ./install.sh

1) Indique o caminho onde o seu Java está instalado. Importante: se você baixou o Java no site oficial pode instalar ele dentro do mesmo diretorio do SMS. Se quiser arriscar e usar o Java instalado pelo sistema o caminho em geral é /usr/lib/jvm/versão do Java .
Pode haver varias versões instaladas lá dentro, indique geralmente a que está com "-sun-."
2) Depois dê enter na pergunta variavel Display. Deixe mesmo em 0.0 não sei para quê serve isso não fará diferença
3) Digite o local de instalação do programa. Indique a mesma pasta. EX /home/nomeusuario/SMS/

Se tudo deu certo você verá mensagens que o programa está instalado e pronto para usar.
Na pasta SMS vai encontrar vários arquivos e o script " powerview"

Neste ponto plugue o cabo USB do Nobreak em qualquer porta vaga do PC. O programa deverá automaticamente criar o link simbolico do USB para o dispositivo ttys8.
O programa pode ser chamado facilmente como root digitando# sudo ./powerview start -g ( depois se quiser digitar apenas ./powerview verá as opções gerais). Basicamente isso chama o programa em modo Trayicon um icone do S ficará no canto do relógio indicando a comunicação com o Nobreak em Azul e não comunicando em Vermelho.

:D Ficou Azul tudo de bom. Você é um sortudo e agora poderá controlar seu Nobreak via Browser acessando :http://localhost:8080/sms/
Ele abrirá uma pagina no qual poderá ver as medidas em tempo real da tensão, carga de bateria, etc,etc. O manual está disponível no site SMS é bem intuitivo de usar também.

>:( Ficou Vermelho: Bem vindo ao time, eu fiquei dias tentando descobrir como solucionar. Pois bem, principalmente para usuários do X86_64 o Java poderá exibir esta mensagem no terminal depois que o programa estiver carregando:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f8b6f4d5733, pid=4228, tid=140236800714512
#
# JRE version:X
# Java VM: X64-Bit Server VM (X linux-amd64 )
# Derivative: X
# Distribution: X
# Problematic frame:
# C  [librxtxSerial.so+0x7733]  Java_gnu_io_RXTXPort_nativeDrain+0xc3
#
??? ??? ???

É isso ai, esta bendita librxtxserial.so é a responsável pela comunicação Serial em Java. Ou seja ela seria a responsável por permitir o programa se comunicar com o Nobreak usando a porta USB. Este erro indica que existe incompatibilidade entre o seu JAVA e o programa SMS. Por isso que eu recomendo baixar o Java original da Sun. Outros Javas derivados podem não funcionar corretamente.

Tente recompilar o programa novamente usando o outro Java disponivel em /usr/lib/jvm . Não se esqueça de apagar o conteudo da pasta SMS (exceto a pasta sms_install). Modo mais fácil é usar o Krusader em modo root.

>:( >:( >:( >:( >:( >:(

Se mesmo assim após tentar várias vezes e nada pode ser necessário um ultimo truque. Compile usando o Java mais atual e depois baixe o pacote librxtx-java.  Pode tentar usar o gerenciador do Ubuntu para fazer isso
Ou se quiser pesquisar no Sr Google encontrará outras fontes. Ex: http://www.cloudhopper.com/opensource/rxtx/

O importante é o arquivo librxtxSerial.so que você vai extrair deles.

Na pasta do programa SMS existem outras duas pastas em /lib/32 e /lib/64. Lá dentro existem as benditas librxtxSerial.so que estão dando problema.  Substitua o arquivo das duas pastas por aquele que você baixou no librxtx ou afins. Não mude o nome copie por cima. Faça isso como root usando o Krusader ou outros.
Localize a nova lib dentro da pasta /urs/lib/jni/. Copie e cole conforme orientado acima.

Rode o programa novamente e tudo deverá funcionar.  :-*

Insistam em outras versões desta Lib é exatamente ela que causa o problema principal do não funcionamento do programa. Apesar do software da SMS para Linux não ter nenhum material mais técnico e explicativo conhecedores da linguagem bash podem analisar o script depois e ajudar melhor.

As vezes pode ser necessário chamar o programa mais do que uma vez com # sudo ./powerview start -g. Em geral 2 vezes apenas.
Eu consegui rodar e agora estou configurando o meu via Firefox.

Espero ter ajudado a todos

Estou usando Kubuntu 11.04 x86_64, isso funciona para outras Distros.

Abraços!