12

What electronics live inside the SPIKE Prime hub? How powerful is the hardware?

jncraton
  • 40,265
  • 10
  • 119
  • 237

1 Answers1

16

If we open the hub we can take a look at the main PCB inside. There's just one PCB in addition to a small speaker and the replaceable lithium ion battery. Here's the top of the PCB:

PCB Top

And the bottom:

PCB Bottom

We see that the main CPU is an STM32F413. It includes 1M of flash and 320k of RAM and the ARM Cortex M4 core can be clocked up to 100MHz.

In addition to the 1M of embedded flash, there's a Winbond W25Q256JV providing an additional 32MB for program and data storage.

Bluetooth connectivity is provided by the TI CC2564C.

The 25 LED grid is driven by a TI TLC5955 (48 channel PWM LED driver). This part also drives the other 4 surface mount LEDs on the board.

The 6 motor outputs are driven by a trio of LB1836 dual motor drivers.

There's also an MPS 2639A to manage the lithium ion battery.

There are many other supporting components on the board, but that covers the majority of it.

Overall, this is similar in architecture (ARM-based, identical output drivers, etc) to the other Powered Up hubs. It is significantly more powerful in terms of horsepower and storage thanks to the 32MB flash chip and higher clock frequency (100MHz here vs 48MHz for Boost for example).

jncraton
  • 40,265
  • 10
  • 119
  • 237
  • Is there any specific driver IC for the RGB LED under the central button? – gpdaniels Jul 04 '20 at 08:22
  • 1
    @g.p.daniels The other surface-mount LEDs on the board are also driven by the TLC5955. – jncraton Jul 04 '20 at 13:55
  • 1
    Can you identify which is the accelerometer and gyroscope chip? – Jorge Moreno Mar 02 '21 at 17:37
  • Any idea what chip is the IMU and where it is on the board? – MrGibbage Jun 03 '22 at 18:30
  • 1
    At Pybricks, we have confirmed that the IMU is a STMicroelectronics LSM6DS3TR-C by reading the chip ID over the I2C bus. I think it is U26 in the middle of the second picture. – David Lechner Aug 03 '22 at 21:56
  • Thanks @DavidLechner. Some teams (ours inclcuded) have observed that SOMEtimes it seems that the gyro has some of the same issues the EV3 gyro did, which can cause real problems for FLL teams. Do we know any other details about the gyro and how it is used? Is the a calibration during bootup? Can we manually (through code, especially python) trigger a recal? Is there a way (in code) to determine if the gyro has failed? – MrGibbage Dec 19 '22 at 13:23