> For the complete documentation index, see [llms.txt](https://docs.morsemicro.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.morsemicro.com/application-notes/appnote-13-morsectrl-guide.md).

# APPNOTE-13 Morsectrl Guide

[Download as PDF](https://www.morsemicro.com/resources/appnotes/MM_APPNOTE-13_Morsectrl_Guide.pdf)

## 1 Scope

This application note applies to products containing the ‘morsectrl’ Linux software package that is run on the Morse Micro MM6108 chip. The Morse Micro package ‘morsectrl’ is a tool created to send and receive commands from/to the Morse Micro chip. This document outlines the most frequently used commands.

Please note that ’morsectrl’ is designed for engineering testing and evaluation purposes only.  Changing the configuration of the device can break regulatory compliance. For issues or questions, please contact <support@morsemicro.com>.

## 2 Frequently Used Commands

This section outlines the most frequently used commands in the ‘morsectrl’ package, including a brief description, usage and instructions.

### 2.1 Duty Cycle

| <p>duty\_cycle \<command>        <br>configure duty cycle mode. omit command to retrieve settings.<br>enable        \<value> \[options]<br>        \<value> set duty cycle in % (0.01-100.00)<br>        -m \<mode> mode of operation (0:spread, 1:burst). default:0<br>        -u \<unit> time unit of each burst record entry (us)<br>        -o enables or disables omitting control responses from the<br>          duty cycle budget.<br>disable<br>airtime        return remaining airtime (us), (burst mode only)</p> |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

The duty cycle is the percentage of time each device type operates or transmits on that channel. The command configures the duty cycle value along with the mode of operation to be used. The firmware supports two modes.

* Spread - If an end-device uses the channel to transmit a frame for period Tair, then the duty-cycle restrictions will delay further transmissions by a duration Toff  such that the overall duty cycle is not exceeded
* Burst - This uses the concept of burst cycle. A burst cycle is a full cycle of Tair and Tidle. Tburst is a configurable duty cycle parameter, used to characterize the duration of a  burst cycle. Using different values of Tburst, the duty cycle algorithm can be adjusted to address different use cases.

### 2.2 Version

| version                prints firmware version |
| ---------------------------------------------- |

Dumps the version string of firmware and ‘morsectrl’.

### 2.3 Serial

| serial     reads the chip serial number from OTP (zeroes if none blown) |
| ----------------------------------------------------------------------- |

Reads the chip serial number.

### 2.4 MCS

| mcs \<value>           selects mcs mode(0\~9) or type (auto) for auto rate control |
| ---------------------------------------------------------------------------------- |

Sets the MCS rate to use from 0-9. If ‘auto’ is selected, the MCS will be determined by the rate control algorithm. The ‘mcs’ command will only fix the MCS index at which the packets are sent.

This command is deprecated and the ‘txrate’ command should be used instead.

### 2.5 TX Rate

\| <p>Usage:<br>morsectrl -i wlan0 txrate \[enable|disable]<br>'enable' must always be included when configuring a parameter to force<br>‘disable' will reset all forced rate parameters<br>   -m \<value>    MCS index (0-10) or (-1) to use default in firmware<br>   -b \<value>    tx bandwidth in MHz or (-1) to use default in firmware<br>   -f \<value>    duplicate format (0, 1, 2) or (-1) to use default in<br>                 firmware<br>   -t \<value>    traveling pilots (0, 1) or (-1) to use default in<br>                 firmware<br>   -s \<value>    short guard interval (0, 1) or (-1) to use default in<br>                 firmware</p> |
\| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

The ‘txrate’ command provides more control over the tx rate compared to the aforementioned ‘mcs’ command. This command fixes the rates to use by fixing the MCS, guard interval, bandwidth, travelling pilots and the tx duplicate format.

### 2.6 JTAG

| jtag \<disable\|enable> \[GPIO]     disable\|enable jtag through RPi GPIO pin |
| ----------------------------------------------------------------------------- |

Enables or disables the JTAG  pin on the chip

### 2.7 Statistics

| <p>stats \[options]            reads/resets stats (all cores if none were                 mentioned)<br>           -a            App core<br>           -m            Mac core<br>           -u            Uphy core<br>           -j            outputs stats in a json format<br>           -p            outputs stats in a human-readable json format<br>           -r            resets stats for mentioned cores (resets all if none<br>                   were mentioned)<br>           -f "key"    filters stats according to the given key (case<br>                   sensitive)<br>           -s filename    the location of the firmware ELF</p> |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

The ‘stats’ command dumps the chip statistics from the app, mac and phy cores. Individual statistics of different core can be obtained by passing the following arguments to ‘morsectrl stats’:

* -m (for mac)
* -u (for phy)
* -a (for app)

If none of the above arguments is given then ‘morsectrl’ will dump the statistics from all the cores. Additionally the -r argument can be used to reset the chip statistics. This will reset the stats on all the cores. The -f command can be used to filter out any stats based on the key provided. The table below outlines all statistics dumped by the ‘morsectrl stats’ command.

NOTE: During power save operation the PHY statistics will reset each cycle

***

##

| App Stats                                       |                                                                                                                                                                                                                                                             |
| ----------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p>retry table:<br>Retry Count Avg Time</p>     | Number of retries for a packet.                                                                                                                                                                                                                             |
| commands received                               | Commands received by the apps core                                                                                                                                                                                                                          |
| commands responded                              | Commands responded by the apps core                                                                                                                                                                                                                         |
| commands repeated                               | Number of commands that were repeated                                                                                                                                                                                                                       |
| commands failed                                 | Number of times the device failed to send a command                                                                                                                                                                                                         |
| commands response failed                        | Number of time the device failed to respond to a received command                                                                                                                                                                                           |
| commands pending                                | Number of commands pending to be processed                                                                                                                                                                                                                  |
| commands late                                   | Number of times there is a late response for a command which will already have been timed out                                                                                                                                                               |
| last host ID                                    |                                                                                                                                                                                                                                                             |
| total\_fh\_page\_irq                            | Number of times the from host pager interrupt was fired                                                                                                                                                                                                     |
| total\_fh\_pages                                | Number of time the device successfully got the data from host after the fromhost interrupt was triggered                                                                                                                                                    |
| total\_th\_page\_irq                            | Number of times the to host pager interrupt was fired                                                                                                                                                                                                       |
| total\_th\_pages                                | Number of time the device successfully sent the data to host after the to host interrupt was triggered                                                                                                                                                      |
| Aon clk long calibration                        | Number of times the Aon clock was calibrated                                                                                                                                                                                                                |
| Aon clk frequency                               | Value of the Aon clock frequency in Hz                                                                                                                                                                                                                      |
| Aon sleep duration adjusted for clock tolerance | Increments if the aon-clk cant handle the sleep-duration                                                                                                                                                                                                    |
| number of PS\_sleep                             | Number of times the chip when to sleep                                                                                                                                                                                                                      |
| woke from PS (timer)                            | Number of times the chip woke up due to the timer set by the dynamic ps timeout value                                                                                                                                                                       |
| woke from PS (pin)                              | Number of times the chip woke up by the host wake up pin                                                                                                                                                                                                    |
| Pager from\_host reaped                         | Number of times the from host page has been pushed back to the pager                                                                                                                                                                                        |
| Pager to\_host reaped                           | Number of times the to host page has been pushed back to the pager                                                                                                                                                                                          |
| to\_host pages dropped (host in standby)        |                                                                                                                                                                                                                                                             |
| Invalid pages received                          | Total invalid pages received                                                                                                                                                                                                                                |
| Events to host sent                             | Number of events sent to the host                                                                                                                                                                                                                           |
| Events to host failed                           | Number of events the failed to be sent to the host                                                                                                                                                                                                          |
| ARP requests detected                           | Information of the ARP packets. This will only be populated if the driver is loaded using enable\_arp\_offload modparam                                                                                                                                     |
| ARP requests answered                           | Information of the ARP packets. This will only be populated if the driver is loaded using enable\_arp\_offload modparam                                                                                                                                     |
| ARP requests dropped                            | Information of the ARP packets. This will only be populated if the driver is loaded using enable\_arp\_offload modparam                                                                                                                                     |
| ARP requests let through                        | Information of the ARP packets. This will only be populated if the driver is loaded using enable\_arp\_offload modparam                                                                                                                                     |
| No page for ARP response                        | Information of the ARP packets. This will only be populated if the driver is loaded using enable\_arp\_offload modparam                                                                                                                                     |
| ARP table updated                               | Information of the ARP packets. This will only be populated if the driver is loaded using enable\_arp\_offload modparam                                                                                                                                     |
| ARP gratuitous generated                        | Information of the ARP packets. This will only be populated if the driver is loaded using enable\_arp\_offload modparam                                                                                                                                     |
| tx\_status none to send                         | Increments when there is no tx status cached                                                                                                                                                                                                                |
| tx\_status couldnt get page                     | Increments when there is no cached page for tx status information                                                                                                                                                                                           |
| tx\_status dropped                              | Increments if the tx status was dropped and not sent to host                                                                                                                                                                                                |
| tx\_status buffer flushed                       | Number of times the tx status buffer was flushed as there were no pending tx status                                                                                                                                                                         |
| tx\_status transmission corrupted               | Increments if the driver has inadvertently popped the same page twice for use in TX and has likely corrupted the original/new transmission                                                                                                                  |
| Wake action frames handled                      |                                                                                                                                                                                                                                                             |
| pageset stats:                                  |                                                                                                                                                                                                                                                             |
| Pageset 0                                       | Pages sent from the host to the chip                                                                                                                                                                                                                        |
| allocated                                       | Number of from host pages used                                                                                                                                                                                                                              |
| total                                           | Total number of from host pages used                                                                                                                                                                                                                        |
| Pageset 1                                       | Pages sent to the host from the chip                                                                                                                                                                                                                        |
| allocated                                       | Number of to host pages used                                                                                                                                                                                                                                |
| total                                           | Total number of to host pages used                                                                                                                                                                                                                          |
| Apps main task unused stack (words)             |                                                                                                                                                                                                                                                             |
| Apps timer task unused stack (words)            |                                                                                                                                                                                                                                                             |
| RTOS heap free bytes                            |                                                                                                                                                                                                                                                             |
| IPv4 Packets received                           | Number of ipv4 packets received                                                                                                                                                                                                                             |
| TCP Packets received                            | Number of TCP packets received                                                                                                                                                                                                                              |
| UDP Packets received                            | Number of UDP packets received                                                                                                                                                                                                                              |
| DHCP Packets received                           | DHCP information. This will only be updated if the driver is loaded with enable\_dhcpc\_offload modparam                                                                                                                                                    |
| DHCP discoveries sent                           | DHCP information. This will only be updated if the driver is loaded with enable\_dhcpc\_offload modparam                                                                                                                                                    |
| DHCP requests sent                              | DHCP information. This will only be updated if the driver is loaded with enable\_dhcpc\_offload modparam                                                                                                                                                    |
| DHCP lease updates sent                         | DHCP information. This will only be updated if the driver is loaded with enable\_dhcpc\_offload modparam                                                                                                                                                    |
| DHCP leases fully expired                       | DHCP information. This will only be updated if the driver is loaded with enable\_dhcpc\_offload modparam                                                                                                                                                    |
| DHCP leases obtained                            | DHCP information. This will only be updated if the driver is loaded with enable\_dhcpc\_offload modparam                                                                                                                                                    |
| DHCP leases renewed/rebound                     | DHCP information. This will only be updated if the driver is loaded with enable\_dhcpc\_offload modparam                                                                                                                                                    |
| Standby wakeup frame rx                         | The standby mode requirements will be facilitated by powering off the host when not sending or receiving traffic. The host will be powered on by toggling a GPIO address.This can be enabled by morsectrl standby command                                   |
| Standby status frame (standby) tx               | The standby mode requirements will be facilitated by powering off the host when not sending or receiving traffic. The host will be powered on by toggling a GPIO address.This can be enabled by morsectrl standby command                                   |
| Standby status frame (awake) tx                 | The standby mode requirements will be facilitated by powering off the host when not sending or receiving traffic. The host will be powered on by toggling a GPIO address.This can be enabled by morsectrl standby command                                   |
| To mcu wake pin toggle                          | The standby mode requirements will be facilitated by powering off the host when not sending or receiving traffic. The host will be powered on by toggling a GPIO address.This can be enabled by morsectrl standby command                                   |
| Standby SA Query request tx                     | The standby mode requirements will be facilitated by powering off the host when not sending or receiving traffic. The host will be powered on by toggling a GPIO address.This can be enabled by morsectrl standby command                                   |
| RX corrupt dot11 action frames                  | Number of corrupted rx action frames                                                                                                                                                                                                                        |
| BSS keep alive tx                               | Number of keep alive frames transmitted                                                                                                                                                                                                                     |
| TWT failed to flush tx status before umac pause | Number of times the device failed to flush TX status buffer before sending TWT UMAC traffic update                                                                                                                                                          |
| System uptime (us)                              |                                                                                                                                                                                                                                                             |
| **Mac Stats**                                   |                                                                                                                                                                                                                                                             |
| No A-MPDU candidate                             | Number of packets not send as an AMPDU                                                                                                                                                                                                                      |
| commands expired in MAC req                     | Number of requested command failed by mac core                                                                                                                                                                                                              |
| commands expired in MAC resp                    | Number of responded command failed by mac core                                                                                                                                                                                                              |
| MPE reset                                       | Number of times the MPE was reset                                                                                                                                                                                                                           |
| DCF STF fired                                   | Number of time the STF was fired                                                                                                                                                                                                                            |
| DCF LTF fired                                   | Number of time the LTF was fired                                                                                                                                                                                                                            |
| DCF energy detect fired                         | Number of time the energy detect was fired                                                                                                                                                                                                                  |
| DCF aborted                                     | Number of times the TX was aborted by the mac. This would trigger a backoff for the packet to be TX'ed                                                                                                                                                      |
| DCF granted                                     | Number of time TX was allowed by the mac                                                                                                                                                                                                                    |
| DCF medium busy before tx                       | Number of time the chip decided to TX but the medium was busy                                                                                                                                                                                               |
| beacon loss                                     | Number of time the beacon loss was reported back to the host                                                                                                                                                                                                |
| beacon changed                                  | Number of times the beacon has been changed. This would update if short beacons were being sent along with full beacons                                                                                                                                     |
| beacon rssi changed                             | Beacons rssi change comparing to the last beacon sent                                                                                                                                                                                                       |
| aid in tim                                      | Number of times the AID bit in the tim information element is set.                                                                                                                                                                                          |
| tim contains aid, but STA awake                 | Number of time the AID bit in the beacon is set but the station is not in sleep state                                                                                                                                                                       |
| tim group address                               | Number of beacons with bitmap control field in the tim information element is set                                                                                                                                                                           |
| tim nothing                                     | Number of times the beacons do not indicate that there is traffic present for the station                                                                                                                                                                   |
| tim populated                                   | Number of beacons with the block info data in the tim information element                                                                                                                                                                                   |
| DTIM\_sleep\_stats                              | The number of DTIM beacons received by the station                                                                                                                                                                                                          |
| CTS\_sleep\_stats                               |                                                                                                                                                                                                                                                             |
| CTS\_PS frame arrived late                      |                                                                                                                                                                                                                                                             |
| AGG N aggregates total                          | Total number of packets that were allowed to be sent as AMPDU                                                                                                                                                                                               |
| AGG N aggregate rounds                          | Total number of AMPDUS sent                                                                                                                                                                                                                                 |
| AGG N aggregates                                | This stats shows the number of aggregation for every packet sent. The chip supports sending an AMPDU with 16 MPDUS in them. From the stats 46 packets are sent without aggregation, 19 sent with 1 mpdu aggregated, 5 sent with 2 mpdu aggregated and so on |
| AGG TX rate is NULL                             | These stats represent the reasons why the chip has decided to break the aggregation.                                                                                                                                                                        |
| AGG TX rate mcs not same                        | These stats represent the reasons why the chip has decided to break the aggregation.                                                                                                                                                                        |
| AGG TX param mismatch                           | These stats represent the reasons why the chip has decided to break the aggregation.                                                                                                                                                                        |
| AGG TX max txop exceeded                        | These stats represent the reasons why the chip has decided to break the aggregation.                                                                                                                                                                        |
| AGG TX active txop exceeded                     | These stats represent the reasons why the chip has decided to break the aggregation.                                                                                                                                                                        |
| AGG TX length exceeded                          | These stats represent the reasons why the chip has decided to break the aggregation.                                                                                                                                                                        |
| AGG crosses tbtt                                | These stats represent the reasons why the chip has decided to break the aggregation.                                                                                                                                                                        |
| AGG crosses twt sp end                          | These stats represent the reasons why the chip has decided to break the aggregation.                                                                                                                                                                        |
| AGG crosses RAW slot                            | These stats represent the reasons why the chip has decided to break the aggregation.                                                                                                                                                                        |
| AGG crosses scheduled tx ts                     | These stats represent the reasons why the chip has decided to break the aggregation.                                                                                                                                                                        |
| RX Total                                        | Total number of RX frames                                                                                                                                                                                                                                   |
| RX Pass FCS                                     | Total number of RX frames with correct FCS                                                                                                                                                                                                                  |
| RX Sig Field Err                                | Total number of RX frames with signal field errors                                                                                                                                                                                                          |
| RX buffer unavailable                           | Number of times the chip did not have RX buffers available                                                                                                                                                                                                  |
| RX MAC was too slow                             | Number of times the chip did not RX mac path was slow                                                                                                                                                                                                       |
| TX Total                                        | Total number of packets sent on air                                                                                                                                                                                                                         |
| TX Revoked                                      | Total number of times the TX was rejected due to STF, LTF or energy present in the medium                                                                                                                                                                   |
| TX non-contending NDP revoked                   |                                                                                                                                                                                                                                                             |
| TX Lifetime expired                             | Total number of times the lifetime timestamp of the packet that expired. This will unschedule and drop the packet                                                                                                                                           |
| TX returned to UMAC due to power save           | Total number of packet returned to the host for buffing as the station was asleep                                                                                                                                                                           |
| TX dropped due to power save                    |                                                                                                                                                                                                                                                             |
| TX pkt lifetime us                              | Packet lifetime value in microseconds                                                                                                                                                                                                                       |
| TX Malformed frame                              | Number of packets with invalid mac header length                                                                                                                                                                                                            |
| TX QoS NULL                                     | Number of QOS null frames sent                                                                                                                                                                                                                              |
| TX ACK Valid                                    | Number of times the TX packet was acknowledged with a valid ACK                                                                                                                                                                                             |
| TX ACK Timeout                                  | Number of times the ACK timeout for the packet sent                                                                                                                                                                                                         |
| TX CTS Timeout                                  | Number of times the CTS was timeout for the RTS frame sent                                                                                                                                                                                                  |
| Longest delayed TX ACK (in uS):38               | Record the longest delayed ACK time                                                                                                                                                                                                                         |
| TX ACK already finished                         | The transmission of ACK packet was finished but ack timeout was triggered                                                                                                                                                                                   |
| TX ACK Invalid (FCS)                            | Number of times the ACK is invalid due to FCS failure                                                                                                                                                                                                       |
| TX ACK Invalid (scrambler)                      | Number of times the ACK is invalid due to ackid scrambler value was wrong                                                                                                                                                                                   |
| TX ACK Invalid (orphaned)                       | Number of times the chip saw and ACK not meant for it                                                                                                                                                                                                       |
| TX ACK lost                                     | Total number of ACK that was not received by the device for the packet it sent                                                                                                                                                                              |
| TX CTS lost                                     | Total number of CTS that was not received by the device for the RTS packet it sent                                                                                                                                                                          |
| TX fragment                                     | Total number of packets sent as fragments                                                                                                                                                                                                                   |
| TX BlockAck                                     | Total number of blockack sent                                                                                                                                                                                                                               |
| RX BlockAck                                     | total number of blockack received                                                                                                                                                                                                                           |
| TX NDP ACK                                      | total number of ndp acks (not blockacks) sent                                                                                                                                                                                                               |
| TX round-trip success %                         | Percentage of the data sent that were successfully acked by a NDP ack or a blockack                                                                                                                                                                         |
| TX requests                                     | Total number of time the mac has requests the phy to send the packet                                                                                                                                                                                        |
| TX avg backoff slots                            | Average of accumulated backoff slots                                                                                                                                                                                                                        |
| TX medium collisions                            | Number of times the packet was sent was not acked.                                                                                                                                                                                                          |
| TX Encryptable pkts                             | Number of time the chip prepared a frame for encrypted transmit                                                                                                                                                                                             |
| TX ReEncryptable pkts                           | Number of times the chips tries to encrypt the frame that has already been encrypted                                                                                                                                                                        |
| TX Unencryptable pkts                           | Number of times the chips was not successful in finding a key AND the host marked this packet as being protected                                                                                                                                            |
| RX transaction(s) dropped                       | Number of times the RX frames was dropped                                                                                                                                                                                                                   |
| RX Undecryptable ccmp pkts passed to host       | Number of times the frame wasn't decryptable and was passed up to the host. Could be an encrypted frame that chip was unable to find a key for                                                                                                              |
| RX Decryptable pkts                             | Total number of RX frames decrypted                                                                                                                                                                                                                         |
| RX Undecryptable pkts                           | Total number of times the chips was not able to decrypt the RX frames                                                                                                                                                                                       |
| Unexpected crypto                               | Invalid                                                                                                                                                                                                                                                     |
| RX MPDU delimiters Invalid                      | Number of delimiters that was corrupted when receiving MPDU's                                                                                                                                                                                               |
| RX MPDU delimiters                              | Number of valid MPDU delimiters                                                                                                                                                                                                                             |
| BEACONS RX                                      | Number of beacons received                                                                                                                                                                                                                                  |
| BEACONS TX                                      | Number of beacons sent                                                                                                                                                                                                                                      |
| BEACONS TX delayed                              | Number of beacons that were delayed to be sent on air                                                                                                                                                                                                       |
| BEACONS late from host                          | Number of beacons sent late by the host to chip to go out on air eventually                                                                                                                                                                                 |
| BEACONS late from host delay (avg uS)           | Average time of beacon when the host was late to send it to the chip                                                                                                                                                                                        |
| TX NDP Probe Req                                | Number of NDP probe request sent                                                                                                                                                                                                                            |
| RX NDP Probe Req                                | Number of NDP probe request received                                                                                                                                                                                                                        |
| TX RTS/CTS max attempts reached                 | Number of time the chips reached it maximum retry limit for RTS/CTS exchange                                                                                                                                                                                |
| TX RTS                                          | Total RTS frames sent                                                                                                                                                                                                                                       |
| TX CTS                                          | Total CTS frames sent                                                                                                                                                                                                                                       |
| RX RTS                                          | Total RTS frames received                                                                                                                                                                                                                                   |
| RX CTS                                          | Total CTS frames received                                                                                                                                                                                                                                   |
| RX CTS Invalid (orphaned)                       | Number of CTS frames that were not meant for the device that received it                                                                                                                                                                                    |
| TX RTS/CTS success                              | Percentage of successful RTS CTS exchange                                                                                                                                                                                                                   |
| MPE started                                     | Invalid                                                                                                                                                                                                                                                     |
| MPE Rx peeked for key                           | Invalid                                                                                                                                                                                                                                                     |
| RX no key found in key inspection               | Invalid                                                                                                                                                                                                                                                     |
| MPE Rx loaded key                               | Invalid                                                                                                                                                                                                                                                     |
| MPE Rx done                                     | Invalid                                                                                                                                                                                                                                                     |
| MPE IRQ count                                   | Number of time the MPE interrupt was fired                                                                                                                                                                                                                  |
| MPE YDS in-queue pre-start                      | Invalid                                                                                                                                                                                                                                                     |
| RX transaction(s) total                         | Number of times the phy informed the mac of an available RX packet                                                                                                                                                                                          |
| RX NDP total                                    | Number NDP packets received                                                                                                                                                                                                                                 |
| RX A-MPDU/S-MPDU                                | Number of AMPDU/SMPDU that were received                                                                                                                                                                                                                    |
| RX Non-A-MPDU/Non-S-MPDU                        | Number of packets received that were not AMPDU's/SMPDU's                                                                                                                                                                                                    |
| Total RX MPDUs found by MPE                     |                                                                                                                                                                                                                                                             |
| Total RX empty delims                           | Number of MPDU with their delimiter empty                                                                                                                                                                                                                   |
| RX transactions without any MPDUs to process    |                                                                                                                                                                                                                                                             |
| RX no valid first frame                         | Number of times the first MPDU receives is not valid                                                                                                                                                                                                        |
| RX MPDUs with FCS fail                          | Number of times the RX MPDU failed with wrong FCS                                                                                                                                                                                                           |
| RX MPDUs with MIC fail                          | Number of times the RX MPDU failed with wrong MIC                                                                                                                                                                                                           |
| RX MPDUs with unknown MAC header                | RX with invalid mac header                                                                                                                                                                                                                                  |
| RX YDS alloc fail                               | Invalid                                                                                                                                                                                                                                                     |
| RX PV1 MPDUs                                    | Invalid                                                                                                                                                                                                                                                     |
| MPE RX which could be decrypted with a 2nd pass | Invalid                                                                                                                                                                                                                                                     |
| RX transactions without any response            | Invalid                                                                                                                                                                                                                                                     |
| RX MPDUs not for us                             | Number of frames that were not meant for the device receiving it.                                                                                                                                                                                           |
| RX AMPDU bitmap 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0   | Number of bits set in the bitmap field of the blockack received.                                                                                                                                                                                            |
| TXOP: TXOP count                                | Number of packets that are in TXOP                                                                                                                                                                                                                          |
| Total TXOP time                                 | This is the TXOP end time minus the TXOP start time                                                                                                                                                                                                         |
| Average TXOP time                               | This is the average TXOP end time minus the TXOP start time for all packets                                                                                                                                                                                 |
| Total TXOP Tx packets                           | Number of packets that are in TXOP                                                                                                                                                                                                                          |
| Average TXOP Tx packets                         | Average number of packets that are in TXOP                                                                                                                                                                                                                  |
| RAW:                                            |                                                                                                                                                                                                                                                             |
| RAW Assignments                                 |                                                                                                                                                                                                                                                             |
| Valid                                           | Number of RAW assignments. Currently only supporting up to 8 assignments                                                                                                                                                                                    |
| Truncated by tbtt                               | Number of times an assignments that get truncated due to the next tbtt                                                                                                                                                                                      |
| Invalid                                         | Number of invalid assignments (/unsupported) observed                                                                                                                                                                                                       |
| Already past                                    | Number of assignments that are valid but system time has already passed                                                                                                                                                                                     |
| Delayed due to RAW                              |                                                                                                                                                                                                                                                             |
| From aci queue                                  | ACI delayed frames due to RAW                                                                                                                                                                                                                               |
| From bc/mc queue                                | Broadcast / Multicast delayed frames due to RAW                                                                                                                                                                                                             |
| From abs time queue                             | Absolute time frames delayed due to RAW                                                                                                                                                                                                                     |
| Frame crosses slot                              | Frames that could've been sent in the RAW but were too long for slot                                                                                                                                                                                        |
| CALIB:                                          |                                                                                                                                                                                                                                                             |
| Managed Calibration                             |                                                                                                                                                                                                                                                             |
| Quiet calibration granted                       | A quiet calibration was granted                                                                                                                                                                                                                             |
| Quiet calibration rejected                      | A quiet calibration was rejected                                                                                                                                                                                                                            |
| Quiet calibration cancelled                     | A quiet calibration was in progress, but then cancelled                                                                                                                                                                                                     |
| Non-Quiet calibration granted                   | A non-quiet calibration was granted                                                                                                                                                                                                                         |
| Calibration complete                            | A quiet/non-quiet calibration completed                                                                                                                                                                                                                     |
| Duty Cycle:                                     |                                                                                                                                                                                                                                                             |
| Duty Cycle Target (%)                           | Configured duty cycle restriction                                                                                                                                                                                                                           |
| Duty Cycle TX On (us)                           | Total transmitter 'on air' (Tair) time in usec                                                                                                                                                                                                              |
| Duty Cycle TX Off (Blocked) (us)                | Total transmitter 'blocked' (Toff) time in usec                                                                                                                                                                                                             |
| Duty Cycle Max toff (us)                        | Maximum time the t\_off timer is started for                                                                                                                                                                                                                |
| Duty Cycle Early Frames                         | Number of packets ignoring duty cycle restrictions                                                                                                                                                                                                          |
| Duty Cycle illegal transmission                 | Increments if there was a transmission outside the duty cycle used                                                                                                                                                                                          |
| Duty Cycle traffic dropped (NDP)                | Number of NDP frames dropped because of duty cycle restrictions                                                                                                                                                                                             |
| Duty Cycle traffic dropped                      | Number of non NDP frames dropped because of duty cycle restriction                                                                                                                                                                                          |
| WUP QosNull not acked                           | Number of times the QOS Null frames was not acked                                                                                                                                                                                                           |
| QosNull resent                                  | Number of times the QOS null frames was re transmitted                                                                                                                                                                                                      |
| QosNull queued behind another                   | Number of times there are multiple QOS null framed queued to be sent                                                                                                                                                                                        |
| QosNull tx backing off                          | Number of times QOS null frame fails before the MAC gives up on trying to send PS updates                                                                                                                                                                   |
| MAC State:                                      | These are the states that the mac core stores internally.                                                                                                                                                                                                   |
|                                                 |                                                                                                                                                                                                                                                             |
| RX state                                        | These are the states that the mac core stores internally.                                                                                                                                                                                                   |
| TX state                                        | These are the states that the mac core stores internally.                                                                                                                                                                                                   |
| Channel config                                  | These are the states that the mac core stores internally.                                                                                                                                                                                                   |
| Managed calibration state                       | These are the states that the mac core stores internally.                                                                                                                                                                                                   |
| Powersave enabled :1                            | These are the states that the mac core stores internally.                                                                                                                                                                                                   |
| Dynamic powersave offload enabled :1            | These are the states that the mac core stores internally.                                                                                                                                                                                                   |
| STA PS state                                    | These are the states that the mac core stores internally.                                                                                                                                                                                                   |
| Is waiting on dynamic powersave timeout         | These are the states that the mac core stores internally.                                                                                                                                                                                                   |
| TX blocked by host cmd                          | These are the states that the mac core stores internally.                                                                                                                                                                                                   |
| Is waiting for medium sync                      | These are the states that the mac core stores internally.                                                                                                                                                                                                   |
| N packets in QoS queues                         | These are the states that the mac core stores internally.                                                                                                                                                                                                   |
| Stale AID removed                               | These are the states that the mac core stores internally.                                                                                                                                                                                                   |
| MAC main task unused stack (words)              |                                                                                                                                                                                                                                                             |
| MAC timer task unused stack (words)             |                                                                                                                                                                                                                                                             |
| TWT sta num sp entered                          | Number of times the device enters the TWT service period                                                                                                                                                                                                    |
| TWT sta enters sp too early                     | Number of times the device enters the TWT service period early                                                                                                                                                                                              |
| TWT sta missed sp (already over)                | Number of times the device completely missed the TWT service period                                                                                                                                                                                         |
| TWT sta missed start of sp (already started)    | Number of times the device missed the start of the service period                                                                                                                                                                                           |
| TWT sta sp already active on ps wake            | Number of times the device is in active TWT and is out of powersave                                                                                                                                                                                         |
| TWT announcement delay from sp start (avg us)   | Average time for the service period delayed from its start                                                                                                                                                                                                  |
| TWT operation halted                            | Number of times the TWT operations is halted                                                                                                                                                                                                                |
| TWT operation resumed                           | Number of times the TWT operations is resumed                                                                                                                                                                                                               |
| TSF for sta has been (re)set                    | TSF timer has been reset                                                                                                                                                                                                                                    |
| Standby exit from wakeup frame                  | Standby frames stats                                                                                                                                                                                                                                        |
| Standby exit for association                    | Standby frames stats                                                                                                                                                                                                                                        |
| Standby exit from userspace                     | Standby frames stats                                                                                                                                                                                                                                        |
| Standby SA Query response rx                    | Standby frames stats                                                                                                                                                                                                                                        |
| Standby SA Query response timeouts              | Standby frames stats                                                                                                                                                                                                                                        |
| Standby deep sleep enter                        | Standby frames stats                                                                                                                                                                                                                                        |
| Standby deep sleep exit (assoc)                 | Standby frames stats                                                                                                                                                                                                                                        |
| Standby deep sleep exit (no assoc)              | Standby frames stats                                                                                                                                                                                                                                        |
| Vendor IEs matching OUI filter                  | Increments if the vendor information element has a matching oui (Organizationally unique identifier)                                                                                                                                                        |
| PHYPSM MAC IRQ status zero count                | Invalid                                                                                                                                                                                                                                                     |
| PS scheduled after beacon miss                  | Number of times the device would go into power save if it misses a beacon                                                                                                                                                                                   |
| PS scheduled after pin wake                     | Number of times the device would go into power save after the host indicated to be awake via the wake pin                                                                                                                                                   |
| **Phy Stats**                                   |                                                                                                                                                                                                                                                             |
| Temperature(Celcius):45                         | Temperature of the chip                                                                                                                                                                                                                                     |
| Vbat(mV)                                        | <p><br>Shows the voltage of the battery. This is updated every 60 second and should remain constant</p>                                                                                                                                                     |
| PMU Switched to Vbat setting (mV)               | VBAT calibration and sets the PMU settings accordingly                                                                                                                                                                                                      |
| Vbuck Trim                                      | Shows the stats for buck voltage, for transmission (TX) it should be highest 12, for ideal or receiving (RX) state it should be 5 and for power save mode it should be 0.                                                                                   |
| Current RF frequency Hz                         | Current channel information                                                                                                                                                                                                                                 |
| Current Operating BW MHz                        | Current channel information                                                                                                                                                                                                                                 |
| Current Primary Channel BW MHz                  | Current channel information                                                                                                                                                                                                                                 |
| DCF medium went busy after go                   | Number of times the medium went busy after the PHY decided to transmit the frame                                                                                                                                                                            |
| DCF medium went busy during start               | Number of times the medium went busy when the PHY decided to transmit the frame                                                                                                                                                                             |
| DCF time in past                                | Number of times the time for the frame to be sent was in the past                                                                                                                                                                                           |
| MPE RX overflow                                 | Number of time the RX source buffer overflowed                                                                                                                                                                                                              |
| MPE RX underflow                                | Number of time the RX source buffer underflowed                                                                                                                                                                                                             |
| RX detected less than guard IFS                 | Shows that the receiver detects the data faster and not enough Interface frame spacing.                                                                                                                                                                     |
| TX Scrambler Init Value                         | The TX scrambler init value                                                                                                                                                                                                                                 |
| RX Scrambler Decoded Byte                       | Shows the decoded scrambler value which is based on the TX Scrambler Init Value in the received packet.                                                                                                                                                     |
| Signal Field Error                              | Signal field errors reported from PHY                                                                                                                                                                                                                       |
| Packet Detect Fired STF                         | Number of times the STF was fired                                                                                                                                                                                                                           |
| Packet Detect Fired LTF                         | Number of times the LTF was fired                                                                                                                                                                                                                           |
| Packet Detect Timestamp (us)                    | Time at which the last packet detect was triggered                                                                                                                                                                                                          |
| Non-NDP PSDU Rx                                 | Number of PSDU that are not NDP                                                                                                                                                                                                                             |
| Coarse Frequency Offset                         | Shows the coarse frequency offset as an angle. Coarse frequency offset in Hz                                                                                                                                                                                |
| Final Frequency Offset:-540                     | Shows cores + fine value and it shows the Frequency Offset of local oscillator, unit (Hz).                                                                                                                                                                  |
| Detected Sub-Band                               | Winning STF Correlator. If a wrong correlator is triggered, the classification algorithm corrects it for LTF search and before writing to statistics.                                                                                                       |
| Corr0 Power                                     | The accumulated max peak power of every peak detected up to STF triggering                                                                                                                                                                                  |
| Corr1 Power                                     | The accumulated max peak power of every peak detected up to STF triggering                                                                                                                                                                                  |
| Corr2 Power                                     | The accumulated max peak power of every peak detected up to STF triggering                                                                                                                                                                                  |
| Corr3 Power                                     | The accumulated max peak power of every peak detected up to STF triggering                                                                                                                                                                                  |
| Corr4 Power                                     | The accumulated max peak power of every peak detected up to STF triggering                                                                                                                                                                                  |
| Corr5 Power                                     | The accumulated max peak power of every peak detected up to STF triggering                                                                                                                                                                                  |
| Corr6 Power                                     | The accumulated max peak power of every peak detected up to STF triggering                                                                                                                                                                                  |
| Corr7 Power                                     | The accumulated max peak power of every peak detected up to STF triggering                                                                                                                                                                                  |
| Corr8 Power                                     | The accumulated max peak power of every peak detected up to STF triggering                                                                                                                                                                                  |
| AGC Gain                                        | Value of the AGC gain used                                                                                                                                                                                                                                  |
| AGC LNA Status                                  | Value of the LNA status                                                                                                                                                                                                                                     |
| AGC FEM Rx Gain                                 | Value of FEM rx gain                                                                                                                                                                                                                                        |
| AGC LNA Bypass                                  | If LNA bypass is used                                                                                                                                                                                                                                       |
| AGC Interference Detected                       | If interference was detected by the AGC                                                                                                                                                                                                                     |
| Received Power:-37                              | Signal strength of the last received frame                                                                                                                                                                                                                  |
| Detected Channel BW                             | This is the detected channel bandwidth ( also referred to as Primary channel bandwidth) of the received signal                                                                                                                                              |
| STF Status                                      | This parameter indicates which correlators reached min peaks by the STF triggering time and it’s been used in mode classification algorithm                                                                                                                 |
| Energy Meter Reading                            | This parameter denotes the total in-band energy for a Rx signal at the time of STF triggering                                                                                                                                                               |
| Energy Meter threshold                          | Energy meter threshold value used                                                                                                                                                                                                                           |
| Noise dBm                                       | Noise level of the medium                                                                                                                                                                                                                                   |
| Detected RX Mode                                | The format of the packet received by the device. The values can be s1g format, Duplicate 1MHz format, Duplicate 2MHz format or a long format                                                                                                                |
| Oper BW Indicator                               | Denotes the detected operating channel bandwidth of the received signal                                                                                                                                                                                     |
| Corr2S Energy                                   | Indicates the energy in the secondary 2MHz subchannel.                                                                                                                                                                                                      |
| Corr4S Energy                                   | Indicates the energy in the secondary 4MHz subchannel.                                                                                                                                                                                                      |
| Noise Metric 2                                  | This is the noise metric for correlator C2P                                                                                                                                                                                                                 |
| Signal Metric 2                                 | This is the signal metric for correlator C2P                                                                                                                                                                                                                |
| Range Select                                    | This parameter indicates the starting bit position to select 8 bit range out of the 16 bits as the input range for packet detect                                                                                                                            |
| TX Abort(s)                                     | if value is greater than 1, it's the number of times tried for transmission and aborted. The value will be 0 is transmission was successful                                                                                                                 |
| TX Stale(s)                                     | Increments if a stale TX is detected                                                                                                                                                                                                                        |
| TX Underflow(s)                                 | Shows how many times the mac that requested date to TX to the PHY and the PHY was unable to get the data fast enough                                                                                                                                        |
| RX Filtered                                     | Number of time the PHY received data that was not meant for it                                                                                                                                                                                              |
| DGC Energy Meter Pwr dB                         | Invalid                                                                                                                                                                                                                                                     |
| DGC Inband Pwr dB                               | Invalid                                                                                                                                                                                                                                                     |
| DGC Diff Pwr dB                                 | Invalid                                                                                                                                                                                                                                                     |
| DGC BackOff Pwr dB                              | Invalid                                                                                                                                                                                                                                                     |
| DGC CoffFactor Pwr dB                           | Invalid                                                                                                                                                                                                                                                     |
| DGC Multiplier                                  | Invalid                                                                                                                                                                                                                                                     |
| DGC Shift                                       | Invalid                                                                                                                                                                                                                                                     |
| TX Traveling Pilots                             | Number of times the packet was transmitted using traveling pilots                                                                                                                                                                                           |
| Max Stack Used                                  |                                                                                                                                                                                                                                                             |
| min\_neset                                      | The minimum noise estimate of the medium                                                                                                                                                                                                                    |
| NB INTRF Detected                               | If there was interference detected                                                                                                                                                                                                                          |
| NB INTRF Subc nulled                            | Shows that the sub carrier are null or not.                                                                                                                                                                                                                 |
| NB INTRF Num Subc nulled                        | Shows how many sub carrier are null.                                                                                                                                                                                                                        |
| NB INTRF Index                                  | Shows which sub carrier is determined by interference detection to have interference.                                                                                                                                                                       |
| NB INTRF Num                                    | Shows how many times we have detect interference.                                                                                                                                                                                                           |
| NB INTRF SIR dB                                 | Shows the signal to interference ratio , unit (dB).                                                                                                                                                                                                         |
| NB INTRF Power dBm                              | Shows the received interference power on a narrow band in dBm.                                                                                                                                                                                              |
| FSG tx rounds                                   | shows the count of fast symbol generator transmit.                                                                                                                                                                                                          |
| DC locked state I                               | Shows the state of the high pass filter for I (IQ samples).                                                                                                                                                                                                 |
| DC locked state Q                               | Shows the state of high pass filters and Q (IQ samples).                                                                                                                                                                                                    |
| LTF Corr Power                                  | Shows the power of a long training field.                                                                                                                                                                                                                   |
| STF number of peaks                             | shows the number of peaks on a short training field.                                                                                                                                                                                                        |
| Avg ring osc freq mhz                           | show the average frequency of ring osc which is used to identify the process corner chips.                                                                                                                                                                  |
| ring osc0 count                                 | show the count of ring osc 0 which is used to identify the process corner chips                                                                                                                                                                             |
| ring osc1 count                                 | show the count of ring osc 1 which is used to identify the process corner chips                                                                                                                                                                             |
| ring osc2 count                                 | show the count of ring osc 2 which is used to identify the process corner chips                                                                                                                                                                             |
| ring osc3 count                                 | show the count of ring osc 3 which is used to identify the process corner chips                                                                                                                                                                             |
| ring osc4 count                                 | show the count of ring osc 4 which is used to identify the process corner chips                                                                                                                                                                             |
| Tx subband centre frequency Hz                  | Invalid                                                                                                                                                                                                                                                     |
| Tx subband operating BW MHz                     | Invalid                                                                                                                                                                                                                                                     |
| Tx subband primary channel BW MHz               | Invalid                                                                                                                                                                                                                                                     |
| Tx subband primary index                        | Invalid                                                                                                                                                                                                                                                     |
| Tx subband channel changed count                | Invalid                                                                                                                                                                                                                                                     |
| SIG\_FIELD\_FAIL BAD STF                        | Number of bad STF detected                                                                                                                                                                                                                                  |
| SIG\_FIELD\_FAIL BAD LTF                        | Number of bad LTF detected                                                                                                                                                                                                                                  |
| SIG\_FIELD\_FAIL CRC Error                      | Number of failed CRC check                                                                                                                                                                                                                                  |
| Servo Gain                                      | Invalid                                                                                                                                                                                                                                                     |
| I trim                                          | Invalid                                                                                                                                                                                                                                                     |
| Q trim                                          | Invalid                                                                                                                                                                                                                                                     |

***

### 2.8 Channel

\| <p>channel \[options]<br>sets channel parameters or read associated or full channel frequency if none of \[-c|-o|-p|-n] given<br>-a              prints all the channel i.e. Full, DTIM and current<br>-c \<value>    channel frequency in kHz<br>-o \<value>    operating bandwidth in MHz<br>-p \<value>    primary bandwidth in MHz<br>-n \<value>    primary 1 MHz channel index<br>-r            ignores regulatory max tx power<br>-j            prints full information in easily parsable JSON format</p> |
\| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

The ‘channel’ command is used to set or dump the channel information for the device. If no options are given then the command will dump the current channel information that is being used by the device. If the above arguments are used then the command will configure the device to use the specified channel information.

### 2.9 FSG (Fast Symbol Generator)

| <p>fsg \<command><br>           enable \<iterations> \<duty cycle> \[ifs]<br>                   iterations        number of transmissions, set to -1 for  <br>                              infinite<br>                   duty cycle        the duty cycle to maintain between<br>                               transmissions %(0.01-99.99)<br>                   ifs                inter-frame spacing between PSDUs in<br>                                 microseconds  (default:160us)<br>           disable</p> |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

For FCC and other regional-specific certification testing at high duty cycle and is enabled by using the testing  firmware version titled ‘mm6108\_dvt.bin’’. This command will configure the firmware to transmit data at the given duty cycle with the provided IFS either indefinitely or for the given number of iterations.

The content of the transmission contains valid LTF+STF+SIG fields, but not necessarily valid 80211 data. PSDU content can be random or pseudo-random (i.e. incrementing, non-zero).

***

### 2.10 MAC Address

WARNING: Once set, this is not reversible

It is important that VDDIO be provided as 2.5V before writing the MAC address.\
For more information, please refer to the ‘MAC OTP Read and Write’ guide.

| <p>macaddr \[-w \<mac\_addr>]           reads the MAC address of the chip if -w was<br>not passed<br>-w \<mac\_addr>         writes the given 'XX:XX:XX:XX:XX:XX' MAC<br>address to the chip (this is not reversible)</p> |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

Read and write the MAC address that the WLAN interface will be configured to.

| <p>Example usage:<br># morsectrl macaddr -w 0c:bf:74:05:dc:71<br>Chip MAC address: 0c:bf:74:05:dc:71<br># ifconfig<br>wlan0     Link encap:Ethernet  HWaddr 0C:BF:74:05:DC:71  <br>          inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0</p> |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

### 2.11 Wakeaction

| <p>wakeaction \<destination mac address> \<hex string payload><br>                     sends a wake action frame of given payload to a<br>destination mac address.</p> |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

This command sends a wakeaction frame from the AP to the desired station. On reception of the wake action frame a GPIO can be toggled which in turn could be used to wake the host up. This command requires the GPIO to be set by the Board Configuration File (BCF).

***

###

### 2.12 DHCP

\| <p>dhcpc \[enable | discover | get | clear | renew | rebind | update]    <br>configure DHCP client<br>  enable - enable DHCP client<br>  discover - do a discovery and obtain a lease<br>  get - get the current lease<br>  clear - clear the current lease<br>  renew - renew the current lease<br>  rebind - rebind the current lease<br>  update - send a lease update to the driver</p> |
\| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

This command is only applicable if the driver has been loaded with enable\_dhcp\_offload modparam. With this feature enabled the leases can be renewed without having to wake up the host processor. Through this method, assuming a DHCP server is running somewhere on the network, the station should receive, and automatically apply, an IP address within 10 seconds of associating. If currently leased address needs to be updated, it can be triggered with the following ‘morsectrl’ command:

| # morsectrl dhcpc update |
| ------------------------ |

Note that this will only apply a lease if enable\_dhcpc\_offload is set to 1.\
The lease can be obtained manually as well but note that this is intended only for testing and verification purposes and should not be used in normal operations. The steps to manually do this:

* On an associated, running station, enable the DHCP client with the following ‘morsectrl’ command:

| # morsectrl dhcpc enable |
| ------------------------ |

* Within 10 seconds, the client should automatically perform a discovery and obtain a lease.\
  To shortcut this, and perform a discovery now, execute the following command:

| # morsectrl dhcpc discover |
| -------------------------- |

* The lease can be retrieved using:

| # morsectrl dhcpc get |
| --------------------- |

* To force a DHCP renewal or rebinding sequence with the following commands:

| <p># morsectrl dhcpc renew<br># morsectrl dhcpc rebind</p> |
| ---------------------------------------------------------- |

Note that if the DHCP client is enabled and does not have a lease, it will attempt a discovery sequence every 1-10 seconds, as per the RFC.

###

***

###

### 2.13 QoS

| <p>qos \[options] \<queue\_ID>   sets/reads QOS parameters for given queue ID<br>  -c  \<value>    number of AIFS slots to wait for<br>  -t  \<value>    maximum possible TX OP in us<br>  -m  \<min> \<max>    contention window MIN,MAX values</p> |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

This command sets access category parameters or reads the current values of the different access categories. There are 4 access categories that can be read or configured :-

1. Best effort
2. Background
3. Video
4. Voice

If configuring the access category the following options can be uses along with the queue that wants to be configured:

* -c: AIFS slots (Arbitration Inter Frame Spacing) - The minimum wait time before accessing the medium.
* -t: TX OP - The Transmission Opportunity (TXOP) is an interval of time, in milliseconds, when a client has the right to initiate transmissions towards the AP.
* -m: Contention window values - The window defines the min and max contention time of various stations who contend with each other for access to channel

***

###

### 2.14 Random Packet Generator (RPG)

| <p>rpg \<command><br>  start \[options] starts rpg<br>  -l               listening mode (other options are overlooked)<br>  -c \<value>    number of packets to send (default unlimited)<br>  -s \<value>    specifies the size of the packets to be sent (min: 24).<br>                         Random if not specified.<br>  -d               disables random packet contents (for casim)<br>  stop               terminates rpg (if started)<br>  stats \[options]         reads rpg stats collected (if started)<br>  -r                         reset the rpg stats (if started)<br>  srcaddr \[mac address]   sets source mac address of rpg packets<br>  dstaddr \[mac address]   sets destination mac address of rpg packets<br>  ampdu \[number]          force using ampdu with \[number] mpdu</p> |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

This is a random packet generator (RPG) that is enabled by using the testing  firmware version titled ‘mm6108\_dvt.bin’’. This feature is mainly used for test, debugging and development purposes. When using RPG, TX packets originate from the Apps core - not from the driver. On the RX side it counts the number of packets that were received and were successfully decoded.

### 2.15 Bandwidth

\| <p>bw \<value>        sets bandwidth(1|2|4|8) or reads current bandwidth if no  <br>arguments were given</p> |
\| ---------------------------------------------------------------------------------------------------------------- |

Sets the bandwidth value. Once the devices are associated the bandwidth value cannot be changed. This is deprecated.

### 2.16 TX Scaler

| <p>txscaler \<value>    scales tx power (takes values -15 to +15 dB)<br></p> |
| ---------------------------------------------------------------------------- |

The ‘txscaler’ command is used mainly for bench evaluation and experimentation purposes. This command takes the values in dB and boosts or backs off the default transmit power by the given value. It can take the values from -15 dB to +15 dB. Note that this should not be used for normal operation as it can break region specific regulatory rules.

### 2.17 OTP

WARNING: It is important that VDDIO be provided as 2.5V before writing to OTP.\
For more information, please refer to the ‘MAC OTP Read and Write’ guide.

| <p>otp \<bank\_num> \[-w \<bank\_val>]        read/write OTP bank given from chip<br>          bank\_num                bank number to read/write from/to. eg.: for<br>610x \[0-7]<br>-w \<bank\_val>            burns the value to the OTP bank</p> |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

The ‘otp’ command can be used to read and write the OTP bits programmed to the chip.

| <p># morsectrl otp 0<br>OTP Bank(0): 0x0</p> |
| -------------------------------------------- |

To read the OTP bits for all the banks \[0-7]:

| <p># morsectrl otp \[0-7]<br>Output:<br>OTP Bank(0): 0x0<br>OTP Bank(1): 0x0<br>OTP Bank(2): 0x800000<br>OTP Bank(3): 0x0<br>OTP Bank(4): 0x0<br>OTP Bank(5): 0x60daf38d<br>OTP Bank(6): 0x0<br>OTP Bank(7): 0x0</p> |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

To write the bits in decimal value:

| <p># morsectrl otp 3 -w 4194304<br>Output:<br>OTP Bank(3): 0x400000 (Hex value)</p> |
| ----------------------------------------------------------------------------------- |

To write the bits in hex value:

| <p># morsectrl otp 0 -w 0x700000<br>Output:<br>OTP Bank(0): 0x700000</p> |
| ------------------------------------------------------------------------ |

### 2.18 A-MPDU

\| <p>ampdu \[enable|disable]<br>          'enable' will enable AMPDU sessions. Must be run before<br>               association.<br>          'disable' will disable AMPDU sessions. Must be run before<br>               association.</p> |
\| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

The ‘ampdu’ command is responsible for enabling or disabling the AMPDU feature in the chip. This command should be executed before the device is associated. The command will show no effect if executed after association.

## 3 Revision History

| Release Number | Release Date | Release Notes               |
| -------------- | ------------ | --------------------------- |
| 01             | 26/06/2023   | Initial document release    |
| 02             | 16/12/2024   | Revised document formatting |
