56e507072b4c8fde82264d375e3317238b9fcb0b
[Serial_RGB_Controller] / README.md
1 # Serial RGB LED driver, Interplay Medium™ dendrite module (for ESP8266)
2
3 This is IM denrite module (remote wifi network device) created for [Interplay Medium™](https://interplaymedium.org) project.
4
5 ![Interplay Medium RGB Serial LED Dendrite](https://repository.interplaymedium.org/Serial_RGB/IMG_2142.jpg)
6
7 ## Pinouts 
8
9 For LEDs be sure to add MOSFETs and current limiting resistors appropriately. Wiring scheme will be added probably later. 
10
11 ![ESP8266 Pinout](https://repository.interplaymedium.org/RGBW%20Controller/esppinout_.png)
12 ![ESP8266 Programming](https://repository.interplaymedium.org/RGBW%20Controller/usbprogram_.png)
13
14 ## Bidirectional MOSFET level shifter
15
16 To drive an addressable RGB strip along with ESP8266, you need to synchronize logical levels. 
17 I usually use a simple MOSFET solution for single-channel shifting, hovever for multi-channel management, I would recommend using a simple Logic Gate IC like 74HC08 or a level shifter such as TXB0104.
18
19 ![Bidirectional MOSFET level shifter](https://repository.interplaymedium.org/Serial_RGB/bidirectonal-mosfet-level-shifter.png)
20
21 ## Preparing the building environment
22
23 Make sure that you have the environment installed as described at
24
25 1. [makeEspArduino.mk](https://github.com/plerup/makeEspArduino.git)
26 2. [esp8266 Arduino SDK](https://github.com/esp8266/Arduino)
27
28 3. In the *make* script, change path for each variable approprately: 
29     MAKE_FILE=....
30     ESP_SDK_ROOT=....
31
32 ## Change your IM AXOD microserver or AP (router) WIFI login and password
33
34 create the file 
35     vim ../info
36
37 assign SSID and PASSWORD of your local IM AXOD microserver or Access Point in there
38
39     WIFI_SSID="ssid"
40     WIFI_PASS="ssid password"
41
42 You can change it later whenewer you want using HTTP interface
43
44 ## Building 
45
46 initial buildong and flashing firmware at once 
47  
48     ./make Serial_RGB upload
49
50 after that you may just build the binary and uload it using remote HTTP interface
51
52     ./make Serial_RGB  
53     curl -F image=@Serial_RGB.bin -s im_<....>.lan/update
54
55 ## Usage 
56
57
58 By default dendrite can be reached "im_serial_[last 4 digits of MAC address]" doman
59
60 Change it with 
61
62     curl "im_serial_[last 4 digits of MAC address]?rename=NEWNAME"
63
64 Turn on the color and effect 
65
66     curl "im_serial_[last 4 digits of MAC address]?gradient=ffffffccff44&slidez=-1&delay=100"
67
68 Other options
69
70     curl "im_serial_[last 4 digits of MAC address]/help"
71
72 ## Todo 
73
74 The development of this firmware is in progress. Here is a brief list of upcoming changes: 
75
76 * features (save, reset....)
77 * state return in 2 variants  
78     txt (default)  
79     JSON  
80     html UI
81 * add commands  
82     dimm and soft state changing  
83     rgbwdef -- save default values in EEPROM, which is returning on reset command  
84   
85 * switching AP/slave, AP by defuault
86     remote access setup (host name, AP/slave, SSID, passw)  
87     save in EEPROM  
88
89 ## License
90
91 Copyright © 2016 Dmitry Shalnov [interplaymedium.org]
92
93 Licensed under the Apache License, Version 2.0 (the "License");
94 you may not use this files except in compliance with the License.
95 You may obtain a copy of the License at
96
97     http://www.apache.org/licenses/LICENSE-2.0
98
99 Unless required by applicable law or agreed to in writing, software
100 distributed under the License is distributed on an "AS IS" BASIS,
101 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
102 See the License for the specific language governing permissions and
103 limitations under the License.
104
105
106
107
108
109
Contact me: dev (at) shalnoff (dot) com
PGP fingerprint: A6B8 3B23 6013 F18A 0C71 198B 83D8 C64D 917A 5717