Posso usar um sistema de arquivos One Wire através do GPIO?

14

Eu instalei o owfs (no debian) apenas para perceber que a configuração inicial (1wire) funciona apenas através da porta USB. owfs é a abreviação de One Wire File System . É um padrão para sensores low-end, mas estou tentando especificamente conectar um DS18B20 através dos GPIOs.

Posso fazer a função de 1 fio funcionar através dos GPIOs? E se sim, como faço isso?

No começo, não entendi que os owfs geralmente querem um "IC mestre de barramento", que pode ser usado para se comunicar com os sensores de 1 fio. Achei fácil alterar as configurações para usar os GPIO sem um mestre de barramento.

cristão
fonte
sem um mestre de ônibus ..
Christian
3
Olá Christian, para obter uma resposta, acho que você precisará expandir um pouco a pergunta para explicar o que realmente é o owfs. Alguma referência dele trabalhando em um RPi?
Alex Chamberlain
1
owfs é a abreviação de One Wire File System. E é um padrão para sensores de gama baixa - mais informações em owfs.org
Maria Zverina
1
Alterei seu título com base nesses comentários. Deixe-me saber se não está bem.
Jivings
1
Obrigado pela sua pergunta Christian e obrigado por atualizá-lo com um pouco mais de informação. Eu o arrumei um pouco e adicionei algumas outras informações nos comentários.
Mark Booth

Respostas:

8

Fiz alguma investigação sobre esse assunto e obtive os seguintes resultados:

  • O módulo do kernel w1 e o OWFS não são compatíveis no momento,
  • Como você provavelmente sabe, o OWFS funciona com muitos dispositivos de hardware (pontes de 1 fio de USB / I2C / Serial / TCP, etc.) que superam qualquer solução de impacto,
  • No código fonte do OWFS (especialmente a parte owlib), há uma reescrita completa deste módulo do kernel w1 (com base no código de Evgeniy Polyakov, o autor do módulo do kernel w1), também há uma página de informações sobre isso. Mas parece que está em construção / em desenvolvimento: OWFS w1 info . Eles também afirmam que este módulo é acessado através de uma conexão netlink ( tabela Busmaster ) e se reporta ao OWFS usando avahi. (verifique os arquivos de origem no diretório owlib / src / c começando com ow_w1_ *)
  • O parâmetro --w1 commandline é usado por muitas ferramentas para dizer ao processo para usar o módulo do kernel w1, como você realmente mapeia os pinos GPIO para serem usados ​​na comunicação 1wire, não tenho ideia no momento.
  • Por fim, mas não menos importante, na lista OWFS Todo, existem entradas para adicionar GPIO e o módulo do kernel 'normal' w1, como você pode ver aqui: OWFS Todo

Eu não tenho nenhum material de conexão disponível para testar se essa 'reescrita', como mencionado no ponto 3, funciona. E, principalmente, como deve funcionar, mas na página de informações eles falam sobre como desativar o módulo do kernel w1 ou executar o OWFS como root para que ele possa descarregar o módulo do kernel w1, mas se isso já estiver implementado e funcionando, não faço ideia.

Espero que essas informações o ajudem um pouco mais e nos informe alguns resultados.

ikku
fonte
Eu escrevi cerca de metade do que em outra resposta depois de ver tanzilli.com/1wire e olhando ao redor, em seguida, percebi que, basicamente, encontrou as mesmas coisas como esta aqui :)
XTL
1

Você pode querer olhar para esta pergunta . A distribuição occidentalis possui suporte a 1 fio nos pinos GPIO.

speshak
fonte
1
Estou pronto para fazer isso! Mas a pergunta era sobre owfs! Cheers
Christian
Esse módulo do kernel possui algumas limitações severas. Leia sobre eles aqui: kernel.org/doc/Documentation/w1/slaves/w1_therm
notlesh