Pim van Pelt 
							
						 
					 
					
						
						
							
						
						8624473386 
					 
					
						
						
							
							Bump version to 1.4 -- now with timespec handling!  
						
						 
						
						
						
						
					 
					
						2018-11-04 19:19:36 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						61ddb0334e 
					 
					
						
						
							
							Commit timespec to file on Timespec.Add; Unlink timespec file on Timespec.Clear; Initialize timespec from file in channel_init()  
						
						 
						
						
						
						
					 
					
						2018-11-04 19:19:17 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						8c4864b199 
					 
					
						
						
							
							Remove danlging vim swap file  
						
						 
						
						
						
						
					 
					
						2018-11-04 18:57:37 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						f5ea934dfb 
					 
					
						
						
							
							Add timespec_{read,write}_file() and unit tests  
						
						 
						
						
						
						
					 
					
						2018-11-04 17:40:12 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						5b79487ab8 
					 
					
						
						
							
							Format with uncrustify  
						
						 
						
						
						
						
					 
					
						2018-11-04 16:45:23 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						31dcf28ff0 
					 
					
						
						
							
							Add Timespec.{Get,Clear,Add} RPCs  
						
						 
						
						
						
						
					 
					
						2018-11-04 16:45:05 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						560c81cbfd 
					 
					
						
						
							
							Add channel_get_timespec()  
						
						 
						
						
						
						
					 
					
						2018-11-04 16:44:47 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						f8a13112b6 
					 
					
						
						
							
							Fix signedness comparison for ESP8266 compiler  
						
						 
						
						
						
						
					 
					
						2018-11-04 16:22:09 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						a01e548249 
					 
					
						
						
							
							add timespec_clear_spec() and timespec_get_spec()  
						
						 
						
						
						
						
					 
					
						2018-11-04 16:17:35 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						0ad33f5fbc 
					 
					
						
						
							
							Add timespec() and channel_override logic -- so we can install a time specification with which the channels are driven, but yet allowing a human override (either by RPC or by Button)  
						
						 
						
						
						
						
					 
					
						2018-11-04 15:44:17 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						d5778c6fba 
					 
					
						
						
							
							Add timespec_match_now() based on localtime()  
						
						 
						
						
						
						
					 
					
						2018-11-04 15:43:32 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						af9db0395d 
					 
					
						
						
							
							Add SNTP library  
						
						 
						
						
						
						
					 
					
						2018-11-04 15:42:08 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						5c26d2d43b 
					 
					
						
						
							
							format with uncrustify  
						
						 
						
						
						
						
					 
					
						2018-11-04 14:19:00 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						8cfcfc9af3 
					 
					
						
						
							
							Add mgos_gpio_read(); mgos_[mu]sleep()  
						
						 
						
						
						
						
					 
					
						2018-11-04 14:17:00 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						5ebd4b112a 
					 
					
						
						
							
							Make default app.config be nodemcu v2 board; Clear sensors.dht_gpio, make users actually set this  
						
						 
						
						
						
						
					 
					
						2018-11-04 14:11:10 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						3ae64cfc37 
					 
					
						
						
							
							Add standard NodeMCU v2 board  
						
						 
						
						
						
						
					 
					
						2018-11-04 14:10:39 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						5a39c618ce 
					 
					
						
						
							
							Allow LED and Relay logic level to be inverted  
						
						 
						
						
						
						
					 
					
						2018-11-04 14:10:28 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						b29edab495 
					 
					
						
						
							
							Add 'duration' argument to Channel.Set RPC call  
						
						 
						
						
						
						
					 
					
						2018-11-01 21:01:37 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						75eccd0447 
					 
					
						
						
							
							Move to a struct with args in channel_set_cb()  
						
						 
						
						
						
						
					 
					
						2018-11-01 20:57:24 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						8eb6bcb112 
					 
					
						
						
							
							add channel_set_duration() for timer based polls  
						
						 
						
						
						
						
					 
					
						2018-11-01 20:29:51 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						3140cc72b8 
					 
					
						
						
							
							Log to chumbucket by default, set the device hostname to 'test-device'  
						
						 
						
						
						
						
					 
					
						2018-11-01 14:48:01 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						6434cb6db0 
					 
					
						
						
							
							Sleep the MCU 250ms after relay on switches, to avoid brownouts. Scan the pushbutton for 100ms to ensure it was still pressed, to avoid RFI from triggering  
						
						 
						
						
						
						
					 
					
						2018-11-01 14:47:35 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						d332f08da4 
					 
					
						
						
							
							Make distinction between channels toggled via GPIO (button) or RPC  
						
						 
						
						
						
						
					 
					
						2018-11-01 14:31:59 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						f1614f3e6e 
					 
					
						
						
							
							Remove 50ms sleep time, it doesn't help  
						
						 
						
						
						
						
					 
					
						2018-11-01 14:12:13 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						d673cda325 
					 
					
						
						
							
							Remove cooldown check - this is not what we're looking for  
						
						 
						
						
						
						
					 
					
						2018-11-01 14:11:37 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						08453f3b5d 
					 
					
						
						
							
							Log by default to stderr/stdout, make user disable this explicitly for units which use GPIO 1,3  
						
						 
						
						
						
						
					 
					
						2018-11-01 14:11:21 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						23b2e37a1f 
					 
					
						
						
							
							Add some notes to README  
						
						 
						
						
						
						
					 
					
						2018-11-01 14:10:40 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						7c9870aa32 
					 
					
						
						
							
							Order the sonoff-4ch channels correctly (idx0 == chan1)  
						
						 
						
						
						
						
					 
					
						2018-11-01 13:50:17 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						7a5507d691 
					 
					
						
						
							
							Set FLASH_SIZE to 1MB to flash ESP8285 Sonoff 4CH devices  
						
						 
						
						
						
						
					 
					
						2018-10-31 13:51:26 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						64fc98dcf7 
					 
					
						
						
							
							Add a 50ms delay after switching relays, so we avoid RF spikes from inductive loads triggering capacitive touch sensors  
						
						 
						
						
						
						
					 
					
						2018-10-31 13:51:02 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						818c27c7ce 
					 
					
						
						
							
							Add rpc-ws library; Remove UDP logging  
						
						 
						
						
						
						
					 
					
						2018-10-28 13:11:54 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						3e3d9dcbe0 
					 
					
						
						
							
							Add timespec -- add tests for it too.  
						
						 
						
						
						
						
					 
					
						2018-10-28 12:47:42 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						9ee393bc8a 
					 
					
						
						
							
							Rebase private OTA libs on 2.7  
						
						 
						
						
						
						
					 
					
						2018-10-28 12:12:24 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						497c62b382 
					 
					
						
						
							
							Add empty mgos_ro_vars.h  
						
						 
						
						
						
						
					 
					
						2018-04-17 18:14:51 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						56a2ec21ab 
					 
					
						
						
							
							Refactor prometheus-sensors into top-level directory; pull in DHT library  
						
						 
						
						
						
						
					 
					
						2018-04-17 18:12:41 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						491ba88d1a 
					 
					
						
						
							
							Formatting  
						
						 
						
						
						
						
					 
					
						2018-04-17 15:00:29 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						8bf7b919cc 
					 
					
						
						
							
							Factor out DHT  
						
						 
						
						... 
						
						
						
						It's now its own library (in git@git.ipng.nl:pim/prometheus-sensors) 
						
						
					 
					
						2018-03-04 16:38:54 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						6898ff8349 
					 
					
						
						
							
							Add a simple Prometheus exporter.  
						
						 
						
						
						
						
					 
					
						2018-02-25 19:59:32 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						13d1ab1fa5 
					 
					
						
						
							
							Add app.dht_gpio flag to find DHT sensors  
						
						 
						
						... 
						
						
						
						Parse this comma separated string to find GPIO pins on which we must
enable DHT sensors.  Seperators are space and comma.
Can be empty, single GPIO pins, or a list:
app.dht_gpio=""
app.dht_gpio="5"
app.dht_gpio="5,4,14"
app.dht_gpio="5 4 14"
app.dht_gpio="5, 4 14" 
						
						
					 
					
						2018-02-13 01:15:14 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						c72ea2af41 
					 
					
						
						
							
							Keep a list of DHT sensors  
						
						 
						
						... 
						
						
						
						s_dht is a list of MAX_DHT elements. Pass the index to the callback
so we can report on individual sensors by 0-based index.
Mon Feb 12 18:26:12 2018 - esp8266_052EE8/stat/dht {"idx":0, "temp":18.80, "humidity":31.6}
Mon Feb 12 18:26:12 2018 - esp8266_052EE8/stat/dht {"idx":1, "temp":18.70, "humidity":36.4}
Mon Feb 12 18:26:12 2018 - esp8266_052EE8/stat/dht {"idx":2, "temp":18.80, "humidity":39.5} 
						
						
					 
					
						2018-02-12 18:25:36 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						bb62e9b6ae 
					 
					
						
						
							
							Add DHT support.  
						
						 
						
						... 
						
						
						
						Very rough stab just to test the waters -- this will need some
more work.
For now, hard code 4,5,15 pins (as per Sonoff SV), but before
rolling this out, add a config flag for this behavior.
Neat trick -- the presence of dht library in mos.yml triggers
inclusion of the code via define -DMGOS_HAVE_DHT=1 
						
						
					 
					
						2018-02-11 13:20:36 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						b1472d059d 
					 
					
						
						
							
							Respond to upstream refactor  
						
						 
						
						... 
						
						
						
						6d81a9928e 
						
						
					 
					
						2018-02-11 12:58:32 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						a0909ab6a0 
					 
					
						
						
							
							Blink statusled on recv/xmit MQTT messages; debounce 200ms; trigger button on release; Prime for sonoff-basic // sonoff-sv  
						
						 
						
						
						
						
					 
					
						2018-01-25 14:52:55 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						7ea1e26020 
					 
					
						
						
							
							Fix JSON escaping and scoping  
						
						 
						
						
						
						
					 
					
						2018-01-24 14:27:58 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						4a083555e8 
					 
					
						
						
							
							Clean up RPC response.  
						
						 
						
						... 
						
						
						
						- Refactor mqtt_publish_stat() to take va_list
- Make publish_stat format its response with json_vprintf() so it is
  valid JSON.
- Call publish_stat in channel_set, the only place where the GPIO state
  changes
- Return (valid) JSON response in all RPCs 
						
						
					 
					
						2018-01-24 14:08:29 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						118eb14447 
					 
					
						
						
							
							Rewrite statusled implementation.  
						
						 
						
						... 
						
						
						
						- Read it now from app.config JSON file.
- Allow for inverted status leds (Sonoff et al)
- Clean up unit tests. 
						
						
					 
					
						2018-01-24 13:33:13 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						f0fa04dc26 
					 
					
						
						
							
							s/led_green/led_status/g because not all status leds are green :)  
						
						 
						
						
						
						
					 
					
						2018-01-22 23:23:43 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						3327a561f9 
					 
					
						
						
							
							Add channel_get_total()  
						
						 
						
						
						
						
					 
					
						2018-01-22 22:23:48 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						b78e79223a 
					 
					
						
						
							
							Add sonoff devices  
						
						 
						
						... 
						
						
						
						The S20, TH, Basic and SV all share the same 1-channel pinout.
The 4CH has a few more IO pins. 
						
						
					 
					
						2018-01-22 19:16:17 +01:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Pim van Pelt 
							
						 
					 
					
						
						
							
						
						42524d15b2 
					 
					
						
						
							
							Add configs for some banggood light switches:  
						
						 
						
						... 
						
						
						
						- YK3_WIFI_SV2 (1 and 2 gang)
- YK3_WIFI_SV5 (3 gang) 
						
						
					 
					
						2018-01-05 17:07:20 +01:00