* macOS does not have `client.pair()`, as documented in bleak docs. This
way we just ignore the NotImplementedError and everything Just Works(tm)
* installing firmware will fail on macos unless response=True. we don't
want to limit other OSes for that so we configure that with a top level
constant
before: you could call `show_properties` either with a string or with a
list of properties
* if you would call it with a string it would use `ConfirmValue`
* if you would call it with a list of properties, it would use
`ShowInfoParams` to show multiple properties
after:
* if you call it with a list of properties that only has one property
it defaults to the same behaviour as the case when you call it with a
single string
[no changelog]
`TrezorConnection._version` wasn't set, so the command was failing with:
```
Traceback (most recent call last):
File "./venv/bin/trezorctl", line 8, in <module>
sys.exit(cli())
^^^^^
File "./venv/lib/python3.12/site-packages/click/core.py", line 1161, in __call__
return self.main(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "./venv/lib/python3.12/site-packages/click/core.py", line 1082, in main
rv = self.invoke(ctx)
^^^^^^^^^^^^^^^^
File "/home/rzeyde/src/trezor-firmware/python/src/trezorlib/cli/trezorctl.py", line 161, in invoke
return super().invoke(ctx)
^^^^^^^^^^^^^^^^^^^
File "./venv/lib/python3.12/site-packages/click/core.py", line 1697, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "./venv/lib/python3.12/site-packages/click/core.py", line 1443, in invoke
return ctx.invoke(self.callback, **ctx.params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "./venv/lib/python3.12/site-packages/click/core.py", line 788, in invoke
return __callback(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "./venv/lib/python3.12/site-packages/click/decorators.py", line 45, in new_func
return f(get_current_context().obj, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/rzeyde/src/trezor-firmware/python/src/trezorlib/cli/trezorctl.py", line 361, in get_session
if obj.features.model == "1" and obj.version < (1, 9, 0):
^^^^^^^^^^^
File "/home/rzeyde/src/trezor-firmware/python/src/trezorlib/cli/__init__.py", line 280, in version
if self._version is None:
^^^^^^^^^^^^^
AttributeError: 'TrezorConnection' object has no attribute '_version'. Did you mean: 'version'?
```
[no changelog]
In order to lower the power consumption in standard operation mode, the goal is to regulate the display refresh rate based on the current needs (animations - 60Hz, static images - 30 Hz).
- Introduction of the on-the-fly refresh rate change functionality (interrupt based).
Configuration optimizations' investigations:
- Since the display visible dimensions are 520x380 and the display controller doesn't support this resolution directly, the closest variant 520x480 is used with 50px offset. Changing the resolution used to 520x430 and shortening the HACT region by 50px effectivly increasing the blanking period.
- Using RGB565 DSI color format, changing pixel clock to 15.5 MHz, changing HFP to 20 to maintain the 60 Hz refresh rate for the new pixel clock.
- DSI lane byte clock vs LTDC pixel clock ratio (max, min) tests.
- Etc. - different configuration profiles have been tested and TS7 input power consumption measured.
Formalizing the code to official one:
- adding preprocessor definitions to panels' configuration header files
- adding ifdefs to display_driver and display_fb source files to integrate the refresh rate scaling code based on panel's used
- the refresh rate change is to be performed to high one as soon as new image is to be shown, and to the low one after a timeout expires
[no changelog]
The arguments' passed to the HAL_DSI_LongWrite() function calls were corrected. Since the code is used in "KERNEL_MODE" => adding the respective preprocessor directives.
[no changelog]
A bug in pwm_data[] buffer clear check has been found and fixed. The pwm_data[][1] array element is used when the respective buffer is used for setting of new pulses' value to TPS61062 IC.
[no changelog]