<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://paz00.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%94%D0%B8%D0%BE%D0%B4%D1%8B_aka_Leds</id>
	<title>Диоды aka Leds - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://paz00.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%94%D0%B8%D0%BE%D0%B4%D1%8B_aka_Leds"/>
	<link rel="alternate" type="text/html" href="https://paz00.ru/index.php?title=%D0%94%D0%B8%D0%BE%D0%B4%D1%8B_aka_Leds&amp;action=history"/>
	<updated>2026-05-02T14:56:55Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.39.10</generator>
	<entry>
		<id>https://paz00.ru/index.php?title=%D0%94%D0%B8%D0%BE%D0%B4%D1%8B_aka_Leds&amp;diff=60&amp;oldid=prev</id>
		<title>Unknown user в 08:13, 15 октября 2014</title>
		<link rel="alternate" type="text/html" href="https://paz00.ru/index.php?title=%D0%94%D0%B8%D0%BE%D0%B4%D1%8B_aka_Leds&amp;diff=60&amp;oldid=prev"/>
		<updated>2014-10-15T08:13:06Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Надо искать, в штатном 2.2 или гуглить, как диоды вообще прикручиваются в &amp;lt;range type=&amp;quot;comment&amp;quot; id=&amp;quot;129830&amp;quot;&amp;gt;Андроиде&amp;lt;/range id=&amp;quot;129830&amp;quot;&amp;gt;.&lt;br /&gt;
* Скорее всего нам будет нужен демон или либа которая слушает системные события и по ним дергает диоды&lt;br /&gt;
** Надо искать похожую в которую можно внести нужные изменения&lt;br /&gt;
** Писать свою, нужен программер&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
P.S В 2.2 диоды прикручиваются через liblights, которая в оригинале через sysfs управляет диодами по разным событиям. Пример, как реализовано, можно посмотреть у HTC HD2 в репе cm7. В этой либе существуют отдельно для батарейки\уведомлений\питания\вайфая и всего-всего события для отлавливания&lt;br /&gt;
[[Светодиоды по бокам и прочее|а через /sys/class бла бла бла нельзя?]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* liblights в htc leo дает массу полезной инфы https://github.com/CyanogenMod/android_device_htc_leo/blob/gingerbread/liblights/lights.c&lt;br /&gt;
* Собрать сюда инфу по нашим диодам что где дергать в sysfs и можно будет прикрутить по аналогии&lt;br /&gt;
** работают при записи значений от 1 до 8 включительно в файл /sys/class/nvec-led/brightness, при записи значения 0 выключаются&lt;br /&gt;
*** Режимы примерно такие:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
1 - одно стандартное моргание с коротким интервалом,&lt;br /&gt;
2 - одно стандартное моргание с длинным интервалом,&lt;br /&gt;
3 - два стандартных моргания с коротким интервалом,&lt;br /&gt;
4 - два стандартных моргания с длинным интервалом,&lt;br /&gt;
5 - одно быстрое моргание с коротким интервалом,&lt;br /&gt;
6 - одно быстрое моргание с длинным интервалом,&lt;br /&gt;
7 - два быстрых моргания с коротким интревалом,&lt;br /&gt;
8 - два быстрых моргания с длинным интервалом&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
'''''' придумать к каким системным событиям привязать какие моргания ( &amp;lt;range type=&amp;quot;comment&amp;quot; id=&amp;quot;872665&amp;quot;&amp;gt;а известно как сказать андроиду что ему надо когда то моргать?&amp;lt;/range id=&amp;quot;872665&amp;quot;&amp;gt; )&lt;br /&gt;
**** ну только теоритически известно что в liblights можно обыгровать события и по ним дергать лампочки, но как чего делать точно нужно разбираться, но общий смысл такой:&lt;br /&gt;
завести переменные включения лампочек с прописыванием нужных значений в &amp;lt;range type=&amp;quot;comment&amp;quot; id=&amp;quot;779141&amp;quot;&amp;gt;/sys/class/nvec-led/brightness&amp;lt;/range id=&amp;quot;779141&amp;quot;&amp;gt; и выключению и функцию нотификации которая по определенному ивенту&lt;br /&gt;
включает их или выключает.&lt;br /&gt;
&lt;br /&gt;
На заметку: http://www.kandroid.org/online-pdk/guide/lights.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Попытка завести мигалки на АС-100:&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==='''Notification.java'''=== &lt;br /&gt;
Класс реализации стандартных уведомлений;&lt;br /&gt;
* FLAG_SHOW_LIGHTS - константа, переопределяющая мигалки по-умолчанию;&lt;br /&gt;
* ledARGB - целочисленная переменная для задания цвета. Поскольку у нас цветов нет, использовать не будем;&lt;br /&gt;
* ledOnMS, ledOffMS - переменные управляющие мерцанием, либо работой светодиодов.&lt;br /&gt;
Из документации:&lt;br /&gt;
* &amp;lt;li&amp;gt;To turn the LED off, pass 0 in the alpha channel for colorARGB&lt;br /&gt;
* or 0 for both ledOnMS and ledOffMS.&amp;lt;/li&amp;gt;&lt;br /&gt;
* &amp;lt;li&amp;gt;To turn the LED on, pass 1 for ledOnMS and 0 for ledOffMS.&lt;br /&gt;
&lt;br /&gt;
Поскольку у нас передача значения включает уже готовые режимы мигания, будем использовать&lt;br /&gt;
Для включения:&lt;br /&gt;
&lt;br /&gt;
ledOnMS = 1 или ledARGB = любое целое, отличное от нуля;&lt;br /&gt;
ledOffMS = 0;&lt;br /&gt;
&lt;br /&gt;
Для выключения:&lt;br /&gt;
ledOnMS = 0;&lt;br /&gt;
ledOffMS = 0;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==='''lights.h'''=== &lt;br /&gt;
Хидер библиотеки реализации моргания светодиодов. Очень много полезной инфы для грамотной реализации библиотеки в комментах;&lt;br /&gt;
&lt;br /&gt;
Нужные переменные находятся в struct light_state_t:&lt;br /&gt;
* color == ledARGB; '' 0 - выключение диодов, иначе - включение;&lt;br /&gt;
* flashMode - хранит режим горение/мерцание внутри библиотеки. У нас &amp;quot;мерцание&amp;quot; не будет использоваться;&lt;br /&gt;
* flashOnMS == ledOnMS;&lt;br /&gt;
* flashOffMS == ledOffMS;&lt;br /&gt;
&lt;br /&gt;
==='''lights.c'''=== &lt;br /&gt;
* Реализация. Самое интересное;&lt;br /&gt;
Что-то попробовал написать, результат http://pastebin.com/ELeg4NvL&lt;br /&gt;
Лучше так: http://pastebin.com/bTyaYjCP (в первом варианте не учёл выключение при colorARGB = 0)&lt;br /&gt;
Не факт, что это вобще компилируется и будет работать, но мне кажется, движусь в правильном направлении :)&lt;br /&gt;
** &amp;lt;range type=&amp;quot;comment&amp;quot; id=&amp;quot;186522&amp;quot;&amp;gt;Не компилируется&amp;lt;/range id=&amp;quot;186522&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
target thumb C: lights.tegra &amp;lt;= device/toshiba/paz00/liblights/lights.c&lt;br /&gt;
device/toshiba/paz00/liblights/lights.c:136: error: storage class specified for parameter 'mode'&lt;br /&gt;
make: *** [out/target/product/paz00/obj/SHARED_LIBRARIES/lights.tegra_intermediates/lights.o] Ошибка 1&lt;br /&gt;
make: *** Ожидание завершения заданий...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
''' Можно проверять вообще компиляцию отдельно от всего андроида, возьми просто нужные инклюды и трави сборку на него.&lt;br /&gt;
** С патчем от stuw'а все собралось, но диоды не загораются при оповещениях.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Тестовое андроид-приложение для проверки мигалок&lt;br /&gt;
----&lt;br /&gt;
[http://paz00.ruNotificationsTest.zip NotificationsTest.zip]&lt;br /&gt;
&lt;br /&gt;
'''zombah''', дальнейшее развитие событий зависит от тебя :)&lt;/div&gt;</summary>
		<author><name>Unknown user</name></author>
	</entry>
</feed>