Skip to content

Version 2.0#26

Merged
dmadison merged 13 commits into
masterfrom
development
Sep 5, 2020
Merged

Version 2.0#26
dmadison merged 13 commits into
masterfrom
development

Conversation

@dmadison
Copy link
Copy Markdown
Owner

@dmadison dmadison commented Sep 5, 2020

Decided to do a small overhaul, removing some unused features and making some small improvements to performance and readability.

For starters the "calibrate" option was removed as it's no longer necessary - psieg's Prismatik now has global calibration available within the wizard.

The "ground pin" setting was removed for being confusing at best and destructive at worst. It was originally added to provide a convenient way to use an I/O pin as ground reference in case the other ground pins on the microcontroller were taken or inaccessible. But because this came with no documentation it was possible for someone to think that they could use it as the ground for the entire LED strip. The I/O pins have a low current limit and doing that would damage the port and possibly destroy the microcontroller. Rather than writing a detailed explanation of when to use it, I just decided to remove the feature altogether. It's trivial for the user to add the register writes back in if it's needed.

Some of the extra functions were removed for cleanliness and performance, like moving the adalight() function contents into the main loop and rewriting the serial flush functionality as a macro. The extraneous static keywords from when I was chasing that memory bug were removed for all of the global variables, and I also cleaned up the comment formatting and added function prototypes for PlatformIO compatibility.

Last but not least I made some tweaks to the README, such as correcting the website link and changing some formatting.

As this removes several features it's going to require a new major version: 2.0.

Prismatik now includes a built-in calibration tool for all LEDs.
Slightly better than the "not declared in this scope" error.
This has the high potential to be misused by people attempting to ground the entire LED strip through an IO pin rather than set the reference level to an external supply. Doing the former will permanently damage the microcontroller.

Instead of writing out a long comment explaining what to do, I'm just going to remove the (presumably seldom-used) feature.
This is redundant as 'adalight' is the only function called from the loop.
For PlatformIO compatibility. See #25.
One space between comment slashes and preprocessor defines, at least two spaces between definitions and explanatory comments.
[ci skip]
@dmadison dmadison merged commit 1805bc1 into master Sep 5, 2020
@dmadison dmadison deleted the development branch September 5, 2020 02:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant