Skip to content

MicroOLED: Version 1.3 - A New Hope #27

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 18 commits into from
Dec 13, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# How to Contribute

Thank you so *much* for offering to help out. We truly appreciate it.

If you'd like to contribute, start by searching through the [issues](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library/issues) and [pull requests](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library/pulls) to see whether someone else has raised a similar idea or question.
Please check the [closed issues](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library/issues?q=is%3Aissue+is%3Aclosed)
and [closed pull requests](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library/pulls?q=is%3Apr+is%3Aclosed) too - you may find that your issue or feature has already been discussed.

If you decide to add a feature to this library, please create a PR and follow these best practices:

* Change as little as possible. Do not submit a PR that changes 100 lines of whitespace. Break up into multiple PRs if necessary.
* If you've added a new feature document it with a simple example sketch. This serves both as a test of your PR and as a quick way for users to quickly learn how to use your new feature.
* If you add new functions also add them to _keywords.txt_ so that they are properly highlighted in Arduino. [Read more](https://www.arduino.cc/en/Hacking/libraryTutorial).
* **Important:** Please submit your PR using the [release_candidate branch](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library/tree/release_candidate). That way, we can merge and test your PR quickly without changing the _master_ branch

![Contributing.JPG](./img/Contributing.JPG)

## Style guide

Please read and follow the [Arduino API style guide](https://www.arduino.cc/en/Reference/APIStyleGuide). Also read and consider the [Arduino style guide](https://www.arduino.cc/en/Reference/StyleGuide).
697 changes: 39 additions & 658 deletions LICENSE.md

Large diffs are not rendered by default.

71 changes: 68 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,11 +35,76 @@ Products that use this Library
* [Micro OLED Breakout](https://www.sparkfun.com/products/13003)- A breakout for the monochrome 64x48 OLED.
* [Micro OLED Breakout (Qwiic)](https://www.sparkfun.com/products/14532) - Qwiic version of the Micro OLED breakout with jumpers set for I2C

Contributing
--------------

If you would like to contribute to this library: please do, we truly appreciate it, but please follow [these guidelines](./CONTRIBUTING.md). Thanks!

MicroOLED: Version 1.3 - A New Hope
---------------

Prior to version 1.3, this library was hard-wired to the ```Wire``` I<sup>2</sup>C and ```SPI``` ports. Version 1.3
allows alternate ports to be used, in a way which is backward-compatible with the previous versions.

We have of course tested the new code, but if you do notice any compatibility issues please
[raise an issue](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library/issues).

### I<sup>2</sup>C Example

Prior to v1.3, you would have used:
```
#define DC_JUMPER 1
MicroOLED oled(PIN_RESET, DC_JUMPER); // I2C declaration
```

followed by:
```
oled.begin(); // Initialize the OLED
```

From v1.3.0, you can still do it that way, or can do it like this:
```
MicroOLED oled(PIN_RESET); // The TwoWire I2C port is passed to .begin instead
```

followed by:
```
oled.begin(0x3D, Wire); // Initialize the OLED using address 0x3D and the Wire port
```

To use a non-standard address or port, you can call:
```
oled.begin(0x3C, Qwiic); // Initialize the OLED using address 0x3C and the Qwiic port
```

Please see [this example](./examples/Example10_MultiDemo_v13/Example10_MultiDemo_v13.ino) for more details.

### SPI Example

For SPI in v1.3, you still need to instantiate the oled using:
```
MicroOLED oled(PIN_RESET, PIN_DC, PIN_CS); //SPI declaration
```

If you want to use _SPI_ as the SPIClass, then you can continue to call:
```
oled.begin(); // Initialize the OLED
```

To use a non-standard port, call:
```
oled.begin(SPI1); // Initialize the OLED using SPI1
```

Please see [this example](./examples/SPI/MicroOLED_Demo_v13/MicroOLED_Demo_v13.ino) for more details.

Version History
---------------

* [v 1.3.0](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library/releases/tag/v1.3.0) - adding support for non-standard I<sup>2</sup>C and SPI ports
* [v 1.2.10](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library/releases/tag/v1.2.10) - prevent-write-outside-buffer corrections; improved I2C transfer speeds; includes the missing scroll functions; ```line``` corrections; ```enableDebugging```.
* [v 1.2.8](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library/releases/tag/v1.2.9) - drawIcon() correction
* [v 1.2.8](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library/releases/tag/v1.2.8) - Add drawIcon() and resort examples with Qwiic as default.
* [v 1.2.9](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library/releases/tag/v1.2.9) - drawIcon() correction
* [v 1.2.8](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library/releases/tag/v1%2C2.8) - Add drawIcon() and resort examples with Qwiic as default.
* [v 1.2.7](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library/releases/tag/v1.2.7) - Add more comments and Wire.begin() to examples
* [v 1.2.6](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library/releases/tag/V_1.2.6) - Removes call of Wire.begin from library
* [v 1.2.5](https://github.com/sparkfun/SparkFun_Micro_OLED_Arduino_Library/releases/tag/v1.2.5) - Adding Qwiic Examples for I2C
Expand All @@ -57,7 +122,7 @@ License Information

This product is _**open source**_!

The **code** is released under the GPL v3 license. See the included LICENSE.md for more information.
Please see [LICENSE.md](./LICENSE.md) for more information.

Distributed as-is; no warranty is given.

Expand Down
Loading