Wi-Fi Combo Forum Discussions
text.format{('custom.tabs.no.results')}
I have same issue in my application. In my situation, I build with "ota2_manuf_download" option, and after that I can build with ota2_download. However, the program and DCT infomation is not updated after ota2_download and reboot.
In my understanding, after building ota2_download and reboot, the new application wake up. Is this wrong?
By the way, is libusbK USB Devices not problem as "WICED USB JTAG Port" in show above figure?
BRs,
Hiroyuki
Show LessI have an application that will receive infrequent commands over at TCP connection. I was wondering if there was a way to have a thread that handles the packet wake up at a packet reception event? The only packets it will receive will be commands, so the thread could wake up at any packet, not just TCP.
Follow up - is there an API to allow for explicit wakeup/send to sleep of a created thread?
Thanks!
Show Lessiperf3 tests are run with UDP between 2 Pi 3B boards over the on-board WiFi ( channel 6 = 2.437 GHz)
Server Pi is set up as Access Point (hostapd/dnsmasq) and client Pi is attached.
Below is an example where iperf3 has zero data transfer for a full 1 second period (32-33 seconds).
Just prior there is high jitter with packet loss and after the event as well.
Test setup is running in a RF screen room with no interfering WiFi devices.
RF spectrum analyzer (2.437 GHz) shows complete loss of WiFi RF signal during this event - so Pi is not transmitting and nothing else is interfering.
Bluetooth is disabled on both Pi's. Part is this chip: https://www.cypress.com/file/298076/download
Does the CYW43438 periodically run calibration and shut down WiFi for 2 -4 seconds every minute?
Are there any kernel tasks in Raspbian that would shut down WiFi? Can a log file be inspected to determine why WiFi stopped?
iperf3 -c 192.168.0.1 -t 60 -f m -u -b 50M
<<< ******* SKIP TO MIDPOINT OF IPERF3 TEST ************* >>>>
[ 5] 26.00-27.00 sec 5.20 MBytes 43.6 Mbits/sec 1.020 ms 0/666 (0%)
[ 5] 27.00-28.00 sec 5.02 MBytes 42.1 Mbits/sec 1.105 ms 0/643 (0%)
[ 5] 28.00-29.00 sec 2.88 MBytes 24.1 Mbits/sec 0.955 ms 0/368 (0%) <<< WHY FEWER DATAGRAMS HERE?
[ 5] 29.00-30.00 sec 5.13 MBytes 43.1 Mbits/sec 1.166 ms 0/657 (0%)
[ 5] 30.00-31.00 sec 5.23 MBytes 43.8 Mbits/sec 0.944 ms 0/669 (0%)
[ 5] 31.00-32.00 sec 144 KBytes 1.18 Mbits/sec 20.133 ms 26/44 (59%) <<< HIGH JITTER, PACKET LOSS
[ 5] 32.00-33.00 sec 0.00 Bytes 0.00 Mbits/sec 20.133 ms 0/0 (0%) <<< COMPLETE LOSS - NO DATA TRANSFER
[ 5] 33.00-34.00 sec 136 KBytes 1.12 Mbits/sec 156.233 ms 11/28 (39%) <<< RECOVERY, HIGH JITTER, LOW PACKET TRANSFER
[ 5] 34.00-35.00 sec 2.15 MBytes 18.0 Mbits/sec 1.175 ms 0/275 (0%) << BACK TO NORMAL
[ 5] 35.00-36.00 sec 5.16 MBytes 43.3 Mbits/sec 0.981 ms 0/660 (0%)
[ 5] 36.00-37.00 sec 2.78 MBytes 23.3 Mbits/sec 6.918 ms 1/357 (0.28%)
[ 5] 37.00-38.00 sec 5.00 MBytes 41.9 Mbits/sec 1.020 ms 0/640 (0%)
[ 5] 38.00-39.00 sec 5.23 MBytes 43.9 Mbits/sec 1.090 ms 0/670 (0%)
[ 5] 39.00-40.00 sec 5.24 MBytes 44.0 Mbits/sec 1.171 ms 0/671 (0%)
<<<< ************ CUT HERE TO END OF TEST ************* >>>>
[ 5] 59.00-60.00 sec 2.67 MBytes 22.4 Mbits/sec 6.552 ms 0/342 (0%) <<<<<< END OF TEST
[ 5] 60.00-60.07 sec 384 KBytes 43.7 Mbits/sec 1.505 ms 0/48 (0%)
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 5] 0.00-60.07 sec 0.00 Bytes 0.00 Mbits/sec 1.505 ms 39/34519 (0.11%) << THE 32-33s INTERVAL ABOVE IS NOT INCLUDED HERE.
Can some parameter be changed in iperf3 (buffer sizing?) or in the WiFi configuration to avoid loss?
Or is there a known issue in the WiFi chipset or driver that could cause this loss?
It appears that iperf3 just hangs during this event - the stats do not reflect the gap, only the lost datagrams before and after.
Similar event is seen with WiFi TCP test - but only with Pi AP as client and attached Pi as server.
Reversing roles only has a few lower datagram rate events (loss), but never complete dropout.
Running the same test with a wired 100Mbps Ethernet connection yields 0% datagram loss (rate is 93.2 Mbps).
Any insights appreciated.
Show LessI am testing snip.httpbin_org on CWY943907AEVAL1F. I use WICED-Studio-6.2.
The original sample work correctly. I modified the original source code to send data to my local server. I removed the CA check.
I can send small file (size = 300kbyte). but I could not send a file that is over 400kbyte size.
Is it needed to change mbedtls/config.h ?
Show LessI am using the following function to join an AP:
wwd_result_t wwd_wifi_join_specific( const wiced_scan_result_t* ap,
const uint8_t* security_key,
uint8_t key_length,
host_semaphore_type_t* semaphore,
wwd_interface_t interface )
I pass the following semaphore to the function:
host_semaphore_type_t semph_wifi_join_cmpltd_hdle; // this semaphore resumes the wifi connection thread
But the semaphore is never set!
The function returns successfully and connects to the AP. But the semaphore is never set to indicate the end of the association process.
Show LessNeed information for Callback registration for events like Link/connection up/down , wifi hardware error,etc.
Can Event be registered in wiced for wifi for particular events.
there are not many significant APIs to cover wifi events POLLING.
Any Alternative to handle situations of physical Events like connection error or hardware error.
Show LessHi All,
I'm new to the Wiced devices. We are using BCM943907 device in our product.
I installed the WICED-Studio-6.2.1.2-IDE-Installer to my window 10 laptop and imported existing code.
Send the " make snip.pers-BCM943907MERCIER-ThreadX-NetX_Duo-debug ota2_download " to create make file. but i'm receiving below error.
Please help me to resolve this problem.
Microsoft Windows [Version 10.0.16299.904]
(c) 2017 Microsoft Corporation. All rights reserved.
C:\Projects\MHB3.0\CodeDoc\Sourcecode\MHB3.0_BTCombine_CRC_Review_count_115200_Review\WICED-SDK-3.6.2>make snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug ota2_download
MAKEFILE MAKECMDGOALS=snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug ota2_download OTA2_SUPPORT is enabled
Making config file for first time
+-----------------------------------------------------------------------------------------------------+
| IMPORTANT NOTES |
+-----------------------------------------------------------------------------------------------------+
| Wi-Fi MAC Address |
| The target Wi-Fi MAC address is defined in <WICED-SDK>/generated_mac_address.txt |
| Ensure each target device has a unique address. |
+-----------------------------------------------------------------------------------------------------+
| MCU & Wi-Fi Power Save |
| It is *critical* that applications using WICED Powersave API functions connect an accurate 32kHz |
| reference clock to the sleep clock input pin of the WLAN chip. Please read the WICED Powersave |
| Application Note located in the documentation directory if you plan to use powersave features. |
+-----------------------------------------------------------------------------------------------------+
MAKEFILE MAKECMDGOALS=snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug ota2_download OTA2_SUPPORT is enabled
Updating ota2 bootloader version...
./apps/waf/ota2_bootloader/version.h does not exist yet.
version file needs to be updated.
FROM: 0.0
TO : 41940.0
Updating application version...
./apps/snip/pers/version.h does not exist yet.
version file needs to be updated.
FROM: 0.0
TO : 42921.0
Building Bootloader waf.ota2_bootloader-NoOS-NoNS-BCM943909WCD1_3.B1-SoC.43909
Building Serial Flash Loader App
Finished Building Bootloader
Processing resources
Creating security credentials
Making DCT image
Compiling App_pers
Finished Building Serial Flash Loader App
Compiling Platform_BCM943909WCD1_3_B1
Compiling NetX_Duo
Compiling Lib_USBX
Compiling WICED
Compiling Lib_SNTP
Compiling Lib_DNS
Compiling Lib_HTTP_client
Compiling Lib_command_console
Compiling Lib_command_console_wifi
Compiling Lib_Mini_Printf
Compiling Lib_OTA2_Service
Compiling Lib_Wiced_RO_FS
Compiling Platform_ak4954_driver
Compiling Lib_wm8533_dac_driver
Compiling Platform_max9860_driver
Compiling Lib_spdif_driver
Compiling WWD_ThreadX_Interface
Compiling WICED_ThreadX_Interface
Compiling WWD_NetX_Duo_Interface
Compiling WICED_NetX_Duo_Interface
Compiling Wiced_USBX_Interface
Compiling WWD_for_SoC.43909_ThreadX
Compiling Supplicant_BESL
Compiling MCU_BCM4390x
Compiling Lib_base64
Compiling Lib_OTA2
Compiling Lib_DHCP_Server
Compiling Lib_Linked_List
Compiling WICED_Lib_FileX_Interface
Compiling Lib_TLV
Compiling Lib_crypto_open
Compiling Lib_micro_ecc
Compiling Lib_crc
Compiling Lib_GPIO_button
Compiling common_GCC
Compiling 43909_Peripheral_Drivers
Compiling Lib_Ring_Buffer
Compiling SPI_Flash_43909_Library_BCM943909WCD1_3.B1
Compiling Uart_43909_Library_BCM943909WCD1_3.B1
Compiling Peripherals_Shared_43909_Library_BCM943909WCD1_3.B1
Compiling Tiny_Crypto_43909_Library_BCM943909WCD1_3.B1
Compiling USB_Host_43909_Library_BCM943909WCD1_3.B1
Compiling Ethernet_43909_Library_BCM943909WCD1_3.B1
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/App_pers.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Platform_BCM943909WCD1_3_B1.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/NetX_Duo.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_USBX.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/WICED.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_SNTP.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_DNS.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_command_console.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_HTTP_client.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_command_console_wifi.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_Mini_Printf.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_OTA2_Service.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_Wiced_RO_FS.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Platform_ak4954_driver.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_wm8533_dac_driver.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Platform_max9860_driver.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_spdif_driver.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/WWD_ThreadX_Interface.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/WICED_ThreadX_Interface.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/WWD_NetX_Duo_Interface.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/WICED_NetX_Duo_Interface.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Wiced_USBX_Interface.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/WWD_for_SoC.43909_ThreadX.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Supplicant_BESL.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/MCU_BCM4390x.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_base64.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_OTA2.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_DHCP_Server.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_Linked_List.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/WICED_Lib_FileX_Interface.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_TLV.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_crypto_open.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_micro_ecc.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_crc.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_GPIO_button.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/common_GCC.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/43909_Peripheral_Drivers.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Lib_Ring_Buffer.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/SPI_Flash_43909_Library_BCM943909WCD1_3.B1.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Uart_43909_Library_BCM943909WCD1_3.B1.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Peripherals_Shared_43909_Library_BCM943909WCD1_3.B1.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Tiny_Crypto_43909_Library_BCM943909WCD1_3.B1.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/USB_Host_43909_Library_BCM943909WCD1_3.B1.a
Making build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/libraries/Ethernet_43909_Library_BCM943909WCD1_3.B1.a
Making snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug.elf
Making snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug.bin
snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug
----------------------------------|---------|---------|
| | Static |
Module | Flash | RAM |
----------------------------------+---------+---------|
App | 0 | 182852 |
base64 | 0 | 980 |
crc | 0 | 1104 |
crypto_open | 0 | 41076 |
DHCP_Server | 0 | 3004 |
DNS | 0 | 3644 |
FileX | 0 | 21509 |
HTTP_client | 0 | 928 |
Interrupt Vectors | 0 | 500 |
libc | 0 | 56676 |
Linked_List | 0 | 644 |
micro_ecc | 0 | 6220 |
Mini_Printf | 0 | 980 |
Networking | 0 | 34667 |
NetX-Duo - Interfaces & Stacks | 0 | 16 |
NVRam | 0 | 2128 |
OTA2 | 0 | 13344 |
OTA2_Service | 0 | 20192 |
Other | 0 | 232801 |
Packet Buffers | 0 | 77872 |
platform | 0 | 21297 |
RAM Initialisation | 32 | 0 |
Ring_Buffer | 0 | 324 |
SNTP | 0 | 956 |
spdif_driver | 0 | 328 |
Startup Stack & Link Script fill | 0 | 88 |
Supplicant - BESL | 0 | 22095 |
ThreadX | 0 | 23888 |
TLV | 0 | 96 |
USBX | 0 | 52268 |
WICED | 0 | 12963 |
Wiced_RO_FS | 0 | 2744 |
wm8533_dac_driver | 0 | 2260 |
WWD | 0 | 4980 |
----------------------------------+---------+---------|
TOTAL (bytes) | 0 | 845424 |
----------------------------------|---------|---------|
Creating Filesystem BCM94390x_targets.mk ...
Downloading DCT BCM94390x_targets.mk ... @echo build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/DCT.bin @ SFLASH_DCT_LOC=0x0020d000
./tools/common/Win32/mk_wicedfs32 build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/filesystem.bin build/snip.pers-BCM943909WCD1_3.B1-ThreadX-NetX_Duo-debug/resources/Staging/
Creating Filesystem Done
DCT_IMAGE_SECTOR_ADDRESS := 0x0020d000 size:= 4096
WICED/platform/MCU/BCM4390x/BCM94390x_targets.mk:208: recipe for target 'download_dct' failed
make.exe[1]: *** [download_dct] Error 1
Makefile:228: recipe for target 'main_app' failed
make: *** [main_app] Error 2
C:\Projects\MHB3.0\CodeDoc\Sourcecode\MHB3.0_BTCombine_CRC_Review_count_115200_Review\WICED-SDK-3.6.2>
Thanks and regards,
Basava,
Show LessI wan to use IAR toolchain to build then wifi project , so my Make target is "snip.scan-BCM943362WCD6 IAR=1".However it take some Erro like the flowing
MAKEFILE MAKECMDGOALS=snip.scan-BCM943362WCD6 OTA2_SUPPORT is disabled
Building with IAR toolchain...
Building Bootloader
系统找不到指定的路径。
make.exe[3]: *** [build/waf.bootloader-NoOS-BCM943362WCD6/Modules/apps/waf/bootloader/bootloader.o] Error 1
make.exe[2]: *** [main_app] Error 2
make.exe[1]: *** [bootloader] Error 2
tools/makefiles/standard_platform_targets.mk:90: recipe for target 'bootloader' failed
Makefile:351: recipe for target 'main_app' failed
make: *** [main_app] Error 2
I couldn't solve this erro ,is there anyone who can help Me ?Thanks!!!!
Show LessSDK 6.2.0
CYW43907
FreeRTOS + lwIP
I have been using wiced_tcp_send_packet without any issues until i tried to send larger packets. I then switched to wiced_tcp_send_buffer and it works great in an example application with no TLS but once TLS is added and the packet is large enough to be fragmented, I run into a data_abort exception. The best that I can tell, the problem occurs in wiced_tcpip_common.c, at line 213, during the free call.
if (enc_buf_allocated == WICED_TRUE)
{
free(enc_output_buf);
enc_output_buf = NULL;
}
Has anyone seen this?
The packet i was attempting to send was between 1800 and 1900 bytes.
Show LessAs far as I can tell from the CYW43907 datasheet/ref manual, the default GPIO settings should be an input.
GPIOOutEn Release 9c5be10 0x18000068
Bits Name Function R/W Reset
31:0 GPIOOutEn
The 4-byte General Purpose I/O Output Enable register is writable, has a reset value of zero,
and determines which GPIO pins are used as inputs and which are used as outputs. When a bit
in this register is set, the corresponding GPIO pin is driven as an output.
RW 0
Reset: 0x00000000
When I exit the device from Hibernation mode, one of the GPIO pins switches to an output low for a short duration, ~1mS, I happen to have this GPIO connected to the reset pin of a secondary MCU and this is causing it to reset when it cannot reset (At this point the secondary MCU is waking the CYW43907 by HIB_WAKE to send serial data).
I tried leaving the pin config alone, making it an high impedance input on startup, and making it an input with a pullup on startup, but nothing has changed the behavior. These gpio configurations are being called as part of the platform_init_external_devices call.
platform_gpio_init( &platform_gpio_pins[ST_RST_PIN], INPUT_HIGH_IMPEDANCE ); // has internal pullup
Is there something prior to platform_init_external_devices that is configuring the pin? The pin is not redefined in my platform code.
Show Less