puzzlebox
Loading...
Searching...
No Matches
main

Main controller software. More...

Detailed Description

This directory contains the software for the main controller of the Puzzle Box. The main controller target is a Raspberry Pi Pico W.

Building

  1. Create a config.h file (see config)
  2. Use CMake to build

Flashing

  1. Hold the BOOTSEL button while resetting the Pico (by power cycling or pulling pin 30 (RUN) to GND)
  2. $ picotool load build/main.uf2

Components

 Config
 Configuration options.
 
 Tasks
 FreeRTOS tasks.
 
 Overrides
 Override functions from pbdrv-mod.
 

Macros

#define PB_ADDR_MOD_MAIN   0x08
 Main controller I²C address.
 
void init ()
 Initialize the main controller.
 
void init_tasks ()
 Register all tasks in FreeRTOS.
 

Function Documentation

◆ init()

void init ( )

This function only synchronously initializes the standard input/output (used for printf() and panic()), and queues all other types of initialization in the async_init() task using FreeRTOS.

Initialize the main controller.