Pedro Vanzella

Webcam do HP Pavillion no ubuntu


por Pedro Vanzella em 29.May, 2008, na categoria Hack

O meu notebook é bem guerreiro. É um HP Pavillion dv9010us, tela 17, dual core, 2GB de RAM. E funciona muito bem com o Linux. Já tive alguns problemas com ele, e nem tudo funciona com a facilidade que deveria, mas funciona.

Eu inclusive troquei a wireless dele (e tive que hackear a BIOS no processo) por uma Atheros ABG, para dar uma melhorada no coitado, já que veio com uma broadcom B, muito chinelona.

A única coisa que eu nunca tinha nem tentado fazer funcionar no Linux foi a webcam dele. Sabia que ela um dia tinha funcionado no windows, pois veio instalada, e cheguei a utilizá-la lá, mas após uma ou outra formatação da partição windows, nem com os drivers do site da HP ela funcionava. Simplesmente ignorei o fato e fui adiante.

Hoje, porém, eu vim no ônibus pensando em como eu não tinha nada de inútil para fazer a tarde, e no que poderia tentar fazer. Decidi pôr minha webcam pra funcionar. Minha decepção, porém, foi com a facilidade. Passo a passo, o que deve ser feito para as webcams que, como a minha, usam o chipset r5u870:

Primeiro, verifique qual webcam você tem. Dê um lsusb no terminal. Você deve encontrar uma linha como esta:

Bus 001 Device 002: ID 05ca:1870 Ricoh Co., Ltd

O que importa, nesta linha, é o que vem depois de ID. Qualquer webcam cuja ID seja 05ca:18xx funcionará com este guia.

A seguir, atualize seu sistema e instale os pacotes essenciais para a compilação com um sudo aptitude install build-essential linux-headers. Vale lembrar que eu testei com o kernel rt do ubuntustudio, e funcionou sem problema nenhum. Minha experiência diz que, se algo assim funciona nesse kernel, funciona em qualquer lugar.

Agora baixe as fontes:

svn co http://svn.mediati.org/svn/r5u870/trunk r5u870

Uma pasta com o nome de r5u870 será criada. Mude para ela com um cd e compile com um make. Não se preocupe com tudo o que aparece no teminal, são warnings do gcc, normalmente, e vai dar tudo certo assim mesmo. Se deu problema, a última linha será algo como make: *** [all] Error 2. Caso isto não tenha aparecido, está tudo ok. Siga em frente e instale com um sudo make install. Agora nada deve dar errado.

Pronto, seus drivers estão compilados. Após um reboot eles serão carregados normalmente. Caso não queira esperar, dê um sudo modprobe r5u870 e seja feliz.

Webcam

O aMSN reconheceu sem problema nenhuma minha webcam e enviou para meus contatos. O mesmo aconteceu com o xawtv (sudo aptitude install xawtv).

[Página do desenvolvedor]

Compartilhe:
  • Digg
  • del.icio.us
  • Google Bookmarks
  • Rec6
  • Reddit
  • StumbleUpon
  • Technorati
  • E-mail this story to a friend!
  • Print this article!
  • TwitThis
Tags: foto, Hack, Hardware, lindo, Linux, notebook, Tech, Ubuntu, video

Posts Similares

:foto, Hack, Hardware, lindo, Linux, notebook, Tech, Ubuntu, video
13 para este post:
  1. Suporte a Webcams integradas dos notebooks HP no Ubuntu

    [...] por Pedro Vanzella (ppvanzellaΘppvanzella·com) – referência [...]

  2. William

    Ola muito bom o artigo, meu notebook e o mesmo que o seu dv9000, a unica diferença é o processador q é turion, a wireless dele e fraca mesmo eu apanhei muito pra botar ela rodando no ubuntu 8,04 so consegui atraves do madfii. Teria como vc ensinar a turbinar ela igual vc fez com o seu??? incluindo como alterar a bios?? se sim ficaria grato. valeus

  3. Leucas

    Bom cara…. possuo um pavilion da série dv2700 e a webcam funcionou perfeitamente tanto com o ubuntu 7.10 quanto com o 8.04…

    mas mto bom essa troca de informaçoes.

  4. Fabio Rafael da Rosa

    Só para avisar, infelizmente essa dica não funciona para os dv6000 series (eles possuem uma camera diferente).
    O driver para o dv6000 é o uvcvideo, porém, a camera trava apos alguns segundos(ainda não consegui faze-la funcionar :( )

  5. Eliete Luzia Victor

    pelo amor de deus, ja nçao sei mais o que fazer. tenho uma web marca TREO, e quando liga eu mim vejo na telinha, mas quando o outro contato do outro lado vai aceitar ela cai . não consigo uza-la e nem o fone . nada’ destes recursos sendo que de primeiro funcionava bem. uso a placa vivozap YISO C 893, meu portatil é de marca TOCHIBA XP parece que a vers
    ao é 20002, por favor não tenho quem mim ajude mim ajude.

  6. Eliete Luzia Victor

    controlador de barra de sm, em gerenciador , r outros dispositivos estão com um ponto de interrogação e com um ponto de exclmação em cima e com uma cor amatela
    será o que é isso pode mim ajudarem. será que é isso que meuportatil vive avariado

  7. Ricardo Peters

    Muito bom esse tutorial. Tenho um dv9000 e uso o Ubuntu 8.10. Funcionou que é uma beleza! Testei no skype e deu certo também. Parabéns e muito obrigado!

  8. NetForce

    O meu é um Sany Vaio – VGN-SZ470N – vejam o erro
    —————————————–

    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c: In function ‘usbcam_v4l_open’:
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:115: error: implicit declaration of function ‘videobuf_queue_pci_init’
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c: In function ‘usbcam_v4l_ioctl’:
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1130: error: implicit declaration of function ‘video_usercopy’
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1134: error: implicit declaration of function ‘video_ioctl2’
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c: At top level:
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1176: error: unknown field ‘type’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1177: error: unknown field ‘type2’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1180: error: unknown field ‘vidioc_querycap’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1180: warning: initialization makes integer from pointer without a cast
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1181: error: unknown field ‘vidioc_enum_fmt_cap’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1181: warning: initialization makes integer from pointer without a cast
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1182: error: unknown field ‘vidioc_g_fmt_cap’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1182: warning: initialization makes integer from pointer without a cast
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1182: error: initializer element is not computable at load time
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1182: error: (near initialization for ‘usbcam_videodev_template.tvnorms’)
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1183: error: unknown field ‘vidioc_s_fmt_cap’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1183: warning: initialization makes integer from pointer without a cast
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1183: error: initializer element is not computable at load time
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1183: error: (near initialization for ‘usbcam_videodev_template.current_norm’)
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1184: error: unknown field ‘vidioc_try_fmt_cap’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1184: warning: initialization from incompatible pointer type
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1185: error: unknown field ‘vidioc_reqbufs’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1185: warning: initialization from incompatible pointer type
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1186: error: unknown field ‘vidioc_querybuf’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1187: error: unknown field ‘vidioc_qbuf’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1187: warning: initialization makes integer from pointer without a cast
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1188: error: unknown field ‘vidioc_dqbuf’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1188: warning: missing braces around initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1188: warning: (near initialization for ‘usbcam_videodev_template.lock’)
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1188: warning: initialization makes integer from pointer without a cast
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1189: error: unknown field ‘vidiocgmbuf’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1189: warning: excess elements in struct initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1189: warning: (near initialization for ‘usbcam_videodev_template’)
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1190: error: unknown field ‘vidioc_enum_input’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1190: warning: excess elements in struct initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1190: warning: (near initialization for ‘usbcam_videodev_template’)
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1191: error: unknown field ‘vidioc_streamon’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1191: warning: excess elements in struct initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1191: warning: (near initialization for ‘usbcam_videodev_template’)
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1192: error: unknown field ‘vidioc_streamoff’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1192: warning: excess elements in struct initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1192: warning: (near initialization for ‘usbcam_videodev_template’)
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1193: error: unknown field ‘vidioc_g_input’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1193: warning: excess elements in struct initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1193: warning: (near initialization for ‘usbcam_videodev_template’)
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1194: error: unknown field ‘vidioc_s_input’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1194: warning: excess elements in struct initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1194: warning: (near initialization for ‘usbcam_videodev_template’)
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1195: error: unknown field ‘vidioc_queryctrl’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1195: warning: excess elements in struct initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1195: warning: (near initialization for ‘usbcam_videodev_template’)
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1196: error: unknown field ‘vidioc_g_ctrl’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1196: warning: excess elements in struct initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1196: warning: (near initialization for ‘usbcam_videodev_template’)
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1197: error: unknown field ‘vidioc_s_ctrl’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1197: warning: excess elements in struct initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1197: warning: (near initialization for ‘usbcam_videodev_template’)
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1198: error: unknown field ‘vidioc_querymenu’ specified in initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1198: warning: excess elements in struct initializer
    /usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.c:1198: warning: (near initialization for ‘usbcam_videodev_template’)
    make[3]: *** [/usr/local/src/r5u870-0.11.2/usbcam/usbcam_fops.o] Error 1
    make[2]: *** [/usr/local/src/r5u870-0.11.2/usbcam] Error 2
    make[1]: *** [_module_/usr/local/src/r5u870-0.11.2] Error 2
    make[1]: Leaving directory `/usr/src/linux-headers-2.6.27-7-generic’
    make: *** [all] Error 2

  9. Pedro Vanzella

    Tu viu que é sobre a webcam de um HP PAVILLION? HP ≠ Sony.

  10. NetForce

    Vi sim. porem no site no readme do pacote veja o que tem…

    05ca:1810 HP Pavilion Webcam – UVC
    05ca:1830 Sony Visual Communication Camera VGP-VCC2 (for VAIO SZ)
    05ca:1832 Sony Visual Communication Camera VGP-VCC3 (for VAIO UX)
    05ca:1833 Sony Visual Communication Camera VGP-VCC2 (for VAIO AR1)
    05ca:1834 Sony Visual Communication Camera VGP-VCC2 (for VAIO AR2)
    05ca:1835 Sony Visual Communication Camera VGP-VCC5 (for VAIO SZ)
    05ca:1836 Sony Visual Communication Camera VGP-VCC4 (for VAIO FE)
    05ca:1837 Sony Visual Communication Camera VGP-VCC4 (for VAIO FZ)
    05ca:1839 Sony Visual Communication Camera VGP-VCC6 (for VAIO CR)
    05ca:183a Sony Visual Communication Camera VGP-VCC7 (for VAIO SZ)
    05ca:183b Sony Visual Communication Camera VGP-VCC8 (for VAIO FZ)
    05ca:1870 HP Pavilion Webcam / HP Webcam 1000

    A minha cam é esta

    05ca:1835 Sony Visual Communication Camera VGP-VCC5 (for VAIO SZ)

    Então, teoricamente era para funcionar. no meu ubuntu ja tem os pacotes indo pelo aptitude porem com a versao de kernel diferente da minha, por isto acho que o problema acontece.

  11. Zoran

    O seu tutorial me ajudou muito cara. =D

    Zoran

    Vaio VGN-CR520e

  12. Tiago

    O meu notebook é um compaq presario CQ50-110br, a webcam não funciona de jeito nenhum no ubuntu 8.04. Quando aciono ela no skype ou amsn o sistema trava por completo, preciso desligar na tecla power… único jeito para religar o note. Vou passar as informações do meu notebook depois de um # lsusb:
    Bus 008 Device 001: ID 0000:0000
    Bus 007 Device 003: ID 04f2:b091 Chicony Electronics Co., Ltd
    Bus 007 Device 002: ID 0bda:0158 Realtek Semiconductor Corp. Mass Stroage Device
    Bus 007 Device 001: ID 0000:0000
    Bus 006 Device 001: ID 0000:0000
    Bus 005 Device 010: ID 04f3:0210 Elan Microelectronics Corp. AM-400 Hama Optical Mouse
    Bus 005 Device 001: ID 0000:0000
    Bus 004 Device 001: ID 0000:0000
    Bus 003 Device 001: ID 0000:0000
    Bus 002 Device 001: ID 0000:0000
    Bus 001 Device 001: ID 0000:0000

    Se puder me ajudar… ficarei grato!

    Valeu!!!

  13. Riciere Mingato de Oliveira

    meu nooT BOOK é um Hp Paivilion dv1000, eu nao consigo encontar en nenhum lugar o software para a webcam ,que é embutida no noot book ! por favor alguem me passa o site para baixar o software desda webcam por favor!! ja entrei no site da hp so axo o driver e nao o software!!!}obrigado

Comente

Procurando algo?

Use o campo abaixo para achar:

Não achou? Me mande um email com a sugestão de um post!