Livrando-se do HPLAUNCHER

Estava hoje às voltas analisando arquivos através do Synaptic e esbarrei em um cuja utilidade é eliminar os dispositivos virtuais (discos) de instalação de unidades 3G como os MODEMs USB da Huawei. Resolvi fazer um teste com a minha unidade de disco HP SimpleSave que possui o mesmo tipo de “unitilidade” para usuários de sistemas não-Windows. E até o presente momento, parece que livrei-me do hóspede indesejável. :-)

$ sudo apt-get install usb-modeswitch

$ usb_modeswitch -W -v 03f0 -p 4607

* usb_modeswitch: tool for controlling "flip flop" mode USB devices
* Version 1.0.2 (C) Josua Dietze 2009
* Works with libusb 0.1.12 and probably other versions

Taking all parameters from the command line

DefaultVendor= 0x03f0
DefaultProduct= 0x4607
TargetVendor= not set
TargetProduct= not set
TargetClass= not set

DetachStorageOnly=0
HuaweiMode=0
SierraMode=0
SonyMode=0
MessageEndpoint= not set
MessageContent= not set
NeedResponse=0
ResponseEndpoint= not set
Interface=0x00

InquireDevice enabled (default)
Success check disabled

usb_set_debug: Setting debugging level to 15 (on)
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_devices: Found 105 on 002
skipped 1 class/vendor specific interface descriptors
skipped 1 class/vendor specific interface descriptors
usb_os_find_devices: Found 104 on 002
skipped 1 class/vendor specific interface descriptors
usb_os_find_devices: Found 002 on 002
skipped 1 class/vendor specific interface descriptors
usb_os_find_devices: Found 001 on 002
error obtaining child information: Inappropriate ioctl for device
error obtaining child information: Inappropriate ioctl for device
error obtaining child information: Inappropriate ioctl for device
usb_os_find_devices: Found 115 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device

Looking for default devices ...
Found default devices (1)
Accessing device 115 on bus 001 ...
Using endpoints 0x02 (out) and 0x81 (in)
Inquiring device details; driver will be detached ...
Looking for active driver ...
OK, driver found ("usb-storage")
OK, driver "usb-storage" detached

Received inquiry data (detailed identification)
-------------------------
Vendor String: HP
Product String: External HDD
Revision String: 1028
-------------------------

Device description data (identification)
-------------------------
Manufacturer: HP
Product: External HDD
Serial No.: 574341563533383830373534
-------------------------
Warning: no switching method given.
-> Run lsusb to note any changes. Bye.

Tagged with:
 

Vozes para GPS TomTom

Grave os comandos de voz

Você pode gravar sua própria voz de navegação no seu computador. Você irá precisar diversas ferramentas.

Você precisa um microfone e um programa para gravar os comandos de voz em seu computador. O Audacity para Linux, Mac ou Windows é uma boa escolha pois é grátis e permite que os arquivos sejam gravados e exportados para o formato OGG Vorbis. É possível também gravar no formato WAV e depois converter para OGG usando qualquer programa disponível gratuitamente.

  • Grave em 22050Hz (22kHz) mono;
  • Grave os 59 comandos and salve/exporte-os como arquivos OGG Vorbis com os respectivos nomes;

Dica: você deve incluir uma pausa breve (0,5 segundos, por exemplo) após cada comando. Teste outros intervalos de comprimentos diferentes de forma a fazer com que as instruções saiam de forma natural.

  • Salve todos os 59 arquivos em uma única pasta/diretório e teste cada um para certificar-se de que todos estão presentes e funcionando corretamente.

Os comandos de voz

Dica: se deseja incluir frases humorísticas, recomenda-se que sejam limitadas aos comandos que não são ouvidos frequentemente (abaixo indicados em negrito).

2ndLeft.ogg – ‘Vire na segunda à esquerda’
2ndRight.ogg – ‘Vire na segunda à direita’
3rdLeft.ogg – ‘Vire na terceira à esquerda’
3rdRight.ogg – ‘Vire na terceira à direita’
50.ogg – ‘50′
80.ogg – ‘80′
100.ogg – ‘100′
200.ogg – ‘200′
300.ogg – ‘300′
400.ogg – ‘400′
500.ogg – ‘500′
600.ogg – ‘600′
700.ogg – ‘700′
800.ogg – ‘800′
After.ogg – ‘Depois de’
AhExit.ogg – ‘Saída a frente’
AhExitLeft.ogg – ‘a frente, saída à esquerda’
AhExitRight.ogg – ‘a frente, saída à direita’
AhFerry.ogg – ‘Balsa a frente’
AhKeepLeft.ogg – ‘A frente, mantenha-se à esquerda’
AhKeepRight.ogg – ‘A frente, mantenha-se à direita’
AhLeftTurn.ogg – ‘Vire à esquerda a frente’
AhRightTurn.ogg – ‘Vire à direita a frente’
AhUTurn.ogg – ‘Retorno a frente’
Arrive.ogg – ‘Você chegou ao seu destino’
BearLeft.ogg – ‘Vire à esquerda’
BearRight.ogg – ‘Vire à direita’
Charge.ogg – ‘Pedágio’
Depart.ogg – ‘Depart’ (only heard when you tap Test when selecting a voice)
KeepLeft.ogg – ‘Mantenha-se à esquerda’
KeepRight.ogg – ‘Mantenha-se à direita’
LnLeft.ogg – ‘Mantenha-se na faixa da esquerda’
LnRight.ogg – ‘Mantenha-se na faixa da direita’
Meters.ogg – ‘Metros’
MwEnter.ogg – ‘Entre na autoestrada’
MwExit.ogg – ‘Saia da autoestrada’
MwExitLeft.ogg – ‘Leave the motorway at the exit on the left’
MwExitRight.ogg – ‘Leave the motorway at the exit on the right’
RbBack.ogg – ‘Dê a volta na rotatória’
RbCross.ogg – ‘Atravesse a rotatória’
RbExit1.ogg – ‘Primeira saída’
RbExit2.ogg – ‘Segunda saída’
RbExit3.ogg – ‘Terceira Saída’
RbExit4.ogg – ‘Quarta saída’
RbExit5.ogg – ‘Quinta saída’
RbExit6.ogg – ‘Sexta saída’
RbLeft.ogg – ‘Vá à esquerda na rotatória’
RbRight.ogg – ‘Vá à direita na rotatória’
RoadEnd.ogg – ‘Ao fim da estrada’
SharpLeft.ogg – ‘Curva fechada à esquerda’
SharpRight.ogg – ‘Curva fechada à direita’
Straight.ogg – ‘Siga em frente’
TakeFerry.ogg – ‘Pegue a balsa’
Then.ogg – ‘Então’
TryUTurn.ogg – ‘Retorne assim que for possível’
TurnLeft.ogg – ‘Vire à esquerda’
TurnRight.ogg – ‘Vire à direita’
UTurn.ogg – ‘Faça um retorno’
Yards.ogg – ‘Jardas’

Tagged with:
 

Apenas como referência (pois as informações que encontrei são imprecisas e desencontradas).

Arquivos que vêm ao adquirir-se um novo mapa:

  • *.meta
  • *.pna
  • *.meta.dct – arquivo que valida o mapa para o dispositivo onde está instalado
  • cline.dat
  • cname.dat
  • cnode.dat
  • crpoi.dat
  • faces.dat – objetos 3D (prédios, relevos etc.)
  • mapinfo.dat
  • poi.dat – pontos de interesse fornecidos pela TomTom
  • tables.dat

Arquivos criados após usar-se o mapa pela 1ª vez:

  • MapUserPatch.dat – correções manuais (vai para MapShare)
  • MapServerPatch.dat – correções externas (vem do MapShare)
  • MapSettings.cfg – configurações diversas (favoritos, residência, últimos destinos, preferências de sons e cores etc.)
  • PA****.ov2 – POIs extras (do MapShare?)
  • traffic.dat

Outros arquivos:

  • itn\*.itn – itinerários
  • ephem\ito.dat
  • ephem\ee_meta.txt
  • ephem\ee_meta.tlv
  • schemes\*.clr – esquemas de cor
  • art\cars\*.bmp – cursores
Tagged with:
 

HP SimpleSave 1TB

Adquiri hoje, por R$349,00 (a vista, retirado diretamente na Wittech) uma unidade de backup (cópia de segurança) da marca HP, linha SimpleSave, de 1 terabyte (978 gigabytes, no frigir dos ovos), mas fabricada pela Western Digital Company (1º erro: deveriam explicitar quem é o fabricante real do equipamento — até porque não sou simpatizante da marca WD, graças à péssima qualidade de seus discos rígidos). Convém dizer que paguei o mesmo preço mais barato que a CompuJob está cobrando pela unidade de 500GB (R$399,00).

No manual, consta que os sistemas operacionais compatíveis com a unidade são apenas o Windows 7, Vista e XP (nada constando sobre Linux, *BSD, MacOS, QNX, Solaris e outros). Mas a intenção real é provar que esta compatibilidade pode ser ampliada.

Identificação da unidade através do comando lsusb:

Bus 001 Device 009: ID 03f0:4607 Hewlett-Packard

Identificação do(s) sistema(s) de arquivo e demais parâmetros pertinentes através do comando mount:

/dev/sdb1 on /media/HP SimpleSave type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)
/dev/sr1 on /media/HPLAUNCHER type iso9660 (ro,nosuid,nodev,uhelper=hal,uid=1000,iocharset=utf8)

No Xfce (Xubuntu 9.10 amd64) a unidade ao ser conectada à fonte de alimentação e posteriormente à porta USB (2.0), foi reconhecida de imediato, sem maiores problemas.

Para minha insatisfação, ao procurar por 03f0:4607 no Google, o primeiro resultado reportado é o de um erro ao iniciar o Ubuntu. Mas como não reinicio meu computador com frequência (e nem pretendo ficar com essa unidade conectada 24×7), tal falha não me preocupa.

Pelo visto, S.M.A.R.T. nem para remédio (ouch, é um WD!!!):

$ sudo smartctl -i /dev/sdb1
Device: HP External HDD Version: 1028
Serial number: WCAV53880754
Device type: disk
Local Time is: Wed Feb 3 23:41:17 2010 BRST
Device does not support SMART

$ du -h /media/HPLAUNCHER
2,0K /media/HPLAUNCHER

$ du -ch /media/HP\ SimpleSave | grep total
78M total
(manuais, programas etc.)

Conforme o HP SimpleSave Desktop Hard Drive User Manual (em português brasileiro):

Formato da Unidade

Este dispositivo está pré-formatado para o sistema de arquivos NTFS. O sistema de arquivos suporta arquivos de mídia maiores que 4 GB.
Alguns computadores usam o sistema de arquivos FAT32 para organizar arquivos no computador. Esse sistema é compatível com o Windows XP. Com o FAT32, um único arquivo tem o limite de tamanho de 4 GB. Isso pode causar algum problema ao criar arquivos de backup. Se precisar usar este dispositivo em um computador que requeira o FAT32, você precisará reformatar a unidade.

Como Reformatar a Unidade para FAT32

Importante: Reformatar a unidade apaga todo o seu conteúdo. Se você já guardou os arquivos na unidade, assegure-se de fazer o backup antes de reformatar.

  1. Clique duas vezes em My Computer (Meu Computador).
  2. Clique no ícone Removable Disk (Disco Removível). Aparece uma mensagem lhe perguntando se quer formatar a unidade. Clique em Yes (Sim).
  3. Clique em Full (Completo) na área de tipo de Formato na janela Format (Formatar). Você agora também pode inserir uma etiqueta para a unidade.
  4. Clique em Start (Início).
  5. Clique em OK. A formatação pode levar mais de 60 minutos. Não desconecte o drive durante o procedimento.
  6. Quando a formatação estiver concluída, clique em Close (Fechar) e depois clique em OK.

Creio que o NTFS presta-se para a maioria dos mortais, mas como trabalho com Linux, penso que existem melhores (e mais confiáveis) sistemas de arquivos — lembrando que o xfs possui um desfragmentador online (cujo uso não requer a desmontagem da unidade). Sendo assim, é a minha escolha, pois é necessário um ponto de partida.

Importante: um dia pode haver necessidade de reversão do processo e transformar novamente o sistema de arquivos da unidade em NTFS (ou FAT32, WinFS etc.). Sendo assim, é recomendável fazer-se uma cópia de segurança de todo o conteúdo disponibilizado pela HP, que em formato ZIP ficou com aproximadamente 50,6MB (contra os 77,2MB originais).

Aparentemente ela aceitou bem a reformatação feita com o gparted.

/dev/sdb1 on /media/HPSimpleSave type xfs (rw,nosuid,nodev,uhelper=hal)

$ time cp -axv '/media/sda5/downloads/Русские фильмы' /media/HPSimpleSave
cp: é impossível criar o diretório `/media/HPSimpleSave/Русские фильмы': Permissão negada

Grrrr! (solução porca/gambiarrística, pois estou com pressa agora)

$ sudo chown bremm:root /media/HPSimpleSave

Novamente com o mesmo comando de cópia (origem e destino, ambos xfs):


real 7m58.463s
user 0m0.160s
sys 0m14.460s

$ du -b /media/HPSimpleSave/
3764529297 /media/HPSimpleSave/Русские фильмы
3764529337 /media/HPSimpleSave/

Cerca de 8min para 3,6GB de arquivos. Não é uma maravilha, mas em se tratando de xfs nas duas pontas e uma interface USB 2.0, está razoável.

$ time rm -rf /media/HPSimpleSave/Русские\ фильмы/
real 0m0.279s
user 0m0.040s
sys 0m0.190s

Curiosamente, ao mover os arquivos, o tempo real foi menor (!):


real 6m41.767s
user 0m0.160s
sys 0m14.090s

A explicação lógica é que os arquivos já se encontravam lá? Não sei ao certo, pois ao dar o rm -rf, apenas são mudados os dados na tabela de alocação de arquivo, e ainda seria possível recuperar os arquivos integralmente caso nada mais fosse gravado na unidade.

Agora, movendo cerca de 1,5GB em pequenos arquivos (clipes de música com tamanhos variados, de 30 a 120MB, aproximadamente):


real 3m21.463s
user 0m0.060s
sys 0m5.610s

Na tarde do dia 4 levei um susto, pois do nada a unidade “desconectou-se” e houve corrupção parcial no sistema de arquivos (coisa boba, mas que me deu um belo susto, pois achei que a unidade de disco havia “morrido”, graças a má fama do fabricante).

Feb 4 12:55:02 host kernel: [980441.415684] usb 1-4: USB disconnect, address 15
Feb 4 12:55:02 host kernel: [980442.437283] xfs_force_shutdown(sdb1,0×2) called from line 1043 of file /build/buildd/linux-2.6.31/fs/xfs/xfs_log.c. Return address = 0xffffffffa0b8fcfe
Feb 4 12:55:20 host kernel: [980459.800038] usb 1-4: new high speed USB device using ehci_hcd and address 17
Feb 4 12:55:20 host kernel: [980459.977441] usb 1-4: configuration #1 chosen from 1 choice
Feb 4 12:55:20 host kernel: [980459.978754] scsi13 : SCSI emulation for USB Mass Storage devices
Feb 4 12:55:25 host kernel: [980464.980724] scsi 13:0:0:0: Direct-Access HP External HDD 1028 PQ: 0 ANSI: 4
Feb 4 12:55:25 host kernel: [980464.986471] scsi 13:0:0:1: CD-ROM HP Virtual CD 4607 1028 PQ: 0 ANSI: 4
Feb 4 12:55:25 host kernel: [980464.987178] sd 13:0:0:0: Attached scsi generic sg2 type 0
Feb 4 12:55:25 host kernel: [980465.007888] sd 13:0:0:0: [sdb] 1952151552 512-byte logical blocks: (999 GB/930 GiB)
Feb 4 12:55:25 host kernel: [980465.013664] sr1: scsi3-mmc drive: 51x/51x caddy
Feb 4 12:55:25 host kernel: [980465.013961] sr 13:0:0:1: Attached scsi generic sg3 type 5
Feb 4 12:55:25 host kernel: [980465.018343] sd 13:0:0:0: [sdb] Write Protect is off
Feb 4 12:55:25 host kernel: [980465.030454] sdb: sdb1
Feb 4 12:55:25 host kernel: [980465.071034] sd 13:0:0:0: [sdb] Attached SCSI disk
Feb 4 12:55:28 host kernel: [980468.452495] sd 13:0:0:0: [sdb] Unhandled sense code
Feb 4 12:55:28 host kernel: [980468.452503] sd 13:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
Feb 4 12:55:28 host kernel: [980468.452510] sd 13:0:0:0: [sdb] Sense Key : Medium Error [current]
Feb 4 12:55:28 host kernel: [980468.452518] sd 13:0:0:0: [sdb] Add. Sense: Unrecovered read error
Feb 4 12:55:31 host kernel: [980470.997117] sd 13:0:0:0: [sdb] Unhandled sense code
Feb 4 12:55:31 host kernel: [980470.997125] sd 13:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
Feb 4 12:55:31 host kernel: [980470.997133] sd 13:0:0:0: [sdb] Sense Key : Medium Error [current]
Feb 4 12:55:31 host kernel: [980470.997141] sd 13:0:0:0: [sdb] Add. Sense: Unrecovered read error
Feb 4 12:55:34 host kernel: [980473.737905] sd 13:0:0:0: [sdb] Unhandled sense code
Feb 4 12:55:34 host kernel: [980473.737913] sd 13:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
Feb 4 12:55:34 host kernel: [980473.737921] sd 13:0:0:0: [sdb] Sense Key : Medium Error [current]
Feb 4 12:55:34 host kernel: [980473.737929] sd 13:0:0:0: [sdb] Add. Sense: Unrecovered read error
[...]
Feb 4 13:24:15 host kernel: [982195.173140] __ratelimit: 22 callbacks suppressed
Feb 4 13:24:18 host kernel: [982197.701564] sd 15:0:0:0: [sdb] Unhandled sense code
Feb 4 13:24:18 host kernel: [982197.701572] sd 15:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
Feb 4 13:24:18 host kernel: [982197.701580] sd 15:0:0:0: [sdb] Sense Key : Medium Error [current]
Feb 4 13:24:18 host kernel: [982197.701588] sd 15:0:0:0: [sdb] Add. Sense: Unrecovered read error

Resolvi então remontar a unidade “na unha” e ver se ela conseguia recuperar-se da falha (aparentemente causada pela porta USB e talvez pelo calor de quase 40°C aqui em casa).

Feb 4 13:24:35 host kernel: [982215.463130] XFS mounting filesystem sdb1
Feb 4 13:24:36 host kernel: [982216.415516] Starting XFS recovery on filesystem: sdb1 (logdev: internal)
Feb 4 13:24:36 host kernel: [982216.560097] Ending XFS recovery on filesystem: sdb1 (logdev: internal)

Verifiquei o conteúdo da unidade e o mesmo estava íntegro (ufa!). :-)

Nota: com mais tempo, colocarei os procedimentos e mais impressões sobre a unidade de disco.

Eis aqui um artigo em um outro blog sobre o mesmo dispositivo (que descobri ao final da minha pesquisa).

Tagged with: