fbt23
Posts: 1
Joined: Tue Oct 24, 2017 6:07 am

Which Wifi/Bluetooth chip does the RPi 3 model B integrates?

Tue Oct 24, 2017 6:11 am

Hi!,
i've seen some different specs regarding the exact combo wifi/bluetooth chip model that the RPi 3 model B integrates ... is the BCM43143? is the BCM43438 A1? ... any help will be appreciated. thanks

B.Goode
Posts: 6426
Joined: Mon Sep 01, 2014 4:03 pm
Location: UK

Re: Which Wifi/Bluetooth chip does the RPi 3 model B integrates?

Tue Oct 24, 2017 8:54 am

Welcome to the Raspberry Pi forums.

The blog post that announced the RPi3 in Feb 2016 says:
BCM2837, BCM43438 and Raspberry Pi 3

For Raspberry Pi 3, Broadcom have supported us with a new SoC, BCM2837. This retains the same basic architecture as its predecessors BCM2835 and BCM2836, so all those projects and tutorials which rely on the precise details of the Raspberry Pi hardware will continue to work. The 900MHz 32-bit quad-core ARM Cortex-A7 CPU complex has been replaced by a custom-hardened 1.2GHz 64-bit quad-core ARM Cortex-A53. Combining a 33% increase in clock speed with various architectural enhancements, this provides a 50-60% increase in performance in 32-bit mode versus Raspberry Pi 2, or roughly a factor of ten over the original Raspberry Pi.

James Adams spent the second half of 2015 designing a series of prototypes, incorporating BCM2837 alongside the BCM43438 wireless “combo” chip.
From: https://www.raspberrypi.org/blog/raspbe ... 3-on-sale/



And the RPi3 product page, on the specification tab, says:
Quad Core 1.2GHz Broadcom BCM2837 64bit CPU
1GB RAM
BCM43438 wireless LAN and Bluetooth Low Energy (BLE) on board
40-pin extended GPIO
From: https://www.raspberrypi.org/products/ra ... 3-model-b/


Can you cite your sources that state otherwise?

User avatar
RaTTuS
Posts: 10079
Joined: Tue Nov 29, 2011 11:12 am
Location: North West UK

Re: Which Wifi/Bluetooth chip does the RPi 3 model B integrates?

Tue Oct 24, 2017 8:56 am

Broadcom BCM43438 I think
but where did you find links to which chips you think they are ?
How To ask Questions :- http://www.catb.org/esr/faqs/smart-questions.html
WARNING - some parts of this post may be erroneous YMMV

1QC43qbL5FySu2Pi51vGqKqxy3UiJgukSX
Covfefe

mkirk
Posts: 7
Joined: Tue Mar 06, 2018 4:21 pm

Re: Which Wifi/Bluetooth chip does the RPi 3 model B integrates?

Mon Apr 23, 2018 8:49 pm

Cypress bought Broadcom's wireless business in 2016.

Here is datasheet on the WiFi/BT BCM43438 (now CYW43438) part: http://www.cypress.com/file/298076/download

Does anyone know how chip is wired into the SoC - what pins are used?
And are these pins available on the Compute Module 3 connector?

drgeoff
Posts: 8484
Joined: Wed Jan 25, 2012 6:39 pm

Re: Which Wifi/Bluetooth chip does the RPi 3 model B integrates?

Mon Apr 23, 2018 9:39 pm

Its on a SDIO interface.

User avatar
adun
Posts: 102
Joined: Fri Mar 20, 2015 9:25 am
Location: Switzerland

Re: Which Wifi/Bluetooth chip does the RPi 3 model B integrates?

Tue Apr 24, 2018 8:39 am

What can be read out from the firmware dt-blob:

Soc:
=====
GPIO 32-33 UART0 for BT
GPIO 34-38 SD1 for Wifi
GPIO 42 GPCLK1 for Ethernet 25MHz output
GPIO 43 GPCLK2 for Wifi 32kHz output

Port Expander
=============
GPIO 128 BT_ON
GPIO 129 WL_ON

Sadly the port expander GPIOs don't come through the SODIMM connector on CM3.

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 5657
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: Which Wifi/Bluetooth chip does the RPi 3 model B integrates?

Tue Apr 24, 2018 9:05 am

adun wrote:
Tue Apr 24, 2018 8:39 am
Port Expander
=============
GPIO 128 BT_ON
GPIO 129 WL_ON

Sadly the port expander GPIOs don't come through the SODIMM connector on CM3.
But there's no real reasons for a GPIO expander on the user side of the CM3 as you have all the GPIOs available. Choose one you like the look of and connect up to that (if needed).
There is a GPIO expander on the CM3 as an I2C bus was required to the SMPS, so two lines bit-bash I2C to the SMPS and the expander to replicate the original functions on the two lost GPIOs.

TBH I'm not sure whether anything in the software stack actually toggles BT_ON or WL_ON. The firmware will set them up at boot and set the required state. Things could then turn them off, but I can't see anything in the device tree config to point the kernel at it.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
Please don't send PMs asking for support - use the forum.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

User avatar
adun
Posts: 102
Joined: Fri Mar 20, 2015 9:25 am
Location: Switzerland

Re: Which Wifi/Bluetooth chip does the RPi 3 model B integrates?

Wed Apr 25, 2018 12:32 pm

6by9 wrote:
Tue Apr 24, 2018 9:05 am
But there's no real reasons for a GPIO expander on the user side of the CM3 as you have all the GPIOs available. Choose one you like the look of and connect up to that (if needed).
There is a GPIO expander on the CM3 as an I2C bus was required to the SMPS, so two lines bit-bash I2C to the SMPS and the expander to replicate the original functions on the two lost GPIOs.

TBH I'm not sure whether anything in the software stack actually toggles BT_ON or WL_ON. The firmware will set them up at boot and set the required state. Things could then turn them off, but I can't see anything in the device tree config to point the kernel at it.
You're right.
There’s just one case where it would be handy to have the additional GPIOs available.
If a CM board should be equal to a Raspberry Pi 3+ and all the GPIOs from the 40 pin header are also used (e.g. for DPI/SMI) you would need additional GPIOs for at least the LEDs and the LAN chip if BT_ON and WL_ON are not necessary.

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 5657
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: Which Wifi/Bluetooth chip does the RPi 3 model B integrates?

Wed Apr 25, 2018 1:16 pm

adun wrote:
Wed Apr 25, 2018 12:32 pm
You're right.
There’s just one case where it would be handy to have the additional GPIOs available.
If a CM board should be equal to a Raspberry Pi 3+ and all the GPIOs from the 40 pin header are also used (e.g. for DPI/SMI) you would need additional GPIOs for at least the LEDs and the LAN chip if BT_ON and WL_ON are not necessary.
That doesn't hold together as an argument.
The 40 pin header takes GPIOs 0-27 (aka Bank 0). On the CM1/3 bank 1 (GPIOs 28-45) is also available, so you have those available to you. Only if you were trying to replicate absolutely all the connectors of a B+/2/3/3+ on a CM would you realistically have an issue, but I wouldn't see that as a sensible goal when it is likely to work out more expensive overally than buying a standard Pi.
And there's nothing stopping you adding your own GPIO expander and telling Linux about it. Having the activity and power LEDs off the firmware is actually a pain in the neck but was necessary.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
Please don't send PMs asking for support - use the forum.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

User avatar
adun
Posts: 102
Joined: Fri Mar 20, 2015 9:25 am
Location: Switzerland

Re: Which Wifi/Bluetooth chip does the RPi 3 model B integrates?

Wed Apr 25, 2018 3:16 pm

Yes, I meant if you also add Wifi/BT togehter with Audio and I2C0 this would use most of the GPIOs from Bank 1.
It will certainly be more expensive to replicate a 3+ this way but as mostly with a CM it's a form factor thing.

Just curious about what you said of adding an own GPIO expander. If doing so the firmware would need to control it? At least for CAM GPIOs.
Or can e.g. the LAN_RUN pin or the Act LED be controlled directly from Linux?

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 5657
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: Which Wifi/Bluetooth chip does the RPi 3 model B integrates?

Wed Apr 25, 2018 3:31 pm

adun wrote:
Wed Apr 25, 2018 3:16 pm
Just curious about what you said of adding an own GPIO expander. If doing so the firmware would need to control it? At least for CAM GPIOs.
Or can e.g. the LAN_RUN pin or the Act LED be controlled directly from Linux?
Act LED can certainly be controlled direct from Linux, and it is on B+ and 2 (GPIO 47 on both).
Same with the power LED, although the firmware needs to be able to access it if you want the low voltage detection (which is optional).

LAN_RUN is a funny one in that again I don't think it is actively controlled after boot. I don't know the full logic behind it. Probably safest to keep that one accessible to the firmware.
Then again if you are not network or USB booting then the LAN device is just a USB device, so the firmware doesn't care. There would be nothing stopping you controlling LAN_RUN from Linux, and setting the GPIO via a gpio hog during Linux boot, at which point the USB device should enumerate.

So many ways to skin the rabbit...
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
Please don't send PMs asking for support - use the forum.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

User avatar
adun
Posts: 102
Joined: Fri Mar 20, 2015 9:25 am
Location: Switzerland

Re: Which Wifi/Bluetooth chip does the RPi 3 model B integrates?

Wed Apr 25, 2018 3:42 pm

Interesting information thank you !
So if the firmware would (also) need to access the port expander a custom option in the dt-blob would be necessary to let the firmware handle the external GPIOs like internal ones?

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 5657
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: Which Wifi/Bluetooth chip does the RPi 3 model B integrates?

Wed Apr 25, 2018 4:08 pm

adun wrote:
Wed Apr 25, 2018 3:42 pm
So if the firmware would (also) need to access the port expander a custom option in the dt-blob would be necessary to let the firmware handle the external GPIOs like internal ones?
No, the firmware knows about one expander, and that is doing HDMI hotplug and EMMC_Enable on the CM3.
The firmware can not be told about another, so any function that you need the firmware needs to control must come off a standard GPIO. Linux doesn't care and has drivers for a large range of expanders.

There was one a thread a while back where someone had wired in to the spare outputs of the expander on the CM3 (U8). You could do that, but then you've can't easily remove the CM3 from the device as it isn't on the SO-DIMM connector. Search is failing for me at the moment, but looking at source history it would have been Feb 2017, and he wanted to set up the default termination via dt-blob.bin.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
Please don't send PMs asking for support - use the forum.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

User avatar
adun
Posts: 102
Joined: Fri Mar 20, 2015 9:25 am
Location: Switzerland

Re: Which Wifi/Bluetooth chip does the RPi 3 model B integrates?

Wed Apr 25, 2018 4:29 pm

I found it thanks.
Configuring the pull resistors on the FXL6408 on CM3

So those pins could directly be used by the firmware via dt-blob.bin for e.g. POWER_LOW.
Could the CAM GPIOs be controlled from linux since they are only for ON/OFF and a CAM LEDs ?
Basically, which functions are mandatory to be controlled by the firmware besides POWER_LOW?

And what does LAN_RUN_BOOT compared to LAN_RUN ?

Return to “Advanced users”

Who is online

Users browsing this forum: No registered users and 11 guests