CYW4343x Firmware update

The official PYBD running MicroPython, and its accessories.
Target audience: Users with a PYBD
Post Reply
sadok_1912
Posts: 11
Joined: Fri Mar 20, 2020 4:49 pm

CYW4343x Firmware update

Post by sadok_1912 » Fri Mar 20, 2020 5:07 pm

Hey All,
First of all, thank you for tremendous effort put in making these boards come to reality. As I'm digging into the micropython code, I noticed the library file "libcyw43.a" used to link the different wifi/bt functions. The SIP module used in the Pyboard D-series is a Murata 1DX which normally comes with two firmware files (brcmfmac43430-sdio.bin, brcmfmac43430-sdio.1DX.clm_blob) found here https://github.com/murata-wireless/cyw-fmac-fw.

When building the firmware for the PYBD_SF2, I don't see any of these firmware being uploaded to the any memory location (internal or external flash). So my first assumption is that either the external flash is preloaded with those binaries and accessed to with that provided static library (i.e., "libcyw43.a"). Or that library contains everything to get the cypress chip up and running. I also couldn't find its source code (in case I'd like to alter some parameters/functionalities, if available).

I appreciate clarifying my confusion.
Thank you

User avatar
jimmo
Posts: 2754
Joined: Tue Aug 08, 2017 1:57 am
Location: Sydney, Australia
Contact:

Re: CYW4343x Firmware update

Post by jimmo » Sat Mar 21, 2020 12:03 am

Like you suggested, libcyw43.a contains the firmware blobs (so this is included in the regular DFU update, but written to the external spiflash by mboot). (If you look at libcyw43.a there are some sections marked with ".big_const" which is used by the PYBD linker files).

The source code is not currently available, but I don't know what the longer term plans are.

sadok_1912
Posts: 11
Joined: Fri Mar 20, 2020 4:49 pm

Re: CYW4343x Firmware update

Post by sadok_1912 » Sun Mar 22, 2020 2:50 pm

Thank you for your answer. I suppose the code points to "fw_4343WA1_7_45_98_50_start" to indicate where the cyw43 firmware starts which is called by cywbt_activate () and other function from the library. Now the latter is not called anywhere obvious except maybe in cyw43_ll_init(). Can you clarify please the initialization flow that goes between the the main code and the library ?

Also How is this calculated :
#define CYWBT_FW_ADDR (&fw_4343WA1_7_45_98_50_start + 749 * 512 + 29 * 256)

Thank you

User avatar
jimmo
Posts: 2754
Joined: Tue Aug 08, 2017 1:57 am
Location: Sydney, Australia
Contact:

Re: CYW4343x Firmware update

Post by jimmo » Mon Mar 23, 2020 12:15 am

Hi,

That offset is specific to the BT firmware that is loaded via HCI. The main cyw firmware (for WiFi etc) is loaded separately (entirely within libcyw43.a I presume).

What are you actually trying to do? It might be reaching out to George Robotics (e.g. http://micropython.org/contact/ ) if you need specific information.

Jim

sadok_1912
Posts: 11
Joined: Fri Mar 20, 2020 4:49 pm

Re: CYW4343x Firmware update

Post by sadok_1912 » Wed Apr 01, 2020 1:49 pm

Thank you for your reply, I'll try to go for the contact for more details. I was wondering where the lib file gets the external Flash address to execute the firmware. Any ideas ?

Thank you

User avatar
jimmo
Posts: 2754
Joined: Tue Aug 08, 2017 1:57 am
Location: Sydney, Australia
Contact:

Re: CYW4343x Firmware update

Post by jimmo » Wed Apr 01, 2020 2:05 pm

Sorry not quite sure what you mean? What are you trying to do?

sadok_1912
Posts: 11
Joined: Fri Mar 20, 2020 4:49 pm

Re: CYW4343x Firmware update

Post by sadok_1912 » Tue Apr 07, 2020 6:25 pm

Sorry for ambiguity. I'm trying to get the stm32h7 working with the 1dx. I'm still dealing to get the 1DX to boot. The 1DX firmware resides in TEXT1_ADDR. Assuming the SDIO is initilazing, I can't seem to get a feedback (Wl_HOST high ?) from 1DX. I see that there is some support for the h7 in the micropython code. Are there some current limitations?
Thanks.

User avatar
jimmo
Posts: 2754
Joined: Tue Aug 08, 2017 1:57 am
Location: Sydney, Australia
Contact:

Re: CYW4343x Firmware update

Post by jimmo » Tue Apr 07, 2020 11:31 pm

I think you should definitely write to Damien (with the address I linked to earlier), as I believe this is already on his radar.

Post Reply