Problemas para configurar o RTC do meteorolog
Estou utilizando um raspberry pi e um arduino uno com o shield da estação (os mesmos usados no fisl).
Existe algum problema com a configuração do RTC utilizando o "setrtc".No início, tentei configurar o RTC usando o comando "set-rtc,Y,m,d,H,,M,S". Não está muito claro onde eu deveria dar este comando, nem como. Está na parte "seria commands" (https://git.cta.if.ufrgs.br/meteorolog/arduino-meteorolog/wikis/serial-commands), o que me fez endenter que deveria ser feito na serial. Por isso, dei um "make serial" e "setrtc,2015,7,14,16,35,00", mas a seguinte mensagem de erro:
>>>setrtc,2015,7,14,16,35,00
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'setrtc' is not defined
Tentei váriações do tema, mas nenhuma funcionou:
>>>setrtc,2015,07,14,16,35,00
File "<stdin>", line 1
setrtc,2015,07,14,16,35,00
^
SyntaxError: invalid token
>>>set-rtc,2015,07,14,16,35,00
Traceback (most recent call last):
File "<stdin>", line 1
NameError: name 'rtc' is not defined
Por não funcionar, resolvi inspecionar o arquivo "Makefile". Ali, percebi que não há nada fazendo referência ao "setrtc", apenas ao "sync-rtc". Testei na serial e não funcionou, então tentei na linha de comando normal (ainda na pasta arduino-metereolog), mas só funcionou com "make sync-rtc", que, após um "make undeploy" e um "make deploy", sincronizou com a data do raspberry.
Para saber se o problema tinha alguma relação com o raspberry ou a placa utilizada, fiz todo o processo de intalação do software num outro computador, utilizando o tropos, uma placa arduino duamilanovi e um shield de rtc do webtronic. A instalação ocorreu perfeitamente. Apesar disto, ao fazer "make serial" e "setrtc,2015,7,14,16,35,00", os mesmos erros descritos a cima apareceram. Tentei usar o "make sync-rtc" e a mesnagem apareceu:
.venv/bin/python3 logger/run.py --syncrtc Traceback (most recent call last): File "/home/tropos/arduino-meteorolog/.venv/lib/python3.4/site-packages/serial/serialposix.py", line 289, in open self.fd = os.open(self.portstr, os.O_RDWR|os.O_NOCTTY|os.O_NONBLOCK) FileNotFoundError: [Errno 2] No such file or directory: '/dev/ttyACM0'
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "logger/run.py", line 6, in Meteorologger().sync_rtc() File "/home/tropos/arduino-meteorolog/logger/app/main.py", line 292, in sync_rtc timeout=self.SERIAL_READ_TIMEOUT, xonxoff=True) File "/home/tropos/arduino-meteorolog/.venv/lib/python3.4/site-packages/serial/serialutil.py", line 282, in init self.open() File "/home/tropos/arduino-meteorolog/.venv/lib/python3.4/site-packages/serial/serialposix.py", line 292, in open raise SerialException(msg.errno, "could not open port %s: %s" % (self._port, msg)) serial.serialutil.SerialException: [Errno 2] could not open port /dev/ttyACM0: [Errno 2] No such file or directory: '/dev/ttyACM0' Makefile:108: recipe for target 'sync-rtc' failed make: *** [sync-rtc] Error 1
Com o comando "make tail-log" o retorno do read é , como seria de se esperar, já que o RTC não foi configurado.
Por fim, deixei ele sincronizado com o raspberry, o que não é ruim, mas ainda assim o comando setrtc deveria funcionar.