User Tools

Site Tools


users:dagnall53:oled

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
users:dagnall53:oled [2019/02/14 13:12]
dagnall53
users:dagnall53:oled [2019/05/20 19:00] (current)
dagnall53
Line 1: Line 1:
 +Index
 +  * [[:​users:​Dagnall53:​Description|WiRocS Description]] ​
 +  * [[https://​github.com/​dagnall53/​WiRocS|Source Code]]
 +  * [[:​users:​Dagnall53:​OLED |Oled Display]] ​
 +      * [[users:​dagnall53:​RDTextAlign|RocDisplay Formatting / Syntax]]: ​
 +      * [[users:​dagnall53:​Using Schedules|Using Schedules]]:​
 +  * [[:​users:​Dagnall53:​Node_Setup|Node_Setup]] ​
 +  * [[:​users:​Dagnall53:​Hardware|Hardware]] ​
 +  * [[:​users:​Dagnall53:​Troubleshooting|Troubleshooting]] ​
 +
 +
 ====== OLED display ====== ====== OLED display ======
-The new WiRocS code has integrated OLED (I2C) capability that is partially ​compatible with the RocDisplay ​formattiing.\\ +The new WiRocS code has integrated OLED (I2C) capability that is largely ​compatible with the RocDisplay ​formatting.\\ 
-{{ :​users:​dagnall53:​img_2635.jpg?​400 |}}+{{:​users:​dagnall53:​img_2866.jpg?​300 |Example Schedule using Jan's test workspace for Haarlem}}{{ :​users:​dagnall53:​img_2906.jpg?​300|The OLED is not as straight in the frame as I would like}} 
 + 
 +To use the feature, a "​standard"​ 0.96" 128*64 (or 128*32) 4 pin I2C OLED display is connected to the WiRocS node.\\ 
 +When the node starts it scans its I2C bus(s) to see if any OLED displays are present (it expects Addresses 60d and/or 61d)\\ 
 +IF OLEDs are found, the code will display messages and clocks on the display(s).\\ 
 +If there are no OLEDS present, the I2C bus pins are released back so they can be used general purpose I/O use.\\ 
 +\\ 
 +See [[users:​dagnall53:​rocdisplaytop#​roc_display_lite_hardware|Hardware description]] \\ 
 +\\ 
 +\\ 
 + 
 +{{:​users:​dagnall53:​img_2635.jpg?​300 |Note: The picture shows the OLED connected to the Secondary bus, using D1 and D2}} 
 +On the ESP8266 version, I prefer to use the board with the NodeMCU Motor Shield, as it provides easy pin locations for the servos. ​ The "​primary"​ I2C bus uses uses D3 and D4, which (when the board is on the Motor shield) are the 'Motor direction'​ pins. Pins D1 and D2 are used for the "​Secondary"​ I2C bus, and remain connected to the 'Motor PWM' pins. This means that if any the "​primary"​ I2C bus is used, the Motor Shield outputs can still be used as dimmable filament light drives (because the "​direction"​ (being changed all the time as these pins are the OLED data)  does not matter to a filament light!). ​  
 + 
 +The ESP32 version uses extra pins for the Main I2C bus so none are "​lost"​ if only one I2C bus is needed.\\ 
 + 
 +---- 
 + 
 +{{:​users:​dagnall53:​img_2731.jpg?​300 |}}When no Roc-Display Messages are sent to the displays, they default to show the Rocrail Power Status, RocRail Time, and WiFi Signal Strength.\\ 
 + 
 +  
 +==== Information messages and RocDisplay Compatibility ==== 
 +{{:​users:​dagnall53:​img_2697.jpg?​200 |}}The OLED will display messages to show how the node is progressing during boot. 
 +This can be helpful in diagnosing any issues. 
 +The code includes a simplified text parser that can accept RocDisplay messages and display them as a station announcements.  
 +A separate page [[users:​dagnall53:​rocdisplaytop|Roc Display Compatible Hardware]] documents how the parsing in this "Lite version"​ of the protocol works and goes into more detail about the displays. 
 + 
 +Please also read [[users:​dagnall53:​Suitable OLED Hardware|Selecting OLED Types]] 
 + 
 + 
 +----
  
-When the node starts they scan the I2C bus to see if any OLED displays are present (Addresses 60 and 61) . +====Automatic Display from Schedules==== ​ 
-IF the OLED is seen, the code then initiates the OLED and uses it to display status messages, RocRail Time, WiFi signal strengthand Rocrail power status.\\+{{:​users:​dagnall53:​oled_schedule_test.jpg?200 |}} 
 +See  [[users:​dagnall53:​Using Schedules|users:​dagnall53:​Using Schedules]])
  
-===== RocDisplay ===== 
  
-The code includes a very simplified text parser that can accept RocDisplay messages and display them as a station announcements. The above example uses one of Peter'​s RocDisplay test codes. ​ 
-The Parser cannot do flashing messages or bitmaps, but the effect is reasonably good.  
  
    
  
  
users/dagnall53/oled.1550146367.txt.gz · Last modified: 2019/02/14 13:12 by dagnall53