# 🕐 Jak działa wyświetlacz w DEV3

**URL:** <https://ai-speaker.discourse.group/t/jak-dziala-wyswietlacz-w-dev3/2053>\
**Category:** faq\
**Created:** [24 Sierpień 2021 08:09 UTC](https://ai-speaker.discourse.group/t/jak-dziala-wyswietlacz-w-dev3/2053 "2021-08-24T08:09:40Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Autor:** ![jolka](https://yyz2.discourse-cdn.com/free1/user_avatar/ai-speaker.discourse.group/jolka/32/5_2.png) [@jolka](https://ai-speaker.discourse.group/u/jolka)\
**Data wpisu:** [24 Sierpień 2021 08:09 UTC](https://ai-speaker.discourse.group/t/jak-dziala-wyswietlacz-w-dev3/2053/1 "2021-08-24T08:09:40Z")

</div>

## Jak działa wyświetlacz w DEV3\*

🕐

> ⚠ \*Ten opis dotyczy bramek AIS DEV3 dostępnych w sprzedaży po 20 kwietnia 2021, czyli tych, które mają Ethernet 1000 Mbps i sterowanie wyświetlaczem z AIS. Wcześniejsze wersje mają sterowanie za pomocą binarki Amlogic.

## Flaga, która mówi AIS, że trzeba kontrolować wyświetlacz

Na bramce DEV3 mamy plik `/data/local/ais_screen_control` ten plik to taka flaga/informacja dla nas, że mamy kontrolować wyświetlacz.

To, czy plik istnieje można sprawdzić komendą:

```auto
ls -la /data/local/ais_screen_control

```

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/2/232ced0f4497bfb355c1786c8730f3d09be83f07.png)

## Usługa `set_clock_display_text`

Podczas uruchomienia bramki sprawdzamy, czy AIS steruje wyświetlaczem (czy istnieje plik `/data/local/ais_screen_control`) i jak tak, to dodajemy na bramce usługę `set_clock_display_text`

Ta usługa jest odpwiedzialna za wyświetlanie tekstu (godziny) na wyświetlaczu, można ją testowo wywołać z AIS

```auto
service: ais_shell_command.set_clock_display_text
data:
  text: AI5

```

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/9/9d7e14bbd0cc1d2f1d4d2dba66e26c0e6cad41dc.png)

i taki powinien być efekt:

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/e/e38205eee7e1ed6d3dd502e62993329ddba7efa4.jpeg)

tą usugę wywołujemy co minutę, żeby ustawić godzinę na wyświetlaczu, widać to w kodzie:

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/1/14bc09a1b8f077c8c1ca78a5594eef5ae31bd775.png)

## Kod niskopoziomowy

Jak wszystko w Linux, tak też urządzenia są plikami, wyświetlacz to plik `/sys/class/fd655/panel`

Niskopoziomowo, kod pod usługą `set_clock_display_text` to proste wysłanie teksu do pliku:

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/0/0713541b37c6c05a63e17d43d75a16d5a69a7e32.png)

czyli możemy to też robić z konsoli:

```auto
su -c "echo HIAI > /sys/class/fd655/panel"

```

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/f/fffd84eb56beb51122f814de6042f622048a7492.png)

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/2/23681343b10849a0fd70134635e969adab81f8e8.jpeg)

---

<div class="post-metadata">

**Autor:** ![Akszyn](https://yyz2.discourse-cdn.com/free1/user_avatar/ai-speaker.discourse.group/akszyn/32/4038_2.png) [@Akszyn](https://ai-speaker.discourse.group/u/Akszyn)\
**Data wpisu:** [11 Listopad 2022 00:03 UTC](https://ai-speaker.discourse.group/t/jak-dziala-wyswietlacz-w-dev3/2053/2 "2022-11-11T00:03:56Z")

</div>

Czy na wyświetlaczu można wyświetlić więcej niż 4 znaki jednocześnie lub czy są jakieś ograniczenia co do długości tekstu oraz czy da się ustawić aby nic nie wyświetlał w pewnym przedziale np w nocy?
