Package: inet.physicallayer.ieee802154.packetlevel
Ieee802154NarrowbandScalarRadio
compound module(no description)
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Extends
| Name | Type | Description | 
|---|---|---|
| FlatRadioBase | compound module | This module servces as a base module for flat radio models. | 
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| antennaType | string | "IsotropicAntenna" | NED type of the antenna model | 
| transmitterType | string | "Ieee802154NarrowbandScalarTransmitter" | NED type of the transmitter model | 
| receiverType | string | "Ieee802154NarrowbandScalarReceiver" | NED type of the receiver model | 
| energyConsumerType | string | "" | NED type of the energy consumer model | 
| radioMediumModule | string | "radioMedium" | module path of the medium module where this radio communicates | 
| energySourceModule | string | "" | module path of the energy source module which provides energy to the radio | 
| switchingTimes | string | "ms 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" | time parameters to switch between radio modes | 
| separateTransmissionParts | bool | false | when enabled the transmission of preamble, header and data part are simulated separately | 
| separateReceptionParts | bool | false | when enabled the reception of preamble, header and data part are simulated separately | 
| displayCommunicationRange | bool | false | if true communication range is displayed as a blue circle around the node | 
| displayInterferenceRange | bool | false | if true interference range is displayed as a gray circle around the node | 
| carrierFrequency | double | 2450 MHz | center frequency of the band where the radio transmits and receives signals on the medium | 
| bandwidth | double | 2.8 MHz | bandwidth of the band where the radio transmits and receives signals on the medium | 
Properties
| Name | Value | Description | 
|---|---|---|
| class | FlatRadioBase | |
| display | i=block/wrxtx | 
Gates
| Name | Direction | Size | Description | 
|---|---|---|---|
| upperLayerIn | input | ||
| upperLayerOut | output | ||
| radioIn | input | 
Signals
| Name | Type | Unit | 
|---|---|---|
| receptionStateChanged | long | |
| bitErrorRate | ||
| radioModeChanged | long | |
| transmittedSignalPartChanged | long | |
| packetReceivedFromUpper | cPacket | |
| receivedSignalPartChanged | long | |
| packetErrorRate | ||
| symbolErrorRate | ||
| packetSentToUpper | cPacket | |
| transmissionStateChanged | long | |
| listeningChanged | ||
| minSNIR | 
Statistics
| Name | Title | Source | Record | Unit | Interpolation Mode | 
|---|---|---|---|---|---|
| receptionState | Radio reception state | receptionStateChanged | count, vector | sample-hold | |
| bitErrorRate | Bit error rate | bitErrorRate | histogram | ||
| radioMode | Radio mode | radioModeChanged | count, vector | sample-hold | |
| packetErrorRate | Packet error rate | packetErrorRate | histogram | ||
| symbolErrorRate | Symbol error rate | symbolErrorRate | histogram | ||
| transmissionState | Radio transmission state | transmissionStateChanged | count, vector | sample-hold | |
| minSNIR | Min SNIR | minSNIR | histogram | 
Source code
module Ieee802154NarrowbandScalarRadio extends FlatRadioBase { parameters: antennaType = default("IsotropicAntenna"); transmitterType = default("Ieee802154NarrowbandScalarTransmitter"); receiverType = default("Ieee802154NarrowbandScalarReceiver"); carrierFrequency = 2450 MHz; // B_20dB ATmega256RFR2 (page 564) bandwidth = default(2.8 MHz); // 802.15.4-2006 (page 28) *.bitrate = default(250 kbps); // PHY Header (without preamble), 802.15.4-2006 (page 43) // 1 octet SFD // 7 bit Frame length // 1 bit Reserved *.headerBitLength = (1*8 + 7 + 1) * 1 b; // Preamble // 4 octets Preamble // 1 symbol of 16us -> 4 bit transmitter.preambleDuration = (4*8/4) * 16 us; // RSSI sensitivity (ATmega256RFR2, page 566) receiver.energyDetection = default(-90dBm); // Receiver sensitivity (ATmega256RFR2, page 565) // TODO That is not quite true, because sensitivity // is defined as the input signal power that yields // a PER < 1% for a PSDU of 20 octets, but INET handles it // as minimum reception power. receiver.sensitivity = default(-100dBm); // There is no fixed boundary, because of the // DSSS and the capture effect. Taking the sensitivity minus some // arbitrary value as an approximate guess. receiver.minInterferencePower = default(-120dBm); // Minimum SNIR // -8 dB results into 98% PER for a PSDU of 20 octets receiver.snirThreshold = default(-8 dB); // TX Output power (typ. 3.5 dBm, ATmega256RFR2, page 564) transmitter.power = default(2.24mW); @class(FlatRadioBase); }File: src/inet/physicallayer/ieee802154/packetlevel/Ieee802154NarrowbandScalarRadio.ned