class

RNS::RNodeSubInterface

Inherits RNS::Interface < Reference < Object

Individual virtual radio sub-interface on RNode multi-interface device. Ports RNodeSubInterface from RNS/Interfaces/RNodeMultiInterface.py.

Constants

HIGH_FREQ_MAX = 2600000000_i64
HIGH_FREQ_MIN = 2200000000_i64
LOW_FREQ_MAX = 1000000000_i64
LOW_FREQ_MIN = 137000000_i64
Q_SNR_MAX = 6
Q_SNR_MIN_BASE = -9
Q_SNR_STEP = 2
RSSI_OFFSET = 157

Constructors

new(name : String = "", parent_interface : RNodeMultiInterface = RNodeMultiInterface.new("", ""), index : Int32 = 0, interface_type : String = "SX127X", frequency : Int64 | Nil = nil, bandwidth : Int64 | Nil = nil, txpower : Int32 | Nil = nil, sf : Int32 | Nil = nil, cr : Int32 | Nil = nil, flow_control : Bool = false, st_alock : Float64 | Nil = nil, lt_alock : Float64 | Nil = nil)
Source
new(name : String, parent_interface : RNodeMultiInterface, index : Int32, interface_type : String, skip_configure : Bool = false)

Simple test constructor

Source

Instance methods

bandwidth
Source
bandwidth=(bandwidth : Int64 | Nil)
Source
bitrate_kbps
Source
bitrate_kbps=(bitrate_kbps : Float64)
Source
configure_device
Source
cr=(cr : Int32 | Nil)
Source
detected
Source
detected=(detected : Bool)
Source
dir_in
Source
dir_in=(dir_in : Bool)
Source
dir_out
Source
dir_out=(dir_out : Bool)
Source
flow_control
Source
flow_control=(flow_control : Bool)
Source
frequency
Source
frequency=(frequency : Int64 | Nil)
Source
index
Source
index=(index : Int32)
Source
init_radio
Source
interface_ready
Source
interface_ready=(interface_ready : Bool)
Source
interface_type
Source
interface_type=(interface_type : String)
Source
lt_alock
Source
lt_alock=(lt_alock : Float64 | Nil)
Source
packet_queue
Source
packet_queue=(packet_queue : Array(Bytes))
Source
process_incoming(data : Bytes)
Source
process_outgoing(data : Bytes)

Send data out through the interface. Subclasses must implement this.

Source
process_queue
Source
queue(data : Bytes)
Source
r_airtime_long
Source
r_airtime_long=(r_airtime_long : Float64)
Source
r_airtime_short
Source
r_airtime_short=(r_airtime_short : Float64)
Source
r_bandwidth
Source
r_bandwidth=(r_bandwidth : Int64 | Nil)
Source
r_channel_load_long
Source
r_channel_load_long=(r_channel_load_long : Float64)
Source
r_channel_load_short
Source
r_channel_load_short=(r_channel_load_short : Float64)
Source
r_cr
Source
r_cr=(r_cr : Int32 | Nil)
Source
r_csma_slot_time_ms
Source
r_csma_slot_time_ms=(r_csma_slot_time_ms : Int32 | Nil)
Source
r_frequency
Source
r_frequency=(r_frequency : Int64 | Nil)
Source
r_lock
Source
r_lock=(r_lock : UInt8 | Nil)
Source
r_lt_alock
Source
r_lt_alock=(r_lt_alock : Float64 | Nil)
Source
r_preamble_symbols
Source
r_preamble_symbols=(r_preamble_symbols : Int32 | Nil)
Source
r_premable_time_ms
Source
r_premable_time_ms=(r_premable_time_ms : Int32 | Nil)
Source
r_sf
Source
r_sf=(r_sf : Int32 | Nil)
Source
r_st_alock
Source
r_st_alock=(r_st_alock : Float64 | Nil)
Source
r_stat_q
Source
r_stat_q=(r_stat_q : Float64 | Nil)
Source
r_stat_rssi
Source
r_stat_rssi=(r_stat_rssi : Int32 | Nil)
Source
r_stat_rx
Source
r_stat_rx=(r_stat_rx : UInt32 | Nil)
Source
r_stat_snr
Source
r_stat_snr=(r_stat_snr : Float64 | Nil)
Source
r_stat_tx
Source
r_stat_tx=(r_stat_tx : UInt32 | Nil)
Source
r_state
Source
r_state=(r_state : UInt8 | Nil)
Source
r_symbol_rate
Source
r_symbol_rate=(r_symbol_rate : Int32 | Nil)
Source
r_symbol_time_ms
Source
r_symbol_time_ms=(r_symbol_time_ms : Float64 | Nil)
Source
r_txpower
Source
r_txpower=(r_txpower : Int32 | Nil)
Source
rnode_parent
Source
rnode_parent=(rnode_parent : RNodeMultiInterface)
Source
sf=(sf : Int32 | Nil)
Source
st_alock
Source
st_alock=(st_alock : Float64 | Nil)
Source
state
Source
state=(state : UInt8)
Source
to_s(io : IO)

Appends a short String representation of this object which includes its class name and its object address.

class Person
  def initialize(@name : String, @age : Int32)
  end
end

Person.new("John", 32).to_s # => #<Person:0x10a199f20>
Source
txpower
Source
txpower=(txpower : Int32 | Nil)
Source
update_bitrate
Source
validate_radio_state
Source