Skip to content

Commit

Permalink
v0.95
Browse files Browse the repository at this point in the history
- Rebranding AWTRIX Light to AWTRIX 3

- **Enhancements:**
  - Implemented median and mean filters for more accurate processing of raw data from LDR and BATT sensors.
  - Added Cyrillic support, limited to UPPERCASE letters. Issue #467 closed. 🇷🇺
  - Introduced overlays for weather animations accessible via the /settings API or customapp/notifications. Available overlays: clear, snow, drizzle, rain, storm, thunder, frost.  closes #454

- **Features:**
  - Added AP Mode timeout configuration via dev.json. ⏱️
  - The hostname isnt the same as the MQTT prefix anymore.  Instead you can set "hostname" in your dev.json.  🏠
  - Supports SSIDs with 32 characters. 🔒
  - Web port can now be changed via dev.json. 🌐
  - Unified firmware versions for peripherals, allowing Ulanzi firmware to control DFPlayer and read temperature sensors and vice versa. Only port mapping differs. DFPlayer can be enabled in dev.json. 🔄

- **Bug Fixes:**
  - Resolved issue where using custom apps and sending text in colored fragments prevented reverting to a single color. Issue #464 closed. 🐛
  - Fixed URL forwarding in the web interface. Issue #501 closed. 🔗

- **Miscellaneous:**
  - Added functionality to control the volume of the buzzer or DFPlayer via on-screen menu or settings API. 🔊
  - Enabled reset button on the back of Ulanzi; holding it for 5 seconds initiates a full reset of the AWTRIX firmware. 🔧
  • Loading branch information
Blueforcer committed Mar 12, 2024
1 parent 0e28aaf commit d9ad8e8
Show file tree
Hide file tree
Showing 63 changed files with 2,169 additions and 1,218 deletions.
2 changes: 1 addition & 1 deletion .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/cpp
{
"name": "awtrix-light",
"name": "awtrix3",
"build": {
"dockerfile": "Dockerfile"
}
Expand Down
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ labels: bug
assignees: ''
---

<!-- Make sure to read the README (https://blueforcer.github.io/awtrix-light/#/README) before opening an issue. -->
<!-- Make sure to read the README (https://blueforcer.github.io/awtrix3/#/README) before opening an issue. -->

# Bug report

Expand All @@ -18,7 +18,7 @@ Add a description of the bug. Detail the expected behaviour in contrast with the

- Devices involved:
- Model: Ulanzi Awtrix Smart Pixel Clock 2882 (TC001)
- AWTRIX-LIGHT version: [ eg. v0.45 ]
- awtrix3 version: [ eg. v0.45 ]

## To Reproduce

Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ labels: feature request
assignees: ''
---

<!-- Make sure to read the README (https://blueforcer.github.io/awtrix-light/#/README) before opening an issue. -->
<!-- Make sure to read the README (https://blueforcer.github.io/awtrix3/#/README) before opening an issue. -->

# Feature Request

Expand Down
2 changes: 1 addition & 1 deletion Helper_Scripts/Awtrix_Clone.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#Clones the ICONS and MELODIES folder from one to another AWTRIX Light
#Clones the ICONS and MELODIES folder from one to another AWTRIX 3

import os
import argparse
Expand Down
2 changes: 1 addition & 1 deletion Helper_Scripts/screenmirror.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,6 @@ def capture_image(self):
# Hauptteil des Programms
root = tk.Tk()
root.resizable(False, False)
ip_address = simpledialog.askstring("AWTRIX LIGHT", "Please enter IP address:")
ip_address = simpledialog.askstring("AWTRIX 3", "Please enter IP address:")
app = LedScreenApp(root, ip_address)
root.mainloop()
22 changes: 11 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,13 @@

![Alt text](/logo.png?raw=true "Title")
<br>
![GitHub all releases](https://img.shields.io/github/downloads/blueforcer/awtrix-light/total?style=flat-square)
![GitHub all releases](https://img.shields.io/github/downloads/blueforcer/awtrix3/total?style=flat-square)
![GitHub Sponsors](https://img.shields.io/github/sponsors/blueforcer?style=flat-square)
![Discord](https://img.shields.io/discord/546407049148366859?label=Discord&style=flat-square)
</div>
<br>

**AWTRIX Light is an open‑source custom firmware for the [Ulanzi Smart Pixel clock TC001](https://www.ulanzi.com/products/ulanzi-pixel-smart-clock-2882?ref=28e02dxl) or as upgrade for the old AWTRIX 2 Mainboard and even self build matrix clock**
**AWTRIX 3 is an open‑source custom firmware for the [Ulanzi Smart Pixel clock TC001](https://www.ulanzi.com/products/ulanzi-pixel-smart-clock-2882?ref=28e02dxl) or as upgrade for the old AWTRIX 2 Mainboard and even self build matrix clock**

**Note: This Firmware is only compatible with ESP32**

Expand All @@ -29,11 +29,11 @@ Our discord community, with over 3000 people, are willing to help you!

It is ready to use straight out of the box, with time, date, temperature, and humidity pages pre-installed. You don't need to do anything other than turning it on to start using these features.

However, for those with more advanced skills, the customization options available with customapps and mqtt commands allows you to take Awtrix Light to its full potential.
However, for those with more advanced skills, the customization options available with customapps and mqtt commands allows you to take AWTRIX 3 to its full potential.
Just send all your customapps from your smarthome via MQTT or HTTP and update it in realtime.
The powerful icon system brings your ideas to life and lets you enjoy a hassle-free experience.

Join the thousands of satisfied awtrix users who have already chosen Awtrix 2 and Awtrix Light and experience the difference today!
Join the thousands of satisfied awtrix users who have already chosen Awtrix 2 and AWTRIX 3 and experience the difference today!



Expand All @@ -47,13 +47,13 @@ Take your Awtrix experience to the next level with the mobile app, tailored for
- **Exclusive Icon Database:** Get unique icons only available for app users.
- **Icon Creation & Sharing:** Design and share your icons with our community.

By purchasing the app, you're directly contributing to the future of Awtrix Light. Dive deep, explore more, and be a part of the innovation.
By purchasing the app, you're directly contributing to the future of AWTRIX 3. Dive deep, explore more, and be a part of the innovation.
Support our journey and enhance your Awtrix experience. Your contribution matters. ✨

<a href='https://play.google.com/store/apps/details?id=de.awtrix.light&pcampaignid=pcampaignidMKT-Other-global-all-co-prtnr-py-PartBadge-Mar2515-1'>
<img style="width: 20%; height: auto;" alt='Get it on Google Play' src='playstore_button.png'/>
</a>
<a href='https://apps.apple.com/de/app/awtrix-light/id6459478110'>
<a href='https://apps.apple.com/de/app/awtrix3/id6459478110'>
<img style="width: 20%; height: auto;" alt='Get it on Google Play' src='appstore_button.png'/>
</a>
<a href='https://www.amazon.com/gp/product/B0CGQ4JZX4'>
Expand All @@ -63,8 +63,8 @@ Support our journey and enhance your Awtrix experience. Your contribution matter



# AWTRIX Light flows
This is your go-to hub for sharing and discovering AWTRIX Light automations. Enhance your AWTRIX Light experience, exchange ideas, and get inspired. Let's bring our creative automations to life together!
# AWTRIX 3 flows
This is your go-to hub for sharing and discovering AWTRIX 3 automations. Enhance your AWTRIX 3 experience, exchange ideas, and get inspired. Let's bring our creative automations to life together!
https://flows.blueforcer.de/

# Features
Expand All @@ -89,7 +89,7 @@ https://flows.blueforcer.de/

# Getting Started
Starting is easy as 1-2-3
[with the documentation](https://blueforcer.github.io/awtrix-light/)
[with the documentation](https://blueforcer.github.io/awtrix3/)

# Community
Join the discord channel with over 3000 Users
Expand Down Expand Up @@ -118,8 +118,8 @@ https://www.buymeacoffee.com/blueforcer
https://www.paypal.me/blueforcer

# Contributors
<a href="https://github.com/Blueforcer/awtrix-light/graphs/contributors">
<img src="https://contrib.rocks/image?repo=Blueforcer/awtrix-light" />
<a href="https://github.com/Blueforcer/awtrix3/graphs/contributors">
<img src="https://contrib.rocks/image?repo=Blueforcer/awtrix3" />
</a>

# Disclaimer
Expand Down
14 changes: 7 additions & 7 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
# AWTRIX-LIGHT
# awtrix3

!> This open-source software is not affiliated with or endorsed by the company Ulanzi in any way. Use of the software is at your own risk and discretion, and i assume no liability for any potential damages or issues that may arise from using the software. It is important to be aware that using this open-source software comes without direct support or guarantees from the company Ulanzi.

Awtrix Light is a custom firmware for the [Ulanzi Smart Pixel clock](https://www.ulanzi.com/products/ulanzi-pixel-smart-clock-2882?ref=28e02dxl) (Ref link).
AWTRIX 3 is a custom firmware for the [Ulanzi Smart Pixel clock](https://www.ulanzi.com/products/ulanzi-pixel-smart-clock-2882?ref=28e02dxl) (Ref link).
It meant to be a companion for your smarthome like HomeAssistant, IOBroker, NodeRed and so on.
Even if you don't have a Smarthome system, but would like to experiment, you are still welcome to join us. There are many users who are willing to help you!

It is ready to use straight out of the box, with time, date, temperature, and humidity apps pre-installed. You don't need to do anything other than turning it on to start using these features.

During the development of Awtrix Light, usability and simplicity are my top priorities. My aim is to make it easy for non-tech-savvy users to benefit from Awtrix Light without any headaches or hours of scripting.
Awtrix Light is ready to use straight out of the box, without the need for a single line of code.
However, for those with more advanced skills, the customization options available with custom apps allow you to take Awtrix Light to its full potential.
With Awtrix Light, you can effortlessly bring your ideas to life and enjoy a hassle-free experience.
Join the thousands of satisfied awtrix users who have already chosen Awtrix 2 and Awtrix Light and experience the difference today!
During the development of AWTRIX 3, usability and simplicity are my top priorities. My aim is to make it easy for non-tech-savvy users to benefit from AWTRIX 3 without any headaches or hours of scripting.
AWTRIX 3 is ready to use straight out of the box, without the need for a single line of code.
However, for those with more advanced skills, the customization options available with custom apps allow you to take AWTRIX 3 to its full potential.
With AWTRIX 3, you can effortlessly bring your ideas to life and enjoy a hassle-free experience.
Join the thousands of satisfied awtrix users who have already chosen Awtrix 2 and AWTRIX 3 and experience the difference today!
https://discord.gg/cyBCpdx

## Support
Expand Down
2 changes: 1 addition & 1 deletion docs/Test_Flasher/firmware/manifest.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"name": "AWTRIX Light",
"name": "AWTRIX 3",
"version": "0.81",
"home_assistant_domain": "AwtrixLight",
"funding_url": "https://blueforcer.de",
Expand Down
8 changes: 4 additions & 4 deletions docs/Test_Flasher/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@
<html>
<head>
<meta charset="utf-8" />
<title>AWTRIX LIGHT</title>
<title>AWTRIX 3</title>
<meta
name="description"
content="Install Awtrix Light."
content="Install AWTRIX 3."
/>
<meta name="viewport" content="width=device-width" />
<meta name="color-scheme" content="dark light" />
Expand Down Expand Up @@ -86,8 +86,8 @@ <h2 align="center">BACKUP YOUR FLASH!</h2>
</p>

<div class="footer">
<a href="https://github.com/Blueforcer/awtrix-light"
>Awtrix Light </a>
<a href="https://github.com/Blueforcer/awtrix3"
>AWTRIX 3 </a>
Installer powered by <a href="https://esphome.github.io/esp-web-tools/">ESP Web Tools</a>.
</div>
<script>
Expand Down
6 changes: 3 additions & 3 deletions docs/_coverpage.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@

# AWTRIX LIGHT
# AWTRIX 3

> Custom firmware for the Ulanzi Smart Pixel clock.
> Custom firmware for the Ulanzi Smart Pixel clock and self build matrix clocks.

[GitHub](https://github.com/Blueforcer/awtrix-light)
[GitHub](https://github.com/Blueforcer/awtrix3)
[Flasher](flasher.md)
[Getting Started](README.md)
74 changes: 47 additions & 27 deletions docs/api.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ Colored indicators serve as small notification signs displayed on specific areas

## Custom Apps and Notifications

With AWTRIX Light, you can design custom apps or notifications to showcase your unique text and icons.
With AWTRIX 3, you can design custom apps or notifications to showcase your unique text and icons.

### Interaction

Expand Down Expand Up @@ -203,19 +203,30 @@ Below are the properties you can utilize in the JSON object. **All keys are opti
| `noScroll` | boolean | Disables the text scrolling. | false | X | X |
| `clients` | array of strings | Allows forwarding a notification to other awtrix devices. Use the MQTT prefix for MQTT and IP addresses for HTTP. | | | X |
| `scrollSpeed` | integer | Modifies the scroll speed. Enter a percentage value of the original scroll speed. | 100 | X | X |
| `effect` | string | Shows an [effect](https://blueforcer.github.io/awtrix-light/#/effects) as background.The effect can be removed by sending an empty string for effect| | X | X |
| `effectSettings` | json map | Changes color and speed of the [effect](https://blueforcer.github.io/awtrix-light/#/effects). | | X | X |
| `effect` | string | Shows an [effect](https://blueforcer.github.io/awtrix3/#/effects) as background.The effect can be removed by sending an empty string for effect| | X | X |
| `effectSettings` | json map | Changes color and speed of the [effect](https://blueforcer.github.io/awtrix3/#/effects). | | X | X |
| `save` | boolean | Saves your custom app into flash and reloads it after boot. Avoid this for custom apps with high update frequencies because the ESP's flash memory has limited write cycles. | | X | |
| `overlay`| string | Sets an effect overlay (cannot be used with global overlays). | | X | X |

**Color**: Accepts a hex string or an R,G,B array: `"#FFFFFF"` or `[255,255,0]`.

**Overlay effects:**
- "clear"
- "snow"
- "rain"
- "drizzle"
- "storm"
- "thunder"
- "frost"


#### Example

Here's a sample JSON to present the text "Hello, AWTRIX Light!" in rainbow colors for a duration of 10 seconds:
Here's a sample JSON to present the text "Hello, AWTRIX 3!" in rainbow colors for a duration of 10 seconds:

```json
{
"text": "Hello, AWTRIX Light!",
"text": "Hello, AWTRIX 3!",
"rainbow": true,
"duration": 10
}
Expand Down Expand Up @@ -254,7 +265,7 @@ Here's an example JSON object to draw a red circle, a blue rectangle, and the te

### Display Text in Colored Fragments

AWTRIX Light allows you to present text where specific fragments can be colorized. Use an array of fragments with `"t"` representing the text fragment and `"c"` denoting the color's hex value.
AWTRIX 3 allows you to present text where specific fragments can be colorized. Use an array of fragments with `"t"` representing the text fragment and `"c"` denoting the color's hex value.

```json
{
Expand All @@ -274,7 +285,7 @@ AWTRIX Light allows you to present text where specific fragments can be colorize

### Sending Multiple Custom Apps Simultaneously

AWTRIX Light enables you to dispatch multiple custom apps in a single action. Instead of transmitting one custom app object, you can forward an array of objects.
AWTRIX 3 enables you to dispatch multiple custom apps in a single action. Instead of transmitting one custom app object, you can forward an array of objects.

**e.g. MQTT Topic:** `/custom/test`

Expand Down Expand Up @@ -366,8 +377,8 @@ You can adjust each property in the JSON object according to your preferences. I
| `ATRANS` | boolean | Automatic switching to the next app. | `true`/`false` | N/A |
| `CCORRECTION` | array of ints | Color correction for the matrix. | RGB array | N/A |
| `CTEMP` | array of ints | Color temperature for the matrix. | RGB array | N/A |
| `TFORMAT` | string | Time format for the TimeApp. | Varies (see documentation) | N/A |
| `DFORMAT` | string | Date format for the DateApp. | Varies (see documentation) | N/A |
| `TFORMAT` | string | Time format for the TimeApp. | Varies (see below) | N/A |
| `DFORMAT` | string | Date format for the DateApp. | Varies (see below) | N/A |
| `SOM` | boolean | Start the week on Monday. | `true`/`false` | true |
| `BLOCKN` | boolean | Block physical navigation keys (still sends input to MQTT). | `true`/`false` | false |
| `UPPERCASE` | boolean | Display text in uppercase. | `true`/`false` | true |
Expand All @@ -383,26 +394,20 @@ You can adjust each property in the JSON object according to your preferences. I
| `TEMP` | boolean | Enable or disable the native temperature app (requires reboot). | `true`/`false` | true |
| `BAT` | boolean | Enable or disable the native battery app (requires reboot). | `true`/`false` | true |
| `MATP` | boolean | Enable or disable the matrix. Similar to `power` Endpoint but without the animation. | `true`/`false` | true |
| `VOL` | integer | Allows to set the Volume of the DFplayer (Only for **old** AWTRIX2.0 upgrades ) | 0-30 | true |
| `VOL` | integer | Allows to set the Volume of the DFplayer (Only for **old** AWTRIX2.0 upgrades) | 0-30 | true |
| `OVERLAY` | string | Sets a global effect overlay (cannot be used with app specific overlays) | Varies (see below) | N/A |

**Color Values**: Can either be an RGB array (e.g., `[255,0,0]`) or a valid 6-digit hexadecimal color value (e.g., "#FF0000" for red).


**Transition effects:**
```bash
0 - Random
1 - Slide
2 - Dim
3 - Zoom
4 - Rotate
5 - Pixelate
6 - Curtain
7 - Ripple
8 - Blink
9 - Reload
10 - Fade
```


**Overlay effects:**
- "clear"
- "snow"
- "rain"
- "drizzle"
- "storm"
- "thunder"
- "frost"

**Timeformats:**
```bash
%H:%M:%S 13:30:45
Expand All @@ -427,6 +432,21 @@ You can adjust each property in the JSON object according to your preferences. I
%d/%m 16/04
%m-%d-%y 04-16-22
```

**Transition effects:**
```bash
0 - Random
1 - Slide
2 - Dim
3 - Zoom
4 - Rotate
5 - Pixelate
6 - Curtain
7 - Ripple
8 - Blink
9 - Reload
10 - Fade
```

## Update

Expand Down
Loading

0 comments on commit d9ad8e8

Please sign in to comment.