tag:blogger.com,1999:blog-29854922732678443532024-02-20T13:20:37.108+07:00RASPMERShare experience about Raspberry PIChanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.comBlogger19125tag:blogger.com,1999:blog-2985492273267844353.post-6377475825505609692019-03-05T08:00:00.000+07:002019-03-05T08:00:47.493+07:00Install font to LibreELEC or OpenELEC<b>How to install new font to LibreELEC or OpenELEC</b><br />
<br />
Login with root to LibreELEC or OpenELEC.<br />
<br />
<blockquote class="tr_bq">
# <i>mkdir -p /storage/.xbmc/media/Fonts</i></blockquote>
<blockquote class="tr_bq">
<i>or</i></blockquote>
<blockquote class="tr_bq">
<i># mkdir -p /storage/.kodi/media/Fonts</i></blockquote>
<br />
Upload truetype font to this path.<br />
<br />
Reboot again.<br />
<br />
<br />Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com0tag:blogger.com,1999:blog-2985492273267844353.post-87514431916086007992019-02-11T09:58:00.003+07:002021-09-02T23:09:40.557+07:00Control a cooling fan with gpio-fan (Device Tree Overlays)I want to setup a cooling fan and enable it at temperature greater then 55 °C.<br />
I found gpio-fan on device tree overlays.<br />
<br />
<blockquote class="tr_bq" style="white-space: pre-wrap;">
<pre style="white-space: pre-wrap;">Name: gpio-fan
Info: Configure a GPIO pin to control a cooling fan.
Load: dtoverlay=gpio-fan,<param>=<val>
Params: gpiopin GPIO used to control the fan (default 12)
temp Temperature at which the fan switches on, in
millicelcius (default 55000)</pre>
</blockquote>
<i>Reference: <a href="https://github.com/raspberrypi/firmware/tree/master/boot/overlays">https://github.com/raspberrypi/firmware/tree/master/boot/overlays</a></i><br />
<br />
<b>Step to Setup</b><br />
<b><br /></b>
1. Setup a cooling fan and NPN transistor (S8050).<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTFSQF97iOATWhf8g_tXMntK8o-ugU7poVIkiguNb1K87kZ_waMfLqXdVk_-VU9FZcTfGXe6zCgyLlnPPPkH-aKOgokZ7_bljMAChR69bakVs4FwfsX6ev3LIWG4EaQ1h75oFcmwYhwtyU/s1600/gpio-fan.png"><img border="0" height="179" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTFSQF97iOATWhf8g_tXMntK8o-ugU7poVIkiguNb1K87kZ_waMfLqXdVk_-VU9FZcTfGXe6zCgyLlnPPPkH-aKOgokZ7_bljMAChR69bakVs4FwfsX6ev3LIWG4EaQ1h75oFcmwYhwtyU/s320/gpio-fan.png" width="320" /></a><br />
<i>Reference:</i><br />
<br />
<ul>
<li><i>How to control a fan to cool the CPU of your RaspBerryPi<br /><a href="https://hackernoon.com/how-to-control-a-fan-to-cool-the-cpu-of-your-raspberrypi-3313b6e7f92c">https://hackernoon.com/how-to-control-a-fan-to-cool-the-cpu-of-your-raspberrypi-3313b6e7f92c</a></i></li>
</ul>
<br />
<br />
2. Add config device tree overlays on /boot/config.txt.<br />
<br />
<blockquote class="tr_bq">
dtoverlay=gpio-fan,gpiopin=12,temp=55000</blockquote>
<i>temp = 55000 is <span style="white-space: pre-wrap;">millicelcius</span></i><br />
<br />
3. Restart Raspberry PI<br />
<br />
After reboot success.<br />
<br />
Hope you enjoy with it.<br />
<br />
<br />
<b><span style="color: red;"><br /></span></b>
<b><span style="color: red;">If you don't want to use gpio-fan overlay.</span></b><br />
<br />
Create file on /home/pi/bin/temp_montior<br />
<br />
<blockquote class="tr_bq">
<blockquote class="tr_bq">
#!/bin/bash<br />
<br />
<span style="color: red;">GPIO_PIN=12</span><br />
<span style="color: red;"><br /></span>
<span style="color: red;">HIGH_TEMP=50000</span><br />
<span style="color: red;">SAVE_TEMP=45000</span><br />
<br />
function get_temp() {<br />
cat /sys/class/thermal/thermal_zone0/temp<br />
}<br />
<br />
function gpio_enable() {<br />
echo $1 > /sys/class/gpio/export<br />
}<br />
<br />
function gpio_disable() {<br />
echo $1 > /sys/class/gpio/unexport<br />
}<br />
<br />
function gpio_set_output() {<br />
echo out > /sys/class/gpio/gpio$1/direction<br />
}<br />
<br />
function gpio_set_input() {<br />
echo in > /sys/class/gpio/gpio$1/direction<br />
}<br />
<br />
function gpio_set_on() {<br />
echo 1 > /sys/class/gpio/gpio$1/value<br />
}<br />
<br />
function gpio_set_off() {<br />
echo 0 > /sys/class/gpio/gpio$1/value<br />
}<br />
<br />
function cleanup() {<br />
QUIT=1<br />
}<br />
<br />
QUIT=0<br />
<br />
#echo "Enable GPIO ${GPIO_PIN}"<br />
gpio_enable $GPIO_PIN<br />
<br />
#echo "Set GPIO ${GPIO_PIN} Output"<br />
gpio_set_output $GPIO_PIN<br />
<br />
#echo "set GPIO ${GPIO_PIN} on"<br />
#gpio_set_on $GPIO_PIN<br />
<br />
LASTSTATUS=0<br />
<br />
<br />
trap cleanup SIGINT SIGTERM<br />
<br />
while [ 1 ]; do<br />
cputemp=$(get_temp)<br />
#echo "CPU TEMP = $cputemp"<br />
if [ $LASTSTATUS = 0 ]; then<br />
if [ $cputemp -gt $HIGH_TEMP ]; then<br />
echo "FAN ON"<br />
echo "CPU TEMP = $cputemp"<br />
gpio_set_on $GPIO_PIN<br />
LASTSTATUS=1<br />
fi<br />
else<br />
if [ $cputemp -lt $SAVE_TEMP ]; then<br />
echo "FAN OFF"<br />
echo "CPU TEMP = $cputemp"<br />
gpio_set_off $GPIO_PIN<br />
LASTSTATUS=0<br />
fi<br />
fi<br />
if [ "$QUIT" = "1" ]; then break; fi<br />
sleep 1<br />
done<br />
<br />
#echo "set GPIO ${GPIO_PIN} off"<br />
gpio_set_off $GPIO_PIN<br />
<br />
#echo "Disable GPIO ${GPIO_PIN}"<br />
gpio_disable $GPIO_PIN</blockquote>
</blockquote>
<br />
<br />
Change mode for execute file<br />
<br />
<blockquote class="tr_bq">
$ chmod 755 /home/pi/bin/temp_montior</blockquote>
<br />
Add this script to startup.<br />
Edit /etc/rc.local and add line before exit 0<br />
<br />
<blockquote class="tr_bq">
$ sudo nano /etc/rc.local</blockquote>
<br />
<blockquote class="tr_bq">
...<br />
/home/pi/bin/temp_monitor &<br />
...<br />
exit0</blockquote>
<br />
You can change GPIO_PIN, HIGH_TEMP and SAVE_TEMP for gpio pin, start and stop fan<br />
<br />
<br />
<pre style="white-space: pre-wrap;"></pre>
<pre style="white-space: pre-wrap;"></pre>
<pre style="white-space: pre-wrap;"></pre>
Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com6tag:blogger.com,1999:blog-2985492273267844353.post-59916729007408681102018-09-25T09:59:00.001+07:002019-07-08T16:28:32.199+07:00Shutdown Button with Device Tree OverlaysI want to create shutdown button for raspberry pi.<br />
<div>
I found <span style="white-space: pre-wrap;">gpio-shutdown parameter for enable Device Tree Overlays on new firmware.</span></div>
<div>
<span style="white-space: pre-wrap;"><br /></span></div>
<blockquote class="tr_bq">
<pre style="white-space: pre-wrap;">Name: gpio-shutdown
Info: Initiates a shutdown when GPIO pin changes. The given GPIO pin
is configured as an input key that generates KEY_POWER events.
This event is handled by systemd-logind by initiating a
shutdown. Systemd versions older than 225 need an udev rule
enable listening to the input device:
ACTION!="REMOVE", SUBSYSTEM=="input", KERNEL=="event*", \
SUBSYSTEMS=="platform", DRIVERS=="gpio-keys", \
ATTRS{keys}=="116", TAG+="power-switch"
This overlay only handles shutdown. After shutdown, the system
can be powered up again by driving GPIO3 low. The default
configuration uses GPIO3 with a pullup, so if you connect a
button between GPIO3 and GND (pin 5 and 6 on the 40-pin header),
you get a shutdown and power-up button.
Load: dtoverlay=gpio-shutdown,<param>=<val>
Params: gpio_pin GPIO pin to trigger on (default 3)
active_low When this is 1 (active low), a falling
edge generates a key down event and a
rising edge generates a key up event.
When this is 0 (active high), this is
reversed. The default is 1 (active low).
gpio_pull Desired pull-up/down state (off, down, up)
Default is "up".
Note that the default pin (GPIO3) has an
external pullup.</pre>
</blockquote>
<i>Reference: <a href="https://github.com/raspberrypi/firmware/tree/master/boot/overlays">https://github.com/raspberrypi/firmware/tree/master/boot/overlays</a></i><br />
<br />
<br />
<b>Step to create shutdown switch</b><br />
<br />
<ul>
<li>Connect switch to GPIO3.</li>
</ul>
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVoX3v8VtDcvengNopt9x92e8sONvVpZF-J1VvnNsM6huA4ZLxrApwbYcE215lwn41A5Z3JHp0i_uSr7WTgbd2o9rYpTRN30JpKeYe__2t3d-CEcmaOnph0e9m4yiet9YvIww6vp5od8Vy/s1600/shutdown_btn.png" imageanchor="1"><img border="0" height="492" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVoX3v8VtDcvengNopt9x92e8sONvVpZF-J1VvnNsM6huA4ZLxrApwbYcE215lwn41A5Z3JHp0i_uSr7WTgbd2o9rYpTRN30JpKeYe__2t3d-CEcmaOnph0e9m4yiet9YvIww6vp5od8Vy/s640/shutdown_btn.png" width="640" /></a><br />
<br />
<br />
<br />
<ul>
<li>Add config device tree overlays on /boot/config.txt.</li>
</ul>
<br />
<br />
<blockquote class="tr_bq">
dtoverlay=gpio-shutdown,gpio_pin=3,active_low=1,gpio_pull=up</blockquote>
<br />
<br />
<ul>
<li> Create file /etc/udev/rules.d/99-gpio-power.rules</li>
</ul>
<br />
<br />
<blockquote class="tr_bq">
<pre style="white-space: pre-wrap;">ACTION!="REMOVE", SUBSYSTEM=="input", KERNEL=="event*", \
SUBSYSTEMS=="platform", DRIVERS=="gpio-keys", \
ATTRS{keys}=="116", TAG+="power-switch"</pre>
</blockquote>
<br />
<br />
<ul>
<li>And restart raspberry pi.</li>
</ul>
<br />
<br />
After reboot success. I try to push switch.<br />
It works ;). My raspberry pi is shutdown.<br />
<br />
Hope to help you.<br />
<br />
<span style="color: red;">*** I2C must be deactivated if you use pin 3. (Thank you <a href="https://www.blogger.com/profile/15310624889098856820" rel="nofollow" style="background-color: white; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 12px; font-weight: 700; text-decoration-line: none;">@Irmoreno007</a>)</span><br />
<br />Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com2tag:blogger.com,1999:blog-2985492273267844353.post-59844636747588648702018-07-25T15:29:00.002+07:002018-07-25T17:17:30.085+07:00Mantistek WA150 (WIFI+Bluetooth) RTL8723BUI buy Mantistek WA150 to use on Raspberry PI. It has both WIFI and Bluetooth.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7bvwA30KMqY5l9k3eZwpMVfcrUFsqLhyphenhyphenrW16g3LBhIh8NK1bbT0LmDTHf_pefytSphL9LV-W4lQ4av6iw5I8y82fFLJNLcp2nwa3kU4jwqdZ9Bhxj2hxLWKGsgYqaJLdYlGw_Wl3NAXhv/s1600/Mantistek_WA150_1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="366" data-original-width="213" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7bvwA30KMqY5l9k3eZwpMVfcrUFsqLhyphenhyphenrW16g3LBhIh8NK1bbT0LmDTHf_pefytSphL9LV-W4lQ4av6iw5I8y82fFLJNLcp2nwa3kU4jwqdZ9Bhxj2hxLWKGsgYqaJLdYlGw_Wl3NAXhv/s320/Mantistek_WA150_1.png" width="186" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1Rbh0Set4j5fc1KK6q1JgL9i2jdPiBo6U_HJUJf3GOadVC6PN03oAc8lE_AgWmjmp7dqoPjDPZwpi5zhF26KYNkhaPYu3sZPlqW3L0fNQ3K5kBO92EREfc0lwdMmvcpQ9Sad5v53DK5nB/s1600/Mantistek_WA150_2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="323" data-original-width="324" height="318" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1Rbh0Set4j5fc1KK6q1JgL9i2jdPiBo6U_HJUJf3GOadVC6PN03oAc8lE_AgWmjmp7dqoPjDPZwpi5zhF26KYNkhaPYu3sZPlqW3L0fNQ3K5kBO92EREfc0lwdMmvcpQ9Sad5v53DK5nB/s320/Mantistek_WA150_2.png" width="320" /></a></div>
<br />
<br />
The raspbian kernel version 4.14.52+ #1123. It hasn't driver to use it.<br />
<br />
I use command.<br />
<br />
<blockquote class="tr_bq">
$ <i>dmesg</i></blockquote>
<br />
I found. Raspbian can detect bluetooth device but it isn't have firmware. (rtl8723b_fw.bin)<br />
<br />
<blockquote class="tr_bq">
<i>[ 14.665558] bluetooth hci0: Direct firmware load for rtl_bt/<span style="color: red;">rtl8723b_config.bin</span> failed with error -2<br />[ 14.665824] bluetooth hci0: Direct firmware load for rtl_bt/<span style="color: red;">rtl8723b_fw.bin</span> failed with error -2<br />[ 14.665842] Bluetooth: hci0: Failed to load rtl_bt/rtl8723b_fw.bin</i></blockquote>
<br />
I use command for check usb device id.<br />
<br />
<blockquote class="tr_bq">
$ <i>lsusb</i></blockquote>
I found.<br />
<blockquote class="tr_bq">
<i>Bus 001 Device 004: ID <span style="color: blue;">0bda:b720</span> <span style="color: purple;">Realtek Semiconductor Corp</span>.</i></blockquote>
<br />
The USB Device ID is <b>0bda:b720</b>.<br />
<br />
I search device id for identify device. I found <b><span style="color: blue;">RTL8723BU</span></b> (not <span style="color: red;">RTL8723AU</span>).<br />
<br />
I found driver and firmware.<br />
<br />
<u>WIFI Driver (Source code)</u><br />
<br />
<ul>
<li><a href="https://github.com/lwfinger/rtl8723bu">https://github.com/lwfinger/rtl8723bu</a></li>
</ul>
<br />
<u>Bluetooth Firmware</u><br />
<br />
<ul>
<li><a href="https://github.com/lwfinger/rtl8723au_bt/">https://github.com/lwfinger/rtl8723au_bt/</a></li>
</ul>
<br />
<br />
<b>Install Step</b><br />
First step. Install linux kernel header package and other package for raspbian.<br />
<blockquote class="tr_bq">
$ <i>sudo apt-get install raspberrypi-kernel-headers git build-essential</i></blockquote>
<br />
Create directory for build source and download source code<br />
<br />
<blockquote class="tr_bq">
$ <i>mkdir drivers</i><br />
$ <i>cd drivers</i></blockquote>
<br />
Install RTL8723BU WIFI Driver<br />
<blockquote class="tr_bq">
$ <i>git clone https://github.com/lwfinger/rtl8723bu.git</i><br />
$ <i>cd rtl8723bu</i></blockquote>
<br />
Disable Concurrent Mode<br />
<blockquote class="tr_bq">
$ <i>sed -i "s/^EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE/#EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE/g" Makefile</i></blockquote>
<br />
Build and Install<br />
<blockquote class="tr_bq">
$ <i>make</i><br />
$ <i>sudo make install</i></blockquote>
<br />
Disable power save<br />
<blockquote class="tr_bq">
$ <i>echo "options 8723bu rtw_power_mgnt=0 rtw_enusbss=0" | sudo tee /etc/modprobe.d/8723bu.conf</i></blockquote>
<br />
Install RTL8723B Bluetooth Driver<br />
<br />
<blockquote class="tr_bq">
$ <i>git clone https://github.com/lwfinger/rtl8723au_bt.git</i><br />
$ <i>cd rtl8723au_bt/Linux_BT_USB_2.11.20140423_8723BE/8723B</i><br />
$ <i>sudo cp rtl8723b_config /lib/firmware/rtl_bt/rtl8723b_config.bin</i><br />
$ <i>sudo cp rtl8723b_fw /lib/firmware/rtl_bt/rtl8723b_fw.bin</i></blockquote>
<br />
And restart raspberry pi<br />
<br />
Test bluetooth scan with command.<br />
<br />
<blockquote class="tr_bq">
$ <i>hcitool scan</i></blockquote>
<blockquote class="tr_bq">
<i>Scanning ...<br /> XX:XX:XX:XX:XX:XX xxxxxx<br /> XX:XX:XX:XX:XX:XX xxxxxx</i></blockquote>
<br />
It work.<br />
<br />
And check WIFI interface with command.<br />
<br />
<blockquote class="tr_bq">
$ <i>ifconfig</i></blockquote>
<br />
It work. I found wlan0 interface.<br />
<br />
<blockquote class="tr_bq">
<i>wlan0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500<br /> ether xx:xx:xx:xx:xx:xx txqueuelen 1000 (Ethernet)<br /> RX packets 17 bytes 0 (0.0 B)<br /> RX errors 0 dropped 80 overruns 0 frame 0<br /> TX packets 0 bytes 0 (0.0 B)<br /> TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0</i></blockquote>
<br />
And try to config wpa_supplicant-wlan0.conf for wlan0 interface<br />
<br />
<blockquote class="tr_bq">
$ <i>echo -e "ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev\nupdate_config=1\ncountry=TH\n\n" | sudo tee /etc/wpa_supplicant/wpa_supplicant-wlan0.conf</i></blockquote>
Add SSID and Password of Accesspoint to wpa_supplicant config file<br />
<blockquote class="tr_bq">
$ <i>wpa_passphrase test 12345678 | sudo tee -a /etc/wpa_supplicant/wpa_supplicant-wlan0.conf</i></blockquote>
<br />
And restart raspbian. Finish step.<br />
<br />
Have a good day everyone. 😎<br />
<br />
<br />
<br />
<b>Reference:</b><br />
WIFI Driver (Source code)<br />
<ul>
<li><a href="https://github.com/lwfinger/rtl8723bu">https://github.com/lwfinger/rtl8723bu</a></li>
</ul>
Bluetooth Firmware<br />
<ul>
<li><a href="https://github.com/lwfinger/rtl8723au_bt/">https://github.com/lwfinger/rtl8723au_bt</a></li>
</ul>
<div>
Realtek RTL8723BU</div>
<div>
<ul>
<li><a href="http://www.realtek.com/products/productsView.aspx?Langid=1&PNid=21&PFid=59&Level=5&Conn=4&ProdID=373">http://www.realtek.com/products/productsView.aspx?Langid=1&PNid=21&PFid=59&Level=5&Conn=4&ProdID=373</a></li>
</ul>
</div>
<div>
<br /></div>
<div>
<br /></div>
Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com1tag:blogger.com,1999:blog-2985492273267844353.post-39816622580804664472017-10-11T23:34:00.000+07:002017-10-11T23:34:52.328+07:00motionEyeOS (Raspberry PI) push video and image to dropboxmotionEyeOS can send video and image to cloud storage (Google Drive and Dropbox)<br />
<br />
This topic will storage them to Dropbox.<br />
<br />
<br />
<ul>
<li>Login to motionEyeOS</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgvhg3zYfeXjfcAAlY0dF2Lzwjsl07YE1qHJnQbZs6rUYJbMex6YuXrk5a2hryKiQHr6yj5_NnfIdBr-Un0AftUnQ1IYsXtSyT6MG7-IFrvSaIeD4m-xAdC0DBtEUSGR96K0pw1ye7ahAKZ/s1600/motioneyeos01.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="239" data-original-width="435" height="175" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgvhg3zYfeXjfcAAlY0dF2Lzwjsl07YE1qHJnQbZs6rUYJbMex6YuXrk5a2hryKiQHr6yj5_NnfIdBr-Un0AftUnQ1IYsXtSyT6MG7-IFrvSaIeD4m-xAdC0DBtEUSGR96K0pw1ye7ahAKZ/s320/motioneyeos01.png" width="320" /></a></div>
<div>
<br /></div>
<ul>
<li>Select File Storage Section</li>
<li>Enable Upload Media Files, Upload Pictures and Upload Movies</li>
<li>On Upload Service. Select Dropbox.</li>
<li>On Location. Select Folder on Dropbox for save video and image. (If don't have folder, go to dropbox create new folder before config motionEyeOS)</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxLQe1rcXhuaSAx1_LYhk4skE-Oi3t11QY8j56lafmENUNAHB2Tlvivz-7sd9vdOVN3gIWJg-vwL9_phxZQtXv-lH3O1eN7KgfaGYkOhOLW_jJmYiKR4fJGmZk0fMaoVgLwOUBnqYFE17h/s1600/motioneyeos09.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="429" data-original-width="467" height="293" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxLQe1rcXhuaSAx1_LYhk4skE-Oi3t11QY8j56lafmENUNAHB2Tlvivz-7sd9vdOVN3gIWJg-vwL9_phxZQtXv-lH3O1eN7KgfaGYkOhOLW_jJmYiKR4fJGmZk0fMaoVgLwOUBnqYFE17h/s320/motioneyeos09.png" width="320" /></a></div>
<div>
<br /></div>
<ul>
<li>Click on Obtain Key. It will go to Dropbox for generate Authorization key.</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglbOlKBckQVqS67Y-Cl-KPbXTNrROWHWtvoibgUohumhxpnCtlFhR1S8mCM_oKeP3of2E_XHRozM-A1P2PApibwdEONkQGxcjk-eLLLFC60CC1bnb6coDbl8frPks5O7CMLxEthGuKd5fJ/s1600/motioneyeos10.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="344" data-original-width="617" height="178" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglbOlKBckQVqS67Y-Cl-KPbXTNrROWHWtvoibgUohumhxpnCtlFhR1S8mCM_oKeP3of2E_XHRozM-A1P2PApibwdEONkQGxcjk-eLLLFC60CC1bnb6coDbl8frPks5O7CMLxEthGuKd5fJ/s320/motioneyeos10.png" width="320" /></a></div>
<div>
<br /></div>
<ul>
<li>Allow Authorization. and copy Authorization key.</li>
<li>Enter Authorization key on Authorization key form and click Test service button</li>
<li>After success. click on apply for save all config. </li>
</ul>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLcSyJ1gksO5D2yYTd3aKVW-A1Olk06Tauhc9nmT4fZqmbUww1y5NjiSS5CV1xDwB4RRWNcrlLp_dxH1ge8BVX44U5TTXHlhq1IsvkFgjt9LtzH_lEzTrv62VTztCtSzCfWWIq7XnTce_t/s1600/motioneyeos08.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="54" data-original-width="619" height="27" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLcSyJ1gksO5D2yYTd3aKVW-A1Olk06Tauhc9nmT4fZqmbUww1y5NjiSS5CV1xDwB4RRWNcrlLp_dxH1ge8BVX44U5TTXHlhq1IsvkFgjt9LtzH_lEzTrv62VTztCtSzCfWWIq7XnTce_t/s320/motioneyeos08.png" width="320" /></a></div>
<br />
If you enable Motion Detection for record video or save images, after record finish or save images finish. It will push video and image push to Dropbox automatic.<br />
<br />
Hope you enjoy with it. 😊<br />
<br />Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com0tag:blogger.com,1999:blog-2985492273267844353.post-44000544303493684762017-10-10T23:49:00.003+07:002017-10-11T23:49:37.704+07:00motionEyeOS (Raspberry PI) notification via LINE Notify<span style="font-size: x-large;">motionEyeOS (CCTV Software)</span><br />
<br />
<b>motionEyeOS is A Video Surveillance OS For Single-board Computers</b><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkOO1vYxSDmZ7vU35FCc2SmCfuSXyVXB_8Paq5a2V0zJGRAdtDUFKBTDSGXaMv4wVARuC50bdhJQerLTxKRDZfmOuODi2jiRrzG7yl47u0cmma97m6t1pLfOfr56wXP8fIGuSI_DUbovSU/s1600/345052.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="853" data-original-width="480" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkOO1vYxSDmZ7vU35FCc2SmCfuSXyVXB_8Paq5a2V0zJGRAdtDUFKBTDSGXaMv4wVARuC50bdhJQerLTxKRDZfmOuODi2jiRrzG7yl47u0cmma97m6t1pLfOfr56wXP8fIGuSI_DUbovSU/s320/345052.jpg" width="180" /></a></div>
<br />
<br />
motionEyeOS Source: <a href="https://github.com/ccrisan/motioneyeos">https://github.com/ccrisan/motioneyeos</a><br />
motionEye Source: <a href="https://github.com/ccrisan/motioneye">https://github.com/ccrisan/motioneye</a><br />
<br />
Download motionEyeOS Image: <a href="https://github.com/ccrisan/motioneyeos/releases">https://github.com/ccrisan/motioneyeos/releases</a><br />
<br />
motionEyeOS Wiki: <a href="https://github.com/ccrisan/motioneyeos/wiki">https://github.com/ccrisan/motioneyeos/wiki</a><br />
<br />
How to install can see at Raspberry PI Spy (<a href="https://www.raspberrypi-spy.co.uk/2017/04/raspberry-pi-zero-w-cctv-camera-with-motioneyeos/">https://www.raspberrypi-spy.co.uk/2017/04/raspberry-pi-zero-w-cctv-camera-with-motioneyeos/</a>)<br />
<br />
<br />
<b>LINE Instant Messager</b><br />
<b><br /></b>
LINE Notify Service: <a href="https://notify-bot.line.me/en/">https://notify-bot.line.me/en/</a><br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<ul>
<li>Login with LINE Account</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2F1WuQ7Y94CRd1iaibshlzV_Qwf6FmUPM0qLMG8oD-cf2TZBwL3KxCPVM_z6A_jDzmFj3JHM7qhnLJOyxSuaXatZSJQhYD7k_oz-_SF4WS7U8JtQh_3wSjlHpMH1C-zHko-JEAtlgkNMi/s1600/linenotify1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="420" data-original-width="470" height="285" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2F1WuQ7Y94CRd1iaibshlzV_Qwf6FmUPM0qLMG8oD-cf2TZBwL3KxCPVM_z6A_jDzmFj3JHM7qhnLJOyxSuaXatZSJQhYD7k_oz-_SF4WS7U8JtQh_3wSjlHpMH1C-zHko-JEAtlgkNMi/s320/linenotify1.png" width="320" /></a></div>
<div>
<br /></div>
<ul>
<li>Select menu <i>My page</i></li>
</ul>
<i></i><br />
<div class="separator" style="clear: both; text-align: center;">
<i><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgiiKN_uacP6QDNydkzGRiGTk-gl4MtBuEL8I5JYPGoYi56suStfgX1jpPjn6LdnrFXrJf5HFrl74w7fWRjKRSuR6nC_M_nwO4jHNrUzSAv43MsP-HImgJ5MenclCIc7njnL8aWiDJMOar/s1600/linenotify2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="264" data-original-width="1040" height="81" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgiiKN_uacP6QDNydkzGRiGTk-gl4MtBuEL8I5JYPGoYi56suStfgX1jpPjn6LdnrFXrJf5HFrl74w7fWRjKRSuR6nC_M_nwO4jHNrUzSAv43MsP-HImgJ5MenclCIc7njnL8aWiDJMOar/s320/linenotify2.png" width="320" /></a></i></div>
<i>
</i>
<br />
<div>
<i><i><br /></i></i></div>
<i>
</i>
<br />
<ul>
<li>Select <i>Generate Token</i> button</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgs_cH1FXrMRbdrXCJuZCXcQBEHrCMicRuKSTKMe9-ulcfKgSyU1EbugqcVgjpkIwJ9PklyCiX_awrSENKEVYCii7jZp0RMdK1sBSpAeRjyCZbahlABLWVMprTgRznUPHFWUZLFBC8nYltE/s1600/linenotify3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="377" data-original-width="875" height="137" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgs_cH1FXrMRbdrXCJuZCXcQBEHrCMicRuKSTKMe9-ulcfKgSyU1EbugqcVgjpkIwJ9PklyCiX_awrSENKEVYCii7jZp0RMdK1sBSpAeRjyCZbahlABLWVMprTgRznUPHFWUZLFBC8nYltE/s320/linenotify3.png" width="320" /></a></div>
<div>
<br /></div>
<ul>
<li>Enter token name and <i>select 1-on-1 chat with LINE Notify</i> or <i>Group</i> for send notification</li>
<li>Select Generate Token button</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBdoWguXFHB40PaLfPQwFoSa1n-KDJJY9mJ-w1fwoY6cKH8sK_8ElJW9r_QwQsSpPGKeBttcscQFwETiMDfOHivAwIWPbCsGHY3Z_mWtnLffO5bQcXSC6CwopbyOwqcmHANEQB0Gc2vLf0/s1600/linenotify4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="720" data-original-width="513" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBdoWguXFHB40PaLfPQwFoSa1n-KDJJY9mJ-w1fwoY6cKH8sK_8ElJW9r_QwQsSpPGKeBttcscQFwETiMDfOHivAwIWPbCsGHY3Z_mWtnLffO5bQcXSC6CwopbyOwqcmHANEQB0Gc2vLf0/s320/linenotify4.png" width="228" /></a></div>
<div>
<br /></div>
<ul>
<li>I will show token for send notification. copy it. and select close button</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFp7oRxEv3219i_pkZ8UxYy_Dh2HSJtEBn5L0GMb8DWbv0QEVmLnPhFgULKVyM_ynfSbXlxF4SHznCQiNMNdV4TdLn2YcEroe7IvUoZLp0mCVdg7mepO56DqvQ5S6SnsQj8t1kq0SP7y1c/s1600/linenotify5.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="456" data-original-width="523" height="279" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFp7oRxEv3219i_pkZ8UxYy_Dh2HSJtEBn5L0GMb8DWbv0QEVmLnPhFgULKVyM_ynfSbXlxF4SHznCQiNMNdV4TdLn2YcEroe7IvUoZLp0mCVdg7mepO56DqvQ5S6SnsQj8t1kq0SP7y1c/s320/linenotify5.png" width="320" /></a></div>
<div>
<br /></div>
<ul>
<li>In LINE Instant Messenger will have LINE Notify Account add to you. </li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj6rUS4txqZs4Ha7gUWhH86D4FACTYWziCrQsMZPn_ORQMluFgjASgeUw8WXH898RvaWzeuu9BY5_uKKht8MBXrSbXz2cPpiCVFtnhsgtOLLBZaCmtPF8a-OuotvUzfGb-p8FJ42JFi3VL1/s1600/linenotify6.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="240" data-original-width="656" height="117" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj6rUS4txqZs4Ha7gUWhH86D4FACTYWziCrQsMZPn_ORQMluFgjASgeUw8WXH898RvaWzeuu9BY5_uKKht8MBXrSbXz2cPpiCVFtnhsgtOLLBZaCmtPF8a-OuotvUzfGb-p8FJ42JFi3VL1/s320/linenotify6.png" width="320" /></a></div>
<br />
<br />
Test send notify with curl<br />
<blockquote class="tr_bq">
<pre style="background: rgb(246, 246, 246); color: #31333f; font-family: Monaco, "Courier New", fixed, monospace; font-size: 16px; line-height: 28px; margin-bottom: 2.5em; margin-top: 0.8em; padding: 20px; white-space: pre-wrap; word-wrap: break-word;"><code style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; font-family: Monaco, "Courier New", fixed, monospace; font-size: 14px; line-height: 23px; margin: 0.8em 0px 2.5em; padding: 0px 3px; word-wrap: break-word;">curl -k -X POST -H 'Authorization: Bearer [access_token]' -F 'message=hello' https://
notify-api.line.me/api/notify</code></pre>
</blockquote>
After run this curl command. You will receive message 'Hello' to LINE Instant Messenger via LINE Notify<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh43NTXfFuDJXzNpgwGT3sSUfHVPYcXIcyPzhdY4NVGBzMsylukZgSdF3FQRDXf6fIABgB2poc5kTr15Y5etiJJb4_hvrWwQMQueZGYNLH83WVxf2ajkREyWw3NCMPpzXNoOuA9cR8kzErt/s1600/linenotify7.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="507" data-original-width="401" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh43NTXfFuDJXzNpgwGT3sSUfHVPYcXIcyPzhdY4NVGBzMsylukZgSdF3FQRDXf6fIABgB2poc5kTr15Y5etiJJb4_hvrWwQMQueZGYNLH83WVxf2ajkREyWw3NCMPpzXNoOuA9cR8kzErt/s320/linenotify7.png" width="253" /></a></div>
<br />
<br />
If you want to send Message and Image to LINE Instant Messager, you can curl with this command.<br />
<br />
<blockquote class="tr_bq">
<pre style="background: rgb(246, 246, 246); color: #31333f; font-family: Monaco, "Courier New", fixed, monospace; font-size: 16px; line-height: 28px; margin-bottom: 2.5em; margin-top: 0.8em; padding: 20px; white-space: pre-wrap; word-wrap: break-word;"><code style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; font-family: Monaco, "Courier New", fixed, monospace; font-size: 14px; line-height: 23px; margin: 0.8em 0px 2.5em; padding: 0px 3px; word-wrap: break-word;">curl -k -X POST -H 'Authorization: Bearer [access_token]' -F 'message=hello' -F 'imageFile=@[**file path to image]' https://
notify-api.line.me/api/notify</code></pre>
</blockquote>
<i>**file path to image = Image file Supported image format is png and jpeg</i><br />
Image will upload to server for send notification.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWDi9oRNm0pl5X25xETZ7TEbEmWun9XFZPrpyzNr2ztKOqhdq_BUhPlShQ0qcqdND2CIPmttZTvTz78c-AdZIlmA6XpPPT_iqknwMz9doCi-nYrD6lPqXVe_Ctu9XCIRbnNlz4nKnKaFgz/s1600/linenotify7.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="456" data-original-width="387" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWDi9oRNm0pl5X25xETZ7TEbEmWun9XFZPrpyzNr2ztKOqhdq_BUhPlShQ0qcqdND2CIPmttZTvTz78c-AdZIlmA6XpPPT_iqknwMz9doCi-nYrD6lPqXVe_Ctu9XCIRbnNlz4nKnKaFgz/s320/linenotify7.png" width="271" /></a></div>
<br />
<br />
<u>More Information</u><br />
LINE Notify API Document: <i>https://notify-bot.line.me/doc/en/</i><br />
LINE Engineer Blog: <i>https://engineering.linecorp.com/en/blog/detail/88</i><br />
<br />
<br />
<span style="font-size: large;"><b>Create script for send notification on motionEyeOS</b></span><br />
<br />
<ul>
<li>create directory /data/script with command</li>
</ul>
<blockquote class="tr_bq">
mkdir /data/script</blockquote>
<div>
<ul>
<li>create shell script</li>
</ul>
<div>
File: /data/script/linenotify_push.sh</div>
<div>
<br /></div>
<blockquote class="tr_bq">
#!/bin/bash<br />
curl -k -X POST -H 'Authorization: Bearer [access_token]' -F "message=$1" https://<br />
notify-api.line.me/api/notify</blockquote>
<br />
File: /data/script/linenotify_pushimage.sh<br />
<br />
<blockquote class="tr_bq">
#!/bin/bash<br />
curl -k -X POST -H 'Authorization: Bearer [access_token]' -F "message=$1" -F "imageFile=@$2" https://<br />
notify-api.line.me/api/notify</blockquote>
<br />
<ul>
<li>change mode of file to executable file.</li>
</ul>
<br />
<blockquote class="tr_bq">
chmod 755 linenotify_push.sh<br />
chmod 755 linenotify_pushimage.sh</blockquote>
<br />
<u>Test script file</u><br />
<u><br /></u>
<br />
<blockquote class="tr_bq">
/data/script/linenotify_push.sh "Good world"</blockquote>
<br />
It will receive "Good world" message at LINE Instant Message<br />
<br />
<blockquote class="tr_bq">
/data/script/linenotify_pushimage.sh "Good Job" "/data/output/Camera1/test.jpg"</blockquote>
<br />
It will receive "Good Job" message and test.jpg image at LINE Instant Message.<br />
<br />
Now. You can run script for sent notification.<br />
<br />
<br />
<u><b>Use notification script at motionEyeOS</b></u><br />
<br />
<ul>
<li>Login on motionEyeOS</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_cYqofKxn1LuSHNhDhTwN82yU52qcT-nP2PV7dUm8cPxwisO1VEWfL2lGzXkqWL14LsFbZVy4K7KK3pMi66xRfu2m1Ti3XOdQUmciYcQlSr6eh28yCiRayzTFc2joBEcd4acVk54nnv3r/s1600/motioneyeos01.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="239" data-original-width="435" height="175" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_cYqofKxn1LuSHNhDhTwN82yU52qcT-nP2PV7dUm8cPxwisO1VEWfL2lGzXkqWL14LsFbZVy4K7KK3pMi66xRfu2m1Ti3XOdQUmciYcQlSr6eh28yCiRayzTFc2joBEcd4acVk54nnv3r/s320/motioneyeos01.png" width="320" /></a></div>
<div>
<br /></div>
<ul>
<li>Go to Motion Notifications section</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0kNRvaMaGZqK9zwP9u8ZS4jEagQBiFH7ov4nTmc2yAlZ8JopA91-8iKMuYuJYP5QM84Z5V-F3m1XToaDwRccmUxTu-1jLHzczV-gXhioA1RwXjcUMM6LRLkvKLhUZ3pdvABcM6p1J8Pb5/s1600/motioneyeos02.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="75" data-original-width="565" height="42" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0kNRvaMaGZqK9zwP9u8ZS4jEagQBiFH7ov4nTmc2yAlZ8JopA91-8iKMuYuJYP5QM84Z5V-F3m1XToaDwRccmUxTu-1jLHzczV-gXhioA1RwXjcUMM6LRLkvKLhUZ3pdvABcM6p1J8Pb5/s320/motioneyeos02.png" width="320" /></a></div>
<div>
<br /></div>
<ul>
<li>Enable Run A Command (Send notification if motionEyeOS detect motion on camera)</li>
<li>On command box enter command</li>
</ul>
<br />
<blockquote class="tr_bq">
/data/script/linenotify_push.sh "Motion Detect at %Y-%m-%d %H-%M-%S"</blockquote>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_34nZ6TQmvmnmcz91a8KABFk49-ghVB0PPQz-HYQdy-2p1F6dfH96DN28L7zaIdu4Vwrr-TFLVzyrW_EevNHIsyqd_r9D39U3uyqadmYN1BzQkdnBLkaXZGzypBcVOvGG2OrumIXjOs1t/s1600/motioneyeos03.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="308" data-original-width="526" height="187" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_34nZ6TQmvmnmcz91a8KABFk49-ghVB0PPQz-HYQdy-2p1F6dfH96DN28L7zaIdu4Vwrr-TFLVzyrW_EevNHIsyqd_r9D39U3uyqadmYN1BzQkdnBLkaXZGzypBcVOvGG2OrumIXjOs1t/s320/motioneyeos03.png" width="320" /></a></div>
<br />
<ul>
<li>(Option) If you want to send notification after finish motion detect, Enable Run An End Command and enter command.</li>
</ul>
<br />
<blockquote class="tr_bq">
/data/script/linenotify_push.sh "Motion Detect End at %Y-%m-%d %H-%M-%S"</blockquote>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_Fy6KWlW18OATHafv5SF4TpcTpA8rvTCSn1vOauwxuxvc41F6ue_MkMBhi4rKBQq8RTeacdSBDFnw47PlZy02w4quczLhc9bJoAD9Eh7iWQAI60kOj1Cm77sR6ov7RPN58LnCiuhI68ze/s1600/motioneyeos04.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="256" data-original-width="506" height="161" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_Fy6KWlW18OATHafv5SF4TpcTpA8rvTCSn1vOauwxuxvc41F6ue_MkMBhi4rKBQq8RTeacdSBDFnw47PlZy02w4quczLhc9bJoAD9Eh7iWQAI60kOj1Cm77sR6ov7RPN58LnCiuhI68ze/s320/motioneyeos04.png" width="320" /></a></div>
<br />
<ul>
<li>If you want to send image of motion detect, go to Still Images section.</li>
<li>Select capture mode to Motion Triggered or Motion Triggered (One Picture).</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1Di1wfVbvBCoMgfE_kDs7g8aUXHbxZp3N-EZvzVDBf4UZR6PpNH7NcDX_9-JYrvUG27GfPX5_QmtSHysP2Oll3fNXIPmuklraeZ5hHji-qZaA_6pgM2bNz0eGG7-t5QVqYIeG5acZ7R3Q/s1600/motioneyeos06.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="224" data-original-width="522" height="137" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1Di1wfVbvBCoMgfE_kDs7g8aUXHbxZp3N-EZvzVDBf4UZR6PpNH7NcDX_9-JYrvUG27GfPX5_QmtSHysP2Oll3fNXIPmuklraeZ5hHji-qZaA_6pgM2bNz0eGG7-t5QVqYIeG5acZ7R3Q/s320/motioneyeos06.png" width="320" /></a></div>
<div>
<br /></div>
<ul>
<li>go to File storage.</li>
<li>Enter command on Run An Command </li>
</ul>
<blockquote class="tr_bq">
/data/script/linenotify_push.sh "Motion Detect at %Y-%m-%d %H-%M-%S" %f</blockquote>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgro-hi2cPZQlhh4CJ00Naq6XdsB8TlD1t7CsJf7WMSaPJKUqM45NfquLS8hSH-RESfcJNYoGVNABDHjzmMnve4pOm7B4ezdi4-nCklRvrHcCuUsN7DSzyYvb8zD1fBMIln9HrEfzBL6x2R/s1600/motioneyeos07.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="462" data-original-width="513" height="288" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgro-hi2cPZQlhh4CJ00Naq6XdsB8TlD1t7CsJf7WMSaPJKUqM45NfquLS8hSH-RESfcJNYoGVNABDHjzmMnve4pOm7B4ezdi4-nCklRvrHcCuUsN7DSzyYvb8zD1fBMIln9HrEfzBL6x2R/s320/motioneyeos07.png" width="320" /></a></div>
<ul>
<li>go to Motion Detection Section. Enable Motion Detection</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMB7mczcGXSK8YpCZED5ObhgHGcyUmJcjp79eag2wfK719gd1UNlD2lzogeIqpGRDXB6gs1_h1ueKQOspQH4pX2o0JfaEGe0bCTBj3yb4V_MRaEt-0ZBLD43TPB-XFB2NE3NkHRU8c7tLO/s1600/motioneyeos05.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="402" data-original-width="523" height="245" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMB7mczcGXSK8YpCZED5ObhgHGcyUmJcjp79eag2wfK719gd1UNlD2lzogeIqpGRDXB6gs1_h1ueKQOspQH4pX2o0JfaEGe0bCTBj3yb4V_MRaEt-0ZBLD43TPB-XFB2NE3NkHRU8c7tLO/s320/motioneyeos05.png" width="320" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div>
<br /></div>
<ul>
<li>Select Apply button on top to apply all config.</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjFZcj00DuBngG4AtgwlL8jcOfDxl7Fh3Q34B8ydSRmwQxJjctQWGDPPUznTy3u71rGrbWObQ9ZSQtucPXaCbnjf705EgkrN28f9indnnjX2ZY80_1H38tcwIpgYvuKPyMgtGIy8qpJdM_r/s1600/motioneyeos08.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="54" data-original-width="619" height="27" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjFZcj00DuBngG4AtgwlL8jcOfDxl7Fh3Q34B8ydSRmwQxJjctQWGDPPUznTy3u71rGrbWObQ9ZSQtucPXaCbnjf705EgkrN28f9indnnjX2ZY80_1H38tcwIpgYvuKPyMgtGIy8qpJdM_r/s320/motioneyeos08.png" width="320" /></a></div>
<div>
<br /></div>
<br />
If motion detect of motionEyeOS detected, I will send "Motion Detect at [Date and Time]" message to LINE Instant Message.<br />
<br />
After finish with motion detect (nothing movement) Send "Motion Detect End at [Date and Time]" message to LINE Instant Message.<br />
<br />
and Send "Motion Detect at [Date and Time]" message " and image file to send to LINE Instant Message<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcpEcsN337Z9k9eFEPwtffrmMOCYCpSGU8_EFhMLTW_HJ2HOAvnk7tSiBGWVFnau82-HLIgQ-Xd-zHozFgwduM0bZ7r7WAZHgAfcdaQd_bLqZIgO0pGKI3HFiw58tg7i0tHqnetlzfLtVX/s1600/linenotify8.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="502" data-original-width="401" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcpEcsN337Z9k9eFEPwtffrmMOCYCpSGU8_EFhMLTW_HJ2HOAvnk7tSiBGWVFnau82-HLIgQ-Xd-zHozFgwduM0bZ7r7WAZHgAfcdaQd_bLqZIgO0pGKI3HFiw58tg7i0tHqnetlzfLtVX/s320/linenotify8.png" width="255" /></a></div>
<br />
<br /></div>
Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com0tag:blogger.com,1999:blog-2985492273267844353.post-46708470068564181682016-05-25T09:24:00.000+07:002019-10-09T07:27:16.963+07:00Waveshare 7inch HDMI LCD (C) and 5inch HDMI LCD (B) on NOOBS<div>
<b>HDMI LCD</b></div>
<div>
<br /></div>
<div>
Waveshare 7 inch HDMI LCD (C)</div>
<div>
<a href="http://www.waveshare.com/7inch-HDMI-LCD-C.htm">http://www.waveshare.com/7inch-HDMI-LCD-C.htm</a></div>
<div>
<br /></div>
<div>
Waveshare 5 inch HDMI LCD (B)</div>
<div>
<a href="http://www.waveshare.com/5inch-HDMI-LCD-B.htm">http://www.waveshare.com/5inch-HDMI-LCD-B.htm</a></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
NOOBS (Raspberrry PI)</div>
<div>
<a href="https://www.raspberrypi.org/downloads/noobs/">https://www.raspberrypi.org/downloads/noobs/</a></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
First write NOOBS Image to SD Card.</div>
<div>
After finished.</div>
<div>
<br /></div>
<div>
Create file config.txt on NOOBS SDCard. (It don't have config.txt on NOOBS image)</div>
<div>
<br /></div>
<div>
<b><i>config.txt</i></b> <i>(for 7 inch HDMI LCD (C))</i></div>
<div>
<br /></div>
<blockquote class="tr_bq">
hdmi_force_hotplug=1<br />
hdmi_group=2<br />
hdmi_mode=1<br />
hdmi_mode=87<br />
# 1024 x 600<br />
hdmi_cvt 1024 600 60 6 0 0 0<br />
max_usb_current=1</blockquote>
<div>
<span style="background-color: white; color: red; font-family: "Segoe UI", "Microsoft YaHei", Tahoma, "Arial sans-serif"; font-size: 14px;">If you use the LCD with Raspberry Pi 4 B, you need to remove the line dtoverlay=vc4-fkms-V3D from config.txt file</span><br />
<br />
Wiki for 7 inch HDMI LCD (C)<br />
<a href="http://www.waveshare.com/wiki/7inch_HDMI_LCD_%28C%29">http://www.waveshare.com/wiki/7inch_HDMI_LCD_%28C%29</a></div>
<div>
<br /></div>
<div>
<b><i>config.txt</i></b> <i>(for 5 inch HDMI LCD (B))</i></div>
<div>
<br /></div>
<blockquote class="tr_bq">
hdmi_force_hotplug=1<br />
hdmi_group=2<br />
hdmi_mode=1<br />
hdmi_mode=87<br />
#800x480<br />
hdmi_cvt 800 480 60 6 0 0 0<br />
max_usb_current=1</blockquote>
<div>
Wiki for 5 inch HDMI LCD (B)<br />
<a href="http://www.waveshare.com/wiki/5inch_HDMI_LCD_%28B%29">http://www.waveshare.com/wiki/5inch_HDMI_LCD_%28B%29</a><br />
<br />
<br /></div>
<div>
Save it. and eject from computer.</div>
<div>
Try to boot with Raspberry PI to test it.</div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqX7SHD0oxWhD7yToHTIpQg18F9YV-inKHIu6-yaQ0M80gbYliP_AyfF06l6UF_n5NYJL4voiddHCH5wymmpN18ZTSNFVFki7IPOANqoHCTSbIohyphenhyphenZCg-h3RkstiV7r6_ax_lLpczrjZ_n/s1600/1464142507189.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqX7SHD0oxWhD7yToHTIpQg18F9YV-inKHIu6-yaQ0M80gbYliP_AyfF06l6UF_n5NYJL4voiddHCH5wymmpN18ZTSNFVFki7IPOANqoHCTSbIohyphenhyphenZCg-h3RkstiV7r6_ax_lLpczrjZ_n/s400/1464142507189.jpg" width="400" /></a></div>
<br /></div>
<div>
<br />
<b><i><u>All image on NOOBS</u></i></b> should change config.txt for support this HDMI LCD Device.<br />
<br />
Enjoy ;)<br />
<br />
<br />
<b>Reference:</b><br />
<div>
<i>NOOBS (Raspberrry PI)</i></div>
<div>
<a href="https://www.raspberrypi.org/downloads/noobs/"><i>https://www.raspberrypi.org/downloads/noobs/</i></a><br />
<br />
<div>
<i>Waveshare 7 inch HDMI LCD (C)</i></div>
<div>
<a href="http://www.waveshare.com/7inch-HDMI-LCD-C.htm"><i>http://www.waveshare.com/7inch-HDMI-LCD-C.htm</i></a></div>
<div>
<br /></div>
<div>
<i>Waveshare 5 inch HDMI LCD (B)</i></div>
<div>
<a href="http://www.waveshare.com/5inch-HDMI-LCD-B.htm"><i>http://www.waveshare.com/5inch-HDMI-LCD-B.htm</i></a><br />
<br />
<i>Wiki for 7 inch HDMI LCD (C)</i><br />
<a href="http://www.waveshare.com/wiki/7inch_HDMI_LCD_%28C%29"><i>http://www.waveshare.com/wiki/7inch_HDMI_LCD_%28C%29</i></a><br />
<br />
<i>Wiki for 5 inch HDMI LCD (B)</i><br />
<a href="http://www.waveshare.com/wiki/5inch_HDMI_LCD_%28B%29"><i>http://www.waveshare.com/wiki/5inch_HDMI_LCD_%28B%29</i></a><br />
<br />
<i>CONFIG.TXT (raspberrypi.org)<br /><a href="https://www.raspberrypi.org/documentation/configuration/config-txt.md">https://www.raspberrypi.org/documentation/configuration/config-txt.md</a></i><br />
<i><br /></i>
<i>RPiconfig</i><br />
<i><a href="http://elinux.org/RPiconfig">http://elinux.org/RPiconfig</a></i></div>
</div>
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com6tag:blogger.com,1999:blog-2985492273267844353.post-1961204702047658262016-03-25T15:58:00.002+07:002016-04-25T10:16:13.700+07:00Live TV DVB-T2 with VDR Addons on OpenELEC<div>
I have Geniatech DVB-T2 Stick T220.</div>
<div>
I use OpenELEC to play Live TV with it.</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXPVtcQkvaJ-CiGsbVs061Py3z_u5WVHEwFZzCLco4kNtTARN-Hs6pcpML1aj02HssNStfor4AUF3Pq0rsrJRe4yn3KYraJUqeN74bGb5l1c01OgeUfdI41RiH7ppCQcxggSGeekoDZiBQ/s1600/1458893902057.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXPVtcQkvaJ-CiGsbVs061Py3z_u5WVHEwFZzCLco4kNtTARN-Hs6pcpML1aj02HssNStfor4AUF3Pq0rsrJRe4yn3KYraJUqeN74bGb5l1c01OgeUfdI41RiH7ppCQcxggSGeekoDZiBQ/s320/1458893902057.jpg" width="240" /> </a> </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Current version of OpenELEC is 6.0.3.</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
First install services add-ons VDR PVR Backend.</div>
<div class="separator" style="clear: both; text-align: left;">
<u>Goto:</u> <i>System -> Settings -> Add-ons -> Install from repository -> OpenELEC Add-ons (offical) -> Services -> VDR PVR Backend</i></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiSKXoT9v0fQPs0J2qRDPp4jYfyul1SzLJpZk9hqnR9B4Lzcrr7wKf0JBraubRIjikHqbDcFEL2qAkKuKfSjN4TZ4f16rK8USfsmlRbu6vd6-WBaN7rqcWuqRs58eI-xO4ADIuYMg2dt2A4/s1600/VDRSetup06.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiSKXoT9v0fQPs0J2qRDPp4jYfyul1SzLJpZk9hqnR9B4Lzcrr7wKf0JBraubRIjikHqbDcFEL2qAkKuKfSjN4TZ4f16rK8USfsmlRbu6vd6-WBaN7rqcWuqRs58eI-xO4ADIuYMg2dt2A4/s320/VDRSetup06.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Install VDR PVR Backend</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJYWjlRdB9jSYoGbuLMZ0Us1UCSoj31JLbTdl2yGVnjGuV63PhBsUr5OElddVWrF-xeAWpJy8j89TKV5e1IMCZZINaT3xmq1DHsKGQnBIqad4WkdJygvRPFCVQvrQt_x79O4EKGuvIEvAi/s1600/VDRSetup07.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJYWjlRdB9jSYoGbuLMZ0Us1UCSoj31JLbTdl2yGVnjGuV63PhBsUr5OElddVWrF-xeAWpJy8j89TKV5e1IMCZZINaT3xmq1DHsKGQnBIqad4WkdJygvRPFCVQvrQt_x79O4EKGuvIEvAi/s320/VDRSetup07.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
After Installed. Go back to PVR clients.</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCF-trDVi19ZamlUy9-z8P52p12bUNmPp7DBk3q8l08ICZxdqxpisvTd-TR3QxLMlV9t7kVt1nU-SU2XEjtLsojMtCp_fic897ETKEnfP_DMbeg09UYo_WgA4gdGv1ejE8u-cT88EhdIYq/s1600/VDRSetup08.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCF-trDVi19ZamlUy9-z8P52p12bUNmPp7DBk3q8l08ICZxdqxpisvTd-TR3QxLMlV9t7kVt1nU-SU2XEjtLsojMtCp_fic897ETKEnfP_DMbeg09UYo_WgA4gdGv1ejE8u-cT88EhdIYq/s320/VDRSetup08.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Install VDR VNSI Client (If VDR VNSI Client is not installed)</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1T96KqYxDhmkiHakbTKVMiisqtr_1_vsIXRv4GKIW2eYf8P_7aTgHukpSzHZxToW0IElsXrGQW3YG9316VtkBhgsB-gy5dA2e3jsFyGu-4w6rcx1ijlUOL-D-9IgQdoHSq4xcarLZiti4/s1600/VDRSetup09.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1T96KqYxDhmkiHakbTKVMiisqtr_1_vsIXRv4GKIW2eYf8P_7aTgHukpSzHZxToW0IElsXrGQW3YG9316VtkBhgsB-gy5dA2e3jsFyGu-4w6rcx1ijlUOL-D-9IgQdoHSq4xcarLZiti4/s320/VDRSetup09.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Select Configure of VDR VNSI Client.</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiHaiDpZdntyyexKF_Fze7M7Rcmvzc7nWGHZv3iyTn5vcLe8GkLNu6yRr6hOLPq5F5YgxEQOAouWsrha7tGINz0Iqu5XtCqZlBQUN86AUwWkJcGogVg35qJPUvwaawrD-M_KFShpHtVArmR/s1600/VDRSetup11.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiHaiDpZdntyyexKF_Fze7M7Rcmvzc7nWGHZv3iyTn5vcLe8GkLNu6yRr6hOLPq5F5YgxEQOAouWsrha7tGINz0Iqu5XtCqZlBQUN86AUwWkJcGogVg35qJPUvwaawrD-M_KFShpHtVArmR/s320/VDRSetup11.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Enable create channel groups automatically on the server And OK.</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYUpR_9loD39xbP7wyaeeS5reSTsL85sHLz2qkf5dEbW7f0KvrTuIjxOhIfv11FwHaOdXwcr9USFwRNrWBK5xggSOb4tnJphr8Ae73zaz-dTDaeM1udlHAd3AkYgkJMZpmKEjdhHfgVFV5/s1600/VDRSetup12.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYUpR_9loD39xbP7wyaeeS5reSTsL85sHLz2qkf5dEbW7f0KvrTuIjxOhIfv11FwHaOdXwcr9USFwRNrWBK5xggSOb4tnJphr8Ae73zaz-dTDaeM1udlHAd3AkYgkJMZpmKEjdhHfgVFV5/s320/VDRSetup12.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Next Goto <i>Home -> Programs -> VDR Configuration</i></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWgMG65o-iN1c0_W9b15CupPGjwWvp9uXvMXqx7RwYIyH2XrROwEg7HAnlDHA_TZEWX54AFO0I6kbVvBQN3QYkegMbo3RBmlEbdcoSXaoG_aqvpxPTtVQmW0iddiOYX3ZawV8LfIhuD1Be/s1600/VDRSetup16.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWgMG65o-iN1c0_W9b15CupPGjwWvp9uXvMXqx7RwYIyH2XrROwEg7HAnlDHA_TZEWX54AFO0I6kbVvBQN3QYkegMbo3RBmlEbdcoSXaoG_aqvpxPTtVQmW0iddiOYX3ZawV8LfIhuD1Be/s320/VDRSetup16.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuCPkyxZoCTmjjqGWwzyGX22K35_9dW8u4Afmk4ctrvedpWq1oMFPshqpgd3807l7AOgWdMzJ6GfmMyaenbJJCo1TvguzzIs3gesmcOYTvng_tOy-MjS8n8gopX2w0srkXBrjcVjsKubos/s1600/VDRSetup18.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuCPkyxZoCTmjjqGWwzyGX22K35_9dW8u4Afmk4ctrvedpWq1oMFPshqpgd3807l7AOgWdMzJ6GfmMyaenbJJCo1TvguzzIs3gesmcOYTvng_tOy-MjS8n8gopX2w0srkXBrjcVjsKubos/s320/VDRSetup18.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Select Channel scanner Configuration</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgI2U-uQnDnLP30c6lsBmjh511GMTbrCuUfpqJ3DkQjF9MHbmIPghigdW2xuUb66uS_sv4jsZvxRY93gn3jldf1d0UzBX7BWILMUJjrcqaYCXbnhUVDDtOlorg3pQcmgZvX7O8Ff7rEkfMY/s1600/VDRSetup19.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgI2U-uQnDnLP30c6lsBmjh511GMTbrCuUfpqJ3DkQjF9MHbmIPghigdW2xuUb66uS_sv4jsZvxRY93gn3jldf1d0UzBX7BWILMUJjrcqaYCXbnhUVDDtOlorg3pQcmgZvX7O8Ff7rEkfMY/s320/VDRSetup19.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Start scanning TV channel.</div>
<div class="separator" style="clear: both; text-align: left;">
Select </div>
<div class="separator" style="clear: both; text-align: left;">
</div>
<ul>
<li>Tuner Type: DVB-T</li>
<li>Country: <your location></li>
<li>Cleanup all</li>
</ul>
And Start<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKSDCeh13UADa0aDukqPyaK-2xA8K_m1GIrkdXtMFBGsoUXVgAOTZQ2GDd6loeCWa9CWxamGoEzSRXNw-X5xpnWZh9BeubT87bKXyzXuSPLL-IghnlGINGf6B8WRcn3so666Oh4zpbzhzJ/s1600/VDRSetup23.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKSDCeh13UADa0aDukqPyaK-2xA8K_m1GIrkdXtMFBGsoUXVgAOTZQ2GDd6loeCWa9CWxamGoEzSRXNw-X5xpnWZh9BeubT87bKXyzXuSPLL-IghnlGINGf6B8WRcn3so666Oh4zpbzhzJ/s320/VDRSetup23.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh00_2F1lRWhRkT1jLKMsYbAO7hGyV-o6TN5jlFQzxb2wqC-amkRptp8qTZq-vmwK9KKthrl9ieVkaekKMjSvuBETCDgjXIMKQA95PVz1AkvdJxShTeH7nVY3H3nlpo6rmAYpux6RBPmxOD/s1600/VDRSetup25.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh00_2F1lRWhRkT1jLKMsYbAO7hGyV-o6TN5jlFQzxb2wqC-amkRptp8qTZq-vmwK9KKthrl9ieVkaekKMjSvuBETCDgjXIMKQA95PVz1AkvdJxShTeH7nVY3H3nlpo6rmAYpux6RBPmxOD/s320/VDRSetup25.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
After scan completed. Select Close.</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Enable TV menu on OpenELEC</div>
<div class="separator" style="clear: both; text-align: left;">
Goto: <i>Home -> System -> Settings -> TV</i></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfXJOnaoJwVk91eBC8RXIZgmBwRxwlII7jbjXAlAKo9F-ljBOwd8yLLXKwnwfBVEGhA5m-xMKLsZo4aYe7CSds-cQR-CE7XDMCtuR7RGIvpmOCkkcrGVFKZjbPuQYz7IdLAyA1WgRhCG50/s1600/VDRSetup26.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfXJOnaoJwVk91eBC8RXIZgmBwRxwlII7jbjXAlAKo9F-ljBOwd8yLLXKwnwfBVEGhA5m-xMKLsZo4aYe7CSds-cQR-CE7XDMCtuR7RGIvpmOCkkcrGVFKZjbPuQYz7IdLAyA1WgRhCG50/s320/VDRSetup26.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Select Enable: General -> Enabled and Synchronis channel groups with backend(s)</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNafQPAVMlY2krxTfj6dD5mvjwxPwVTI9toG0u0TO6ZvyOM5UCYdvKESEcXj7l8YWVGx0SIJojzBNibowbNK0uFnglCLDDXpRVO6ce1SLGviaIVGeRghXrmtco3XCrkJgbDfHDRaVWTAIx/s1600/VDRSetup27.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNafQPAVMlY2krxTfj6dD5mvjwxPwVTI9toG0u0TO6ZvyOM5UCYdvKESEcXj7l8YWVGx0SIJojzBNibowbNK0uFnglCLDDXpRVO6ce1SLGviaIVGeRghXrmtco3XCrkJgbDfHDRaVWTAIx/s320/VDRSetup27.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Go back to Home and Select TV</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiSFNLDYb4wQzeypZzAl_goBXAzGWf_Mp9H4AxhPtdvYJUXdIIQR-4dpjPVWbvgLZI_i1N0yEtSuSEGizK3wBi-gWN1M3ExRDROMBTAH4GmCosobOYE6TAQtta1AYkoKJEmIMgCo0rcAm9L/s1600/VDRSetup28.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiSFNLDYb4wQzeypZzAl_goBXAzGWf_Mp9H4AxhPtdvYJUXdIIQR-4dpjPVWbvgLZI_i1N0yEtSuSEGizK3wBi-gWN1M3ExRDROMBTAH4GmCosobOYE6TAQtta1AYkoKJEmIMgCo0rcAm9L/s320/VDRSetup28.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Now already to watch Live TV from DVB-T2 Device and recording.</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBtPFI3-07i-n2PVZSsIFYa3pL9TSSFReC0wSqAhWvWMKxi47uaAfDO3u4wxzMWbvGQxvTou24ZHS95y4hGeyKE39PPiYNzwh2sBV_kTp_H92Zw_YKIB3LDHGrE9YiOijCPJJSIctBME9P/s1600/VDRSetup29.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBtPFI3-07i-n2PVZSsIFYa3pL9TSSFReC0wSqAhWvWMKxi47uaAfDO3u4wxzMWbvGQxvTou24ZHS95y4hGeyKE39PPiYNzwh2sBV_kTp_H92Zw_YKIB3LDHGrE9YiOijCPJJSIctBME9P/s320/VDRSetup29.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Have a good day. :)</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<u><br /></u></div>
<div class="separator" style="clear: both; text-align: left;">
<b><u>Addition</u>:</b></div>
<div class="separator" style="clear: both; text-align: left;">
<b><br /></b></div>
<div class="separator" style="clear: both; text-align: left;">
VDR PVR Backend has other plugins to use.</div>
<div class="separator" style="clear: both; text-align: left;">
You can enable on configure menu.</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Goto: <i>Home -> System -> Settings -> Add-ons -> Install from repository -> OpenELEC Add-ons (offical) -> Services -> VDR PVR Backend</i></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Select Configure.</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4OCO22zA2s9rMTJ-9KRiMLptlh50o-twmDfkYk1MczUihjth4JnGJTfMANkgETl8SMRWm1oqn8zW6MW7GP1vp8A0q9w9E60dpKI1HyKS_-1jPwfPdLX4KXQ9UdRoTzy0ai1liWzui3NLJ/s1600/VDRSetup13.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4OCO22zA2s9rMTJ-9KRiMLptlh50o-twmDfkYk1MczUihjth4JnGJTfMANkgETl8SMRWm1oqn8zW6MW7GP1vp8A0q9w9E60dpKI1HyKS_-1jPwfPdLX4KXQ9UdRoTzy0ai1liWzui3NLJ/s320/VDRSetup13.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
You can enable other plugins if you want to use.</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhI16Z0GWM3vMu8jkYVJVo7zKdCEtJyHSx6f8dUC5Hezky7KcVqI7LiGICr6VrNAyyQTiQ-vLEPurmqZDm1ZALQLymwitRtkCXBLaTdlhC7KfZHMyBgY_NBOzTgCG62j2c6JVv001Wmwahy/s1600/VDRSetup14.png" imageanchor="1"><img border="0" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhI16Z0GWM3vMu8jkYVJVo7zKdCEtJyHSx6f8dUC5Hezky7KcVqI7LiGICr6VrNAyyQTiQ-vLEPurmqZDm1ZALQLymwitRtkCXBLaTdlhC7KfZHMyBgY_NBOzTgCG62j2c6JVv001Wmwahy/s320/VDRSetup14.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<b><br /></b></div>
<div class="separator" style="clear: both; text-align: left;">
<b>Reference:</b></div>
<div class="separator" style="clear: both; text-align: left;">
VDR - The Video Disk Recorder</div>
<div class="separator" style="clear: both; text-align: left;">
<a href="http://www.tvdr.de/"><i>http://www.tvdr.de/</i></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
VDR Wiki</div>
<div class="separator" style="clear: both; text-align: left;">
<a href="http://linuxtv.org/vdrwiki/index.php/Main_Page"><i>http://linuxtv.org/vdrwiki/index.php/Main_Page</i></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com2tag:blogger.com,1999:blog-2985492273267844353.post-60175340004390913192015-10-05T23:08:00.002+07:002015-10-05T23:08:46.270+07:00How to compile nginx with nginx-rtmp-module<div>
Prepare environment for compile.</div>
<blockquote class="tr_bq">
$ sudo apt-get update<br />$ sudo apt-get install libpcre3-dev libatomic-ops-dev libgeoip-dev geoip-bin geoip-database geoip-database-extra libperl-dev libssl-dev libxml2-dev libxslt1-dev</blockquote>
<div>
<br /></div>
<div>
Create directory src</div>
<div>
<br /></div>
<blockquote class="tr_bq">
$ mkdir src</blockquote>
<div>
<br /></div>
Download Nginx (last version)<div>
<br /></div>
<blockquote class="tr_bq">
$ cd src<br />$ wget http://nginx.org/download/nginx-1.9.5.tar.gz<br />$ tar -xvzf nginx-1.9.5.tar.gz</blockquote>
<div>
<br /></div>
<div>
Git Clone nginx-rtmp-module</div>
<div>
<br /></div>
<blockquote class="tr_bq">
$ git clone https://github.com/arut/nginx-rtmp-module.git</blockquote>
<div>
<br /></div>
<div>
<br /></div>
<div>
Change current to nginx-1.9.5</div>
<div>
<br /></div>
<blockquote class="tr_bq">
$ cd nginx-1.9.5</blockquote>
<div>
<br /></div>
<div>
Run configure</div>
<div>
<br /></div>
<blockquote class="tr_bq">
$ ./configure --prefix=/usr/local/nginx --user=www-data --group=www-data --with-select_module --with-poll_module --with-threads --with-file-aio --with-ipv6 --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module --with-http_image_filter_module --with-http_geoip_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_auth_request_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_stub_status_module --with-http_perl_module --with-mail --with-mail_ssl_module --with-pcre --with-pcre-jit --with-md5-asm --with-sha1-asm --with-libatomic --with-pcre --with-stream --with-stream_ssl_module --with-http_v2_module --add-module=../nginx-rtmp-module</blockquote>
<div>
<br /></div>
<div>
Run make to compile</div>
<div>
<br /></div>
<blockquote class="tr_bq">
$ make</blockquote>
<div>
<br /></div>
<div>
Install nginx to /usr/local/nginx</div>
<div>
<br /></div>
<blockquote class="tr_bq">
$ sudo make install</blockquote>
<div>
<br /></div>
<div>
Config Nginx on /usr/local/nginx/conf/nginx.conf</div>
<div>
<br /></div>
<blockquote class="tr_bq">
$ sudo nano /usr/local/nginx/conf/nginx.conf</blockquote>
<div>
<br /></div>
<div>
<br /></div>
<div>
Config for streaming server see on nginx-rtmp-module wiki</div>
<div>
<a href="https://github.com/arut/nginx-rtmp-module/wiki">https://github.com/arut/nginx-rtmp-module/wiki</a></div>
<div>
<br /></div>
<div>
Web path /usr/local/nginx/html</div>
<div>
<br /></div>
<div>
Start nginx service</div>
<div>
<br /></div>
<blockquote class="tr_bq">
$ sudo /usr/local/nginx/sbin/nginx</blockquote>
<div>
<br /></div>
<div>
Stop nginx service</div>
<div>
<br /></div>
<blockquote class="tr_bq">
$ sudo /usr/local/nginx/sbin/nginx -s stop</blockquote>
<div>
<br /></div>
<div>
<br /></div>
<div>
<b>Reference</b></div>
<div>
Nginx</div>
<div>
<a href="http://nginx.org/">http://nginx.org/</a></div>
<div>
<br /></div>
<div>
nginx-rtmp-module (source code)</div>
<div>
<a href="https://github.com/arut/nginx-rtmp-module">https://github.com/arut/nginx-rtmp-module</a></div>
<div>
<br /></div>
<div>
nginx-rtmp-module (wiki)</div>
<div>
<a href="https://github.com/arut/nginx-rtmp-module/wiki">https://github.com/arut/nginx-rtmp-module/wiki</a></div>
<div>
<br /></div>
<div>
Streaming with nginx-rtmp-module</div>
<div>
<a href="http://nginx-rtmp.blogspot.com/">http://nginx-rtmp.blogspot.com/</a></div>
<div>
<br /></div>
<div>
<br /></div>
Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com0tag:blogger.com,1999:blog-2985492273267844353.post-54878152429553906652015-09-30T16:35:00.001+07:002015-10-15T15:30:28.076+07:00How to Disable Power Management of rtl8192cuFix problem wireless disconnect and go to save mode.<br />
<br />
Create file /etc/modprobe.d/8192cu.conf<br />
<br />
<blockquote class="tr_bq">
$ <i>sudo nano /etc/modprobe.d/8192cu.conf</i></blockquote>
<br />
add this line<br />
<br />
<blockquote class="tr_bq">
options 8192cu rtw_power_mgnt=0 rtw_enusbss=0</blockquote>
<br />
<br />
Restart raspberry pi<br />
<br />
<br />
<br />
<b>Reference :</b><br />
<br />
<a href="https://github.com/xbianonpi/xbian/issues/217">https://github.com/xbianonpi/xbian/issues/217</a><br />
<br />
<a href="https://github.com/pvaret/rtl8192cu-fixes/blob/master/8192cu-disable-power-management.conf">https://github.com/pvaret/rtl8192cu-fixes/blob/master/8192cu-disable-power-management.conf</a>Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com0tag:blogger.com,1999:blog-2985492273267844353.post-20193859120058325672015-09-30T12:10:00.005+07:002015-09-30T17:42:10.981+07:00DLNA/UPnP with MiniDLNAHow to build DLNA/UPnP Server on Raspberry PI for use at Home device.<br />
(Example TV, Media player, PS3, Xbox etc.)<br />
<br />
<br />
<b>Install minidlna package</b><br />
<br />
<blockquote class="tr_bq">
$ <i>sudo apt-get install minidlna</i></blockquote>
<pre></pre>
<pre></pre>
<pre><b>Add pi user to minidlna group</b></pre>
<pre><b>
</b></pre>
<blockquote class="tr_bq">
<i>$ sudo usermod -a -G minidlna pi</i></blockquote>
<pre><b>
</b></pre>
<pre><b>Create Directory for store media file</b></pre>
<pre></pre>
<pre>Example:</pre>
<pre></pre>
<blockquote class="tr_bq">
$ <i>mkdir -p /home/pi/minidlna/music</i><br />
$ <i>mkdir -p /home/pi/minidlna/pictures</i><br />
$ <i>mkdir -p /home/pi/minidlna/videos</i><br />
$ <i>mkdir -p /home/pi/.minidlna</i></blockquote>
<pre></pre>
<pre>Change Mode of /home/pi/minidlna and /home/pi/.minidlna</pre>
<blockquote class="tr_bq">
$ <i>sudo chmod 777 /home/pi/minidlna</i><br />$ <i>sudo chmod 777 /home/pi/.minidlna</i></blockquote>
<pre><b>
</b></pre>
<pre><b>Config MiniDLNA</b></pre>
<pre></pre>
<blockquote class="tr_bq">
$ <i>sudo nano /etc/minidlna.conf</i></blockquote>
<pre></pre>
<pre>Modify this file</pre>
<blockquote class="tr_bq">
...<br />
db_dir=/home/pi/.minidlna/data<br />
log_dir=/home/pi/.minidlna/data/log<br />
# * "A" for audio (eg. media_dir=A,/var/lib/minidlna/music)<br />
# * "P" for pictures (eg. media_dir=P,/var/lib/minidlna/pictures)<br />
# * "V" for video (eg. media_dir=V,/var/lib/minidlna/videos)<br />
media_dir=A,/home/pi/minidlna/music<br />
media_dir=P,/home/pi/minidlna/pictures<br />
media_dir=V,/home/pi/minidlna/videos<br />
# Name that the DLNA server presents to clients.<br />
friendly_name=RASPBERRY DLNA<br />
# Automatic discovery of new files in the media_dir directory.<br />
<code>inotify=yes</code><code><br /></code><code># Notify interval, in seconds.</code><code>notify_interval=895</code>...</blockquote>
<pre></pre>
<pre><b>Restart MiniDLNA Service</b></pre>
<pre></pre>
<blockquote class="tr_bq">
$ <i>sudo /etc/init.d/minidlna restart</i></blockquote>
<pre></pre>
<pre>Or re-indexing all of media files</pre>
<pre></pre>
<blockquote class="tr_bq">
$ <i>sudo /etc/init.d/minidlan force-reload</i></blockquote>
<pre></pre>
<pre></pre>
<pre></pre>
<pre>Test on Device supported with DLNA/UPnP to play media.</pre>
<pre></pre>
<pre></pre>
<pre></pre>
<pre></pre>
<pre><b>Reference:</b></pre>
<pre></pre>
<pre>Digital Living Network Alliance
<a href="https://en.wikipedia.org/wiki/Digital_Living_Network_Alliance">https://en.wikipedia.org/wiki/Digital_Living_Network_Alliance</a></pre>
<pre></pre>
<pre>ReadyMedia (MiniDLNA Source Code)</pre>
<pre><a href="http://sourceforge.net/projects/minidlna/">http://sourceforge.net/projects/minidlna/</a></pre>
<pre></pre>
<pre>ReadyMedia (Wiki of Archlinux)</pre>
<pre><a href="https://wiki.archlinux.org/index.php/ReadyMedia">https://wiki.archlinux.org/index.php/ReadyMedia</a></pre>
<pre></pre>
Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com0tag:blogger.com,1999:blog-2985492273267844353.post-36635812972524255642015-08-11T00:12:00.001+07:002019-03-05T08:09:09.370+07:00How to use own remote control for LibreELEC or OpenELEC<b>IR Receiver (TSOP44.., TSOP48.., TSOP38238, ...)</b><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJZ36BAL0AvgAo1H9H73E70mfpuO4ysLFBj9XkOUmY7JdjosLVjmlIwAVXExwALwdaqsxsFFEy9cqhLk77DKFwdRgOiz9yUcC8oHZRMPfFdEFMR6V1sopUcmRjF2LIiph5bc8U-PqINo3m/s1600/IR_Receive1r.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJZ36BAL0AvgAo1H9H73E70mfpuO4ysLFBj9XkOUmY7JdjosLVjmlIwAVXExwALwdaqsxsFFEy9cqhLk77DKFwdRgOiz9yUcC8oHZRMPfFdEFMR6V1sopUcmRjF2LIiph5bc8U-PqINo3m/s1600/IR_Receive1r.png" /></a></div>
<br />
<b>Connect IR Receiver to Raspberry Pi</b><br />
<br />
Vcc -> 3V<br />
GND -> GND<br />
Vout -> GPIO 18<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCQnY2Zieyn4kE2VnKCG0Q51OWYg-HcAGvOKAEWbJ5_vnNJ1HLYSdlmy_K0k1QtF1JUgmvleALN2EvLZhMTdDM3G_ClM2vNV1x_qinEvyMFruabUPvS2EaV4o7j_l-slTFKKSIjLvRKsc9/s1600/IR_GPIO.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="311" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCQnY2Zieyn4kE2VnKCG0Q51OWYg-HcAGvOKAEWbJ5_vnNJ1HLYSdlmy_K0k1QtF1JUgmvleALN2EvLZhMTdDM3G_ClM2vNV1x_qinEvyMFruabUPvS2EaV4o7j_l-slTFKKSIjLvRKsc9/s320/IR_GPIO.png" width="320" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwog2pB5B2u_6yZKM3wBuCSlG_AS50aiil5dUf-_HdfC4rmABQFpcN7fFw1jDtITXcCr4qAhwgNga3VP-lbDe5Hjj_-BUq7Wp7_sm0oVjpFGMG0BIxdouyPRoJY4F7jEKO-XjCuQYcREL0/s1600/IMG_20150810_223240.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwog2pB5B2u_6yZKM3wBuCSlG_AS50aiil5dUf-_HdfC4rmABQFpcN7fFw1jDtITXcCr4qAhwgNga3VP-lbDe5Hjj_-BUq7Wp7_sm0oVjpFGMG0BIxdouyPRoJY4F7jEKO-XjCuQYcREL0/s320/IMG_20150810_223240.jpg" width="320" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2DTYXYlbaKfGIx3kli82BDf2ULDHJHJPQFCS2cIswLX836AJ_j8g5tfQiuMbxxpsjZD89tl2vWSN_VfdGFeAPFU4acGH7ZyEvxcvbIOIhMkRhzrZ_bor7BMC48e6iFyRdqgW8SqW_-3cS/s1600/IMG_20150810_224130.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2DTYXYlbaKfGIx3kli82BDf2ULDHJHJPQFCS2cIswLX836AJ_j8g5tfQiuMbxxpsjZD89tl2vWSN_VfdGFeAPFU4acGH7ZyEvxcvbIOIhMkRhzrZ_bor7BMC48e6iFyRdqgW8SqW_-3cS/s320/IMG_20150810_224130.jpg" width="320" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_IWRHuAifNnbNF6qENVkR1FPi5I7zMkF4zCTi8gcOjpGC6D7OZcJXNrqy6HnzslCCJOCjQCD9AeSArc8wyX9cdBh6hfeOlniNTRAuzUuIa4fP33xLfw9ZBPR2baO0chxWaAfma0FocoFZ/s1600/IMG_20150810_224149.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_IWRHuAifNnbNF6qENVkR1FPi5I7zMkF4zCTi8gcOjpGC6D7OZcJXNrqy6HnzslCCJOCjQCD9AeSArc8wyX9cdBh6hfeOlniNTRAuzUuIa4fP33xLfw9ZBPR2baO0chxWaAfma0FocoFZ/s320/IMG_20150810_224149.jpg" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJXTc4KfatEs-gKmO4qrW9pi3QqGVROzIXAy28C4EhAUdH8uSdF4q8yimTkxUQK9O7mWsfZxYktIV5n_0BedJSHl6v9lU7UK_7tqtKRdJytU09-JsMqxFy3K3fjHoG-Jed9YOXh7Eyuo70/s1600/PhotoDesk150810105333.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJXTc4KfatEs-gKmO4qrW9pi3QqGVROzIXAy28C4EhAUdH8uSdF4q8yimTkxUQK9O7mWsfZxYktIV5n_0BedJSHl6v9lU7UK_7tqtKRdJytU09-JsMqxFy3K3fjHoG-Jed9YOXh7Eyuo70/s320/PhotoDesk150810105333.jpg" width="320" /></a><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<br />
<b>Load LIRC module on boot.</b><br />
Edit /boot/config.txt<br />
Add line<br />
<br />
<blockquote class="tr_bq">
<i>dtoverlay=lirc-rpi</i></blockquote>
***For new kernel***<br />
<blockquote class="tr_bq">
<i><span style="color: blue;">dtoverlay=gpio-ir</span></i></blockquote>
<br />
<br />
or (change GPIO pin in for IR Receiver)<br />
<blockquote class="tr_bq">
<i>dtoverlay=lirc-rpi,gpio_out_pin=17,gpio_in_pin=18</i></blockquote>
<div>
*** For new kernel ***<br />
<blockquote class="tr_bq">
<span style="color: blue;"><i>dtoverlay=gpio-ir,gpio_pin=18,gpio_pull=up</i></span></blockquote>
</div>
<div>
See on :<br />
<ul>
<li>Raspberry PI Firmware Github<br /><a href="https://github.com/raspberrypi/firmware/tree/master/boot/overlays" style="font-style: italic;">https://github.com/raspberrypi/firmware/tree/master/boot/overlays</a></li>
<li>LibreELE Wiki (Infrared Remotes)<br /><i><a href="https://wiki.libreelec.tv/infrared_remotes">https://wiki.libreelec.tv/infrared_remotes</a></i></li>
</ul>
<br />
<br />
<b>Learning own remote control</b><br />
<br />
Kill Process of LIRCD<br />
<br />
<blockquote class="tr_bq">
<i># killall lircd</i></blockquote>
<br />
Start learning remote control button.<br />
<br />
<blockquote class="tr_bq">
<i># irrecord /storage/.config/lircd.conf</i></blockquote>
<br />
<pre>irrecord - application for recording IR-codes for usage with lirc
Copyright (C) 1998,1999 Christoph Bartelmus(lirc@bartelmus.de)
This program will record the signals from your remote control
and create a config file for lircd.
A proper config file for lircd is maybe the most vital part of this
package, so you should invest some time to create a working config
file. Although I put a good deal of effort in this program it is often
not possible to automatically recognize all features of a remote
control. Often short-comings of the receiver hardware make it nearly
impossible. If you have problems to create a config file READ THE
DOCUMENTATION of this package, especially section "Adding new remote
controls" for how to get help.
If there already is a remote control of the same brand available at
http://www.lirc.org/remotes/ you might also want to try using such a
remote as a template. The config files already contain all
parameters of the protocol used by remotes of a certain brand and
knowing these parameters makes the job of this program much
easier. There are also template files for the most common protocols
available in the remotes/generic/ directory of the source
distribution of this package. You can use a template files by
providing the path of the file as command line parameter.
Please send the finished config files to <lirc bartelmus.de=""> so that I
can make them available to others. Don't forget to put all information
that you can get about the remote control in the header of the file.
Press RETURN to continue.
Now start pressing buttons on your remote control.
It is very important that you press many different buttons and hold them
down for approximately one second. Each button should generate at least one
dot but in no case more than ten dots of output.
Don't stop pressing buttons until two lines of dots (2x80) have been
generated.
Press RETURN now to start recording.
................................................................................
Found const length: 107201
Please keep on pressing buttons like described above.
................................................................................
Space/pulse encoded remote control found.
Signal length is 67.
Found possible header: 8951 4451
Found trail pulse: 572
Found repeat code: 8961 2214
Signals are space encoded.
Signal length is 32
Now enter the names for the buttons.
Please enter the name for the next button (press <enter> to finish recording)
KEY_POWER
Now hold down button "KEY_POWER".
Please enter the name for the next button (press <enter> to finish recording)
KEY_1
Now hold down button "KEY_1".
Please enter the name for the next button (press <enter> to finish recording)
KEY_2
Now hold down button "KEY_2".
Please enter the name for the next button (press <enter> to finish recording)
KEY_3
Now hold down button "KEY_3".
Please enter the name for the next button (press <enter> to finish recording)
...
</enter></enter></enter></enter></enter></lirc></pre>
<br />
If you want to know irrecord key and button name list, use this command.<br />
<br />
<blockquote class="tr_bq">
<i># irrecord --list</i></blockquote>
<br />
It will display list of key and button name.<br />
<br />
IR Remote Key on Raspberry PI (See on file /etc/lirc/lircd.conf.rpi)<br />
<br />
<blockquote>
KEY_POWER<br />
KEY_1<br />
KEY_2<br />
KEY_3<br />
KEY_4<br />
KEY_5<br />
KEY_6<br />
KEY_7<br />
KEY_8<br />
KEY_9<br />
KEY_0<br />
KEY_VOLUMEUP<br />
KEY_VOLUMEDOWN<br />
KEY_MUTE<br />
KEY_EXIT<br />
KEY_CHANNELUP<br />
KEY_CHANNELDOWN<br />
KEY_INFO<br />
KEY_UP<br />
KEY_LEFT<br />
KEY_RIGHT<br />
KEY_DOWN<br />
KEY_OK<br />
KEY_MENU<br />
KEY_AUDIO<br />
KEY_VIDEO<br />
KEY_BACKSPACE<br />
KEY_PLAY<br />
KEY_PAUSE<br />
KEY_FORWARD<br />
KEY_STOP<br />
KEY_RADIO<br />
KEY_TEXT<br />
KEY_TITLE</blockquote>
After finish all key. Press Enter for finished.<br />
<br />
<i><span style="color: purple;">(If you type incorrect or some problem about step, delete file /storage/.config/lircd.conf and run irrecord command)</span></i><br />
<br />
Reboot.<br />
<br />
<blockquote class="tr_bq">
<i># shutdown -r now</i></blockquote>
<br />
Test IR Remote for control menu.<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_WnRR56qCsHxLpr5Sj_JZxXNfvRcw6gSFm9KXao4pJyxB58MJcJ7XYJveAvyo49ICENoF3cfoVh_XDsI0QfITrnVgJJpEnbJjaVWkp0DDIRYpEwcbz9Dbnk5lgZP61wJbCCR2YsUQl_d1/s1600/1439226087910.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_WnRR56qCsHxLpr5Sj_JZxXNfvRcw6gSFm9KXao4pJyxB58MJcJ7XYJveAvyo49ICENoF3cfoVh_XDsI0QfITrnVgJJpEnbJjaVWkp0DDIRYpEwcbz9Dbnk5lgZP61wJbCCR2YsUQl_d1/s320/1439226087910.jpg" width="320" /></a></div>
<br />
<b>Reference :</b><br />
<br />
Device Tree overlays<br />
<i><a href="https://github.com/raspberrypi/firmware/tree/master/boot/overlays">https://github.com/raspberrypi/firmware/tree/master/boot/overlays</a></i><br />
<br />
Guide To lirc rpi GPIO Receiver<br />
<i><a href="http://wiki.openelec.tv/index.php?title=Guide_To_lirc_rpi_GPIO_Receiver">http://wiki.openelec.tv/index.php?title=Guide_To_lirc_rpi_GPIO_Receiver</a></i><br />
<br />
Guide to add your own remote<br />
<i><a href="http://wiki.openelec.tv/index.php/Guide_to_add_your_own_remote">http://wiki.openelec.tv/index.php/Guide_to_add_your_own_remote</a></i></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com0tag:blogger.com,1999:blog-2985492273267844353.post-45127378566027459152015-07-18T22:27:00.000+07:002015-07-23T17:00:54.114+07:00VNC Server for Raspberry PI with dispmanx<b>You can remote console of raspberry pi with dispmanx</b><br />
<br />
<br />
Install libvncserver-dev, gcc and g++ version 4.7<br />
<pre><code>
</code></pre>
<blockquote class="tr_bq">
<code><i>$ sudo apt-get install gcc-4.7 g++-4.7 libvncserver-dev</i></code></blockquote>
<br />
Update alternatives version of gcc and g++<br />
<br />
<blockquote class="tr_bq">
<code><i>$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.6<br />
<br />
$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.7 40 --slave /usr/bin/g++ g++ /usr/bin/g++-4.7</i>
</code>
</blockquote>
<br />
Select gcc and g++ version to 4.7 (2)<br />
<br />
<blockquote class="tr_bq">
<code><i>$ sudo update-alternatives --config gcc<br />
There are 2 choices for the alternative gcc (providing /usr/bin/gcc).<br />
<br />
Selection Path Priority Status<br />
------------------------------------------------------------<br />
* 0 /usr/bin/gcc-4.6 60 auto mode<br />
1 /usr/bin/gcc-4.6 60 manual mode<br />
2 /usr/bin/gcc-4.7 40 manual mode<br />
<br />
Press enter to keep the current choice[*], or type selection number: 2<br />
update-alternatives: using /usr/bin/gcc-4.7 to provide /usr/bin/gcc (gcc) in manual mode</i></code>
</blockquote>
See on : <i><a href="https://github.com/Na1w/dispmanx_vnc">https://github.com/Na1w/dispmanx_vnc</a></i><br />
<br />
Clone source code of dispmanx.<br />
<blockquote class="tr_bq">
<i>$ git clone https://github.com/Na1w/dispmanx_vnc.git</i></blockquote>
<br />
Compile dispmanx.<br />
<br />
<blockquote class="tr_bq">
<i>$ cd dispmanx_vnc<br />$ make</i></blockquote>
After compile finish. It has dispmanx_vncserver file.<br />
Copy this file to execute path. example /bin, /usr/local/bin, etc.<br />
<br />
<br />
If you want to use X, modprobe evdev first.<br />
<br />
<blockquote class="tr_bq">
<i>$ sudo modprobe evdev</i></blockquote>
See on : <a href="https://github.com/hanzelpeter/dispmanx_vnc"><i>https://github.com/hanzelpeter/dispmanx_vnc</i></a><br />
<br />
<br />
<b>Start dispmanx vncserver</b><br />
<br />
<blockquote class="tr_bq">
<i>$ sudo dispmanx_vncserver</i></blockquote>
*** default port 5900<br />
<br />
<b>Stop dispmanx vncserver</b> with Control + C Key.<br />
<br />
<br />
<br />
<b>Start dispmanx vncserver with password</b><br />
<br />
<blockquote class="tr_bq">
<i>$ sudo dispmanx_vncserver -P [password]</i></blockquote>
<br />
<b>Change port number</b><br />
<br />
<blockquote class="tr_bq">
<i>$ sudo dispmanx_vncserver -p [port number]</i></blockquote>
<br />
<br />
<b>Screen resolution</b> config on /boot/config.txt<br />
<b><u><br /></u></b>
<u style="font-weight: bold;">Example</u> (1280x1024)<br />
<blockquote class="tr_bq">
<pre>#HDMI force hotplug
hdmi_force_hotplug=1
# Group DMT
hdmi_group=2
# mode 35 - 1280x1024 60Hz
hdmi_mode=35
</pre>
</blockquote>
Reboot after save config.<br />
<br />
<b>Reference:</b><br />
<br />
dispmanx_vnc<br />
<i><a href="https://github.com/hanzelpeter/dispmanx_vnc">https://github.com/hanzelpeter/dispmanx_vnc</a></i><br />
<br />
<i><a href="https://github.com/Na1w/dispmanx_vnc">https://github.com/Na1w/dispmanx_vnc</a></i><br />
<br />
Raspberry PI Document configuration config.txt<br />
<i><a href="https://www.raspberrypi.org/documentation/configuration/config-txt.md">https://www.raspberrypi.org/documentation/configuration/config-txt.md</a></i>Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com3tag:blogger.com,1999:blog-2985492273267844353.post-84744006437188811752015-07-16T18:13:00.001+07:002015-07-18T21:37:55.873+07:00How to use VNC Server on Raspberry PIIf you want to remote to Raspbian with X Windows Desktop, you can use vnc server.<br />
<br />
<b>Install TightVNC Server</b>.<br />
<br />
<blockquote class="tr_bq">
<i>$ sudo apt-get install tightvncserver</i></blockquote>
<br />
After install finished.<br />
<br />
<b>Start vncserver</b>.<br />
<br />
<blockquote class="tr_bq">
<i>$ tightvncserver :<DISPLAY NUMBER></i></blockquote>
<br />
<b>Example</b>: Start VNC Server on Display number 1 or port 5901 run with pi user.<br />
<blockquote>
<pre><i>$ tightvncserver :1
You will require a password to access your desktops.
Password:
Verify:
Would you like to enter a view-only password (y/n)? n
New 'X' desktop is raspberrypi:1
Creating default startup script /home/pi/.vnc/xstartup
Starting applications specified in /home/pi/.vnc/xstartup
Log file is /home/pi/.vnc/raspberrypi:1.log</i>
</pre>
</blockquote>
<div>
<br />
On first time run script. Program will ask password for connect to VNC Server and ask view-only mode for this password.<br />
<br />
<br />
<br />
After run tightvncserver. You can use TightVNC Viewer or VNC Client for remote to server.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgotNRF07ICqzSwuv3IHVsOBckISgup5Kfi5BkxoBg_DS6WXMkjJn_qWf7_YOweg4FP4G-sjO-vSghuhqV5k2qX0BN2zxaRO2GGsKVhI05WynMt0cc6P5tlpQxrpgswYSOzhu5RhTBifKPj/s1600/vncclient01.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="143" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgotNRF07ICqzSwuv3IHVsOBckISgup5Kfi5BkxoBg_DS6WXMkjJn_qWf7_YOweg4FP4G-sjO-vSghuhqV5k2qX0BN2zxaRO2GGsKVhI05WynMt0cc6P5tlpQxrpgswYSOzhu5RhTBifKPj/s320/vncclient01.png" width="320" /></a></div>
<div style="text-align: center;">
<i>Enter IP Address : Display number and Connect</i></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUMaAYj0LJCXN6_AV54WgWTIhOarkCv3beM6rOeorDCvlS5uimSxLe0KuiVrJ6lnHfd3qGliVFMm1xCGjJOisRW1b4d9leIEsaRsqi9bfmsm3IaTmrktZG8QT4i1JFSVv-Hx2LeTMPQyNg/s1600/vncclient02.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUMaAYj0LJCXN6_AV54WgWTIhOarkCv3beM6rOeorDCvlS5uimSxLe0KuiVrJ6lnHfd3qGliVFMm1xCGjJOisRW1b4d9leIEsaRsqi9bfmsm3IaTmrktZG8QT4i1JFSVv-Hx2LeTMPQyNg/s1600/vncclient02.png" /></a></div>
<div style="text-align: center;">
<i>Enter Password and OK</i></div>
<div style="text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvB41ZnL_UTS3ayNiSwkXSDRwtX7XLBLPUU3A_zJtTANCetX-rX6Y3of7p8V_5ghCHp1IlunWiECB2Kkaz6WtJ4coyU-JrmOGWuFvMpdUMvfVHR-0zr3LwICIhyq6eFrUxiFpGpMWBwcKN/s1600/vncclient03.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="239" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvB41ZnL_UTS3ayNiSwkXSDRwtX7XLBLPUU3A_zJtTANCetX-rX6Y3of7p8V_5ghCHp1IlunWiECB2Kkaz6WtJ4coyU-JrmOGWuFvMpdUMvfVHR-0zr3LwICIhyq6eFrUxiFpGpMWBwcKN/s320/vncclient03.png" width="320" /></a></div>
<div style="text-align: center;">
<i>Connected to VNC Server</i></div>
<br />
<br />
If you want to change vnc password for remote, use this command.<br />
<blockquote class="tr_bq">
<pre><i>$ tightvncpasswd
Using password file /home/pi/.vnc/passwd
Password:
Verify:
Would you like to enter a view-only password (y/n)? n</i>
</pre>
</blockquote>
<br />
<u>VNC Password File</u> save on <i>/<User Directory>/.vnc/passwd</i></div>
<div>
<br />
<br />
<b>Stop VNC Server</b><br />
<br />
<blockquote class="tr_bq">
<i>$ tightvncserver -kill :<DISPLAY NUMBER></i></blockquote>
<br />
<b>Example : </b>Stop VNC Server Display number 1<br />
<br />
<blockquote class="tr_bq">
<i>$ tightvncserver -kill :1</i></blockquote>
<b><br /></b>
<b>Screen resolution of VNC.</b></div>
<div>
Start VNC Server with option.</div>
<div>
<br /></div>
<div>
<blockquote class="tr_bq">
<i>$ tightvncserver -geometry <width>x<height> -depth <color depth></i></blockquote>
</div>
<div>
<br /></div>
<div>
<b>Example</b></div>
<div>
<br /></div>
<div>
<blockquote class="tr_bq">
<i>$ tightvncserver -geometry 1280x720 -depth 16 :1</i></blockquote>
</div>
<div>
<br />
<b>Reference :</b><br />
<b><br /></b>
TightVNC<br />
<a href="http://tightvnc.org/"><i>http://tightvnc.org/</i></a><br />
<br />
<br /></div>
Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com0tag:blogger.com,1999:blog-2985492273267844353.post-46434372541469605322015-07-07T17:31:00.002+07:002015-07-07T17:42:27.813+07:00How to use DS3231 I2C Real Time Clock<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-QvBXUPZ2kMU_yRd4-0lTx5OmeGDraxXQ-SyUoHrs-HtX4jzpj9LXP-Utp60D9-p-lkf6EzoigTa5EzLSOqHkXezIsCVNQgdryXZuDBbFPxJ7xZhn-rNTADFusLtMAtnhke1iJazNB270/s1600/RTC_DS3231.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-QvBXUPZ2kMU_yRd4-0lTx5OmeGDraxXQ-SyUoHrs-HtX4jzpj9LXP-Utp60D9-p-lkf6EzoigTa5EzLSOqHkXezIsCVNQgdryXZuDBbFPxJ7xZhn-rNTADFusLtMAtnhke1iJazNB270/s1600/RTC_DS3231.png" /></a></div>
<br />
<br />
<b>Before use DS3231 I2C Real Time Clock. Enable I2C Interface.</b><br />
<br />
<div>
On new kernel use Device Tree Overlays.<br />
<br /></div>
<div>
Edit on /boot/config.txt.</div>
<div>
<br /></div>
<div>
add new line</div>
<div>
<br /></div>
<blockquote class="tr_bq">
device_tree_param=i2c1=on<br />
dtoverlay=i2c-rtc,ds3231</blockquote>
<div>
<i><br /></i><i>Reference : <a href="https://github.com/raspberrypi/firmware/tree/master/boot/overlays">https://github.com/raspberrypi/firmware/tree/master/boot/overlays</a></i><br />
<br />
<div>
Edit on /etc/modprobe.d/raspi-blacklist.conf</div>
<div>
<br /></div>
<div>
add # (comment) on line "blacklist i2c-bcm2708"</div>
<div>
<br /></div>
<blockquote class="tr_bq">
#blacklist i2c-bcm2708</blockquote>
<div>
<br /></div>
<div>
Reboot Raspberry PI</div>
<div>
<br /></div>
<blockquote class="tr_bq">
sudo shutdown -r now</blockquote>
<div>
<br /></div>
<div>
Re-Check I2C Interface software</div>
<div>
<br /></div>
<blockquote class="tr_bq">
$ dmesg | grep i2c<br />
[ 5.505513] bcm2708_i2c 20804000.i2c: BSC1 Controller at 0x20804000 (irq 79) (baudrate 100000)<br />
[ 11.969815] i2c /dev entries driver</blockquote>
<div>
<br /></div>
<blockquote class="tr_bq">
$ lsmod<br />
i2c_bcm2708 6244 0</blockquote>
<div>
<br /></div>
<div>
If you found, software is enabled.<br />
<br />
<br />
Install DS3231 I2C RTC to Raspberry PI<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_FGsuw1UPvUv-LUgW9W7QVKw0_TRdkWsWuiFTgmNI_RHktPtD9DPhUGnKXodx_M85w4QI7sgIYFXcjre7TAKtqYEzjiHyOW-peFJpfhdTBrwyParAf8iHXRVZYp6zVaAYcMWQLrDR-Srh/s1600/RTC_DS3231_2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="286" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_FGsuw1UPvUv-LUgW9W7QVKw0_TRdkWsWuiFTgmNI_RHktPtD9DPhUGnKXodx_M85w4QI7sgIYFXcjre7TAKtqYEzjiHyOW-peFJpfhdTBrwyParAf8iHXRVZYp6zVaAYcMWQLrDR-Srh/s320/RTC_DS3231_2.png" width="320" /></a></div>
<br />
<br />
Test to get time from RTC Module.<br />
<br />
<blockquote class="tr_bq">
$ sudo hwclock -r </blockquote>
<blockquote class="tr_bq">
Tue 07 Jul 2015 05:20:09 PM ICT -0.397656 seconds </blockquote>
<br />
If you want to current time of Raspberry PI to RTC Module.<br />
<br />
<blockquote class="tr_bq">
$ sudo hwclock -w</blockquote>
<br />
If you want to set time of RTC Module to Raspberry PI.<br />
<br />
<blockquote class="tr_bq">
$ sudo hwclock -s</blockquote>
<br />
You can set time of RTC Module to Raspberry PI on startup.<br />
<br />
Edit on file /etc/rc.local<br />
Add line<br />
<br />
<blockquote class="tr_bq">
/sbin/hwclock -s</blockquote>
<br />
before line "exit 0"<br />
<br />
<br />
<b><i>Reference :</i></b><br />
<i>Device Tree overlays of Raspberry PI Firmware</i><br />
<i><a href="https://github.com/raspberrypi/firmware/tree/master/boot/overlays">https://github.com/raspberrypi/firmware/tree/master/boot/overlays</a></i><br />
<i>Adding a hardware clock to Raspberry Pi (DS3231)</i><br />
<a href="http://www.drewkeller.com/blog/adding-hardware-clock-raspberry-pi-ds3231"><i>http://www.drewkeller.com/blog/adding-hardware-clock-raspberry-pi-ds3231</i></a><br />
<i>Adding a DS3231 Real Time Clock To The Raspberry Pi</i><br />
<a href="http://www.raspberrypi-spy.co.uk/2015/05/adding-a-ds3231-real-time-clock-to-the-raspberry-pi/"><i>http://www.raspberrypi-spy.co.uk/2015/05/adding-a-ds3231-real-time-clock-to-the-raspberry-pi/</i></a><br />
<i>Using an I2C Real Time Clock (RTC) with a Raspberry Pi</i><br />
<a href="https://nicegear.co.nz/blog/using-an-i2c-real-time-clock-rtc-with-a-raspberry-pi/"><i>https://nicegear.co.nz/blog/using-an-i2c-real-time-clock-rtc-with-a-raspberry-pi/</i></a></div>
</div>
Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com2tag:blogger.com,1999:blog-2985492273267844353.post-41444426338023427162015-07-07T15:00:00.000+07:002018-09-28T00:59:44.390+07:00How to use RFID-RC522 on Raspbian<div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhABBw2MtgCzQdimXUuGvwSF1bmJ-THgh9hyuNE_vdAoZhR_cI1u0UQyXAxzXNhUdq2N7nmj9mXILLTTtfefFJ2hz93sVyeleHYHx-rFaLG_A8Yax9-bHInKXEVQM8m3fgJcWRJbTLSPzLT/s1600/1436255843564.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhABBw2MtgCzQdimXUuGvwSF1bmJ-THgh9hyuNE_vdAoZhR_cI1u0UQyXAxzXNhUdq2N7nmj9mXILLTTtfefFJ2hz93sVyeleHYHx-rFaLG_A8Yax9-bHInKXEVQM8m3fgJcWRJbTLSPzLT/s640/1436255843564.jpg" /></a></div>
<b><br /></b>
<b><br /></b>
<b>Before use RFID-RC522. Enable SPI Interface (Update 2018-09-28)</b></div>
<div>
<br />
Current kernel in document (<i>Raspbian GNU/Linux 9 Kernel Version 4.14.70-v7+ #1144</i>)<br />
<br />
<u>Enable SPI Interface</u><br />
- Use command<br />
<blockquote class="tr_bq">
<i>$ sudo raspi-config</i></blockquote>
select menu<br />
<blockquote class="tr_bq">
<i>5 Interfacing Options -> SPI -> Yes -> OK -> Finish</i></blockquote>
Or<br />
<br />
- Edit on /boot/config.txt.</div>
<div>
<br /></div>
<div>
change this line</div>
<div>
<br /></div>
<blockquote class="tr_bq">
<i>dtparam=spi=on</i></blockquote>
<div>
<i><br /></i>
<i>Reference : <a href="https://github.com/raspberrypi/firmware/tree/master/boot/overlays">https://github.com/raspberrypi/firmware/tree/master/boot/overlays</a></i></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<strike>Edit on /etc/modprobe.d/raspi-blacklist.conf</strike></div>
<div>
<strike><br /></strike></div>
<div>
<strike>add # (comment) on line "blacklist spi-bcm2708"</strike></div>
<div>
<strike><br /></strike></div>
<blockquote class="tr_bq">
<strike>#blacklist spi-bcm2708</strike></blockquote>
<div>
<br /></div>
<div>
Reboot Raspberry PI</div>
<div>
<br /></div>
<blockquote class="tr_bq">
<i>sudo shutdown -r now</i></blockquote>
<div>
<br /></div>
<div>
Re-Check SPI Interface software</div>
<div>
<br /></div>
<blockquote class="tr_bq">
<strike>$ dmesg | grep spi</strike><br />
<strike>[ 5.408904] bcm2708_spi 20204000.spi: master is unqueued, this is deprecated</strike><br />
<strike>[ 5.659213] bcm2708_spi 20204000.spi: SPI Controller at 0x20204000 (irq 80)</strike></blockquote>
<div>
<br /></div>
<blockquote class="tr_bq">
<i>$ lsmod | grep spi</i><br />
spidev 16384 0<br />
spi_bcm2835 16384 0<br />
<div>
<br /></div>
</blockquote>
<div>
<br /></div>
<div>
If you found, software is enabled.</div>
<div>
<br /></div>
<div>
<b>Install Software for use RFID-RC522</b></div>
<div>
<strike>Install python-dev</strike></div>
<div>
<strike><br /></strike></div>
<blockquote class="tr_bq">
<strike>sudo apt-get install python-dev</strike></blockquote>
<div>
<br /></div>
<div>
<strike>Install SPI-Py (Hardware SPI as a C Extension for Python)</strike></div>
<div>
<strike><br /></strike></div>
<blockquote class="tr_bq">
<strike>git clone https://github.com/lthiery/SPI-Py.git</strike><br />
<strike>cd SPI-Py</strike><br />
<strike>sudo python setup.py install</strike></blockquote>
<div>
<br /></div>
<div>
<strike>Install MFRC522-python</strike></div>
<div>
<strike><br /></strike></div>
<blockquote class="tr_bq">
<strike>git clone https://github.com/mxgxw/MFRC522-python.git </strike></blockquote>
<blockquote class="tr_bq">
<strike>cd MFRC522-python</strike> </blockquote>
<br />
Install Python RC522 library<br />
<br />
<blockquote class="tr_bq">
<i>$ git clone https://github.com/ondryaso/pi-rc522.git</i><br />
<i>$ cd pi-rc522</i><br />
<i>$ sudo python setup.py install</i></blockquote>
<br />
<div>
<br /></div>
<div>
Install Pins between Raspberry PI and RFID-RC522</div>
<div>
<br /></div>
<div>
<table><thead>
<tr><th><blockquote class="tr_bq">
RFID-RC522 Pin</blockquote>
</th>
<th><blockquote>
Raspberry PI Pin</blockquote>
</th>
<th><blockquote>
Raspberry PI Pin name</blockquote>
</th>
</tr>
</thead><tbody>
<tr>
<td><blockquote>
SDA</blockquote>
</td>
<td><blockquote>
24</blockquote>
</td>
<td><blockquote>
GPIO8</blockquote>
</td>
</tr>
<tr>
<td><blockquote>
SCK</blockquote>
</td>
<td><blockquote>
23</blockquote>
</td>
<td><blockquote>
GPIO11</blockquote>
</td>
</tr>
<tr>
<td><blockquote>
MOSI</blockquote>
</td>
<td><blockquote>
19</blockquote>
</td>
<td><blockquote>
GPIO10</blockquote>
</td>
</tr>
<tr>
<td><blockquote>
MISO</blockquote>
</td>
<td><blockquote>
21</blockquote>
</td>
<td><blockquote>
GPIO9</blockquote>
</td>
</tr>
<tr>
<td><blockquote>
<b>IRQ</b></blockquote>
</td>
<td><blockquote>
<b> 18</b></blockquote>
</td>
<td><blockquote>
<b> GPIO24</b></blockquote>
</td>
</tr>
<tr>
<td><blockquote>
GND</blockquote>
</td>
<td><blockquote>
Any</blockquote>
</td>
<td><blockquote>
Any Ground</blockquote>
</td>
</tr>
<tr>
<td><blockquote>
RST</blockquote>
</td>
<td><blockquote>
22</blockquote>
</td>
<td><blockquote>
GPIO25</blockquote>
</td>
</tr>
<tr>
<td><blockquote>
3.3V</blockquote>
</td>
<td><blockquote>
1</blockquote>
</td>
<td><blockquote>
3V3</blockquote>
</td></tr>
</tbody></table>
</div>
<div>
<br /></div>
<div>
You can test read card.</div>
<br />
<blockquote class="tr_bq">
<i>$ cd examples</i><br />
<i>$ python Read.py</i><br />
Starting</blockquote>
<br />
<div>
If touch the card, it will display.</div>
<div>
<br /></div>
<div>
<blockquote class="tr_bq">
Detected: 10<br />
Card read UID: XX,XX,XX,XX<br />
Setting tag<br />
Selecting UID [XX, XX, XX, XX, XX]<br />
<br />
Authorizing<br />
Changing used auth key to [XX, XX, XX, XX, XX, XX] using method B<br />
<br />
Reading<br />
Calling card_auth on UID [XX, XX, XX, XX, XX]<br />
S1B0: [0, 0, 105, 36, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]<br />
<br />
Deauthorizing<br />
Changing auth key and method to None<br />
^C<br />
Ctrl+C captured, ending read.</blockquote>
</div>
<div>
<br /></div>
<div>
And test write card.</div>
<div>
<br /></div>
<div>
<blockquote class="tr_bq">
<i>$ python KeyChange.py</i><br />
Starting<br />
<br />
Detected: 10<br />
Card read UID: XX,XX,XX,XX<br />
Setting tag<br />
Selecting UID [XX, XX, XX, XX, XX]<br />
<br />
Authorizing<br />
Changing used auth key to [255, 255, 255, 255, 255, 255] using method A<br />
<br />
Writing modified bytes<br />
Calling card_auth on UID [XX, XX, XX, XX, XX]<br />
Changing pos 2 with current value 0 to 105<br />
Changing pos 3 with current value 0 to 36<br />
Changing pos 4 with current value 0 to 64<br />
Writing [0, 0, 105, 36, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] to S1B0<br />
Not calling card_auth - already authed<br />
S1B0: [0, 0, 105, 36, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]<br />
Calling card_auth on UID [XX, XX, XX, XX, XX]<br />
Changing pos 0 with current value 0 to 18<br />
Changing pos 1 with current value 0 to 52<br />
Changing pos 2 with current value 0 to 86<br />
Changing pos 3 with current value 0 to 120<br />
Changing pos 4 with current value 0 to 150<br />
Changing pos 5 with current value 0 to 146<br />
Changing pos 6 with current value 255 to 15<br />
Changing pos 7 with current value 7 to 7<br />
Changing pos 8 with current value 128 to 143<br />
Changing pos 9 with current value 105 to 105<br />
Changing pos 10 with current value 255 to 116<br />
Changing pos 11 with current value 255 to 0<br />
Changing pos 12 with current value 255 to 82<br />
Changing pos 13 with current value 255 to 53<br />
Changing pos 14 with current value 255 to 0<br />
Changing pos 15 with current value 255 to 255<br />
Writing [18, 52, 86, 120, 150, 146, 15, 7, 143, 105, 116, 0, 82, 53, 0, 255] to S1B3<br />
Changing auth key and method to None<br />
Stopping crypto1<br />
<div>
<br /></div>
</blockquote>
</div>
<div>
You can learning python code for use RFID read and write data.</div>
<div>
<br /></div>
<div>
<i>MIFARE (MFRC522) datasheet : <a class="postlink" href="http://www.nxp.com/documents/data_sheet/MFRC522.pdf">http://www.nxp.com/documents/data_sheet/MFRC522.pdf</a></i></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<i>Python RC522 library</i> : <i><a href="https://github.com/ondryaso/pi-rc522">https://github.com/ondryaso/pi-rc522</a></i></div>
<div>
<br /></div>
<div>
<br />
<br />
<b>Example Project for use NFC and Raspberry PI</b><br />
<br />
<br />
<ul>
<li>Attendance system using Raspberry Pi and NFC Tag reader <i>by Yim</i></li>
</ul>
<br />
<i><a href="http://www.instructables.com/id/Attendance-system-using-Raspberry-Pi-and-NFC-Tag-r/">http://www.instructables.com/id/Attendance-system-using-Raspberry-Pi-and-NFC-Tag-r/</a></i></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<i><b>Reference : </b></i></div>
<div>
<i><b><br /></b></i></div>
<div>
<i>Device Tree overlays of Raspberry PI Firmware</i></div>
<div>
<i><a href="https://github.com/raspberrypi/firmware/tree/master/boot/overlays">https://github.com/raspberrypi/firmware/tree/master/boot/overlays</a></i><br />
<div>
<i>Python RC522 library (PI-RC522)</i></div>
<div>
<i><a href="https://github.com/ondryaso/pi-rc522">https://github.com/ondryaso/pi-rc522</a></i></div>
</div>
<div>
<i>MIFARE </i><i>(MFRC522) </i><i>datasheet</i></div>
<div>
<i><a class="postlink" href="http://www.nxp.com/documents/data_sheet/MFRC522.pdf">http://www.nxp.com/documents/data_sheet/MFRC522.pdf</a></i><br />
<div>
<br />
<br /></div>
<div>
</div>
<div>
<i>MFRC522-python </i><i><span style="color: red;">(current not support in new firmware)</span></i></div>
<div>
<i><a href="https://github.com/mxgxw/MFRC522-python">https://github.com/mxgxw/MFRC522-python</a></i><br />
<div>
<i>SPI-PY</i></div>
<div>
<i><a href="https://github.com/lthiery/SPI-Py">https://github.com/lthiery/SPI-Py</a></i></div>
</div>
</div>
<div>
<br /></div>
<div>
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com36tag:blogger.com,1999:blog-2985492273267844353.post-9067456563081772482013-11-10T23:05:00.004+07:002015-07-07T18:21:58.103+07:00Geniatech DVB-T2 Stick T220 for OpenELEC on Raspberry Pi<span style="font-family: sans-serif;">Linux kernel 3.14 and later is support Geniatech DVB-T2 Stick T220 Driver.</span><div style="font-family: sans-serif;"><br><div>Current version of OpenELEC support it.<br><br><b>Raspberrypi kernel source code</b><br><a class="postlink" href="https://github.com/raspberrypi/linux/tree/rpi-3.14.y" style="background-color: rgb(252, 252, 252); color: rgb(139, 0, 0); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 13px; line-height: 19.239999771118164px;">https://github.com/raspberrypi/linux</a></div><div><br></div></div>
If you use OpenELEC, current firmware (version 4.0.x and later) is support this device.<br>
<br style="background-color: #fcfcfc; color: #333333; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 13px; line-height: 19.239999771118164px;">
<span style="background-color: #fcfcfc; color: #333333; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 13px; line-height: 19.239999771118164px;">See on </span><a class="postlink" href="http://openelec.tv/news/22-releases/129-openelec-4-0-4-released" style="background-color: #fcfcfc; color: darkred; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 13px; line-height: 19.239999771118164px;">http://openelec.tv/news/22-releases/129-openelec-4-0-4-released</a><br>
<br>
<br>
<b><i>Below for old firmware (OpenELEC version 3.xx).</i></b><br>
<br>
OpenELEC have not Geniatech DVB-T2 Stick T220 Driver.<br>
I want to use DVB-T2 on OpenELEC with tvheadend.<br>
I try to extract Geniatech DVB-T2 Stick T220 driver from CrazyCat<br>
<a href="https://bitbucket.org/CrazyCat/s2-liplianin-v39" title="s2-liplianin-v39 (CrazyCat)">https://bitbucket.org/CrazyCat/s2-liplianin-v39</a><br>
And create patch file for patch in OpenELEC.<br>
<br>
Download : <a href="https://www.dropbox.com/s/8o0uof5wsg0oesp/linux-215-t220-new.patch.zip" title="Geniatech DVB-T2 Stick T220 driver">Geniatech DVB-T2 Stick T220 driver patch file</a><br>
<br>
First Step.<br>
Get OpenELEC Source.<br>
(<a href="http://wiki.openelec.tv/index.php?title=Building_and_Installing_OpenELEC_for_Raspberry_Pi" title="Building and Installing OpenELEC for Raspberry Pi">More Information see on Building and Installing OpenELEC for Raspberry Pi on Wiki</a>)
<br>
<blockquote>
git clone git://github.com/OpenELEC/OpenELEC.tv.git</blockquote>
After get OpenELEC Source.<br>
Download t220 driver patch file and Extract zip file.<br>
Copy linux-215-t220-new.patch file to OpenELEC.tv/packages/linux/patches/<kernel version>/linux-215-t220-new.patch<br>
Build OpenELEC image.
<br>
<blockquote>
cd OpenELEC.tv</blockquote>
<blockquote>
PROJECT=RPi ARCH=arm PVR=yes make release</blockquote>
After build image finished.<br>
Image created on OpenELEC.tv/target path.<br>
Install image to SDCARD for Test.Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com0tag:blogger.com,1999:blog-2985492273267844353.post-76152455681041554352013-11-10T23:01:00.002+07:002015-07-07T18:21:55.594+07:00Geniatech DVB-T2 Stick T220 for RaspbianLinux kernel 3.14 and later is support Geniatech DVB-T2 Stick T220 Driver.<div><br><div>Current version of Raspbian support it.<br>
<br>
<b>Raspberry PI kernel source code</b><br>
<a class="postlink" href="https://github.com/raspberrypi/linux/tree/rpi-3.14.y" style="background-color: #fcfcfc; color: darkred; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 13px; line-height: 19.239999771118164px;">https://github.com/raspberrypi/linux</a><div><br>
<b><i>Below for old kernel.</i></b><br>
<br>
I try to find driver for <strong>Geniatech DVB-T2 Stick T220 on Raspbian</strong>.
<a href="http://www.geniatech.com/pa/t220.asp">http://www.geniatech.com/pa/t220.asp</a><br>
On product website. It's not have driver for linux.<br>
I found driver on this website.<br>
Source Driver from CrazyCat <a href="https://bitbucket.org/CrazyCat/s2-liplianin-v39">https://bitbucket.org/CrazyCat/s2-liplianin-v39</a><br>
I test compile and install modules.<br>
Now It's work for me.<br>
<br>
And I try change some code on file dw2102.c for raspberry pi kernel code for t220 driver.<br>
Raspberry PI Kernel source <a href="https://github.com/raspberrypi/linux">https://github.com/raspberrypi/linux</a>
and recompile for test it.<br>
Now It's work for me.<br>
I upload source code and kernel module for this developer and product user on below link.<br>
<br>
<a href="https://www.dropbox.com/s/yxpt1qs43nwnoeh/t220_new_modules.zip" target="_blank" title="T220 Driver Kernel Module">T220 Driver Kernel Module (New) (Update 2013/11/08)</a><br>
How to install driver new module (I compile on kernel 3.6.11)
<br>
<blockquote class="tr_bq">
<ol>
<li>backup original driver (/lib/modules/3.6.11+/kernel/drivers/media/dvb/dvb-usb/dvb-usb-dw2102.ko)</li>
<li>backup original driver (/lib/modules/3.6.11+/kernel/drivers/media/dvb/frontends/cxd2820r.ko)</li>
<li>backup original driver (/lib/modules/3.6.11+/kernel/drivers/media/common/tuners/tda18271.ko) </li>
<li>extract t220_new_modules.zip (I will found cxd2820r.ko, tda18271.ko and dvb-usb-dw2102.ko)</li>
<li>sudo rm -f /lib/modules/3.6.11+/kernel/drivers/media/dvb/dvb-usb/dvb-usb-dw2102.ko </li>
<li>sudo rm -f /lib/modules/3.6.11+/kernel/drivers/media/dvb/frontends/cxd2820r.ko </li>
<li>sudo rm -f /lib/modules/3.6.11+/kernel/drivers/media/common/tuners/tda18271.ko </li>
<li>sudo install -c -D -m 644 -c dvb-usb-dw2102.ko /lib/modules/3.6.11+/kernel/drivers/media/dvb/dvb-usb/ </li>
<li>sudo install -c -D -m 644 -c cxd2820r.ko /lib/modules/3.6.11+/kernel/drivers/media/dvb/frontends/ </li>
<li>sudo install -c -D -m 644 -c tda18271.ko /lib/modules/3.6.11+/kernel/drivers/media/common/tuners/ </li>
<li>sudo /sbin/depmod -a</li>
</ol>
</blockquote>
<a href="https://www.dropbox.com/s/7t8hf2hxni0xijh/dw2102_data.zip">T220 Driver Kernel Module (Old)</a><br>
How to install driver module (I compile on kernel 3.6.11)
<br>
<blockquote class="tr_bq">
<ol>
<li>backup original driver (/lib/modules/3.6.11+/kernel/drivers/media/dvb/dvb-usb/dvb-usb-dw2102.ko) </li>
<li>extract dw2102.zip (I will found dw2102.c and dvb-usb-dw2102.ko) </li>
<li>sudo rm -f /lib/modules/3.6.11+/kernel/drivers/media/dvb/dvb-usb/dvb-usb-dw2102.ko </li>
<li>sudo install -c -D -m 644 -c dvb-usb-dw2102.ko /lib/modules/3.6.11+/kernel/drivers/media/dvb/dvb-usb/ </li>
<li>sudo /sbin/depmod -a</li>
</ol>
</blockquote>
Now it's complete for install module.<br>
For compile kernel module replace dw2102.c replace on <kernel path>/drivers/media/dvb/dvb-usb/dw2102.c</div></div></div>Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com0tag:blogger.com,1999:blog-2985492273267844353.post-6218714273191410972013-11-10T22:51:00.002+07:002013-11-11T10:51:14.252+07:00Automount NTFS Filesystem with usbmount on plug-in USB Storage Devices<strong>First step.</strong> Install usbmount package on Raspbian with below command
<br />
<blockquote>
sudo apt-get -y install usbmount fuse ntfs-3g</blockquote>
After install usbmount package.<br />
Problem about default configure of usbmount.<br />
It cannot automount NTFS Filesystem.<br />
Modify configure of usbmount for mount NTFS Filesystem on /etc/usbmount/usbmount.conf with Editor.
<br />
<br />
Find this line
<br />
<blockquote>
FILESYSTEMS="vfat ext2 ext3 ext4 hfsplus"</blockquote>
Change to
<br />
<blockquote>
FILESYSTEMS="vfat ext2 ext3 ext4 hfsplus <strong>ntfs fuseblk</strong>"</blockquote>
And Restart OS for force take effect.
<br />
<blockquote>
sudo shutdown -r now</blockquote>
Finish Step.<br />
Test plug-in USB Storage Devices with NTFS Filesystem.<br />
It can automount on /media/usb0<br />
For change default path of automount usb devices (/media/usb<number>)<br />
Modify /etc/usbmount/usbmount.conf with Editor again.<br />
<br />
Find this line
<br />
<blockquote>
MOUNTPOINTS="/media/usb0 /media/usb1 /media/usb2 /media/usb3
/media/usb4 /media/usb5 /media/usb6 /media/usb7"</blockquote>
It can change to other location, if you want.<br />
Sequence of mountpoint left to right.<br />
<br />
device 1 -> /media/usb0<br />
device 2 -> /media/usb1<br />
...<br />
<br />
If it don't umounted usb device and unplug it, mountpoint is not umount.<br />
It cannot use this mountpoint on other device.<br />
<strong>Please umount mountpoint before unplug usb device.</strong>Chanchaihttp://www.blogger.com/profile/03163331680407578992noreply@blogger.com0