class LazGem::Device

Do not forget to change path of libraries

require and insmod

Function:

Lazurite Pi Gateway SubGHz library

Constants

IOCTL_CMD
IOCTL_EEPROM
IOCTL_GET_ADDR_SIZE
IOCTL_GET_ADDR_TYPE
IOCTL_GET_BPS
IOCTL_GET_CCA_WAIT
IOCTL_GET_CH
IOCTL_GET_DRV_MODE
IOCTL_GET_DST_ADDR0
IOCTL_GET_DST_ADDR1
IOCTL_GET_DST_ADDR2
IOCTL_GET_DST_ADDR3
IOCTL_GET_DST_PANID
IOCTL_GET_EACK
IOCTL_GET_ED_VALUE
IOCTL_GET_MY_ADDR0
IOCTL_GET_MY_ADDR1
IOCTL_GET_MY_ADDR2
IOCTL_GET_MY_ADDR3
IOCTL_GET_MY_PANID
IOCTL_GET_MY_SHORT_ADDR
IOCTL_GET_PWR
IOCTL_GET_RX_NSEC0
IOCTL_GET_RX_NSEC1
IOCTL_GET_RX_RSSI
IOCTL_GET_RX_SEC0
IOCTL_GET_RX_SEC1
IOCTL_GET_SEND_MODE
IOCTL_GET_SENSE_TIME
IOCTL_GET_TX_INTERVAL
IOCTL_GET_TX_RETRY
IOCTL_GET_TX_RSSI
IOCTL_PARAM
IOCTL_RF
IOCTL_RF_READ
IOCTL_RF_WRITE
IOCTL_RX_LED
IOCTL_SET_ACK_INTERVAL
IOCTL_SET_ACK_REQ
IOCTL_SET_ADDR_SIZE
IOCTL_SET_ADDR_TYPE
IOCTL_SET_AES
IOCTL_SET_ANT_SWITCH
IOCTL_SET_BEGIN
IOCTL_SET_BPS
IOCTL_SET_BROADCAST
IOCTL_SET_CCA_WAIT
IOCTL_SET_CH
IOCTL_SET_CLOSE
IOCTL_SET_DRV_MODE
IOCTL_SET_DSSS_MODE
IOCTL_SET_DSSS_SF
IOCTL_SET_DSSS_SIZE
IOCTL_SET_DST_ADDR0
IOCTL_SET_DST_ADDR1
IOCTL_SET_DST_ADDR2
IOCTL_SET_DST_ADDR3
IOCTL_SET_DST_PANID
IOCTL_SET_EACK_DATA
IOCTL_SET_EACK_ENB
IOCTL_SET_EACK_LEN
IOCTL_SET_MY_PANID
IOCTL_SET_MY_SHORT_ADDR
IOCTL_SET_PROMISCUOUS
IOCTL_SET_PWR
IOCTL_SET_RXOFF
IOCTL_SET_RXON
IOCTL_SET_SEND_MODE
IOCTL_SET_SENSE_TIME
IOCTL_SET_TX_INTERVAL
IOCTL_SET_TX_RETRY
IOCTL_TX_LED

Public Instance Methods

available() click to toggle source
# File lib/LazGem/device.rb, line 67
def available()
        size = 2
        len = @@device_rd.read(size)
        if ((len == "") || (len == nil)) then # read result is empty
                return 0
        end
        size =  len.unpack("S*")[0]
        return size
end
begin(ch,panid,bps,pwr) click to toggle source

API

# File lib/LazGem/ioctl.rb, line 82
def begin(ch,panid,bps,pwr)
        set_ch(ch)
        set_my_panid(panid)
        set_bps(bps)
        set_pwr(pwr)
        return set_begin()
end
close() click to toggle source
# File lib/LazGem/ioctl.rb, line 150
def close()
        data = 0
        ret = @@device_wr.ioctl(IOCTL_SET_CLOSE,data)
        return ret
end
eeprom_read(addr) click to toggle source
# File lib/LazGem/ioctl.rb, line 456
def eeprom_read(addr)
        data = 0;
        if addr >= 0 || addr <= 0x0fff then
                ret = @@device_wr.ioctl(IOCTL_EEPROM + addr,data)
                return ret
        end
end
getAddrType() click to toggle source
# File lib/LazGem/ioctl.rb, line 207
def getAddrType()
        ret = @@device_wr.ioctl(IOCTL_GET_SEND_MODE,0)
        return get_addr_type()
end
getEdValue() click to toggle source
# File lib/LazGem/ioctl.rb, line 144
def getEdValue()
        ret = @@device_wr.ioctl(IOCTL_GET_ED_VALUE,0)
end
getEnhanceAck() click to toggle source
# File lib/LazGem/ioctl.rb, line 135
def getEnhanceAck()
        data = Array.new(32,0)
        bindata = data.pack("C*")
        size = @@device_wr.ioctl(IOCTL_GET_EACK,bindata)
        ret = bindata.unpack("C"+size.to_s)
end
getMyAddr64() click to toggle source
# File lib/LazGem/ioctl.rb, line 98
def getMyAddr64()
        data = get_my_addr0();
        addr = data << 48;
        data = get_my_addr1();
        addr = addr | (data << 32);
        data = get_my_addr2();
        addr = addr | (data << 16);
        data = get_my_addr3();
        addr = addr | (data << 0);
        return addr;
end
getMyAddress() click to toggle source
# File lib/LazGem/ioctl.rb, line 93
def getMyAddress()
        addr = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_MY_SHORT_ADDR,addr)
        return ret
end
getSendMode() click to toggle source
# File lib/LazGem/ioctl.rb, line 155
def getSendMode()
        data = 0
        ret = @@device_wr.ioctl(IOCTL_GET_SEND_MODE,data)
        param = Hash.new()
        param["addr_type"] = get_addr_type()
        param["sense_time"] = get_sense_time()
        param["tx_retry"] = get_tx_retry()
        param["tx_interval"] = get_tx_interval()
        param["cca_wait"] = get_cca_wait()
        param["my_address"] = get_my_addr0()
        return param
end
getTxRetry() click to toggle source
# File lib/LazGem/ioctl.rb, line 218
def getTxRetry()
        ret = @@device_wr.ioctl(IOCTL_GET_SEND_MODE,0)
        return get_tx_retry()
end
get_addr_size() click to toggle source
# File lib/LazGem/ioctl.rb, line 356
def get_addr_size()
        size = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_ADDR_SIZE,size)
        return ret
end
get_addr_type() click to toggle source
# File lib/LazGem/ioctl.rb, line 347
def get_addr_type()
        type = 0
        ret = @@device_wr.ioctl(IOCTL_GET_ADDR_TYPE,type)
        return ret
end
get_bps() click to toggle source
# File lib/LazGem/ioctl.rb, line 252
def get_bps()
        bps = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_BPS,bps)
        return ret
end
get_cca_wait() click to toggle source
# File lib/LazGem/ioctl.rb, line 401
def get_cca_wait()
        cca_wait = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_CCA_WAIT,cca_wait)
        return ret
end
get_ch() click to toggle source
# File lib/LazGem/ioctl.rb, line 235
def get_ch()
        ch = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_CH,ch)
        return ret
end
get_drv_mode() click to toggle source
# File lib/LazGem/ioctl.rb, line 365
def get_drv_mode()
        mode = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_DRV_MODE,mode)
        return ret
end
get_dst_addr0() click to toggle source
# File lib/LazGem/ioctl.rb, line 305
def get_dst_addr0()
        addr = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_DST_ADDR0,addr)
        return ret
end
get_dst_addr1() click to toggle source
# File lib/LazGem/ioctl.rb, line 320
def get_dst_addr1()
        addr = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_DST_ADDR1,addr)
        return ret
end
get_dst_addr2() click to toggle source
# File lib/LazGem/ioctl.rb, line 329
def get_dst_addr2()
        addr = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_DST_ADDR2,addr)
        return ret
end
get_dst_addr3() click to toggle source
# File lib/LazGem/ioctl.rb, line 338
def get_dst_addr3()
        addr = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_DST_ADDR3,addr)
        return ret
end
get_dst_panid() click to toggle source
# File lib/LazGem/ioctl.rb, line 270
def get_dst_panid()
        panid = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_DST_PANID,panid)
        return ret
end
get_my_addr0() click to toggle source
# File lib/LazGem/ioctl.rb, line 285
def get_my_addr0()
        addr = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_MY_ADDR0,addr)
        return ret
end
get_my_addr1() click to toggle source
# File lib/LazGem/ioctl.rb, line 290
def get_my_addr1()
        addr = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_MY_ADDR1,addr)
        return ret
end
get_my_addr2() click to toggle source
# File lib/LazGem/ioctl.rb, line 295
def get_my_addr2()
        addr = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_MY_ADDR2,addr)
        return ret
end
get_my_addr3() click to toggle source
# File lib/LazGem/ioctl.rb, line 300
def get_my_addr3()
        addr = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_MY_ADDR3,addr)
        return ret
end
get_my_panid() click to toggle source
# File lib/LazGem/ioctl.rb, line 261
def get_my_panid()
        panid = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_MY_PANID,panid)
        return ret
end
get_pwr() click to toggle source
# File lib/LazGem/ioctl.rb, line 243
def get_pwr()
        pwr = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_PWR,pwr)
        return ret
end
get_rx_rssi() click to toggle source
# File lib/LazGem/ioctl.rb, line 418
def get_rx_rssi()
        tmp = 0;
        rssi = @@device_wr.ioctl(IOCTL_GET_RX_RSSI,tmp)
        return rssi
end
get_rx_time() click to toggle source
# File lib/LazGem/ioctl.rb, line 410
def get_rx_time()
        tmp = 0;
        rx_sec = @@device_wr.ioctl(IOCTL_GET_RX_SEC1,tmp)
        rx_sec = rx_sec * 65536 + @@device_wr.ioctl(IOCTL_GET_RX_SEC0,tmp)
        rx_nsec = @@device_wr.ioctl(IOCTL_GET_RX_NSEC1,tmp)
        rx_nsec = rx_nsec *65536 + @@device_wr.ioctl(IOCTL_GET_RX_NSEC0,tmp)
        return rx_sec,rx_nsec
end
get_sense_time() click to toggle source
# File lib/LazGem/ioctl.rb, line 374
def get_sense_time()
        sense_time = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_SENSE_TIME,sense_time)
        return ret
end
get_tx_interval() click to toggle source
# File lib/LazGem/ioctl.rb, line 392
def get_tx_interval()
        tx_interval = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_TX_INTERVAL,tx_interval)
        return ret
end
get_tx_retry() click to toggle source
# File lib/LazGem/ioctl.rb, line 383
def get_tx_retry()
        tx_retry = 0;
        ret = @@device_wr.ioctl(IOCTL_GET_TX_RETRY,tx_retry)
        return ret
end
get_tx_rssi() click to toggle source
# File lib/LazGem/ioctl.rb, line 423
def get_tx_rssi()
        tmp = 0;
        rssi = @@device_wr.ioctl(IOCTL_GET_TX_RSSI,tmp)
        return rssi
end
init(module_test=0x0000) click to toggle source
# File lib/LazGem/device.rb, line 21
        def init(module_test=0x0000)
                cmd = "sudo insmod /home/pi/driver/LazDriver/lazdriver.ko module_test="+module_test.to_s
#               cmd = "sudo modprobe lazdriver module_test="+module_test.to_s
                p cmd
                result = system(cmd)
                lzgw_dev = "/dev/lzgw"
                sleep(0.1)
                result = system("sudo chmod 777 "+lzgw_dev)
#               p result
                sleep(0.1)
                @@device_rd = open(lzgw_dev,"rb")
                @@device_wr = open(lzgw_dev,"wb")
                @@device_wr.sync = true
                @@device_rd.sync = true
                result = system("tail -n -4 /var/log/messages")
                print("\n")
#               p result
                print("Success to load SubGHz module\n")
        end
read() click to toggle source
# File lib/LazGem/device.rb, line 77
def read()
        size = 2
        len = @@device_rd.read(size)
        if ((len == "") || (len == nil)) then # read result is empty
                return 0
        end
        size =  len.unpack("S*")[0]

        # The received data is read
        raw = @@device_rd.read(size)
        if ((raw == "") || (raw == nil)) then # read result is empty
                return -1
        end

        len = raw.length
        header = raw.unpack("S*")[0]

        src_addr_type = (header>>14) & 0x03
        frame_ver = (header >> 12) & 0x03
        dst_addr_type = (header >> 10) & 0x03
        ielist = (header >> 9) & 0x01
        seq_comp = (header >> 8) & 0x01
        panid_comp = (header >> 6) & 0x01
        ack_req = (header >> 5) & 0x01
        pending = (header >> 4) & 0x01
        sec_enb = (header >> 3) & 0x01
        frame_type = (header >> 0) & 0x07

        offset = 2

        if seq_comp == 0 then
                seq_num = raw[offset].unpack("C")[0]
                offset += 1
        end
        # addr_type
        if dst_addr_type != 0 then
                addr_type = 4
        else
                addr_type = 0
        end
        if src_addr_type != 0 then
                addr_type += 2
        end
        if panid_comp != 0 then
                addr_type += 1
        end
        # dst_panid
        case addr_type
        when 1, 4, 6 then
                dst_panid = raw[offset..offset+1].unpack("S*")[0]
                offset += 2
        else
                dst_panid = nil
        end
        # dst_addr
        case dst_addr_type
        when 1 then
                dst_addr = raw[offset].unpack("C")[0]
                offset += 1
        when 2 then
                dst_addr = raw[offset..offset+1].unpack("S*")[0]
                offset += 2
        when 3 then
                dst_addr = raw[offset+7].unpack("H2")[0] +
                        raw[offset+6].unpack("H2")[0] +
                        raw[offset+5].unpack("H2")[0] +
                        raw[offset+4].unpack("H2")[0] +
                        raw[offset+3].unpack("H2")[0] +
                        raw[offset+2].unpack("H2")[0] +
                        raw[offset+1].unpack("H2")[0] +
                        raw[offset+0].unpack("H2")[0]
                offset += 8
        else
        end
        # src_panid
        case addr_type
        when 2 then
                src_panid = raw[offset..offset+1].unpack("S*")[0]
                offset += 2
        else
                src_panid = nil
        end
        # src_addr
        case src_addr_type
        when 1 then
                src_addr = raw[offset].unpack("C")[0]
                offset += 1
        when 2 then
                src_addr = raw[offset..offset+1].unpack("S*")[0]
                offset += 2
        when 3 then
                src_addr = raw[offset+7].unpack("H2")[0] +
                        raw[offset+6].unpack("H2")[0] +
                        raw[offset+5].unpack("H2")[0] +
                        raw[offset+4].unpack("H2")[0] +
                        raw[offset+3].unpack("H2")[0] +
                        raw[offset+2].unpack("H2")[0] +
                        raw[offset+1].unpack("H2")[0] +
                        raw[offset+0].unpack("H2")[0]
                offset += 8
        else
        end

        payload = raw[offset..len-1]

        rcv = Hash.new()

        rcv["header"] = header
        rcv["src_addr_type"] = src_addr_type
        rcv["frame_ver"] = frame_ver
        rcv["dst_addr_type"] = dst_addr_type
        rcv["ielist"] = ielist
        rcv["seq_comp"] = seq_comp
        rcv["panid_comp"] = panid_comp
        rcv["ack_req"] = ack_req
        rcv["pending"] = pending
        rcv["sec_enb"] = sec_enb
        rcv["frame_type"] = frame_type
        rcv["addr_type"] = addr_type
        rcv["dst_panid"] = dst_panid
        rcv["src_panid"] = src_panid
        rcv["dst_addr"] = dst_addr
        rcv["src_addr"] = src_addr
        rcv["seq_num"] = seq_num
        rcv["payload"] = payload
        sec,nsec = get_rx_time()
        rcv["sec"]=sec
        rcv["nsec"]=nsec
        rcv["rssi"]=get_rx_rssi()
        return rcv
end
remove() click to toggle source

LAZURITE.close() function

close device deriver

parameter

none

return

none
# File lib/LazGem/device.rb, line 48
        def remove()
                begin
                        @@device_rd.close
                rescue Exception => e
                        p e
                end
                begin
                        @@device_wr.close
                rescue Exception => e
                        p e
                end
                @@devie_rd = nil
                @@device_wr = nil
                cmd = "sudo rmmod lazdriver"
#               cmd = "sudo modprobe -r lazdriver"
                system(cmd)
                p cmd
        end
rf_reg_read(addr) click to toggle source
# File lib/LazGem/ioctl.rb, line 442
def rf_reg_read(addr)
        data = 0;
        if addr >= 0 || addr <= 0xff then
                ret = @@device_wr.ioctl(IOCTL_RF_READ + addr,data)
                return ret
        end
end
rf_reg_write(addr,data) click to toggle source
# File lib/LazGem/ioctl.rb, line 449
def rf_reg_write(addr,data)
        if addr >= 0 || addr <= 0xff || data >= 0 || data <= 0xff then
                ret = @@device_wr.ioctl(IOCTL_RF_WRITE + addr + 0x80, data)
                return ret
        end
end
rxDisable() click to toggle source
# File lib/LazGem/ioctl.rb, line 109
def rxDisable()
        rxon = 0;
        ret = @@device_wr.ioctl(IOCTL_SET_RXOFF,rxon)
        return ret
end
rxEnable() click to toggle source
# File lib/LazGem/ioctl.rb, line 114
def rxEnable()
        rxon = 1
        ret = @@device_wr.ioctl(IOCTL_SET_RXON,rxon)
        return ret
end
rx_led(time) click to toggle source
# File lib/LazGem/ioctl.rb, line 464
def rx_led(time)
        if time >= 0 || time <= 0xffff then
                ret = @@device_wr.ioctl(IOCTL_RX_LED + 0x0800,time)
                return ret
        end
end
send(panid,addr,payload) click to toggle source
# File lib/LazGem/device.rb, line 216
def send(panid,addr,payload)
        set_dst_panid(panid)
        set_dst_addr0(addr)
        begin
                @@device_wr.write(payload)
        rescue Exception => e
                p e
        end
        sleep 0.001
end
send64(addr,payload) click to toggle source
# File lib/LazGem/device.rb, line 208
def send64(addr,payload)
        set_dst_addr0((addr >>  0)&0x000000000000ffff)
        set_dst_addr1((addr >> 16)&0x000000000000ffff)
        set_dst_addr2((addr >> 32)&0x000000000000ffff)
        set_dst_addr3((addr >> 48)&0x000000000000ffff)
        @@device_wr.write(payload)
        sleep 0.001
end
setAckReq(on) click to toggle source
# File lib/LazGem/ioctl.rb, line 122
def setAckReq(on)
        ret = @@device_wr.ioctl(IOCTL_SET_ACK_REQ,on)
end
setAckTxInterval(interval) click to toggle source
# File lib/LazGem/ioctl.rb, line 141
def setAckTxInterval(interval)
        size = @@device_wr.ioctl(IOCTL_SET_ACK_INTERVAL,interval)
end
setAddrType(addr_type) click to toggle source
# File lib/LazGem/ioctl.rb, line 211
def setAddrType(addr_type)
        ret = @@device_wr.ioctl(IOCTL_GET_SEND_MODE,0)
        ret = set_addr_type(addr_type)
        ret = @@device_wr.ioctl(IOCTL_SET_SEND_MODE,0)
        return ret
end
setAntSw(antsw) click to toggle source
# File lib/LazGem/ioctl.rb, line 147
def setAntSw(antsw)
        ret = @@device_wr.ioctl(IOCTL_SET_ANT_SWITCH,andsw)
end
setBroadcastEnb(on) click to toggle source
# File lib/LazGem/ioctl.rb, line 125
def setBroadcastEnb(on)
        ret = @@device_wr.ioctl(IOCTL_SET_BROADCAST,on)
end
setDsssSize(size,addrmode) click to toggle source
# File lib/LazGem/ioctl.rb, line 436
def setDsssSize(size,addrmode)
        size_mode = (size << 8 | addrmode)
        ret = @@device_wr.ioctl(IOCTL_SET_DSSS_SIZE,size_mode)
end
setDsssSpreadFactor(sf) click to toggle source
# File lib/LazGem/ioctl.rb, line 433
def setDsssSpreadFactor(sf)
        ret = @@device_wr.ioctl(IOCTL_SET_DSSS_SF,sf)
end
setEnhanceAck(data) click to toggle source
# File lib/LazGem/ioctl.rb, line 128
def setEnhanceAck(data)
        ret = @@device_wr.ioctl(IOCTL_SET_EACK_ENB,0)
        ret = @@device_wr.ioctl(IOCTL_SET_EACK_LEN,data.length)
        bindata = data.pack("C*")
        ret = @@device_wr.ioctl(IOCTL_SET_EACK_DATA,bindata)
        ret = @@device_wr.ioctl(IOCTL_SET_EACK_ENB,1)
end
setKey(key) click to toggle source
# File lib/LazGem/ioctl.rb, line 202
def setKey(key)
        ret = @@device_wr.ioctl(IOCTL_SET_AES,key)
        return ret
end
setModulation(mode) click to toggle source
# File lib/LazGem/ioctl.rb, line 430
def setModulation(mode)
        ret = @@device_wr.ioctl(IOCTL_SET_DSSS_MODE,mode)
end
setMyAddress(addr) click to toggle source
# File lib/LazGem/ioctl.rb, line 89
def setMyAddress(addr)
        ret = @@device_wr.ioctl(IOCTL_SET_MY_SHORT_ADDR,addr)
        return ret
end
setPromiscuous(on) click to toggle source
# File lib/LazGem/ioctl.rb, line 119
def setPromiscuous(on)
        ret = @@device_wr.ioctl(IOCTL_SET_PROMISCUOUS,on)
end
setSendMode(param) click to toggle source
# File lib/LazGem/ioctl.rb, line 167
def setSendMode(param)
        ret = @@device_wr.ioctl(IOCTL_GET_SEND_MODE,data)
        begin
                data = param.fetch("addr_type")
                ret = @@device_wr.ioctl(IOCTL_SET_ADDR_TYPE,data)
        rescue Exception
        end
        begin
                data = param.fetch("sense_time")
                ret = @@device_wr.ioctl(IOCTL_SET_SENSE_TIME,data)
        rescue Exception
        end
        begin
                data = param.fetch("tx_retry")
                ret = @@device_wr.ioctl(IOCTL_SET_TX_RETRY,data)
        rescue Exception
        end
        begin
                data = param.fetch("tx_interval")
                ret = @@device_wr.ioctl(IOCTL_SET_TX_INTERVAL,data)
        rescue Exception
        end
        begin
                data = param.fetch("cca_wait")
                ret = @@device_wr.ioctl(IOCTL_SET_CCA_WAIT,data)
        rescue Exception
        end
        begin
                data = param.fetch("my_address")
                ret = @@device_wr.ioctl(IOCTL_SET_MY_ADDRESS,data)
        rescue Exception
        end
        ret = @@device_wr.ioctl(IOCTL_SET_SEND_MODE,data)
        return ret
end
setTxRetry(cycle) click to toggle source
# File lib/LazGem/ioctl.rb, line 222
def setTxRetry(cycle)
        ret = @@device_wr.ioctl(IOCTL_GET_SEND_MODE,0)
        ret = set_tx_retry(cycle)
        ret = @@device_wr.ioctl(IOCTL_SET_SEND_MODE,0)
        return ret
end
set_addr_size(size) click to toggle source
# File lib/LazGem/ioctl.rb, line 361
def set_addr_size(size)
        ret = @@device_wr.ioctl(IOCTL_SET_ADDR_SIZE,size)
        return ret
end
set_addr_type(type) click to toggle source
# File lib/LazGem/ioctl.rb, line 352
def set_addr_type(type)
        ret = @@device_wr.ioctl(IOCTL_SET_ADDR_TYPE,type)
        return ret
end
set_begin() click to toggle source

Libraries

# File lib/LazGem/ioctl.rb, line 230
def set_begin()
        data = 0;
        ret = @@device_wr.ioctl(IOCTL_SET_BEGIN,data)
        return ret
end
set_bps(bps) click to toggle source
# File lib/LazGem/ioctl.rb, line 257
def set_bps(bps)
        ret = @@device_wr.ioctl(IOCTL_SET_BPS,bps)
        return ret
end
set_cca_wait(cca_wait) click to toggle source
# File lib/LazGem/ioctl.rb, line 406
def set_cca_wait(cca_wait)
        ret = @@device_wr.ioctl(IOCTL_SET_CCA_WAIT,cca_wait)
        return ret
end
set_ch(ch) click to toggle source
# File lib/LazGem/ioctl.rb, line 240
def set_ch(ch)
        ret = @@device_wr.ioctl(IOCTL_SET_CH,ch)
end
set_drv_mode(mode) click to toggle source
# File lib/LazGem/ioctl.rb, line 370
def set_drv_mode(mode)
        ret = @@device_wr.ioctl(IOCTL_SET_DRV_MODE,mode)
        return ret
end
set_dst_addr0(addr) click to toggle source
# File lib/LazGem/ioctl.rb, line 310
        def set_dst_addr0(addr)
#               ret = @@device_wr.ioctl(IOCTL_SET_DST_ADDR0,addr)
#               return ret
        begin 
                  @@device_wr.ioctl(IOCTL_SET_DST_ADDR0,addr)
        rescue Exception => e
          p e
        end
                return 0
        end
set_dst_addr1(addr) click to toggle source
# File lib/LazGem/ioctl.rb, line 325
def set_dst_addr1(addr)
        ret = @@device_wr.ioctl(IOCTL_SET_DST_ADDR1,addr)
        return ret
end
set_dst_addr2(addr) click to toggle source
# File lib/LazGem/ioctl.rb, line 334
def set_dst_addr2(addr)
        ret = @@device_wr.ioctl(IOCTL_SET_DST_ADDR2,addr)
        return ret
end
set_dst_addr3(addr) click to toggle source
# File lib/LazGem/ioctl.rb, line 343
def set_dst_addr3(addr)
        ret = @@device_wr.ioctl(IOCTL_SET_DST_ADDR3,addr)
        return ret
end
set_dst_panid(panid) click to toggle source
# File lib/LazGem/ioctl.rb, line 275
        def set_dst_panid(panid)
#               ret = @@device_wr.ioctl(IOCTL_SET_DST_PANID,panid)
#               return ret
        begin
                  @@device_wr.ioctl(IOCTL_SET_DST_PANID,panid)
        rescue Exception => e
          p e
        end
                return 0
        end
set_my_panid(panid) click to toggle source
# File lib/LazGem/ioctl.rb, line 266
def set_my_panid(panid)
        ret = @@device_wr.ioctl(IOCTL_SET_MY_PANID,panid)
        return ret
end
set_pwr(pwr) click to toggle source
# File lib/LazGem/ioctl.rb, line 248
def set_pwr(pwr)
        ret = @@device_wr.ioctl(IOCTL_SET_PWR,pwr)
        return ret
end
set_sense_time(sense_time) click to toggle source
# File lib/LazGem/ioctl.rb, line 379
def set_sense_time(sense_time)
        ret = @@device_wr.ioctl(IOCTL_SET_SENSE_TIME,sense_time)
        return ret
end
set_tx_interval(tx_interval) click to toggle source
# File lib/LazGem/ioctl.rb, line 397
def set_tx_interval(tx_interval)
        ret = @@device_wr.ioctl(IOCTL_SET_TX_INTERVAL,tx_interval)
        return ret
end
set_tx_retry(tx_retry) click to toggle source
# File lib/LazGem/ioctl.rb, line 388
def set_tx_retry(tx_retry)
        ret = @@device_wr.ioctl(IOCTL_SET_TX_RETRY,tx_retry)
        return ret
end
tx_led(time) click to toggle source
# File lib/LazGem/ioctl.rb, line 471
def tx_led(time)
        if time >= 0 || time <= 0xffff then
                ret = @@device_wr.ioctl(IOCTL_TX_LED,time)
                return ret
        end
end