TISControlProtocol 1.0.64__tar.gz → 1.0.66__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/PKG-INFO +1 -1
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/pyproject.toml +1 -1
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/api.py +35 -22
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/.gitignore +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/.vscode/c_cpp_properties.json +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/.vscode/launch.json +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/.vscode/settings.json +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/.vscode/tasks.json +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/LICENSE +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/MANIFEST.in +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/README.md +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/dev/pump_version.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/BytesHelper.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/__init__.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/AckCoordinator.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketDispatcher.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketExtractor.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/AnalogFeedbackHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/AutoBinaryFeedbackHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/BinaryFeedbackHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/ClimateBinaryFeedbackHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/ClimateControlFeedbackHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/ControlResponseHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/DiscoveryFeedbackHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/EnergyFeedbackHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/FloorBinaryFeedbackHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/HealthFeedbackHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/LunaTempFeedbackHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/RealTimeFeedbackHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/SearchResponseHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/SecurityFeedbackHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/UpdateResponseHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/UpdateSecurityHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/WeatherFeedbackHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketHandlers/__init__.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketProtocol.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketReceiver.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/PacketSender.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/ProtocolHandler.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/UpdateCoordinator.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/udp/__init__.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/__init__.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/__init__.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/bill_config_endpoint.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/change_password_endpoint.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/get_bill_config_endpoint.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/get_key_endpoint.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/password_dashboard.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/password_form_endpoint.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/passwords_endpoint.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/restart_endpoint.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/scan_devices_endpoint.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/shared.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/submit_password.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/tis_endpoint.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/update_endpoint.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/crc.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/logo.png +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/package-lock.json +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/package.json +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/postcss.config.mjs +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/public/__init__.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/public/dashboard.css +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/public/password_dashboard_loader.js +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/shared.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/views/__init__.py +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/views/password_dashboard/index.html +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/views/password_dashboard/styles.css +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/views/password_form/index.html +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/views/password_form/styles.css +0 -0
- {tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/tests/test.py +0 -0
|
@@ -32,11 +32,13 @@ from .apis import (
|
|
|
32
32
|
)
|
|
33
33
|
|
|
34
34
|
try:
|
|
35
|
-
import
|
|
36
|
-
import
|
|
35
|
+
import board
|
|
36
|
+
import digitalio
|
|
37
|
+
import busio
|
|
38
|
+
from adafruit_rgb_display import st7789
|
|
37
39
|
|
|
38
40
|
HAS_ST7789 = True
|
|
39
|
-
except (ImportError, RuntimeError) as e:
|
|
41
|
+
except (ImportError, RuntimeError, NotImplementedError) as e:
|
|
40
42
|
HAS_ST7789 = False
|
|
41
43
|
logging.error(
|
|
42
44
|
"Failed to load display dependencies. Display will be disabled. Error: %s", e
|
|
@@ -219,27 +221,35 @@ class TISApi:
|
|
|
219
221
|
def run_display(self, style="dots"):
|
|
220
222
|
try:
|
|
221
223
|
if HAS_ST7789:
|
|
222
|
-
|
|
224
|
+
# 1. Initialize the SPI bus
|
|
225
|
+
spi = board.SPI()
|
|
226
|
+
|
|
227
|
+
# 2. Define the GPIO pins
|
|
228
|
+
cs_pin = digitalio.DigitalInOut(board.CE0)
|
|
229
|
+
dc_pin = digitalio.DigitalInOut(board.D23)
|
|
230
|
+
rst_pin = digitalio.DigitalInOut(board.D25)
|
|
231
|
+
bl_pin = digitalio.DigitalInOut(board.D12)
|
|
232
|
+
|
|
233
|
+
# 3. Turn on the backlight physically
|
|
234
|
+
bl_pin.direction = digitalio.Direction.OUTPUT
|
|
235
|
+
bl_pin.value = True
|
|
236
|
+
self._bl_pin = bl_pin # Store to prevent garbage collection
|
|
237
|
+
|
|
238
|
+
# 4. Initialize the ST7789 Display
|
|
239
|
+
self.display = st7789.ST7789(
|
|
240
|
+
spi,
|
|
241
|
+
cs=cs_pin,
|
|
242
|
+
dc=dc_pin,
|
|
243
|
+
rst=rst_pin,
|
|
244
|
+
baudrate=60000000,
|
|
223
245
|
width=320,
|
|
224
246
|
height=240,
|
|
225
|
-
rotation=0
|
|
226
|
-
port=0,
|
|
227
|
-
cs=0,
|
|
228
|
-
dc=23,
|
|
229
|
-
rst=25,
|
|
230
|
-
backlight=12,
|
|
231
|
-
spi_speed_hz=60 * 1000 * 1000,
|
|
232
|
-
offset_left=0,
|
|
233
|
-
offset_top=0,
|
|
247
|
+
rotation=0
|
|
234
248
|
)
|
|
235
|
-
GPIO.setmode(GPIO.BCM)
|
|
236
|
-
GPIO.setup(12, GPIO.OUT)
|
|
237
|
-
pwm = GPIO.PWM(12, 1000)
|
|
238
|
-
pwm.start(100)
|
|
239
249
|
|
|
240
|
-
# Initialize display.
|
|
241
|
-
self.display.begin()
|
|
242
250
|
self.set_display_image()
|
|
251
|
+
else:
|
|
252
|
+
logging.error("Can't start display, some packages are missing")
|
|
243
253
|
|
|
244
254
|
except Exception as e:
|
|
245
255
|
logging.error(f"error initializing display, {e}")
|
|
@@ -251,13 +261,16 @@ class TISApi:
|
|
|
251
261
|
version_text = f"V {self.version}"
|
|
252
262
|
|
|
253
263
|
draw = ImageDraw.Draw(img)
|
|
254
|
-
|
|
264
|
+
try:
|
|
265
|
+
font = ImageFont.load_default(size=28)
|
|
266
|
+
except TypeError:
|
|
267
|
+
font = ImageFont.load_default()
|
|
268
|
+
|
|
255
269
|
x, y = 78, 235
|
|
256
270
|
draw.text((x, y), version_text, font=font, fill=(255, 255, 255))
|
|
257
271
|
img = img.rotate(-90, expand=True)
|
|
258
272
|
|
|
259
|
-
self.display.
|
|
260
|
-
self.display.display(img)
|
|
273
|
+
self.display.image(img)
|
|
261
274
|
|
|
262
275
|
async def parse_device_manager_request(self, data: dict) -> None:
|
|
263
276
|
"""Parse the device manager request."""
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/BytesHelper.py
RENAMED
|
File without changes
|
{tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/Protocols/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/shared.py
RENAMED
|
File without changes
|
|
File without changes
|
{tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/apis/tis_endpoint.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/package-lock.json
RENAMED
|
File without changes
|
|
File without changes
|
{tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/postcss.config.mjs
RENAMED
|
File without changes
|
{tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/public/__init__.py
RENAMED
|
File without changes
|
{tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/public/dashboard.css
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tiscontrolprotocol-1.0.64 → tiscontrolprotocol-1.0.66}/src/TISControlProtocol/views/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|