- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am trying to use parts of code from WICED SDK in my own project to use Murata's LBWA1KL1FX (CYW43364) module with STM32H743 MCU. My goal is to have an access point which could comunicate with PC or mobile apps via TCP and UDP packets. I have similar project working with Broadcom LBWA17DZX6 (SPI bus) and STM32H743, so I need to update it to work with CYW43364 (SDIO bus). I am using FreeRTOS.
All the read register functions as well as wwd_bus_write_wifi_firmware_image( ) function returns with response WWD_SUCCESS, so I assume this means my electrical connection of SDIO is working well.
But I am now stuck in initialisation of the chip, waiting for High speed clock (PLL as I understand) to start up: Code reads SDIO_CHIP_CLOCK_CSR (0x1000E) register from wifi chip and and waits for SBSDIO_HT_AVAIL (0x80) bit to become set, but it gets 0x40 until it times out. This is in a place where this comment is writen:
"If your system times out here, it means that the WLAN firmware is not booting.
* Check that your WLAN chip matches the 'wifi_image.c' being built - in GNU toolchain, $(CHIP) makefile variable must be correct."
I doublechecked my sources and I think I got the fw files right:
Firmware image is a byte array (size 383110 bytes) made from:
WICED-Studio-6.2\43xxx_Wi-Fi\resources\firmware\43364\43364A1.bin
Chip constants file is copied from:
WICED-Studio-6.2\43xxx_Wi-Fi\WICED\WWD\internal\chips\4343x\chip_constants.h
Nvram image (size 625 bytes) is from:
WICED-Studio-6.2\43xxx_Wi-Fi\platforms\BCM943364WCD1\wifi_nvram_image.h
So my question is: what other things (aside from wrong fw image) might have gone wrong to get me in this place. For example:
1. Are there any other files I need to update when going from Broadcom LBWA17DZX6 (CYW43362 - SPI bus) to Murata's LBWA1KL1FX (CYW43364 - SDIO bus)?
2. Is there a diffece in firmware image or nvram image when using muRata vs Broadcom module with CYW43364?
3. Nvram image is stored as an array (static const char wifi_nvram_image[]). Is there any numbers that needs to be modified in that array before writing it to the chip?
4. What are minimal needed connections to get the module on Murata's evaluation board (LBWA1KL1FX-TEMP) up and running?
5. Is the sleep clock (LPO) mandatory to get the chip running? (I can't see how can it be accessed on Murata's i.MX Interconnect boards that I am using now)
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This thread helped me to find the right answer: Re: STM32F769NI + Murata SN8000 - Problem with high throughput clock.
Problem was with inner workings of DMA and cachable RAM in STM32H7. Currupted data was sent to WiFi chip when writing firmware, hence no boot.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Adding inoue_tomohiro_1742091 from Murata
The original LBWA17DZX6 is a Type ZX (LBWA17DZX6-705), a Murata Module (click here)
The Type 1FX ( LBWA1KL1FX-875) you are moving to is also a Murata module (click here).
Murata released both radio only products with Linux support under their i.MX6/7 ecosystem within NXP.
This ecosystem is described here: Murata Wi-Fi/Bluetooth for Linux and Android
It sounds like Murata may have supported you through the port of the LBWA17DZX6 to WICED (creation of platform files/BSP),
Have you approached Murata about doing the same for the LBWA1KL1FX?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This thread helped me to find the right answer: Re: STM32F769NI + Murata SN8000 - Problem with high throughput clock.
Problem was with inner workings of DMA and cachable RAM in STM32H7. Currupted data was sent to WiFi chip when writing firmware, hence no boot.