LazGem 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: '08f6fffa6b77049482ddd2d3d0f528afcb888d96'
4
- data.tar.gz: 6941a5872fd535880ed6d3b535a8154408200be3
2
+ SHA256:
3
+ metadata.gz: 76dd58cb44646e65529a4b39b7d1df1c683e706012f8246bc019da1785f91546
4
+ data.tar.gz: eaeef35b2ba4e6d51c43df459b7f63d5bc1a7d4c04e6fc2fee75da2f0c156eec
5
5
  SHA512:
6
- metadata.gz: cbe7dbd97981a6fa873a7549531fab804a3bd58752703d6622efd3c80980813deb41c07ab1efb47af66db0da04599cb02be2bc622712808ad91b9fdfc839876d
7
- data.tar.gz: 53406120d64d5f80e4b0c6bd31c60f97d4c77504c447a0f84de72c6218d086ceb5902050f98f91ea7262b3e47e256be1b392c1c4555aca134df4a6c8df1afffa
6
+ metadata.gz: 3b6f8f43d5aaea14bf5a40c4e1864d09a26f8af0db87f5a7d5d6cd2d0cfd300e5f1da94b36e108b466bcf728cf7cdd838c53274e0c328abad85129ab3492d8b3
7
+ data.tar.gz: bdb3cad3dd35987602654dfa32d85fcf29979e406b0f3e39e7c64a1c7601f3a91c169b28979d262dd0e008ca6486fa22b3ff6dd2d31b908350a0e9a3dc0d8d33
data/.gitignore CHANGED
@@ -9,3 +9,4 @@
9
9
  /tmp/
10
10
  tags
11
11
  tags.lock
12
+ sample/log
@@ -21,6 +21,7 @@ class LazGem::Device
21
21
 
22
22
  def init(module_test=0x0000)
23
23
  cmd = "sudo insmod /home/pi/driver/LazDriver/lazdriver.ko module_test="+module_test.to_s
24
+ # cmd = "sudo modprobe lazdriver module_test="+module_test.to_s
24
25
  p cmd
25
26
  result = system(cmd)
26
27
  lzgw_dev = "/dev/lzgw"
@@ -52,13 +53,14 @@ class LazGem::Device
52
53
  p e
53
54
  end
54
55
  begin
55
- @@device_wr.close
56
+ @@device_wr.close
56
57
  rescue Exception => e
57
58
  p e
58
59
  end
59
60
  @@devie_rd = nil
60
61
  @@device_wr = nil
61
62
  cmd = "sudo rmmod lazdriver"
63
+ # cmd = "sudo modprobe -r lazdriver"
62
64
  system(cmd)
63
65
  p cmd
64
66
  end
@@ -66,33 +68,33 @@ class LazGem::Device
66
68
  def available()
67
69
  size = 2
68
70
  len = @@device_rd.read(size)
69
- if ((len == "") || (len == nil)) then # read result is empty
70
- return 0
71
+ if ((len == "") || (len == nil)) then # read result is empty
72
+ return 0
71
73
  end
72
- size = len.unpack("S*")[0]
74
+ size = len.unpack("S*")[0]
73
75
  return size
74
76
  end
75
77
 
76
- def readBin()
78
+ def read()
77
79
  size = 2
78
80
  len = @@device_rd.read(size)
79
- if ((len == "") || (len == nil)) then # read result is empty
80
- return 0
81
- end
82
- size = len.unpack("S*")[0]
81
+ if ((len == "") || (len == nil)) then # read result is empty
82
+ return 0
83
+ end
84
+ size = len.unpack("S*")[0]
83
85
 
84
- # The received data is read
85
- raw = @@device_rd.read(size)
86
- if ((raw == "") || (raw == nil)) then # read result is empty
87
- return -1
86
+ # The received data is read
87
+ raw = @@device_rd.read(size)
88
+ if ((raw == "") || (raw == nil)) then # read result is empty
89
+ return -1
88
90
  end
89
-
91
+
90
92
  len = raw.length
91
93
  header = raw.unpack("S*")[0]
92
94
 
93
- dst_addr_type = (header>>14) & 0x03
95
+ src_addr_type = (header>>14) & 0x03
94
96
  frame_ver = (header >> 12) & 0x03
95
- src_addr_type = (header >> 10) & 0x03
97
+ dst_addr_type = (header >> 10) & 0x03
96
98
  ielist = (header >> 9) & 0x01
97
99
  seq_comp = (header >> 8) & 0x01
98
100
  panid_comp = (header >> 6) & 0x01
@@ -104,199 +106,38 @@ class LazGem::Device
104
106
  offset = 2
105
107
 
106
108
  if seq_comp == 0 then
107
- seq_num = raw[offset..offset+1].unpack("C")[0]
108
- offset = offset + 1
109
+ seq_num = raw[offset].unpack("C")[0]
110
+ offset += 1
109
111
  end
110
-
111
- if dst_addr_type == 0 && src_addr_type == 0 && panid_comp == 0 then
112
- addr_type = 0
113
- dst_panid = nil
114
- src_panid = nil
115
- elsif dst_addr_type == 0 && src_addr_type == 0 && panid_comp != 0 then
116
- addr_type = 1
117
- dst_panid = raw[offset..offset+2].unpack("S*")[0]
118
- offset = offset + 2
119
- dst_panid = nil
120
- elsif dst_addr_type == 0 && src_addr_type != 0 && panid_comp == 0 then
121
- addr_type = 2
122
- dst_panid = nil
123
- src_panid = raw[offset..offset+2].unpack("S*")[0]
124
- offset = offset + 2
125
- elsif dst_addr_type == 0 && src_addr_type != 0 && panid_comp != 0 then
126
- addr_type = 3
127
- dst_panid = nil
128
- src_panid = nil
129
- elsif dst_addr_type != 0 && src_addr_type == 0 && panid_comp == 0 then
112
+ # addr_type
113
+ if dst_addr_type != 0 then
130
114
  addr_type = 4
131
- dst_panid = raw[offset..offset+2].unpack("S*")[0]
132
- offset = offset + 2
133
- src_panid = nil
134
- elsif dst_addr_type != 0 && src_addr_type == 0 && panid_comp != 0 then
135
- addr_type = 5
136
- dst_panid = nil
137
- src_panid = nil
138
- elsif dst_addr_type != 0 && src_addr_type != 0 && panid_comp == 0 then
139
- addr_type = 6
140
- dst_panid = raw[offset..offset+2].unpack("S*")[0]
141
- offset = offset + 2
142
- src_panid = nil
143
- elsif dst_addr_type != 0 && src_addr_type != 0 && panid_comp != 0 then
144
- addr_type = 7
145
- dst_panid = nil
146
- src_panid = nil
147
- end
148
-
149
- if dst_addr_type == 0 then
150
- dst_addr = nil
151
- elsif dst_addr_type == 1 then
152
- dst_addr = raw[offset].unpack("C")[0]
153
- offset = offset+1
154
- elsif dst_addr_type == 2 then
155
- dst_addr = raw[offset..offset+1].unpack("S*")[0]
156
- offset = offset+2
157
- else
158
- dst_addr = raw[offset+7].unpack("H2")[0] +
159
- raw[offset+6].unpack("H2")[0] +
160
- raw[offset+5].unpack("H2")[0] +
161
- raw[offset+4].unpack("H2")[0] +
162
- raw[offset+3].unpack("H2")[0] +
163
- raw[offset+2].unpack("H2")[0] +
164
- raw[offset+1].unpack("H2")[0] +
165
- raw[offset+0].unpack("H2")[0]
166
- offset = offset+8
167
- end
168
-
169
- if src_addr_type == 0 then
170
- src_addr = nil
171
- elsif src_addr_type == 1 then
172
- src_addr = raw[offset].unpack("C")[0]
173
- offset = offset+1
174
- elsif src_addr_type == 2 then
175
- src_addr = raw[offset..offset+1].unpack("S")[0]
176
- offset = offset+2
177
115
  else
178
- src_addr = raw[offset+7].unpack("H2")[0] +
179
- raw[offset+6].unpack("H2")[0] +
180
- raw[offset+5].unpack("H2")[0] +
181
- raw[offset+4].unpack("H2")[0] +
182
- raw[offset+3].unpack("H2")[0] +
183
- raw[offset+2].unpack("H2")[0] +
184
- raw[offset+1].unpack("H2")[0] +
185
- raw[offset+0].unpack("H2")[0]
186
- offset = offset+8
116
+ addr_type = 0
187
117
  end
188
-
189
- payload = raw[offset..len-1]
190
-
191
- rcv = Hash.new()
192
-
193
- rcv["header"] = header
194
- rcv["dst_addr_type"] = dst_addr_type
195
- rcv["frame_ver"] = frame_ver
196
- rcv["src_addr_type"] = src_addr_type
197
- rcv["ielist"] = ielist
198
- rcv["seq_comp"] = seq_comp
199
- rcv["panid_comp"] = panid_comp
200
- rcv["ack_req"] = ack_req
201
- rcv["pending"] = pending
202
- rcv["sec_enb"] = sec_enb
203
- rcv["frame_type"] = frame_type
204
- rcv["addr_type"] = addr_type
205
- rcv["dst_panid"] = dst_panid
206
- rcv["src_panid"] = src_panid
207
- rcv["dst_addr"] = dst_addr
208
- rcv["src_addr"] = src_addr
209
- rcv["seq_num"] = seq_num
210
- rcv["payload"] = payload
211
- sec,nsec = get_rx_time()
212
- rcv["sec"]=sec
213
- rcv["nsec"]=nsec
214
- rcv["rssi"]=get_rx_rssi()
215
- return rcv
216
- end
217
-
218
- def read()
219
- size = 2
220
- len = @@device_rd.read(size)
221
- if ((len == "") || (len == nil)) then # read result is empty
222
- return 0
223
- end
224
- size = len.unpack("S*")[0]
225
-
226
- # The received data is read
227
- raw = @@device_rd.read(size)
228
- if ((raw == "") || (raw == nil)) then # read result is empty
229
- return -1
118
+ if src_addr_type != 0 then
119
+ addr_type += 2
230
120
  end
231
-
232
- len = raw.length
233
- header = raw.unpack("S*")[0]
234
-
235
- dst_addr_type = (header>>14) & 0x03
236
- frame_ver = (header >> 12) & 0x03
237
- src_addr_type = (header >> 10) & 0x03
238
- ielist = (header >> 9) & 0x01
239
- seq_comp = (header >> 8) & 0x01
240
- panid_comp = (header >> 6) & 0x01
241
- ack_req = (header >> 5) & 0x01
242
- pending = (header >> 4) & 0x01
243
- sec_enb = (header >> 3) & 0x01
244
- frame_type = (header >> 0) & 0x07
245
-
246
- offset = 2
247
-
248
- if seq_comp == 0 then
249
- seq_num = raw[offset..offset+1].unpack("C")[0]
250
- offset = offset + 1
121
+ if panid_comp != 0 then
122
+ addr_type += 1
251
123
  end
252
-
253
- if dst_addr_type == 0 && src_addr_type == 0 && panid_comp == 0 then
254
- addr_type = 0
255
- dst_panid = nil
256
- src_panid = nil
257
- elsif dst_addr_type == 0 && src_addr_type == 0 && panid_comp != 0 then
258
- addr_type = 1
259
- dst_panid = raw[offset..offset+2].unpack("S*")[0]
260
- offset = offset + 2
261
- dst_panid = nil
262
- elsif dst_addr_type == 0 && src_addr_type != 0 && panid_comp == 0 then
263
- addr_type = 2
264
- dst_panid = nil
265
- src_panid = raw[offset..offset+2].unpack("S*")[0]
266
- offset = offset + 2
267
- elsif dst_addr_type == 0 && src_addr_type != 0 && panid_comp != 0 then
268
- addr_type = 3
269
- dst_panid = nil
270
- src_panid = nil
271
- elsif dst_addr_type != 0 && src_addr_type == 0 && panid_comp == 0 then
272
- addr_type = 4
273
- dst_panid = raw[offset..offset+2].unpack("S*")[0]
274
- offset = offset + 2
275
- src_panid = nil
276
- elsif dst_addr_type != 0 && src_addr_type == 0 && panid_comp != 0 then
277
- addr_type = 5
278
- dst_panid = nil
279
- src_panid = nil
280
- elsif dst_addr_type != 0 && src_addr_type != 0 && panid_comp == 0 then
281
- addr_type = 6
282
- dst_panid = raw[offset..offset+2].unpack("S*")[0]
283
- offset = offset + 2
284
- src_panid = nil
285
- elsif dst_addr_type != 0 && src_addr_type != 0 && panid_comp != 0 then
286
- addr_type = 7
124
+ # dst_panid
125
+ case addr_type
126
+ when 1, 4, 6 then
127
+ dst_panid = raw[offset..offset+1].unpack("S*")[0]
128
+ offset += 2
129
+ else
287
130
  dst_panid = nil
288
- src_panid = nil
289
131
  end
290
-
291
- if dst_addr_type == 0 then
292
- dst_addr = nil
293
- elsif dst_addr_type == 1 then
132
+ # dst_addr
133
+ case dst_addr_type
134
+ when 1 then
294
135
  dst_addr = raw[offset].unpack("C")[0]
295
- offset = offset+1
296
- elsif dst_addr_type == 2 then
136
+ offset += 1
137
+ when 2 then
297
138
  dst_addr = raw[offset..offset+1].unpack("S*")[0]
298
- offset = offset+2
299
- else
139
+ offset += 2
140
+ when 3 then
300
141
  dst_addr = raw[offset+7].unpack("H2")[0] +
301
142
  raw[offset+6].unpack("H2")[0] +
302
143
  raw[offset+5].unpack("H2")[0] +
@@ -305,18 +146,26 @@ class LazGem::Device
305
146
  raw[offset+2].unpack("H2")[0] +
306
147
  raw[offset+1].unpack("H2")[0] +
307
148
  raw[offset+0].unpack("H2")[0]
308
- offset = offset+8
149
+ offset += 8
150
+ else
309
151
  end
310
-
311
- if src_addr_type == 0 then
312
- src_addr = nil
313
- elsif src_addr_type == 1 then
314
- src_addr = raw[offset].unpack("C")[0]
315
- offset = offset+1
316
- elsif src_addr_type == 2 then
317
- src_addr = raw[offset..offset+1].unpack("S")[0]
318
- offset = offset+2
152
+ # src_panid
153
+ case addr_type
154
+ when 2 then
155
+ src_panid = raw[offset..offset+1].unpack("S*")[0]
156
+ offset += 2
319
157
  else
158
+ src_panid = nil
159
+ end
160
+ # src_addr
161
+ case src_addr_type
162
+ when 1 then
163
+ src_addr = raw[offset].unpack("C")[0]
164
+ offset += 1
165
+ when 2 then
166
+ src_addr = raw[offset..offset+1].unpack("S*")[0]
167
+ offset += 2
168
+ when 3 then
320
169
  src_addr = raw[offset+7].unpack("H2")[0] +
321
170
  raw[offset+6].unpack("H2")[0] +
322
171
  raw[offset+5].unpack("H2")[0] +
@@ -325,7 +174,8 @@ class LazGem::Device
325
174
  raw[offset+2].unpack("H2")[0] +
326
175
  raw[offset+1].unpack("H2")[0] +
327
176
  raw[offset+0].unpack("H2")[0]
328
- offset = offset+8
177
+ offset += 8
178
+ else
329
179
  end
330
180
 
331
181
  payload = raw[offset..len-1]
@@ -333,9 +183,9 @@ class LazGem::Device
333
183
  rcv = Hash.new()
334
184
 
335
185
  rcv["header"] = header
336
- rcv["dst_addr_type"] = dst_addr_type
337
- rcv["frame_ver"] = frame_ver
338
186
  rcv["src_addr_type"] = src_addr_type
187
+ rcv["frame_ver"] = frame_ver
188
+ rcv["dst_addr_type"] = dst_addr_type
339
189
  rcv["ielist"] = ielist
340
190
  rcv["seq_comp"] = seq_comp
341
191
  rcv["panid_comp"] = panid_comp
@@ -367,7 +217,11 @@ class LazGem::Device
367
217
  def send(panid,addr,payload)
368
218
  set_dst_panid(panid)
369
219
  set_dst_addr0(addr)
370
- @@device_wr.write(payload)
220
+ begin
221
+ @@device_wr.write(payload)
222
+ rescue Exception => e
223
+ p e
224
+ end
371
225
  sleep 0.001
372
226
  end
373
227
  end
@@ -66,9 +66,14 @@ class LazGem::Device
66
66
  IOCTL_SET_EACK_ENB= IOCTL_PARAM+0x3F
67
67
  IOCTL_GET_EACK= IOCTL_PARAM+0x40
68
68
  IOCTL_SET_ACK_INTERVAL= IOCTL_PARAM+0x43
69
+ IOCTL_GET_ED_VALUE= IOCTL_PARAM+0x44
70
+ IOCTL_SET_ANT_SWITCH= IOCTL_PARAM+0x45
71
+ IOCTL_SET_DSSS_MODE= IOCTL_PARAM+0x80
72
+ IOCTL_SET_DSSS_SF= IOCTL_PARAM+0x81
73
+ IOCTL_SET_DSSS_SIZE= IOCTL_PARAM+0x82
69
74
  IOCTL_RF= 0x2000
70
- IOCTL_RF_READ= IOCTL_RF+0x0000
71
- IOCTL_RF_WRITE= IOCTL_RF+0x8000
75
+ IOCTL_RF_READ= IOCTL_RF
76
+ IOCTL_RF_WRITE= IOCTL_RF
72
77
  IOCTL_EEPROM= 0x3000
73
78
  IOCTL_RX_LED= 0x4000
74
79
  IOCTL_TX_LED= 0x4000
@@ -136,6 +141,12 @@ class LazGem::Device
136
141
  def setAckTxInterval(interval)
137
142
  size = @@device_wr.ioctl(IOCTL_SET_ACK_INTERVAL,interval)
138
143
  end
144
+ def getEdValue()
145
+ ret = @@device_wr.ioctl(IOCTL_GET_ED_VALUE,0)
146
+ end
147
+ def setAntSw(antsw)
148
+ ret = @@device_wr.ioctl(IOCTL_SET_ANT_SWITCH,andsw)
149
+ end
139
150
  def close()
140
151
  data = 0
141
152
  ret = @@device_wr.ioctl(IOCTL_SET_CLOSE,data)
@@ -262,8 +273,14 @@ class LazGem::Device
262
273
  return ret
263
274
  end
264
275
  def set_dst_panid(panid)
265
- ret = @@device_wr.ioctl(IOCTL_SET_DST_PANID,panid)
266
- return ret
276
+ # ret = @@device_wr.ioctl(IOCTL_SET_DST_PANID,panid)
277
+ # return ret
278
+ begin
279
+ @@device_wr.ioctl(IOCTL_SET_DST_PANID,panid)
280
+ rescue Exception => e
281
+ p e
282
+ end
283
+ return 0
267
284
  end
268
285
  def get_my_addr0()
269
286
  addr = 0;
@@ -291,8 +308,14 @@ class LazGem::Device
291
308
  return ret
292
309
  end
293
310
  def set_dst_addr0(addr)
294
- ret = @@device_wr.ioctl(IOCTL_SET_DST_ADDR0,addr)
295
- return ret
311
+ # ret = @@device_wr.ioctl(IOCTL_SET_DST_ADDR0,addr)
312
+ # return ret
313
+ begin
314
+ @@device_wr.ioctl(IOCTL_SET_DST_ADDR0,addr)
315
+ rescue Exception => e
316
+ p e
317
+ end
318
+ return 0
296
319
  end
297
320
  def get_dst_addr1()
298
321
  addr = 0;
@@ -403,6 +426,19 @@ class LazGem::Device
403
426
  return rssi
404
427
  end
405
428
 
429
+
430
+ def setModulation(mode)
431
+ ret = @@device_wr.ioctl(IOCTL_SET_DSSS_MODE,mode)
432
+ end
433
+ def setDsssSpreadFactor(sf)
434
+ ret = @@device_wr.ioctl(IOCTL_SET_DSSS_SF,sf)
435
+ end
436
+ def setDsssSize(size,addrmode)
437
+ size_mode = (size << 8 | addrmode)
438
+ ret = @@device_wr.ioctl(IOCTL_SET_DSSS_SIZE,size_mode)
439
+ end
440
+
441
+
406
442
  def rf_reg_read(addr)
407
443
  data = 0;
408
444
  if addr >= 0 || addr <= 0xff then
@@ -411,8 +447,8 @@ class LazGem::Device
411
447
  end
412
448
  end
413
449
  def rf_reg_write(addr,data)
414
- if addr >= 0 || ch <= 0xff || data >= 0 || data <= 0xff then
415
- ret = @@device_wr.ioctl(IOCTL_RF_WRITE+addr ,data)
450
+ if addr >= 0 || addr <= 0xff || data >= 0 || data <= 0xff then
451
+ ret = @@device_wr.ioctl(IOCTL_RF_WRITE + addr + 0x80, data)
416
452
  return ret
417
453
  end
418
454
  end
@@ -427,7 +463,7 @@ class LazGem::Device
427
463
 
428
464
  def rx_led(time)
429
465
  if time >= 0 || time <= 0xffff then
430
- ret = @@device_wr.ioctl(IOCTL_RX_LED,time)
466
+ ret = @@device_wr.ioctl(IOCTL_RX_LED + 0x0800,time)
431
467
  return ret
432
468
  end
433
469
  end
@@ -1,3 +1,3 @@
1
1
  module LazGem
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: LazGem
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - NaotakaSaito
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2018-09-25 00:00:00.000000000 Z
12
+ date: 2020-09-03 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -78,10 +78,8 @@ files:
78
78
  - release.log
79
79
  - sample/sample_promiscuous.rb
80
80
  - sample/sample_rx.rb
81
- - sample/sample_rxBin.rb
82
81
  - sample/sample_tx.rb
83
82
  - sample/sample_tx64.rb
84
- - sample/tags
85
83
  homepage: https://github.com/LAPIS-Lazurite/LazGem
86
84
  licenses:
87
85
  - MIT
@@ -102,7 +100,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
102
100
  version: '0'
103
101
  requirements: []
104
102
  rubyforge_project:
105
- rubygems_version: 2.5.2.1
103
+ rubygems_version: 2.7.6.2
106
104
  signing_key:
107
105
  specification_version: 4
108
106
  summary: Lazurite ruby gem
@@ -1,74 +0,0 @@
1
- #! /usr/bin/ruby
2
- # -*- coding: utf-8; mode: ruby -*-
3
- # Function:
4
- # Lazurite Sub-GHz/Lazurite Pi Gateway Sample program
5
- # SerialMonitor.rb
6
- require 'LazGem'
7
-
8
- laz = LazGem::Device.new
9
-
10
- # Halt process when CTRL+C is pushed.
11
- finish_flag=0
12
- Signal.trap(:INT){
13
- finish_flag=1
14
- }
15
-
16
- if ARGV.size == 0
17
- printf("please input argument of ch at least\n")
18
- printf("command format is shown below...\n")
19
- printf("./sample_rx.rb ch panid baud pwr\n")
20
- printf(" ch: 24-61\n")
21
- printf(" panid: 0-0xffff\n")
22
- printf(" baud: 50 or 100\n")
23
- printf(" pwr: 1 or 20\n")
24
- exit 0
25
- end
26
-
27
- # open device deriver
28
-
29
- dst_addr = 0xffff
30
- ch = 36
31
- panid = 0xabcd
32
- baud = 100
33
- pwr = 20
34
-
35
- if ARGV.size > 0
36
- ch=Integer(ARGV[0])
37
- end
38
- if ARGV.size > 1
39
- panid = Integer(ARGV[1])
40
- end
41
- if ARGV.size > 2
42
- baud = Integer(ARGV[2])
43
- end
44
- if ARGV.size > 3
45
- pwr = Integer(ARGV[3])
46
- end
47
-
48
- laz.init()
49
-
50
- print(sprintf("myAddress=0x%016x\n",laz.getMyAddr64()))
51
- print(sprintf("myAddress=0x%04x\n",laz.getMyAddress()))
52
-
53
- laz.begin(ch,panid,baud,pwr)
54
- laz.rxEnable()
55
-
56
- # printing header of receiving log
57
- print(sprintf("time\t\t\t\t\t[ns]\trxPanid\trxAddr\ttxAddr\trssi\tpayload\n"))
58
- print(sprintf("------------------------------------------------------------------------------------------\n"))
59
-
60
- # main routine
61
- while finish_flag == 0 do
62
- if laz.available() <= 0
63
- sleep 0.01
64
- next
65
- end
66
- rcv = laz.readBin()
67
- # printing data
68
- p rcv
69
- end
70
-
71
- # finishing process
72
- laz.remove()
73
-
74
-