rcbench
Servo and ESC test bench: panel, IOmcu and shared C
Loading...
Searching...
No Matches
splash_screen.h File Reference

The splash: the self-test report. More...

#include "ui_screen.h"

Go to the source code of this file.

Macros

#define SPLASH_DETAIL_MAX   64
 Bytes a step's detail keeps, terminator included.

Enumerations

enum  splash_step_t {
  SPLASH_STEP_BOARD = 0 , SPLASH_STEP_DISPLAY , SPLASH_STEP_TOUCH , SPLASH_STEP_STORAGE ,
  SPLASH_STEP_SETTINGS , SPLASH_STEP_LINK , SPLASH_STEP_IOMCU , SPLASH_STEP_COUNT
}
 The steps the splash reports, in the order it lists them. More...
enum  splash_result_t { SPLASH_PENDING = 0 , SPLASH_OK , SPLASH_WARN , SPLASH_FAIL }
 A step's result. More...

Functions

void splash_screen_set (splash_step_t step, splash_result_t result, const char *detail)
 A step's result and its detail.
bool splash_screen_done (void)
 Whether the splash may hand over.
void splash_invalidate (void)
 Draw the whole splash again on both framebuffers.
const ui_screen_t * splash_screen (void)
 The splash.

Detailed Description

The splash: the self-test report.

Each subsystem reports its result as it initialises: board, display, touch, storage, settings, link, IOmcu. A missing card or an IOmcu with another protocol version is reported here.

SPDX-License-Identifier: MIT

Macro Definition Documentation

◆ SPLASH_DETAIL_MAX

#define SPLASH_DETAIL_MAX   64

Bytes a step's detail keeps, terminator included.

The detail is drawn from x 432 to 24px short of the panel's edge, 47 cells of 12 x 24; a German letter takes two bytes, so the CAN self-test's longest verdict (48 bytes, 46 cells) fits whole.

Enumeration Type Documentation

◆ splash_result_t

A step's result.

Enumerator
SPLASH_WARN 

usable without it: no card, no sensor

SPLASH_FAIL 

the bench will not arm

◆ splash_step_t

The steps the splash reports, in the order it lists them.

Enumerator
SPLASH_STEP_LINK 

the CAN (Controller Area Network) bus

SPLASH_STEP_IOMCU 

IOmcu identity and protocol version

Function Documentation

◆ splash_screen()

const ui_screen_t * splash_screen ( void )

The splash.

Returns
its screen

◆ splash_screen_done()

bool splash_screen_done ( void )

Whether the splash may hand over.

Returns
true once every step has answered and the hold has expired, or a tap skipped the hold.

◆ splash_screen_set()

void splash_screen_set ( splash_step_t step,
splash_result_t result,
const char * detail )

A step's result and its detail.

Parameters
stepThe step.
resultIts result.
detailWhat it found, or NULL for nothing.