📚 Getting Started withe the Nucleo-G0B1RE and the STM32G0B1RE MCU
🎯 Why CMPE2250 moves to a more capable STM32 platform
- CMPE1250 introduced students to embedded systems using the Nucleo‑G031K8, a compact, affordable STM32G0 board designed for basic prototyping and foundational microcontroller concepts.
- For CMPE2250, we transition to the Nucleo‑G0B1RE, a significantly more capable board that opens the door to richer labs, more realistic engineering workflows, and advanced peripheral use cases.
- The Nucleo‑G0B1RE features the STM32G0B1RE microcontroller, which offers:
- More Flash (128KB vs 32KB) and RAM (32KB vs 8KB) for complex applications
- Additional GPIO pins for expanded interfacing options
- Advanced peripherals like multiple timers, ADC channels, and communication interfaces (I2C, SPI, UART)
- Enhanced debugging capabilities with SWD and integrated ST-Link
- This upgrade isn’t cosmetic—it meaningfully expands what students can build, measure, and understand.

1️⃣ High‑Level Differences
1.1 Microcontroller Class & Resource
| Feature | Nucleo‑G031K8 | Nucleo‑G0B1RE | Difference | Impact for CMPE2250 |
|---|---|---|---|---|
| MCU | STM32G031K8 (Cortex‑M0+) | STM32G0B1RE (Cortex‑M0+) | ||
| Flash | 32KB | 128KB | 4x more flash memory | Allows for more complex applications |
| RAM | 8KB | 32KB | 4x more RAM | Enables larger data structures and buffers |
| Package / Pin Count | LQFP32 (32 pins) | LQFP64 (64 pins) | different package type | More GPIO pins available |
| Core Features | Basic peripherals and features of the G0 series | Enhanced peripherals and features of the G0 series including additional timers, ADC channels, and communication interfaces (I2C, SPI, UART) with improved debugging capabilities with SWD and integrated ST-Link. | More advanced features and capabilities compared to the G031K8. | Enables more complex and realistic embedded applications |
The G0B1RE gives students breathing room—no more fighting for bytes or pins
1.2 Peripheral Set & Connectivity
The G031K8 board provides a solid but minimal peripheral set for introductory work. The G0B1RE expands nearly every category:
- More USARTs, SPIs, and I²Cs
- Additional timers and advanced PWM capabilities
- More ADC channels with better resolution and sampling options
- Full Arduino R3 + ST morpho connectors (vs. Nano‑only on G031K8)
Impact: CMPE2250 can now include multi‑protocol labs, concurrent peripherals, and more realistic embedded design patterns.
1.3 Board Form Factor & Expansion
| Feature | G031K8 | G0B1RE |
|---|---|---|
| Form factor | Nucleo‑32 (32 pins) | Nucleo‑64 (64 pins) |
| Expansion | Arduino Nano headers | Arduino R3 + Morpho |
| Debug Interface | ST-Link/V2-1 | ST‑LINK/V3‑A (faster, more features) |
Note: We will continue to use j-link in this course.
2️⃣Tools and Platform
- STMicroelectronics Nucleo-G0B1RE development board
- STM32G0B1RE microcontroller
- Segger Embedded Studio IDE for writing and testing your code
- J-Link debugger (SWD)
3️⃣ Development Board Resources

- Development board Schematics: Introduction to Embedded Systems
- Development Board User Manual: Basic Microcontroller Programming
4️⃣ MCU Resources
5️⃣ Memory Map
Same as in the previous course, the memory map defines how different memory regions (Flash, RAM, peripherals) are organized and accessed by the CPU.
