Python LimitlessLED via RF

Check-in [c50aa58a64]
Login

Check-in [c50aa58a64]

Overview
Comment:Added README with limited documentation
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: c50aa58a6427d86585ae3fcaad093656a1194bc42971609655decadf3b45f799
User & Date: rkeene on 2020-04-28 18:46:29.574
Other Links: manifest | tags
Context
2020-04-29
00:34
limitlessled_rf v0.1 check-in: 1e49925e09 user: rkeene tags: 0.1, trunk
2020-04-28
18:46
Added README with limited documentation check-in: c50aa58a64 user: rkeene tags: trunk
18:20
Further improved delays check-in: 989cbde578 user: rkeene tags: trunk
Changes
Added README.md version [c4976858c8].
455
456
457
458
459
460
461










462
463
464
465
466
467
468
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478







+
+
+
+
+
+
+
+
+
+








	def _step_temperature(self, temperature, temperature_min, temperature_max, zone = None):
		# Select the appropriate zone before sending the steps
		# to ensure they reach the correct bulbs
		self.on(zone, try_hard = False)
		return self._step_value(temperature, temperature_min, temperature_max, 'temperature', zone)

	def _max_brightness(self, zone = None):
		if zone is None:
			message = {'button': 'max'}
		else:
			message = {
				'button': 'zone_max',
				'zone': zone
			}
		return self._send_button(message)

	def _rgb_to_hue(self, r, g, b):
		r = r / 255.0
		g = g / 255.0
		b = b / 255.0

		cmax = max(r, max(g, b))
		cmin = min(r, min(g, b))
526
527
528
529
530
531
532
533

534
535
536
537
538
539
540
536
537
538
539
540
541
542

543
544
545
546
547
548
549
550







-
+







		self._debug("Setting brightness to {}".format(brightness))
		if brightness == 0:
			self._debug("Really setting to off")
			return self.off(zone)

		if brightness == 255:
			if 'has_max_brightness' in self._config['features']:
				return self.max_brightness(zone)
				return self._max_brightness(zone)

		brightness_min = self._config['brightness_range'][0]
		brightness_max = self._config['brightness_range'][1]

		brightness = self._scale_int(brightness, 1, 255, self._config['brightness_range'][0], self._config['brightness_range'][1])

		if 'can_set_brightness' in self._config['features']:
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
632
633
634
635
636
637
638













639
640
641
642
643
644
645







-
-
-
-
-
-
-
-
-
-
-
-
-








		# Increase retries and delay for on/off to ensure
		# that these important messages are delivered
		if try_hard:
			message['retries'] = self._config['retries'] * 2
			message['delay'] = self._config['delay'] * 2

		return self._send_button(message)

	def max_brightness(self, zone = None):
		if 'has_max_brightness' not in self._config['features']:
			return self.set_brightness(255, zone)
			
		if zone is None:
			message = {'button': 'max'}
		else:
			message = {
				'button': 'zone_max',
				'zone': zone
			}
		return self._send_button(message)

	def white(self, zone = None):
		# If the bulbs are already white, nothing needs to be done
		if 'is_white' in self._config['features']:
			return True