WeeWx Installation

In first it's necessary make update and upgrade:

sudo apt-get update && sudo apt-get -y upgrade

# Need packages :

sudo apt-get install python-configobj
sudo apt-get install python-cheetah
sudo apt-get install python-imaging

# Need package only if you use serial port or USB:

sudo apt-get install python-serial 
sudo apt-get install python-usb

# Need package only if you use MySQL:

sudo apt-get install mysql-client
sudo apt-get install python-mysqldb

# Need package only if you use FTP:

sudo apt-get install ftp

Write every line begin with sudo or write only a line like this:

sudo apt-get install python-configobj python-cheetah python-imaging python-serial python-usb

Download Weexw file, to obtain good number version go to download page write:

sudo wget weewx.com/downloads/weewx-X.Y.Z.tar.gz

We will decompress the file (replace version number weewx-X.Y.Z by curent version ) Following lines are with the version of May-09-2016

sudo tar xvfz weewx-3.5.0.tar.gz 

go to directory and decompress:

cd weewx-3.5.0

Install software

./setup.py build

and

sudo ./setup.py install

Answer the questions:

description: Station météo WS1080 altitude: 315, meter latitude: (valeur en decimal) longitude: (valeur en decimal) units [metric]: faire entrée

Installed drivers include:

0) AcuRite (weewx.drivers.acurite)

1) CC3000 (weewx.drivers.cc3000)

2) FineOffsetUSB (weewx.drivers.fousb)

3) Simulator (weewx.drivers.simulator)

4) TE923 (weewx.drivers.te923)

5) Ultimeter (weewx.drivers.ultimeter)

6) Vantage (weewx.drivers.vantage)

7) WMR100 (weewx.drivers.wmr100)

8) WMR200 (weewx.drivers.wmr200)

9) WMR9x8 (weewx.drivers.wmr9x8)

10) WS1 (weewx.drivers.ws1)

11) WS23xx (weewx.drivers.ws23xx)

12) WS28xx (weewx.drivers.ws28xx)

choose a driver: 2 (for me) weather station is Conrad WS1080

All parameter are entered

For launch configuration:

/home/weewx/bin/wee_config --reconfigure --driver=weewx.drivers.vantage

Edit conf file:

sudo nano /home/pi/weewx-3.5.0/weewx.conf

change model if you need

# The station model, e.g., WH1080, WS1090, WS2080, WH3081
    model = WS1080

Change the target_unit

target_unit = METRIC 

CTRL X to Quit

Software is installed to verify if your weather station answer write the followed command:

sudo /home/pi/weewx-3.5.0/bin/wee_device

Editer wee_device to remove header lines.

sudo nano /home/pi/weewx-3.5.0/bin/wee_device

add # before followed lines

#    print 'Using configuration file %s' % config_fn

and

#       print 'Using %s driver version %s (%s)' % (
 #           driver_name, driver_vers, driver)

This command give live data weather report

sudo /home/pi/weewx-3.5.0/bin/wee_device --current

Modification of Logic.tcl

Edit Logic.tcl and add following lines:

sudo nano /usr/share/svxlink/events.d/local/Logic.tcl
#SEND DTMF CODE 25#
#WEATHER STATION WITH WEEWX
  if {$cmd == "25"} {   
#ASK DATA
  playMsg "SVXCard/Weatherstation" "weatherinfo"
  set runcmd [exec /home/pi/weewx-3.5.0/bin/wee_device --current];  #ask weather datas
  set splitip [split $runcmd ,]
 
lassign $splitip status delay outTempBatteryStatus outTemp outHumidity UV radiation rain dateTime windDir pressure windSpeed inHum$
 
#puts $status
#puts $delay
#puts $outTempBatteryStatus
 
#TEMPERATURE OUT
puts $outTemp
set outTemp [lindex $outTemp 1]
 
if {$outTemp != "None"} {
 
 set outTemp [format {%0.1f} [expr $outTemp]]
playMsg "SVXCard/Weatherstation" "tempext";
playTemp $outTemp;
 
} else {
 
 puts "Temperature exterieur non disponible"
playMsg "SVXCard/Weatherstation" "tempext";
playMsg "SVXCard/Weatherstation" "noavailable";
}
#HUMIDITY OUT
puts $outHumidity
set outHumidity [lindex $outHumidity 1]
if {$outHumidity != "None"} {
 
playMsg "SVXCard/Weatherstation" "humidityout";
playNumber $outHumidity;
playMsg "Default" "percent";
} else {
 
 puts "Humidité exterieur non disponible"
playMsg "SVXCard/Weatherstation" "humidityext";
playMsg "SVXCard/Weatherstation" "noavailable";
}
#puts $UV
#puts $radiation
puts $rain
#puts $dateTime
 
#WIND DIRECTION
puts $windDir
set windDir [lindex $windDir 1]
 
playMsg "SVXCard/Weatherstation" "winddir";
playWindDir $windDir
 
#WINDSPEED
puts $windSpeed
set windSpeed [lindex $windSpeed 1]
if {$windSpeed != "None"} {
 
playMsg "SVXCard/Weatherstation" "windspeed";
 
set windSpeed [format {%0.1f} [expr $windSpeed]]
playNumber $windSpeed;
playMsg "SVXCard/Weatherstation" "kmh";
} else {
 
 
 puts "Wind speed not available"
}
 
#PRESSURE
puts $pressure
set pressure [lindex $pressure 1]
HUMIDITY OUT
puts $outHumidity
set outHumidity [lindex $outHumidity 1]
if {$outHumidity != "None"} {
 
playMsg "SVXCard/Weatherstation" "humidityout";
playNumber $outHumidity;
playMsg "Default" "percent";
} else {
 
 puts "Humidity exterior not available"
playMsg "SVXCard/Weatherstation" "humidityext";
playMsg "SVXCard/Weatherstation" "noavailable";
}
#puts $UV
#puts $radiation
puts $rain
#puts $dateTime
 
#WIND DIRECTION
puts $windDir
set windDir [lindex $windDir 1]
 
playMsg "SVXCard/Weatherstation" "winddir";
playWindDir $windDir
 
#WINDSPEED
puts $windSpeed
set windSpeed [lindex $windSpeed 1]
if {$windSpeed != "None"} {
 
playMsg "SVXCard/Weatherstation" "windspeed";
 
set windSpeed [format {%0.1f} [expr $windSpeed]]
playNumber $windSpeed;
playMsg "SVXCard/Weatherstation" "kmh";
} else {
 
 
 puts "Wind speed not available"
}
 
#PRESSURE
puts $pressure
set pressure [lindex $pressure 1]
set pressure [format {%0.1f} [expr $pressure]]
playMsg "SVXCard/Weatherstation" "pressure";
playNumber $pressure;
playMsg "SVXCard/Weatherstation" "hpa";
 
# TEMPERATURE IN 
puts $inTemp
set inTemp [lindex $inTemp 1]
set inTemp [format {%0.1f} [expr $inTemp]]
 
playMsg "SVXCard/Weatherstation" "tempint";
playTemp $inTemp;
 
# HUMINIDY IN
puts $inHumidity
set inHumidity [lindex $inHumidity 1]
playMsg "SVXCard/Weatherstation" "humidityin";
playNumber $inHumidity;
playMsg "Default" "percent";
 
#puts $rxCheckPercent
puts $windGust
puts $rainTotal
 
#puts $ptr
#puts $usUnits
#WIND GUST DIRECTION
 
puts $windGustDir
set windDir [lindex $windGustDir 1]
 
playWindDir $windGustDir
 
    return 1
  }

Its necessary add a locale.tcl file in events.d directory in language file. (fr_FR/events.d/locale.tcl) available here, this file is modified to speak good as possible and integred function to read wind direction and other small modification (no tested with English language for the moment).