示例#1
0
def main():

    # Controller(spi = spi,
    # pin_id_led = ON_BOARD_LED_PIN_NO,
    # on_board_led_high_is_on = ON_BOARD_LED_HIGH_IS_ON,
    # pin_id_reset = PIN_ID_FOR_LORA_RESET,
    # blink_on_start = (2, 0.5, 0.5))
    controller = config_lora.Controller()

    # SX127x(name = 'SX127x',
    # parameters = {'frequency': 433E6, 'tx_power_level': 2, 'signal_bandwidth': 125E3,
    # 'spreading_factor': 8, 'coding_rate': 5, 'preamble_length': 8,
    # 'implicitHeader': False, 'sync_word': 0x12, 'enable_CRC': False},
    # onReceive = None)

    # controller.add_transceiver(transceiver,
    # pin_id_ss = PIN_ID_FOR_LORA_SS,
    # pin_id_RxDone = PIN_ID_FOR_LORA_DIO0,
    # pin_id_RxTimeout = PIN_ID_FOR_LORA_DIO1,
    # pin_id_ValidHeader = PIN_ID_FOR_LORA_DIO2,
    # pin_id_CadDone = PIN_ID_FOR_LORA_DIO3,
    # pin_id_CadDetected = PIN_ID_FOR_LORA_DIO4,
    # pin_id_PayloadCrcError = PIN_ID_FOR_LORA_DIO5)
    lora1 = controller.add_transceiver(sx127x.SX127x(name='LoRa1'),
                                       pin_id_ss=PIN_ID_SS_1,
                                       pin_id_RxDone=PIN_ID_FOR_LORA1_DIO0)
    lora2 = controller.add_transceiver(sx127x.SX127x(name='LoRa2'),
                                       pin_id_ss=PIN_ID_SS_2,
                                       pin_id_RxDone=PIN_ID_FOR_LORA2_DIO0)

    LoRaReceiverCallback_dual_channels.receiveCallback(lora1, lora2)
示例#2
0
文件: test.py 项目: skylin008/hackTM
def main():

    # Controller(
    # pin_id_led = ON_BOARD_LED_PIN_NO,
    # on_board_led_high_is_on = ON_BOARD_LED_HIGH_IS_ON,
    # pin_id_reset = PIN_ID_FOR_LORA_RESET,
    # blink_on_start = (2, 0.5, 0.5))
    controller = config_lora.Controller()

    # SX127x(name = 'SX127x',
    # parameters = {'frequency': 433E6, 'tx_power_level': 2, 'signal_bandwidth': 125E3,
    # 'spreading_factor': 8, 'coding_rate': 5, 'preamble_length': 8,
    # 'implicitHeader': False, 'sync_word': 0x12, 'enable_CRC': False},
    # onReceive = None)

    # controller.add_transceiver(transceiver,
    # pin_id_ss = PIN_ID_FOR_LORA_SS,
    # pin_id_RxDone = PIN_ID_FOR_LORA_DIO0,
    # pin_id_RxTimeout = PIN_ID_FOR_LORA_DIO1,
    # pin_id_ValidHeader = PIN_ID_FOR_LORA_DIO2,
    # pin_id_CadDone = PIN_ID_FOR_LORA_DIO3,
    # pin_id_CadDetected = PIN_ID_FOR_LORA_DIO4,
    # pin_id_PayloadCrcError = PIN_ID_FOR_LORA_DIO5)
    lora = controller.add_transceiver(
        sx127x.SX127x(name='LoRa'),
        pin_id_ss=config_lora.Controller.PIN_ID_FOR_LORA_SS,
        pin_id_RxDone=config_lora.Controller.PIN_ID_FOR_LORA_DIO0)
    print('lora', lora)

    # LoRaDumpRegisters.dumpRegisters(lora)
    LoRaSender.send(lora)
def createLoRa(syncWord=0x34):
    '''
    Create LoRa Instance
    '''
    '''
    pin_id_led = ON_BOARD_LED_PIN_NO
    on_board_led_high_is_on = ON_BOARD_LED_HIGH_IS_ON
    pin_id_reset = PIN_ID_FOR_LORA_RESET
    blink_on_start = (2, 0.5, 0.5)
    '''
    controller = config_lora.Controller()
    '''
    name = 'SX127x'
    parameters = {'frequency': 433E6, 'tx_power_level': 2, 'signal_bandwidth': 125E3,
                  'spreading_factor': 8, 'coding_rate': 5, 'preamble_length': 8,
                  'implicitHeader': False, 'sync_word': 0x12, 'enable_CRC': False}
    onReceive = None
    '''
    SX127x_Ins = sx127x.SX127x(name='LoRa')
    '''
    transceiver: SX127x
    pin_id_ss = PIN_ID_FOR_LORA_SS
    pin_id_RxDone = PIN_ID_FOR_LORA_DIO0
    pin_id_RxTimeout = PIN_ID_FOR_LORA_DIO1
    pin_id_ValidHeader = PIN_ID_FOR_LORA_DIO2
    pin_id_CadDone = PIN_ID_FOR_LORA_DIO3
    pin_id_CadDetected = PIN_ID_FOR_LORA_DIO4
    pin_id_PayloadCrcError = PIN_ID_FOR_LORA_DIO5
    '''
    lora = controller.add_transceiver(
        SX127x_Ins,
        pin_id_ss=config_lora.Controller.PIN_ID_FOR_LORA_SS,
        pin_id_RxDone=config_lora.Controller.PIN_ID_FOR_LORA_DIO0)
    lora.setSyncWord(syncWord)
    return lora
示例#4
0
    def __init__(self):

        self.controller = config_lora.Controller()

        self.lora = self.controller.add_transceiver(
            sx127x.SX127x(name='LoRa'),
            pin_id_ss=config_lora.Controller.PIN_ID_FOR_LORA_SS,
            pin_id_RxDone=config_lora.Controller.PIN_ID_FOR_LORA_DIO0)

        self.INTERVAL_BASE_RESEND = 10000  # interval to resend data

        self.msgSendFlag = 0
        self.IDSERVIDOR = 1001  # el id 1001 es cuando no sabe quien es el servidor
        self.IDNODO = 0000
        #busca la id del dispositivos
        try:
            fileID = open("id", "rt")
        except FileNotFoundError:
            # doesn't exist
            fileID = open("id", "wt")
            self.IDSNODO = randint(1002, 9999)
            fileID.write(str(self.IDSNODO))
            fileID.close()
        else:
            # exists
            self.IDNODO = int(fileID.read())
            fileID.close()

        print("EL ID del nodo es ", self.IDNODO)
        self.MessageClient()
示例#5
0
def main():
    controller = Controller()

    lora = controller.add_transceiver(sx127x.SX127x(name='LoRa'),
                                      pin_id_ss=Controller.PIN_ID_FOR_LORA_SS,
                                      pin_id_RxDone=Controller.PIN_ID_FOR_LORA_DIO0)

    LoRaDuplex.duplex(lora)
示例#6
0
def main():
    controller = config_lora.Controller()
    lora = controller.add_transceiver(
        sx127x.SX127x(name='LoRa'),
        pin_id_ss=config_lora.Controller.PIN_ID_FOR_LORA_SS,
        pin_id_RxDone=config_lora.Controller.PIN_ID_FOR_LORA_DIO0)
    print('lora', lora)
    LoRaDuplexCallback.duplexCallback(lora)
示例#7
0
    def __init__(self, lora_freq=915E6, lora_txpwr=2):
        self._i2c = machine.I2C(-1,
                                scl=machine.Pin(15),
                                sda=machine.Pin(4),
                                freq=400000)
        self._oled = ssd1306.SSD1306_I2C(128, 64, self._i2c)

        self._d_rst = machine.Pin(16, machine.Pin.OUT)
        self._d_rst.value(0)
        time.sleep_ms(20)

        device_pins = {
            'miso': 19,
            'mosi': 27,
            'ss': 18,
            'sck': 5,
            'dio_0': 26,
            'reset': 16,
            'led': 2,
        }

        lora_parameters = {
            'frequency': lora_freq,
            'tx_power_level': lora_txpwr,
            'signal_bandwidth': 125E3,
            'spreading_factor': 8,
            'coding_rate': 5,
            'preamble_length': 8,
            'implicit_header': False,
            'sync_word': 0x12,
            'enable_CRC': False,
            'invert_IQ': False,
        }

        self._device_spi = machine.SPI(
            baudrate=10000000,
            polarity=0,
            phase=0,
            bits=8,
            firstbit=machine.SPI.MSB,
            sck=machine.Pin(device_pins['sck'], machine.Pin.OUT,
                            machine.Pin.PULL_DOWN),
            mosi=machine.Pin(device_pins['mosi'], machine.Pin.OUT,
                             machine.Pin.PULL_UP),
            miso=machine.Pin(device_pins['miso'], machine.Pin.IN,
                             machine.Pin.PULL_UP))
        self._lora = sx127x.SX127x(self._device_spi,
                                   pins=device_pins,
                                   parameters=lora_parameters)

        self._d_rst.value(1)
        self._oled.init_display()
        self._oled.contrast(1)
        self.show('System Initialized', 'Call receiver()', '...or sender()')
示例#8
0
文件: lora.py 项目: c3loc/tracker
def init():
	controller = Controller()
	l = None
	count = 0
	while not l and count < 3:
		try:
			l = controller.add_transceiver(sx127x.SX127x(name = 'LoRa'),pin_id_ss = controller.PIN_ID_FOR_LORA_SS,pin_id_RxDone = controller.PIN_ID_FOR_LORA_DIO0)
		except Exception as e:
			count += 1
			if count > 2:
				raise e
	return l
        def start_gateway():
            import node
            nd = node.Node()
            gw = nd.worker
            lora = gw.add_transceiver(
                sx127x.SX127x(name='LoRa'),
                pin_id_ss=config_lora.Controller.PIN_ID_FOR_LORA_SS,
                pin_id_RxDone=config_lora.Controller.PIN_ID_FOR_LORA_DIO0)
            lora.onReceive(gw.received_packet_update_link)
            lora.receive()

            nd.run()
示例#10
0
def main():
    ip = webserver.connect()
    
    controller = config_lora.Controller()                
    lora = controller.add_transceiver(sx127x.SX127x(name = 'LoRa'),
                                      pin_id_ss = config_lora.Controller.PIN_ID_FOR_LORA_SS,
                                      pin_id_RxDone = config_lora.Controller.PIN_ID_FOR_LORA_DIO0)
    print('lora', lora)
    
    gate = lora_node.Lora_Gate("Master", lora, ip)
    
    gate.working()
    print("Error ,program over")
示例#11
0
    def __init__(self):

        self.controller = config_lora.Controller()

        self.lora = self.controller.add_transceiver(
            sx127x.SX127x(name='LoRa'),
            pin_id_ss=config_lora.Controller.PIN_ID_FOR_LORA_SS,
            pin_id_RxDone=config_lora.Controller.PIN_ID_FOR_LORA_DIO0)

        self.INTERVAL_BASE_RESEND = 10000  # interval to re send data

        self.msgSendFlag = 0

        self.MessageClient()
示例#12
0
def main():
    ip = webserver.connect()

    controller = config_lora.Controller()
    lora = controller.add_transceiver(
        sx127x.SX127x(name='LoRa'),
        pin_id_ss=config_lora.Controller.PIN_ID_FOR_LORA_SS,
        pin_id_RxDone=config_lora.Controller.PIN_ID_FOR_LORA_DIO0)
    print('lora', lora)
    print("ready to create node")

    #node = lora_node.Lora_Node("xbw","001",1)
    #gate = lora_node.Lora_Gate("Master1", lora_node.MODE_RECEIVER, lora, node)

    #node = lora_node.Lora_Node("xbw","001",1)
    #gate = lora_node.Lora_Gate("Master1", lora_node.MODE_TRANSFER, lora, node)

    gate = lora_node.Lora_Gate("Master1", lora_node.MODE_GATE, lora, ip)

    gate.working()
    print("Error ,program over")
示例#13
0
文件: main.py 项目: ggirjau/hackTM
timer = machine.Timer(1)
timer.init(period=timer_delay,
           mode=machine.Timer.PERIODIC,
           callback=timer_callback)
send_flag = False

# Initialize controller
# add lora transceiver
controller = config_sensorboard.Controller()
lora = controller.add_transceiver(
    sx127x.SX127x(name='LoRa',
                  parameters={
                      'frequency': 868.3E6,
                      'tx_power_level': 10,
                      'signal_bandwidth': 125E3,
                      'spreading_factor': 10,
                      'coding_rate': 1,
                      'preamble_length': 12,
                      'implicitHeader': False,
                      'sync_word': 0x12,
                      'enable_CRC': True
                  }))

controller.show_text("Hello HackTM!", x=0, y=0, clear_first=True)
gc.collect()

while 1:

    if send_flag == True:
        payload = "x"
        controller.lora_send(lora, payload)
        print("sending %s" % payload)
示例#14
0
# import LoRaDumpRegisters
import LoRaSender
import LoRaReceiver
# import LoRaSetSpread
# import LoRaSetSyncWord
# import LoRaReceiverCallback
# import LoRaReceiverCallback_dual_channels
# import LoRaDuplex
# import LoRaDuplexCallback
# import LoRaPingPong

PIN_ID_SS = 26
PIN_ID_FOR_LORA_DIO0 = 21

controller = config_lora.Controller()
lora = controller.add_transceiver(sx127x.SX127x(name='LoRa'),
                                  pin_id_ss=PIN_ID_SS,
                                  pin_id_RxDone=PIN_ID_FOR_LORA_DIO0)
LoRaSender.send(lora)


def main():

    # Controller(spi = spi,
    # pin_id_led = ON_BOARD_LED_PIN_NO,
    # on_board_led_high_is_on = ON_BOARD_LED_HIGH_IS_ON,
    # pin_id_reset = PIN_ID_FOR_LORA_RESET,
    # blink_on_start = (2, 0.5, 0.5))
    controller = config_lora.Controller()

    # SX127x(name = 'SX127x',
示例#15
0
文件: main.py 项目: skylin008/hackTM
import config_sensorboard

#GPIOs (all input):
#    0 -> Pin 36
#    1 -> Pin 37
#    2 -> Pin 38
#    3 -> Pin 39

uart_rx = 12
uart_tx = 13

uart = machine.UART(1, rx=uart_rx, tx=uart_tx)

controller = config_sensorboard.Controller()
lora = controller.add_transceiver(
    sx127x.SX127x(name='LoRa'),
    pin_id_ss=config_sensorboard.Controller.PIN_ID_FOR_LORA_SS,
    pin_id_RxDone=config_sensorboard.Controller.PIN_ID_FOR_LORA_DIO0)
data = {}

while True:

    for i in range(3):
        uart.write(str(i + 1) + "\r\n")
        sleep(0.3)
        rec = uart.read()

        if rec != None:
            value = rec.decode()[:-2]
            data[i] = value
        else: