smithtek-mako-rf 2.9.1 → 2.9.3
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.
- package/README.md +82 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -338,6 +338,74 @@ The (try x/y) indicator shows retry behaviour. For example try 2/3 means the fir
|
|
|
338
338
|
|
|
339
339
|
If you see repeated red failures on a single device, it usually points to ID/address mismatch, wiring/RF link quality, or the poll rate being too aggressive for the link.
|
|
340
340
|
|
|
341
|
+
|
|
342
|
+
---
|
|
343
|
+
## RSSI (RF Signal Strength Diagnostic) ##
|
|
344
|
+
|
|
345
|
+
RSSI (Received Signal Strength Indicator) provides a live measurement of the RF signal strength between the PassPort and the remote Mako device when using the RF channel.
|
|
346
|
+
|
|
347
|
+
When enabled, the node performs an additional request to the LoRa module after each successful Modbus read. The returned signal strength (in dBm) is then appended to the output payload.
|
|
348
|
+
|
|
349
|
+
This allows you to:
|
|
350
|
+
- Verify RF link quality during installation
|
|
351
|
+
- Diagnose weak or marginal radio paths
|
|
352
|
+
- Confirm antenna alignment and placement
|
|
353
|
+
- Monitor signal health during maintenance
|
|
354
|
+
How to Enable
|
|
355
|
+
- Open the Bus configuration node (smithtek-mako-rf-bus).
|
|
356
|
+
- Select the RF channel.
|
|
357
|
+
- Tick the RSSI checkbox.
|
|
358
|
+
- Deploy.
|
|
359
|
+
- To disable RSSI, simply untick the checkbox and deploy again.
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
## RSSI Output Behaviour (msg.payload) ##
|
|
363
|
+
|
|
364
|
+
When enabled:
|
|
365
|
+
RSSI is appended to the normal decoded payload (msg.payload).
|
|
366
|
+
It is added to the same JSON object generated by the Decoder map.
|
|
367
|
+
The property name is automatically derived from the node block name.
|
|
368
|
+
|
|
369
|
+
`RSSI Guard & Timeout Settings`
|
|
370
|
+
|
|
371
|
+
The RSSI feature includes two adjustable timing parameters to fine-tune how the LoRa module is queried after a Modbus poll.
|
|
372
|
+
In most installations.
|
|
373
|
+
`The default values (10ms guard / 100ms timeout) are ideal and do not require adjustment.
|
|
374
|
+
|
|
375
|
+
`RSSI Guard (ms)`
|
|
376
|
+
|
|
377
|
+
The RSSI Guard is the delay between the completed Modbus response and the RSSI request being sent to the LoRa module.
|
|
378
|
+
- This short pause ensures:
|
|
379
|
+
- The Modbus transaction has fully completed
|
|
380
|
+
- The UART buffer has settled
|
|
381
|
+
- The RF module is ready to respond cleanly
|
|
382
|
+
|
|
383
|
+
Typical range: 5–10ms
|
|
384
|
+
Default: 10ms
|
|
385
|
+
|
|
386
|
+
Lower values may work, but 10ms provides stable behaviour across most installations.
|
|
387
|
+
|
|
388
|
+
`RSSI Timeout (ms)`
|
|
389
|
+
|
|
390
|
+
The RSSI Timeout defines how long the system will wait for the LoRa module to respond with the RSSI value before aborting the request.
|
|
391
|
+
Default: 100ms
|
|
392
|
+
|
|
393
|
+
This is usually more than sufficient. Increasing the timeout:
|
|
394
|
+
Does not improve signal strength
|
|
395
|
+
Only increases the wait time if the module does not respond
|
|
396
|
+
The timeout should only be increased if diagnosing unusual behaviour on a slow or noisy link.
|
|
397
|
+
|
|
398
|
+
## RSSI Practical Guidance ##
|
|
399
|
+
|
|
400
|
+
- Leave both values at default unless diagnosing an issue.
|
|
401
|
+
- Use RSSI primarily during install or maintenance.
|
|
402
|
+
- If RSSI is enabled permanently, keep guard low and timeout reasonable to avoid unnecessary bus slowdown.
|
|
403
|
+
|
|
404
|
+
In short, the defaults are tuned for real-world PassPort + Mako RF deployments and will suit almost every scenario.
|
|
405
|
+
|
|
406
|
+

|
|
407
|
+
|
|
408
|
+
|
|
341
409
|
---
|
|
342
410
|
## Polling Tips – Long Range RF ##
|
|
343
411
|
|
|
@@ -410,7 +478,7 @@ Example:
|
|
|
410
478
|
|
|
411
479
|
- 1024 → use table values
|
|
412
480
|
|
|
413
|
-
- 2 048 → add ~2 seconds to the recommended inject interval
|
|
481
|
+
- 2- 048 → add ~2 seconds to the recommended inject interval
|
|
414
482
|
|
|
415
483
|
- 4096 → add ~4 seconds to the recommended inject interval
|
|
416
484
|
|
|
@@ -427,18 +495,24 @@ In RF systems, range and stability always win over speed.
|
|
|
427
495
|
| Red status: timeout | Polling too fast | Increase inject interval (slow the cycle time) |
|
|
428
496
|
| Red status: timeout | RF link marginal | Increase spreading factor or improve antenna alignment |
|
|
429
497
|
| Red status: timeout | Inject interval shorter than cycle time | Ensure inject interval is longer than full device cycle |
|
|
498
|
+
| Red status: timeout after working normally | Bus overloaded | Reduce number of devices per cycle or increase interval |
|
|
430
499
|
| Only first and last device polling | Queue dropping logic enabled | Disable aggressive queue dropping or increase maxQueue |
|
|
431
500
|
| Devices poll intermittently | Retries too high | Reduce retries to prevent blocking the queue |
|
|
501
|
+
| Devices stop polling after deploy | Serial port locked | Restart Node-RED or power cycle PassPort |
|
|
432
502
|
| Data values incorrect | Register order mismatch | Ensure V-NET Modbus table matches Node-RED decoder map exactly |
|
|
433
503
|
| 32-bit values incorrect | Wrong word order | Confirm correct 32-bit interpretation (float / unsigned / integer) |
|
|
434
504
|
| Digital bits incorrect | Bit index mismatch | Ensure correct bit number (0–15) selected in decoder |
|
|
435
505
|
| Write command not working | Wrong function code | Confirm FC5 for coil, FC6 for single register, FC15/16 for multiples |
|
|
436
506
|
| Write works but value wrong | Payload type mismatch | Ensure msg.payload is correct type (bool or number) |
|
|
507
|
+
| Write command appears successful but nothing changes | Writing to wrong register type | Confirm coil vs holding register mapping in V-NET |
|
|
437
508
|
| Queue growing continuously | Inject too fast | Increase inject interval |
|
|
438
509
|
| Random comms drops on RF | Spreading factor too low for range | Increase spreading factor (add time to cycle) |
|
|
510
|
+
| RF very slow but stable | High spreading factor | Increase inject interval accordingly |
|
|
511
|
+
| Works on RS485 but not RF | Wrong Bus selected | Confirm correct Bus channel assigned |
|
|
439
512
|
| RS485 unstable | Wiring issue | Check termination resistors and polarity (A/B swapped) |
|
|
513
|
+
| All devices fail at once | Bus configuration changed | Confirm baud rate, parity, stop bits match |
|
|
440
514
|
| Node shows “bus config missing” | Config node deleted | Reassign or recreate the Bus config |
|
|
441
|
-
| Node invisible / unknown type | HTML/JS syntax error |
|
|
515
|
+
| Node invisible / unknown type | HTML/JS syntax error | Check node installtion, reinstall or contact smithtek support |
|
|
442
516
|
|
|
443
517
|
## Golden Rule
|
|
444
518
|
|
|
@@ -450,6 +524,12 @@ If the inject interval is shorter than the cycle time, the queue will grow, time
|
|
|
450
524
|
|
|
451
525
|
Slow and stable always beats fast and failing.
|
|
452
526
|
|
|
527
|
+
|
|
528
|
+
|
|
529
|
+
|
|
530
|
+
|
|
531
|
+
|
|
532
|
+
|
|
453
533
|
---
|
|
454
534
|
# License
|
|
455
535
|
Copyright (c) 2023 www.smithtek.com.au Licenced under the terms of the GPLv3
|