File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 3131#include "shared-bindings/displayio/FourWire.h"
3232#include "shared-module/displayio/__init__.h"
3333#include "shared-module/displayio/mipi_constants.h"
34+ #include "supervisor/shared/board.h"
3435#include "tick.h"
3536
3637displayio_fourwire_obj_t board_display_obj ;
@@ -118,4 +119,5 @@ bool board_requests_safe_mode(void) {
118119}
119120
120121void reset_board (void ) {
122+ board_reset_user_neopixels ();
121123}
Original file line number Diff line number Diff line change 1414#define MICROPY_PORT_C (0)
1515#define MICROPY_PORT_D (0)
1616
17+ #define USER_NEOPIXELS_PIN (&pin_PA15)
18+
1719#define DEFAULT_I2C_BUS_SCL (&pin_PA13)
1820#define DEFAULT_I2C_BUS_SDA (&pin_PA12)
1921
Original file line number Diff line number Diff line change 3131#include "shared-bindings/displayio/FourWire.h"
3232#include "shared-module/displayio/__init__.h"
3333#include "shared-module/displayio/mipi_constants.h"
34+ #include "supervisor/shared/board.h"
3435#include "tick.h"
3536
3637displayio_fourwire_obj_t board_display_obj ;
@@ -96,4 +97,5 @@ bool board_requests_safe_mode(void) {
9697}
9798
9899void reset_board (void ) {
100+ board_reset_user_neopixels ();
99101}
Original file line number Diff line number Diff line change 1414#define MICROPY_PORT_C (0)
1515#define MICROPY_PORT_D (0)
1616
17+ #define USER_NEOPIXELS_PIN (&pin_PA15)
18+
1719#define DEFAULT_I2C_BUS_SCL (&pin_PA13)
1820#define DEFAULT_I2C_BUS_SDA (&pin_PA12)
1921
Original file line number Diff line number Diff line change 3131#include "shared-bindings/displayio/FourWire.h"
3232#include "shared-module/displayio/__init__.h"
3333#include "shared-module/displayio/mipi_constants.h"
34+ #include "supervisor/shared/board.h"
3435#include "tick.h"
3536
3637displayio_fourwire_obj_t board_display_obj ;
@@ -118,4 +119,5 @@ bool board_requests_safe_mode(void) {
118119}
119120
120121void reset_board (void ) {
122+ board_reset_user_neopixels ();
121123}
Original file line number Diff line number Diff line change 1313#define MICROPY_PORT_C (0)
1414#define MICROPY_PORT_D (0)
1515
16+ #define USER_NEOPIXELS_PIN (&pin_PA15)
17+
1618#define DEFAULT_I2C_BUS_SCL (&pin_PA13)
1719#define DEFAULT_I2C_BUS_SDA (&pin_PA12)
1820
Original file line number Diff line number Diff line change 3131#include "shared-bindings/displayio/FourWire.h"
3232#include "shared-module/displayio/__init__.h"
3333#include "shared-module/displayio/mipi_constants.h"
34+ #include "supervisor/shared/board.h"
3435#include "tick.h"
3536
3637displayio_fourwire_obj_t board_display_obj ;
@@ -96,4 +97,5 @@ bool board_requests_safe_mode(void) {
9697}
9798
9899void reset_board (void ) {
100+ board_reset_user_neopixels ();
99101}
Original file line number Diff line number Diff line change 1313#define MICROPY_PORT_C (0)
1414#define MICROPY_PORT_D (0)
1515
16+ #define USER_NEOPIXELS_PIN (&pin_PA15)
17+
1618#define DEFAULT_I2C_BUS_SCL (&pin_PA13)
1719#define DEFAULT_I2C_BUS_SDA (&pin_PA12)
1820
Original file line number Diff line number Diff line change 3131
3232#ifdef USER_NEOPIXELS_PIN
3333
34+ // The maximum number of user neopixels right now is 10, on Circuit Playgrounds.
35+ // PyBadge and PyGamer have max 5
36+ #define USER_NEOPIXELS_MAX_COUNT 10
37+
3438void board_reset_user_neopixels (void ) {
3539 // Turn off on-board NeoPixel string
36- uint8_t empty [30 ] = { 0 };
40+ uint8_t empty [USER_NEOPIXELS_MAX_COUNT * 3 ] = { 0 };
3741 digitalio_digitalinout_obj_t neopixel_pin ;
3842 common_hal_digitalio_digitalinout_construct (& neopixel_pin , USER_NEOPIXELS_PIN );
3943 common_hal_digitalio_digitalinout_switch_to_output (& neopixel_pin , false,
4044 DRIVE_MODE_PUSH_PULL );
41- common_hal_neopixel_write (& neopixel_pin , empty , 30 );
45+ common_hal_neopixel_write (& neopixel_pin , empty , USER_NEOPIXELS_MAX_COUNT * 3 );
4246 common_hal_digitalio_digitalinout_deinit (& neopixel_pin );
4347}
4448
You can’t perform that action at this time.
0 commit comments