sparkfun / Serial7SegmentDisplay

Example code and board files for the Serial 7 Segment Display.
https://www.sparkfun.com/products/11629
95 stars 73 forks source link

updates firmware to support SevSeg 3.7.0 #25

Open chaduhduh opened 8 months ago

chaduhduh commented 8 months ago

This existing firmware is designed to be used with a separately maintained fork of SevSeg and the APIs are now incompatible. It appears at some point after you all created this firmware and the SevSeg fork that Dean resumed development on it and gave it a proper license. See the SevSeg repo. These updates address the issue by updating various calls to use the newer API.

This change is probably useful for others since folks using library managers will likely end up with the other version. I already had SevSeg installed for some other projects and when I needed to customize the Serial7SegmentDisplay firmware I ran into compatibility issues. I think this is what another person mentioned in issue #24

Note that this has only been tested on the S7S board layout. Open segment and 7 segment shield were updated but are untested (since I don't have them :eyes: ).

A summary of the updates are as follows:

Feel free to close this or test and incorporate at your discretion. If you don't want to incorporate this, I can continue to use my fork for my own projects that need custom firmware.

Thanks for providing all of this code to support your products. It is all really great :confetti_ball:

nseidle commented 8 months ago

This is awesome! Thank you for the PR.

I am not going to merge as this looks to be a API change with no underlying functional changes. It's risk vs reward: It's not trivial to change our production scripts to use a new binary. I just don't want to break it!

I'll leave this PR open though. If we ever have a reason to revisit this code base your changes will significantly help us to get up to speed on the newer API.

chaduhduh commented 7 months ago

This is awesome! Thank you for the PR.

I am not going to merge as this looks to be a API change with no underlying functional changes. It's risk vs reward: It's not trivial to change our production scripts to use a new binary. I just don't want to break it!

I'll leave this PR open though. If we ever have a reason to revisit this code base your changes will significantly help us to get up to speed on the newer API.

I completely understand. No sense in updating the install when there aren't functional changes to the firmware itself. It is probably a small number of folks who will actually encounter a problem (although for me updating the firmware eliminated an extra chip!). Also I think you all have newer boards that are replacing these.

Anything you want to do with this is fine. Since I made the updates on my end I figured I would share with you all :hugs:.