<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5194512230478960240</id><updated>2011-04-21T19:55:37.259-07:00</updated><category term='n810 temperature bash'/><title type='text'>n810-штучки(rus)</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://vadikus.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5194512230478960240/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://vadikus.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Vadi</name><uri>http://www.blogger.com/profile/10085350755249147652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>2</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5194512230478960240.post-2542687224104256213</id><published>2009-02-11T21:26:00.000-08:00</published><updated>2009-02-11T21:51:53.252-08:00</updated><title type='text'>Интересности.</title><content type='html'>Много писать не буду, так как спать уже собрался.&lt;br /&gt;&lt;br /&gt;Но чуть-чуть интересностей кину. Во-первых строках.... Короче, есть такая радость - http://easy.garage.maemo.org/ и делает это радость такой своего рода интерфейс верхнего уровня для мультимедии таблеток. Аля звук с микрофона забрать, да проиграть его потом, видео, фото, блютузы да жопарезы и всё в одном комплекте. Вся это радость работает под питоном. Так что имея на таблетке питон, скажем 2.5, и поставив этот пакет, можно будет управлять всем и вся прям не отходя от кассы. Одно только смутило - уж слишком оно всё "высокоуровневое", meaning that it's not for us.... Бр... точно спать пора. По-буржуски забатрачил чавости.... Не даёт эта штука снять просто уровень громкости скажем. А даёт только записать всё это в файл. Но и не мы пальцем деланны, поэтому переходим к пункту два.&lt;br /&gt;&lt;br /&gt;Пункт ДВА. Перешли! УРА!!! Есть такая программа maemo-recorder. Счас ссылкой брошусь - https://garage.maemo.org/projects/maemo-recorder/ - етати домашняя страница проэкта. А на маемо.орг, для установки - вот пожалуйте:&lt;br /&gt;http://maemo.org/downloads/product/OS2008/maemo-recorder/ не знаю, хотите ставте, хотите - нет. Дело то житейское. Запись с микрофона в разных форматах, жаль мп3 пока не пишет, хотя авторы и запланировали реализовать в скором будущем. По информации из форумов 70 минут звука с его помощью влезает в 6ти метровый файл. Как я понял, это благодаря гадкому 8кГц-му звуку. Хотя если его же с таблетки и играть, то вроде и ничего так будет... но суть то не в том. Нашлись исходники этой радости:&lt;br /&gt;http://repository.maemo.org/extras-devel/pool/diablo/free/source/m/maemo-recorder/&lt;br /&gt;Писанно на си. Просто, но со вкусом. А теперь зачем это всё нужно.&lt;br /&gt;&lt;br /&gt;Задался я тут вопросом о своём сне. Да, да... стар я уже стал, на пенсию пора скоро будет, как-никак через два месяца уже целых 26 годков стукнет... Сильно так стукнет видимо... Но не об этом сейчас.&lt;br /&gt;&lt;br /&gt;Сплю я значит, и думаю, а хорошо ли это я сплю?... Правильно ли?... И полез я тогда в интернет... после просыпания конечно же. И нашёл там пару систем, вроде SleepTracker Pro - часики такие с акселерометром. Думал на эту тему, но ничего так и не придумал. Готовых систем, кроме этой за $175, да ещё парочки не дешевле данной, вообщем ничего нету нормального, да по корману для студента. А с этих систем перепрыгнул на програмные HappyWakeUp для сотовых телефонов. Суть которой мониторинг громкости звука с микрафона телефона. Звук есть - значит клиент ворочается или бухтит что-то во сне. Значит клиент находиться в активной фазе сна, а значит его самое время будить, если он умудрился это сделать в нужный интервал времяни, скажем, в полчаса до заданного пробуждения. Идея... ну может и сработает... всякое же бывает. Только вот автор... морда европейская... денег просит, и даже шаравары не даёт попробовать... да и денег то 79 европейского эквивалента тубриков. Много вообщем. Так что, подитоживая.&lt;br /&gt;&lt;br /&gt;Написал я много, как оказалось, и не по сути. А суть такая, что на два дня я проподаю запускать симуляции с параллельными температурными обменами реплик с Марков цепями, будь они не ладны. А на выходных попробую сотворить свой эквивалент этого СчастливогоПРобуждения для таблетки. А вдруг я однажды тоже проснусь счастливым... Счастья полные штаны... Тьфу... не из той оперы. Всё! всем пока. Не помянайте лихом!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5194512230478960240-2542687224104256213?l=vadikus.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vadikus.blogspot.com/feeds/2542687224104256213/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://vadikus.blogspot.com/2009/02/blog-post.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5194512230478960240/posts/default/2542687224104256213'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5194512230478960240/posts/default/2542687224104256213'/><link rel='alternate' type='text/html' href='http://vadikus.blogspot.com/2009/02/blog-post.html' title='Интересности.'/><author><name>Vadi</name><uri>http://www.blogger.com/profile/10085350755249147652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5194512230478960240.post-3652025391555946082</id><published>2009-01-02T12:45:00.000-08:00</published><updated>2009-01-02T14:30:40.609-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='n810 temperature bash'/><title type='text'>Первый пост про температуру...</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_wUyvant5Jtc/SV6TRIGJ59I/AAAAAAAABE8/gWKMDKhBU-A/s1600-h/temp.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 278px;" src="http://2.bp.blogspot.com/_wUyvant5Jtc/SV6TRIGJ59I/AAAAAAAABE8/gWKMDKhBU-A/s400/temp.jpg" alt="" id="BLOGGER_PHOTO_ID_5286824935019898834" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Ну вот и наступил долгожданный 2009ый. За окном проливной дождь, и зарядил он так на несколько дней к ряду, если верить прогнозу погоды на моей таблетке (Nokia N810).&lt;br /&gt;&lt;br /&gt;Пару дней назад, когда она мне только пришла по почте - перерыл в ней просто кучу настроек и вроде даже настроил её, что называется, "под себя". Хотя, как мы знаем, это процесс бесконечный, и такого рода настройки могут ковыряться очень долго, а точнее до тех пор, пока не потеряется интерес ко всему происходящему.&lt;br /&gt;&lt;br /&gt;Так, пора уже и о самой теме начать писать. Поэтому плавно перехожу от погоды, к датчику внутренней температуры, которую нашёл я в этом самом плагине. Т.е. таблетка умеет выводить температуру на своём процессоре на экран. И возникла идея. Коли таблетка не сильно греется в режиме ожидания - значит показания этой температуры будут сильно походить на комнатную температуру, а следовательно можно будет проследить какая же у меня температура в комнате, пока я сплю.&lt;br /&gt;&lt;br /&gt;Пожалуй будет разумным сразу дать скрипт, который я использую, а потом можно будет разжевать что же он делает.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;#!/bin/bash&lt;br /&gt;begin=`date +%Y-%m-%d-%H-%M-%S`;&lt;br /&gt;while true;do&lt;br /&gt;tempr=$(cat /sys/devices/platform/i2c_omap.1/i2c-1/1-0048/temp1_input)&lt;br /&gt;echo "$(date +%Y/%m/%d-%H:%M:%S)   $(expr $tempr / 1000).$(expr $tempr % 1000)" &gt;&gt;$begin.dat&lt;br /&gt;sleep 60&lt;br /&gt;done&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Вот собственно оно и есть. А теперь по порядку...&lt;br /&gt;&lt;br /&gt;Я использую баш, т.к. ну уж очень сильно я к нему привык на работе. И как-то не могу придумать ничего лучше чем он. Хотя есть подозрение, что этот скрипт сработает и с родным шелом Н810.&lt;br /&gt;&lt;br /&gt;Так оно и есть. Для исторической справедливости я оставлю первую строчку, которая просто говорит системе какой шел (оболочку) система должна использовать для выполнения последующих команд. Но Вы, если у вас не стоит BASH шела, можете просто не включать эту строчку в скрипт - и он всё равно будет работать даже с таблеточным busybox'ом.&lt;br /&gt;&lt;br /&gt;Следующая строчка просто присваивает переменной begin значение строки в виде текущей даты. Сделал я это для того, что бы потом называть файлы, в которые пишутся данные, именно этим названием, т.е. датой. Так проще будет разобраться когда же данные записывались.&lt;br /&gt;&lt;br /&gt;Далее - мой любимый бесконечный цикл. =)&lt;br /&gt;&lt;br /&gt;В переменную tempr вчитывается значение температуры на процессоре. Именно эта строчка и есть сердце скрипта. Cat - команда вывода в терминал содержимого файла, указанного после этой команды. Т.е. в файле /sys/devices/platform/i2c_omap.1/i2c-1/1-0048/temp1_input храниться значение температуры процессора в цельсиях, умноженная на 1000. Т.е. например файл может содержать строку "23750", что будет означать текущую температуру процессора 23.75 градуса Цельсия.&lt;br /&gt;&lt;br /&gt;Последующая строка просто выводит результаты нескольких операций в файл. Echo "str" - выведет строку "str" в терминал; echo "str" &gt;&gt; filename - эта же команда перенаправить вывод текста в файл, причём &gt;&gt;, т.е. двойной знак больше говорит о том, что файл будет дописываться, одинарный же знак больше приведёт к тому, что файл будет перезаписываться каждый раз и как результат - в файле будет только одна строка.&lt;br /&gt;&lt;br /&gt;Команды в форме $(command) - выполняют команду указанную в скобках и выдают значение вывода команды как текстовую строку. Поэтому команда $(date +%Y/%m/%d-%H:%M:%S) просто выведет текущее значение времяни в указанном формате, т.е. год/месяц/день-час:минута:секунда. А т.к. это команда находиться внутри команды echo с перенаправлением в файл записи - то значит в файл запишиться текущее время в том формате, который мы запросили. Последующие две команды просто производят математические операции. Т.к. в файле температура записанна в 1000 раз больше, чем мы хотели бы, то разумно её поделить на эту самую тысячу. Первая команда просто выдаст целую часть от деления, а вторая его остаток.&lt;br /&gt;&lt;br /&gt;Sleep 60 - говорит скрипту поспать 60 секунд. Команда эта хорошая, тем что не нагружает никак процессор в это время. А скрипт просто пойдёт дальше выполнять свой while-цикл, после ожидания 60 секунд. Значение задержки можно поменять по вашему усмотрению.&lt;br /&gt;&lt;br /&gt;Done - это команда в паре с do говорит где начинается и заканчивается while цикл.&lt;br /&gt;&lt;br /&gt;Вот и всё. Скрипт готов и работает. Что бы его запустить - просто переходим в папку со скриптом, допустим вы назвали его как temp.sh, тогда команда запуска будет: sh temp.sh&lt;br /&gt;&lt;br /&gt;Скрипт начнёт работать, но не будет выводить ничего на экран... - скучно. Одно только хорошо, что его в любой момент можно прервать, нажав cntr+c.&lt;br /&gt;&lt;br /&gt;Но мы же люди граммотные, и можем запустить скрипт в фоновом режиме: sh temp.sh &amp;amp;&lt;br /&gt;&lt;br /&gt;Что бы его остановить - я поступаю следующим образом - запускаю ps из терминала. Эта команда показывает все запущенные процессы. Обычно к самому концу вывода программы я и обнаруживаю запущенный свой скрипт, например так:  6466 root       1916 SW  sh temp.sh&lt;br /&gt;Первое число - это PID процесса. Что бы закончить процесс набираем kill -9 6466. Т.е. мы убиваем процесс с параметром -9 и указываем какой процесс убивать его PIDом.&lt;br /&gt;&lt;br /&gt;Что бы вывести график температуры на рабочем компьютере (линуха на борту), я использовал стоящий почти везде gnuplot. Делаем следующее, т.к. все файлы писались с именами в виде "дата-время.dat", то копируем все эти файлы к себе на компьютер, например использую scp. Далее пишим все результаты в один файл (это не обязательно, просто я хотел посмотреть статистику за несколько дней). Команда:&lt;br /&gt;&lt;br /&gt;for i in *.dat;do cat $i &gt;&gt;temperature.all;done&lt;br /&gt;&lt;br /&gt;объединит все файлы с разрешением .dat в один файл - temperature.all.&lt;br /&gt;&lt;br /&gt;Далее, если на компьютере уже стоит gnuplot, то можно просто записать все нижеприведённые команды в файл, скажем plot.gnuplot и запустить командой gnuplot plot.gnuplot&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;set xdata time&lt;br /&gt;set timefmt "%Y/%m/%d-%H:%M:%S"&lt;br /&gt;set format x "%a-%H:%M"&lt;br /&gt;plot 'temperature.all' using 1:2 with boxes&lt;br /&gt;pause -1&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Чуть про этот файл по-подробнее: говорим gnuplot'у, что x данными является время. Вторая строка показывает в каком формате это врями записанно. Третья строка говорит в каком формате мы хоте ли бы видеть эти данные на графике. Далее само рисование данных из файла temperature.all использую первый и второй столбец, и рисовать будем "коробочками". Здесь так же можно использовать lines, points вместо boxes, кому как больше нравиться.&lt;br /&gt;Pause -1 просит gnuplot остаться интерактивной. Т.е. не закрываться. При этом можно будет поменять размеры окна, перерисовать его и т.д. - это уже на ваше усмотрение.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5194512230478960240-3652025391555946082?l=vadikus.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vadikus.blogspot.com/feeds/3652025391555946082/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://vadikus.blogspot.com/2009/01/blog-post.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5194512230478960240/posts/default/3652025391555946082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5194512230478960240/posts/default/3652025391555946082'/><link rel='alternate' type='text/html' href='http://vadikus.blogspot.com/2009/01/blog-post.html' title='Первый пост про температуру...'/><author><name>Vadi</name><uri>http://www.blogger.com/profile/10085350755249147652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_wUyvant5Jtc/SV6TRIGJ59I/AAAAAAAABE8/gWKMDKhBU-A/s72-c/temp.jpg' height='72' width='72'/><thr:total>1</thr:total></entry></feed>
