Tool/software:
Hi,
Integrated the cc3301 module with our custom board based on the AM62x.
the default WiFi tx power is 20dBm and current consumption of overall board is around 124mA at 12v,
it may go up to 180mA while transferring the large file
user@user:~$ iw dev
phy#0
Interface wlan0
ifindex 3
wdev 0x1
addr aa:bb:cc:dd:ee:ff
ssid Prometheus
type AP
channel 1 (2412 MHz), width: 20 MHz (no HT), center1: 2412 MHz
txpower 20.00 dBm
multicast TXQ:
qsz-byt qsz-pkt flows drops marks overlmt hashcol tx-bytes tx-packets
0 0 0 0 0 0 0 0 0
Reduced the txpower to 12dbm with below command
user@user:~$ sudo ifconfig wlan0 down
user@user:~$ sudo iw dev wlan0 set txpower fixed 1200
user@user:~$ sudo ifconfig wlan0 up
user@user:~$ iw dev
phy#0
Interface wlan0
ifindex 3
wdev 0x1
addr aa:bb:cc:dd:ee:ff
ssid Prometheus
type AP
channel 1 (2412 MHz), width: 20 MHz (no HT), center1: 2412 MHz
txpower 12.00 dBm
multicast TXQ:
qsz-byt qsz-pkt flows drops marks overlmt hashcol tx-bytes tx-packets
0 0 0 0 0 0 0 0 0
but current consumption is same as 20dBm ( ideal:124mA and transfer file 180mA), and even for 6 dBm tx power
so getting doubt about the commands effect on the module.
Please share the proper command to reduce tx power of the cc33xx.
Regards,
Gireesh Hiremath
Hi Gireesh,
Sorry for the delay.
So yes, I am not aware of being able to configure the power through iw command.
In order to reduce the power of the cc33xx devices, you would have to modify the cc33xx-conf.bin that is used in /lib/firmware/ti-connectivity. We have a GUI wtihin SimpleLink WiFi Toolbox (https://www.ti.com/tool/download/SIMPLELINK-WIFI-TOOLBOX) called INI Composer. You can use the tool to generate the cc33xx-conf.bin Documentation of how to use the tool is also inside the toolbox install location in folder "docs".
You want to be looking for parameter "PowerLimitArray". The documentation explains this parameter in more detail.
I'm sharing a screenshot of the relevant section in the documentation just to be specific and provide a pointer:
Hi Sabeeh,
The iw set txpower command allows for setting additional user power limits at runtime. Changes here will hit the driver in cc33xx_op_config() -> cc33xx_config_vif() -> cc33xx_acx_tx_power()
That looks like it is expecting to be able to handle power limits from upper layers. I've not confirmed that it actually does anything with a litepoint/spectrum analyzer, do you know if the firmware can handle power changes via this path? It should allow power to be reduced below the limits set in the conf file, but not exceed them.
Dean
Hi Sabeeh,
It may help to set tx power at init time, how to handle at run time?
Regards,
Gireesh
Hi Sabeeh,
Modified the parameter "PowerLimitArray" and generated cc33xx-conf.bin with the tool https://www.ti.com/tool/download/SIMPLELINK-WIFI-TOOLBOX, but getting below error
[ 8.334793] cc33xx_sdio mmc2:0001:2: Using SDIO in-band IRQ
[ 8.443690] Bluetooth: [bt sdio] TI cc33xx BLE-over-SDIO driver is up and running!
[ 8.888561] cc33xx_driver cc33xx.5.auto: firmware: direct-loading firmware ti-connectivity/cc33xx-nvs.bin
[ 8.892258] cc33xx_driver cc33xx.5.auto: firmware: direct-loading firmware ti-connectivity/cc33xx-conf.bin
[ 8.892483] cc33xx: ERROR ti-connectivity/cc33xx-conf.bin configuration binary size is wrong, expected 1353 got 1136
[ 8.904197] cc33xx: WARNING falling back to default config
[ 9.141567] cc33xx_driver cc33xx.5.auto: firmware: direct-loading firmware ti-connectivity/cc33xx_2nd_loader.bin
[ 9.490788] cc33xx_driver cc33xx.5.auto: firmware: direct-loading firmware ti-connectivity/cc33xx_fw.bin
[ 10.887042] cc33xx: ERROR FW is stuck, triggering recovery
[ 12.893769] cc33xx: WARNING download INI params to FW command sending failed: -5
[ 12.894282] cc33xx: ERROR FW download failed
and also there is the size difference between the tool generated binary file (1136) and binary in the git repo git.ti.com/.../ti-connectivity (1353)
please share the latest tar/bin configuration file to load and generate binary of size 1353 from the tool.
Regards,
Gireesh Hiremath
You need to be careful to use the tool that corresponds to the firmware version you are using.
In your case, the repo you got your firmware from is not up to date. Use the latest 1.0.0.8 SDK release with the latest WIFI Tool box. Make sure to update both the driver and the firmware; you can't change firmware or conf file only.
Hi Sabeeh,
any update?
please share the config file which used to generate cc33xx-conf.bin in
git.ti.com/.../ti-connectivity of size 1353.
Regards.
Gireesh Hiremath
Hi Sabeeh,
any update? please share config file generate cc33xx-conf.bin of size 1353.
Regards,
Gireesh Hiremath
You should use the latest release (1.0.0.8), and forget about that firmware repo.
Hi Gireesh,
Just as Dean has mentioned, prefer you use the conf.bin from the CC33xx SDK. The firmware binaries and driver all have to match. Or you can generate your own from the INI Composer in Simplelink WiFi Toolbox as I mentioned earlier.
The one from the linux-firmware repo is a placeholder for the Processor SDK, which as you may recall from previous threads, is outdated. Once the driver is accepted into the mainline kernel, then the linux-firmware repo will also be updated with the latest. Same reason applies for those who use TI kernel 6.6, but require the latest CC33xx SDK driver. We provide patches for the kernel 6.6 to update it.
Users should always start with the CC33xx SDK, and then we can help port the respective to the intended kernel version. I am working on updating https://github.com/TexasInstruments-Sandbox/cc33xx-linux-mpu-ports/ to have kernel ports for TI kernel 6.6.
Hi Sabeeh,
Thanks for the information, I will start form 1.0.0.8, but we already using the 6.6 kernel,
please provide patch for CC33xx SDK to support 6.6 kernel and
any method to control tx power at run time or after initialization?
(sudo iw dev wlan0 set txpower fixed 1200 not working as expected)
Regards,
Gireesh Hiremath
Hi Gireesh,
Understood. I am working on those patches now for 1.0.0.8 SDK. I will notify you when the patches are posted to the github mentioned above.
any method to control tx power at run time or after initialization?
No, not aware.
Hi Gireesh.
The Github repo above has been updated. Please apply the following patch and then use the cc33xx_fw.bin and default cc33xx-conf.bin provided from the CC33xx SDK 1.0.0.8:
https://github.com/TexasInstruments-Sandbox/cc33xx-linux-mpu-ports/tree/main/ti-linux-6.6.y