Cambiare il driver

Introduzione

A volte è necessario passare da un driver all'altro. Ad esempio, quando installi Weewx, potresti iniziare con il simulatore, quindi successivamente decidere di passare all'hardware reale, ad esempio una stazione meteorologica Davis Vantage. Questa guida mostra come fare.

Il driver è specificato nel file weewx.conf, in particolare dal parametro station_type nella sezione [Station]. Deve esserci una stanza corrispondente al valore specificato per station_type, e quella stanza deve contenere un parametro driver che dice a Weewx dove trovare il codice effettivo per il driver.

Ad esempio, ecco la configurazione predefinita per il simulatore:

[Station]
    ...
    station_type = Simulator

[Simulator]
    # This section is for the weewx weather station simulator

    # The time (in seconds) between LOOP packets.
    loop_interval = 2.5

    # The simulator mode can be either 'simulator' or 'generator'.
    # Real-time simulator. Sleep between each LOOP packet.
    mode = simulator
    # Generator.  Emit LOOP packets as fast as possible (useful for testing).
    #mode = generator

    # The start time. If not specified, the default is to use the present time.
    #start = 2011-01-01 00:00

    # The driver to use:
    driver = weewx.drivers.simulator

In Weewx 2.x, il file weewx.conf predefinito conteneva una stanza per ognuna delle stazioni supportate. In Weewx 3.x, una stanza del driver viene inserita in weewx.conf quando installi Weewx.

Qualsiasi numero di stanze driver può trovarsi nel file weewx.conf, ma solo una può essere attiva, quella specificata dal parametro station_type.

Approccio manuale: modificare weewx.conf

Questo approccio funzionerà su qualsiasi installazione Weewx sia per driver standard che personalizzati.

  1. Ferma Weewx
sudo /etc/init.d/weewx stop
  1. Modifica weewx.conf

    Ad esempio, per specificare il driver Vantage per l'hardware Davis Vantage Pro 2:

[Station]
        ...
        station_type = Vantage

[Vantage]
        type = serial
        port = /dev/ttyUSB0
        driver = weewx.drivers.vantage

  1. Avvia Weewx
sudo /etc/init.d/weewx start
Approccio Weewx: eseguire wee_config

Questo approccio funzionerà su qualsiasi installazione Weewx per driver standard e/o driver nella directory user.

  1. Ferma Weewx
sudo /etc/init.d/weewx stop

  1. Eseguire wee_config con l'opzione reconfigure:
sudo wee_config --reconfigure

  1. Avvia Weewx
sudo /etc/init.d/weewx start

Il comando wee_config dovrebbe richiedere i parametri della stazione, incluso il tipo di stazione e qualsiasi opzione richiesta dalla stazione.

Approccio Debian: eseguire dpkg

Questo approccio funzionerà per driver standard su installazioni Weewx che sono state installate da un pacchetto .deb.

  1. Eseguire l'opzione reconfigure su dpkg
sudo dpkg-reconfigure weewx

Ciò dovrebbe richiedere i parametri della stazione, incluso il tipo di stazione e qualsiasi opzione richiesta dalla stazione.

Driver personalizzati

Se utilizzi un driver personalizzato, devi utilizzare l'approccio manuale. Un driver personalizzato è qualsiasi driver che non implementa tutti i metodi AbstractConfEditor.

Se sviluppi il tuo driver, dovresti metterlo nella directory user e poi configurare manualmente weewx.conf.

Autore: Matthew Wall