Modifications

Sauter à la navigation Sauter à la recherche
Ligne 244 : Ligne 244 :  
* Send it over the USB-serial connection
 
* Send it over the USB-serial connection
 
* Send it over the radio link
 
* Send it over the radio link
 +
 +
First, the script will includes all the needed libraries.
 +
 +
<syntaxhighlight lang="python">
 +
from machine import SPI, I2C, Pin, ADC
 +
from rfm69 import RFM69
 +
from bme280 import BME280, BMP280_I2CADDR
 +
import time
 +
</syntaxhighlight>
 +
 +
This section is immediately followed by the various CONSTANT declaration.
 +
 +
<syntaxhighlight lang="python">
 +
FREQ          = 433.1
 +
ENCRYPTION_KEY = b"\x01\x02\x03\x04\x05\x06\x07\x08\x01\x02\x03\x04\x05\x06\x07\x08"
 +
NODE_ID        = 120 # ID of this node
 +
BASESTATION_ID = 100 # ID of the node (base station) to be contacted
 +
</syntaxhighlight>
    
{{dbox-orange|Don't forget to update the radio frequency '''FREQ''' and the '''ENCRYPTION_KEY''' encryption key. }}
 
{{dbox-orange|Don't forget to update the radio frequency '''FREQ''' and the '''ENCRYPTION_KEY''' encryption key. }}
   −
First, the script will includes all the needed libraries.
+
Then we create the needed buses resources to access the various sensor.
 +
 
 +
<syntaxhighlight lang="python">
 +
spi = SPI(0, baudrate=50000, polarity=0, phase=0, firstbit=SPI.MSB)
 +
nss = Pin( 5, Pin.OUT, value=True )
 +
rst = Pin( 3, Pin.OUT, value=False )
 +
i2c = I2C(0)
 +
</syntaxhighlight>
 +
 
 +
Next we create the RFM69 radio object (named {{fname|rfm}}) and the BMP280 radio object (named {{fname|bmp}}).
 +
 
 +
<syntaxhighlight lang="python">
 +
# RFM Module
 +
rfm = RFM69( spi=spi, nss=nss, reset=rst )
 +
rfm.frequency_mhz  = FREQ
 +
rfm.encryption_key = ( ENCRYPTION_KEY )
 +
rfm.node          = NODE_ID # This instance is the node 120
 +
rfm.destination    = BASESTATION_ID # Send to specific node 100
 +
# BMP280 (uses the BME280)
 +
bmp = BME280( i2c=i2c, address=BMP280_I2CADDR )
 +
</syntaxhighlight>
    
== Fault tolerant design ==
 
== Fault tolerant design ==
29 917

modifications

Menu de navigation