blueforcer / awtrix3 Goto Github PK
View Code? Open in Web Editor NEWCustom firmware for the Ulanzi Smart Pixel clock or self made awtrix. Getting started is easy as 1-2-3
Home Page: https://blueforcer.github.io/awtrix3/
License: Other
Custom firmware for the Ulanzi Smart Pixel clock or self made awtrix. Getting started is easy as 1-2-3
Home Page: https://blueforcer.github.io/awtrix3/
License: Other
I want to have multiple pages (time, date etc.) but without an automatic transition. I only want to be able to switch between them by pressing a button or using MQTT requests.
I think this can be implemented by using a toggle (which hides the "Duration per page" option) or by allowing to set -1 as the duration. The first option would be more user friendly.
Currently when I send text, the text starts at the most right position. Would be nice, if there was an option to set the start position right next the icon, so part of the text is already shown without scrolling.
Would it be possible to upgrade my old lcd from awtrix with esp8266? or esp32?
Thanks!
When trying to display the character °
using either notify topic or a custom page topic, the character doesn't show. Possible UTF-8 encoding issue with these methods?
Sample notify JSON:
{
"text": "44°"
}
When I try to publish a MQTT payload to /settings to change a setting like "WD" or "TFORMAT", The display flashes but the changes are not set. Also when I try to set is via Postman to http:///api/settings the same happens. Maybe I am doing something wrong, but can you help me?
Used payload:
{
"WD": false
}
(optional) Add relevant logs which could help tackle the problem.
Add any other context about the problem here.
If I create a custom page, and reboot the esp, the page is gone off the clock. Is it possible to use retained messages to auto load those pages again on reboot?
Currently the awtrix-light plays a sound, when the device starts.
It would be great when this start sound could be disabled.
MQTT prefix changed to "awtrix" in web ui.
Sending MQTT message to "awtrix/custom/test"
Message:
{
"text": "512 W",
"icon": "52090",
"repeat": 1,
"rainbow": false,
"duration": 10,
"color": "#FFFFFF",
"hold": false
}
Icon is uploaded to folder ICONS.
-> Custom page is not generated nor shown on display.
-> the same message to topic "awtrix/notify" works!
Setup:
Current behaviour:
Desired behaviour:
Would it be possible to expose the icon download functionality via MQTT / HTTP API? That way if you have multiple clocks you would be able to download icons programmatically across all of them. TIA!
No
I would like to be able to use MQTT or the HTTP API to be able to download icons programmatically.
I do not believe this functionality is present, unless I missed it.
NA
This is a minor quality of life request, especially for people with less experience in this kind of setup.
The default MQTT prefix is AwtrixLight
.
If you have multiple clocks, you need to manually change this prefix to ensure they are each discovered as individual devices.
I'd propose appending the 3 final (NIC specific) octets of the device's MAC address to this prefix to make it unique by default.
Similar as to how other IoT devices setup their hostname and/or SSID*.
So if the device's MAC address is 12:34:56:78:90:AB
, the MQTT prefix could be AwtrixLight-7890ab
.
(*) using this for the WiFi SSID would be another useful little change.
With this feature we can set a schedule to check and update the device automatically
Hi, do you think it will be possible to expose the action done on button to home assistant.( ex left button : none , one click , double click , long click ) and maybe have the ability to desactivate the navigation feature for one button ( left or right ) except for configuration menu ? Personally, I don't really use button to navigate between screen and just have one ( left or right ) is enough so if I can use the other button to trigger action on home assistant , it can be a really nice feature.
Extend existing Entity categorieswith diagnostic and add the following buttons into the category
Probebly some internal Information like
When I put a sound attribute at the end of the string --> The sound doesn’t work.
AwtrixLight/notify {"icon":3579,"text":"Bad Fenster schliessen!", "hold":"true", "pushIcon":2, "sound":"Police"}
When I set the sound attribute at first --> Sound = ok, but the icon animation disappears.
AwtrixLight/notify {"sound":"Police","icon":3579,"text":"Bad Fenster schliessen!", "hold":"true", "pushIcon":2}
If a bar chart is displayed, values like 1,1,1,1 are shown as 4 bars which are 8 pixels in size (probably auto scaling). In most cases this is OK. But if you like for instance to show the rain forecast and it will be dry for the coming hours, it looks like it's raining hard. Maybe it's possible to add a setting so the integers given can be in a range from 0 to 8, so in the given example 4 bars are displayed with a height of 1 pixel. So no auto scaling.
Or a max value to be used for scaling.
Disabling humidity and battery screen has no effect
Steps to reproduce the behavior:
Flash latest version
Screen slide not showing humidity nor battery level
When I use my spotify artist and title on a custom page it's hard to display the whole text. Sometimes the text is so long, that the transition cuts in the middle of the text. Sometimes the title is so short, that it displays 3 times. Would be nice if there was a MQTT option to display the text exactly once. After the text is finished switch back to the other page.
No.
Being able to set the clock into "night mode" between two times set by the user. Brightness will decrease to a custom brightness level during this time. (Maybe would be cool to have the option to also set color calibration to e.g. [255,255,215] to function as a blue light filter!)
I currently made my own night mode using HTTP API and an Android app, but this is not very reliable and also a lot of work to set up. The original Ulanzi firmware does support setting brightness during a custom timeframe, but I prefer Awtrix for obvious reasons :)
Nope
I would be nice if we would have an option to upload fonts in a FONTS folder, which can then be used to display the text on the clock (maybe even on notification/app basis). The FONTS folder would contain ttf files with the respective fonts.
Stick to the custom font
I know it's possible with ESPHoMatrix to use different fonts, but AWTrix is faster and has more options, so I'm not switching back just because of this :)
Is it possible to show a icon on the left when displaying time like in the temperature app? And is it possible to customise the icons of the default apps?
Icon stays visible when empty MQTT payload is sent to an active custom app and transition = off
The icon of the active app that gets deactivated is removed as well just like the value is.
(optional) Add relevant logs which could help tackle the problem.
Add any other context about the problem here.
I use one of my Awtrix lights alternately at home and in the local hackrrspace, both locations have different SSIDs / WLAN access data. Support for 2 or more WLAN profiles would therefore be very useful.
If I look at the free ram history of the Ulanzi clock in Home Assistant, I see that the free RAM is slowly diminishing over time.
I'm not sure if this is related to the way I publish MQTT messages or if something is wrong in the firmware. I created several apps through MQTT in Home Assistant that I show on the Ulanzi Pixel Clock. Every time when a value changes within the app, I publish a new MQTT message (MQTT.publish) to the clock with the same app name. Is this the correct approach?
Die Uhr startet nach dem Update, zeigt IP Adresse an, dann kommt ein noch oben fliegendes Z und die Uhr startet neu. Uhr Ulanzi, Version 0.55, Iobroker MQTT Server
Wenn ich den MQTT Server auf IOBroker ausschalten, funktioniert die Uhr
The clock starts after the update, shows IP address, then comes a still flying Z above and the clock restarts.
Clock Ulanzi, version 0.55, Iobroker MQTT Server
When I turn off the MQTT server on IOBroker, the clock works
I'm uncertain whether this is something that needs to be solved from within HA or this firmware.
An entity like the one showing the firmware version, has an entity_id of sensor.version
.
Same for e.g. sensor.battery
or light.matrix
.
If a 2nd device flashed with the same firmware would be added to Home Assistant, this will likely result in entity_id's like sensor.version_2
or light.matrix_2
.
These entity_id's are very generic and don't refer to the device they belong too.
It's not unthinkable a generic sensor like sensor.version
could already be provided by HA itself.
In my opinion, it'd be better to have entity_id's like sensor.[devicename]_[sensor]
.
For example: sensor.awtrix_aabbcc_version
or light.awtrix_aabbcc_matrix
.
A HA user would still be able to manually change these entity_id's if they'd want to.
Compare this to the battery sensor entity for an Aqara door sensor integrated via Z2M:
No
Is it possible to implement a binary sensor to indicate wether the pixel clock is currently connected to a power source and is charging? If so could you please implement a binary sensor to show charging state?
The idea behind: If the pixel clock runs on a power source I usually disable the battery app. But sometimes the clock is running on battery and in this case the battery app is helpful. If one could determine the current state wether the pixel clock is on power source or runs on battery I could write an automation to automatically enable or disable the battery app.
Would also be nice to use the weekday bar globally as a page indicator. So if the Awtrix is currently on page 3 of 4, the 3. bar of 4 would be highlighted.
hello is on version 0.38 get these strange characters at my temperature sensor of my room on the screen after restarting the screen this does not help yet why is this?
service: mqtt.publish
data:
topic: AwtrixLight/notify
payload: >-
{ "text":
"{{trigger.to_state.state}}{{trigger.to_state.attributes.unit_of_measurement}}",
"icon": "52352", "rainbow": true, "duration": 30 }
Sorry I don't know the proper name for the app underscore that are the placeholders / highlight for each app.
But it would be very handy to be able to remove or turn off the underscores under the apps. For my particular use case, I will be using the clock only for very long periods of time and the underscores are superfluous. Not to mention at night the underscore is still pretty bright because it's always white. If you can already do this I apologize I couldn't find it in the docs for the API/MQTT.
No
If so, then add a clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
See above
N/A
MQTT power on no longer working, after power off, if i send power on, the state changed to "on" but the Display stays off. I have to restart the device to work
Steps to reproduce the behavior:
MQTT power off, power on, every try
Would appreciate if I could change the time format over network,
I like the hh:mm:ss over the day, but in the evening/night I like hh:mm without any blinking pixels.
Is there a way to hide the weekday bar in the time app?
Date, Temperature,... pages can be disabled in Web UI, but not time.
From the Home Assistant Logs:
Sensor sensor.awtrix_xxxxxx_uptime has device class
duration
, state classNone
and unitNone
thus indicating it has a numeric value; however, it has the non-numeric value: P0DT7H56M8S (<class 'str'>);
Please update your configuration if your entity is manually configured, otherwise create a bug report at https://github.com/home-assistant/core/issues?q=is%3Aopen+is%3Aissue+label%3A%22integration%3A+mqtt%22
Steps to reproduce the behavior:
A clear and concise description of what you expected to happen.
Have a properly setup uptime sensor.
Send the boot time as a datetime object / iso datetime string and have HA calculate the uptime for you?
If applicable, add screenshots to help explain your problem.
Sensor sensor.awtrix_dd2824_uptime has device class duration, state class None and unit None thus indicating it has a numeric value; however, it has the non-numeric value: P0DT7H56M8S (<class 'str'>); Please update your configuration if your entity is manually configured, otherwise create a bug report at https://github.com/home-assistant/core/issues?q=is%3Aopen+is%3Aissue+label%3A%22integration%3A+mqtt%22
Add any other context about the problem here.
Please add Support for Device configuration URL
to Change the MQTT Info button into an Link to Webinterface of the device
current:
desired:
Clock is bricked
Clock stays on 02:36:34 and wil not reset with button, also the com port does work anymore, flashing not posible
Steps to reproduce the behavior:
Can not reproduce, clock is bricked
A clear and concise description of what you expected to happen.
If applicable, add screenshots to help explain your problem.
(optional) Add relevant logs which could help tackle the problem.
Add any other context about the problem here.
Hi, I was testing version 0.45 and in this version sending an empty payload does not remove the app from the transition list anymore.
I am referring to this part in the documentation:
https://blueforcer.github.io/awtrix-light/#/custom?id=delete-a-custom-page
P.S. The new app turn on and turn off function can be used instead of course. Not sure if it was intended to remove the old functionality to send an empty payload.
Idea: WebUI Password Protection
Something like this:
<script language="JavaScript"> var pass_entered; var password="test1234"; while (pass_entered!=password) { pass_entered=prompt('Please enter the password:',''); } self.close(); </script>It would be nice to have a toggle switch in Homeassistant Discovery for the autotransition setting: https://blueforcer.github.io/awtrix-light/#/mqtt?id=change-settings
On
: Pixel clock cycles through apps/custom pagesOff
: Pixel clock does not cycle through apps/custom pagesHi, I'm asking for a new feature to be added. I'm in USA and wanted to be able to change the time and date formatting. For example, 12 hour time, and month/day/year date format.
Our week also starts on Sunday, so the bars at the bottom representing the current day, it would be great to be able to update that so it's Sun, Mon, Tue, Wed, Thu, Fri, Sat
When sending a MQTT message to [PREFIX]/apps nothing happens.
Message:
[ { "name":"time", "pos":0 }, { "name":"temperature", "pos":1 }, { "name":"humidity", "pos":2 }, { "name":"weather", "pos":3 }, { "name":"youtube", "pos":4 } ]
I also tried to switch the app with [PREFIX]/switch, which worked perffectly fine for me.
Message:
{ name":"youtube", }
Steps to reproduce the behavior:
The apps should be rearranged to the order specified in json
Uptime has a non-conventional format. This way it has a lot of state changes.
It would be better to have a fixed boot time or something, we can still calculate the delta.
Add device to HA.
No warnings.
Logger: homeassistant.components.sensor
Source: components/sensor/__init__.py:597
Integration: Sensor (documentation, issues)
First occurred: 5:11:25 AM (2 occurrences)
Last logged: 5:11:25 AM
Sensor sensor.uptime has device class duration, state class None and unit None thus indicating it has a numeric value; however, it has the non-numeric value: P0DT7H16M31S (<class 'str'>); Please update your configuration if your entity is manually configured, otherwise create a bug report at https://github.com/home-assistant/core/issues?q=is%3Aopen+is%3Aissue+label%3A%22integration%3A+mqtt%22
Sensor sensor.uptime_2 has device class duration, state class None and unit None thus indicating it has a numeric value; however, it has the non-numeric value: P0DT7H16M31S (<class 'str'>); Please update your configuration if your entity is manually configured, otherwise create a bug report at https://github.com/home-assistant/core/issues?q=is%3Aopen+is%3Aissue+label%3A%22integration%3A+mqtt%22```
I've got my clock on a non-internet VLAN.
This means the Update option in the menu cannot be used to update the device and updates need to be done manually via the web interface.
In order to keep track of firmware updates from within HA, a simple solution is to use the GitHub Integration to track the latest release of a repo like this.
But to be able to know when an update is needed, you'd need to be able to quickly compare the current FW version to the latest release.
And while the web interace does show the firmware version in its title, it would quickly become too much of a hassle to manually check the web interface of each clock to ensure they're up-to-date.
That's why I'd like to propose adding a Version Sensor to the code.
The Clock crashes if its running without Internet access for over one hour.
Probably related to update check introduced in version 0.47
Disable internet access for the clock and let it run for over one hour
Clock should not crash and the update check should return error or no update available
Similar to the other matrix clock out there, when in a dark room it would be nice to have the awtrix-light only show the clock at brightness 1. Like in a dark bedroom
I've had some success with determining that if BRIGHTNESS < 20 then the room is dark. Defining that in this area seems to have worked, but I'm stuck trying to figure out how to modify the ui.setApps(Apps) to only include clock, then revert to the list of apps when brightness is above 20.
First: Thanks for including my request that fast in the latest release! 🎉
(Just one question: Would it me possible to support the auto transition also from MQTT? Thanks!)
Since I disabled the auto transition it would be nice to allow to switch to a certain page (build in or custom) via MQTT.
For example:
I want to show the clock by default. When My song in spotify changes, I want to switch to my custom page for x seconds, then back to the clock and then stay at the clock page.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.