-
-
Notifications
You must be signed in to change notification settings - Fork 345
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This release contains major changes related to better compatibility w…
…ith Arduino. - Arduino compatibility improvements (#1213). - Library code for some Arduino libraries comes directly from their source repositories (Adafruit_ST7735, Adafruit_SSD1306). - Added dynamic recalculation of image offsets to prevent rom overlapping (#1208). - Added Wi-Fi Protected Setup (WPS) support (#1199). - Ram savings in axTLS (#1255). - Simplified and improved Http Client and Http Server stream handling (#1247). - Fixed Memory Leak in Mqtt (#1273). - Updated Spiffs code to version 0.3.7 + fixes (##1246). And much more. All merged PRs in this release can be seen from [here](https://github.com/SmingHub/Sming/milestone/12?closed=1) - Changed the order of Wire.begin and Wire.pins parameters to match the Arduino order (#1193). For a complete list of changes run the following command: ``` git log 3.3.0..3.4.0 ``` Thanks to everyone who helped us make this release happen.
- Loading branch information
Showing
120 changed files
with
3,459 additions
and
5,437 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,96 @@ | ||
diff --git a/Adafruit_SSD1306.cpp b/Adafruit_SSD1306.cpp | ||
index 570a335..40f4784 100644 | ||
--- a/Adafruit_SSD1306.cpp | ||
+++ b/Adafruit_SSD1306.cpp | ||
@@ -252,7 +252,7 @@ void Adafruit_SSD1306::begin(uint8_t vccstate, uint8_t i2caddr, bool reset) { | ||
ssd1306_command(SSD1306_SETCONTRAST); // 0x81 | ||
ssd1306_command(0x8F); | ||
|
||
-#elif defined SSD1306_128_64 | ||
+#elif defined SSD1306_128_64 || defined SH1106_128_64 | ||
ssd1306_command(SSD1306_SETCOMPINS); // 0xDA | ||
ssd1306_command(0x12); | ||
ssd1306_command(SSD1306_SETCONTRAST); // 0x81 | ||
@@ -417,6 +417,28 @@ void Adafruit_SSD1306::dim(boolean dim) { | ||
} | ||
|
||
void Adafruit_SSD1306::display(void) { | ||
+#if defined SH1106_128_64 | ||
+ for (int index = 0; index < 8; index++) { | ||
+ ssd1306_command(SH1106_SETSTARTPAGE + index); | ||
+ /* for some reason display is shifted by 2 columns | ||
+ * on 1.3" displays from ebay | ||
+ */ | ||
+ ssd1306_command(SSD1306_SETLOWCOLUMN + 2); // low column start address | ||
+ ssd1306_command(SSD1306_SETHIGHCOLUMN); // high column start address | ||
+ | ||
+ for (int pixel = 0; pixel < SSD1306_LCDWIDTH; pixel++) { | ||
+ Wire.beginTransmission(_i2caddr); | ||
+ WIRE_WRITE(0x40); | ||
+ // input buffer doesn't accept all bytes at once | ||
+ for (uint8_t x=0; x<16; x++) { | ||
+ WIRE_WRITE(buffer[index * SSD1306_LCDWIDTH + pixel]); | ||
+ ++pixel; | ||
+ } | ||
+ --pixel; | ||
+ Wire.endTransmission(); | ||
+ } | ||
+ } | ||
+#else | ||
ssd1306_command(SSD1306_COLUMNADDR); | ||
ssd1306_command(0); // Column start address (0 = reset) | ||
ssd1306_command(SSD1306_LCDWIDTH-1); // Column end address (127 = reset) | ||
@@ -482,6 +504,7 @@ void Adafruit_SSD1306::display(void) { | ||
TWBR = twbrbackup; | ||
#endif | ||
} | ||
+#endif /* defined SH1106_128_64 */ | ||
} | ||
|
||
// clear everything | ||
diff --git a/Adafruit_SSD1306.h b/Adafruit_SSD1306.h | ||
index 1162f87..4226f3e 100644 | ||
--- a/Adafruit_SSD1306.h | ||
+++ b/Adafruit_SSD1306.h | ||
@@ -69,20 +69,28 @@ All text above, and the splash screen must be included in any redistribution | ||
|
||
SSD1306_96_16 | ||
|
||
+ SH1106_128_64 - 1.3" OLED display version | ||
+ | ||
-----------------------------------------------------------------------*/ | ||
-// #define SSD1306_128_64 | ||
- #define SSD1306_128_32 | ||
+// #define SH1106_128_64 | ||
+ #define SSD1306_128_64 | ||
+// #define SSD1306_128_32 | ||
// #define SSD1306_96_16 | ||
/*=========================================================================*/ | ||
|
||
+#if defined SSD1306_128_64 && defined SH1106_128_64 | ||
+ #error "Select either SH1106 or SSD1306 display type in SSD1306.h" | ||
+#endif | ||
+ | ||
+ | ||
#if defined SSD1306_128_64 && defined SSD1306_128_32 | ||
#error "Only one SSD1306 display can be specified at once in SSD1306.h" | ||
#endif | ||
-#if !defined SSD1306_128_64 && !defined SSD1306_128_32 && !defined SSD1306_96_16 | ||
+#if !defined SSD1306_128_64 && !defined SSD1306_128_32 && !defined SSD1306_96_16 && !defined SH1106_128_64 | ||
#error "At least one SSD1306 display must be specified in SSD1306.h" | ||
#endif | ||
|
||
-#if defined SSD1306_128_64 | ||
+#if defined SSD1306_128_64 || defined SH1106_128_64 | ||
#define SSD1306_LCDWIDTH 128 | ||
#define SSD1306_LCDHEIGHT 64 | ||
#endif | ||
@@ -132,6 +140,8 @@ All text above, and the splash screen must be included in any redistribution | ||
#define SSD1306_EXTERNALVCC 0x1 | ||
#define SSD1306_SWITCHCAPVCC 0x2 | ||
|
||
+#define SH1106_SETSTARTPAGE 0xB0 | ||
+ | ||
// Scrolling #defines | ||
#define SSD1306_ACTIVATE_SCROLL 0x2F | ||
#define SSD1306_DEACTIVATE_SCROLL 0x2E |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
This directory contains patches to upstream Arudino libraries. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Submodule Adafruit_SSD1306
added at
ddfec7
Oops, something went wrong.