Inspiration
We were feeling, that this project challenge may be an interesting problem to solve. After initial talk with mentors from B/S/H we decided to begin this challenge with all the power ;)
What it does
Our solutions implement all the challenge instructions. We can fully control matrix of leds, animate it based on Gyroscope and Accelerometer as described in the specification. We also implemented external controls to make sure we can have more fun and opportunities controlling the output leds with external devices that opens new horizons.
How we built it
After deep research into the specification and documentation for provided ST hardware platform (STM32G0B1) and its expansion boards, we decided to take the uncharted path of implementing our Challenge solution using Arduino Framework implementation for STM32 [link]https://github.com/stm32duino) .
Challenges we ran into
Since we didn't use the ST Cube IDE or the official drivers, we had to write our abstractions over the I2C protocol which took quite a toll on our time and sanity. We got it in time, and we still think this way was easier and more interesting approach, than trying to adapt the official drivers.
Another challenge was the implementation and use of interrupts and time sensitive code excecution. This needed some carefull twaeks to make it run optimally.
Accomplishments that we're proud of
That we were able to implement our own solution and library for using LED1202 driver used on provided expansion board.
What we learned
This challenge taught us how to properly understand complex documentation extending to details, such as timing or exact bit sequences for usage of advanced features. Programming for embedded microcontroller can be challenging and it's important to think about hardware restrictions and plan solutions carefully with memory and timing in mind.
What's next for bsh-challenge
After some cosmetic tweaks, we would like to introduce our library implementation as an open project for another makers to use. That way we will maybe support embedded world and make it more easy for DIY makers, or beginers.

Log in or sign up for Devpost to join the conversation.