tag:blogger.com,1999:blog-19267825483111363212024-02-21T16:08:07.406+09:00nekomimip@nicの雑記帳ガジェットとかのいじった記録nekomimip@nichttp://www.blogger.com/profile/15526312232201799401noreply@blogger.comBlogger7125tag:blogger.com,1999:blog-1926782548311136321.post-50596322962083809592016-10-26T09:27:00.001+09:002016-10-26T09:29:44.215+09:00新強震モニタから緊急地震速報を手に入れるスクリプトまあ、あまり賢くない方法です。<br />
<br />
これを1秒ごとにloopでぶん回せば<br />
<a href="http://www45.atwiki.jp/kaeru_jishin/m/pages/30.html?guid=on">SignalnowExpressっぽい書式</a>で手に入ります。<br />
<br />
<table style="background-color: #aaaaaa; color: black; font-size: small;"><tbody>
<tr class="atwiki_tr_odd atwiki_tr_1"><td rowspan="2" style="background-color: white; padding: 2px;">データ受信:</td><td style="background-color: white; padding: 2px;">01</td><td style="background-color: white; padding: 2px;">37</td><td style="background-color: white; padding: 2px;">00</td><td style="background-color: white; padding: 2px;">110523142212</td><td style="background-color: white; padding: 2px;">110523142054</td><td style="background-color: white; padding: 2px;">ND20110523142114</td><td style="background-color: white; padding: 2px;">9</td><td style="background-color: white; padding: 2px;">06</td><td style="background-color: white; padding: 2px;">N382</td><td style="background-color: white; padding: 2px;">E1423</td><td style="background-color: white; padding: 2px;">010</td><td style="background-color: white; padding: 2px;">52</td><td style="background-color: white; padding: 2px;">665</td><td style="background-color: white; padding: 2px;">14</td><td style="background-color: white; padding: 2px;"></td></tr>
<tr class="atwiki_tr_even atwiki_tr_2"><td style="background-color: white; padding: 2px;">発<br />信<br />官<br />署</td><td style="background-color: white; padding: 2px;">電<br />文<br />種<br />別</td><td style="background-color: white; padding: 2px;">訓<br />練<br />等<br />の<br />~</td><td style="background-color: white; padding: 2px;">電文発表時刻</td><td style="background-color: white; padding: 2px;">地震発生時刻</td><td style="background-color: white; padding: 2px;">地震ID</td><td style="background-color: white; padding: 2px;">発<br />表<br />状<br />況</td><td style="background-color: white; padding: 2px;">x報</td><td style="background-color: white; padding: 2px;">緯度</td><td style="background-color: white; padding: 2px;">経度</td><td style="background-color: white; padding: 2px;">震源の深さ</td><td style="background-color: white; padding: 2px;">M</td><td style="background-color: white; padding: 2px;">フラグ*3</td><td style="background-color: white; padding: 2px;"></td><td style="background-color: white; padding: 2px;">/の有無<br />エリアコード<br /></td></tr>
</tbody></table>
<br />
sed, wget, jq, bcが必要です。<br />
<br />
<span style="font-size: xx-small;">#!/bin/bash</span><br />
<span style="font-size: xx-small;"><br /></span>
<span style="font-size: xx-small;">EEWURL="http://www.kmoni.bosai.go.jp/new/webservice/hypo/eew/"`date "+%Y%m%d%H%M%S"`".json"</span><br />
<span style="font-size: xx-small;">EQGET=`wget $EEWURL -q -O -`</span><br />
<span style="font-size: xx-small;">PRMT=`echo $EQGET | jq -r .result.message`</span><br />
<br />
<span style="font-size: xx-small;">if [ "$PRMT" = "" ]</span><br />
<span style="font-size: xx-small;"> then</span><br />
<span style="font-size: xx-small;"> EQR1=(`echo $EQGET | jq -r '.result.status, .report_time, .longitude, .is_cancel, .depth, .is_training, .latitude, .origin_time, .magunitude, .report_num, .report_id, .alertflg'`)</span><br />
<span style="font-size: xx-small;"> if [ "${EQR1[0]}" = "success" ]</span><br />
<span style="font-size: xx-small;"> then</span><br />
<span style="font-size: xx-small;"> EQR2=()</span><br />
<span style="font-size: xx-small;"> EQR2+=( 01 )</span><br />
<span style="font-size: xx-small;"><br /></span>
<span style="font-size: xx-small;"> if [ "${EQR1[4]}" = "true" ]</span><br />
<span style="font-size: xx-small;"> then</span><br />
<span style="font-size: xx-small;"> EQR2+=( 3910 )</span><br />
<span style="font-size: xx-small;"> EQR2+=( `echo ${EQR1[1]}${EQR1[2]} | sed -e 's/\///g' -e 's/://g' -e 's/^..//'` )</span><br />
<span style="font-size: xx-small;"> EQR2+=( `echo ${EQR1[8]} | sed -e 's/^..//'` )</span><br />
<span style="font-size: xx-small;"> EQR2+=( `echo "ND"${EQR1[11]}"0"` )</span><br />
<span style="font-size: xx-small;"> EQR2+=( `printf %02d ${EQR1[10]}` )</span><br />
<span style="font-size: xx-small;"> EQR2+=( "///////////////////" )</span><br />
<span style="font-size: xx-small;"> else</span><br />
<span style="font-size: xx-small;"> EQR2+=( 3X00 )</span><br />
<span style="font-size: xx-small;"> EQR2+=( `echo ${EQR1[1]}${EQR1[2]} | sed -e 's/\///g' -e 's/://g' -e 's/^..//'` )</span><br />
<span style="font-size: xx-small;"> EQR2+=( `echo ${EQR1[8]} | sed -e 's/^..//'` )</span><br />
<span style="font-size: xx-small;"> EQR2+=( `echo "ND"${EQR1[11]}"0"` )</span><br />
<span style="font-size: xx-small;"> EQR2+=( `printf %02d ${EQR1[10]}` )</span><br />
<span style="font-size: xx-small;"> LATI=`echo "scale=0; ${EQR1[7]} * 10" | bc | sed s/\.[0-9,]*$//g`</span><br />
<span style="font-size: xx-small;"> EQR2+=( `echo "N"$LATI` )</span><br />
<span style="font-size: xx-small;"> LNGI=`echo "scale=0; ${EQR1[3]} * 10" | bc | sed s/\.[0-9,]*$//g`</span><br />
<span style="font-size: xx-small;"> EQR2+=( `echo "E"$LNGI` )</span><br />
<span style="font-size: xx-small;"> KM=`echo ${EQR1[5]} |sed -e "s/km//"`</span><br />
<span style="font-size: xx-small;"> EQR2+=( `printf %03d $KM` )</span><br />
<span style="font-size: xx-small;"> MAG=`echo "scale=0; ${EQR1[9]} * 10" | bc | sed s/\.[0-9,]*$//g`</span><br />
<span style="font-size: xx-small;"> EQR2+=( `printf %02d $MAG` )</span><br />
<span style="font-size: xx-small;"> if [ "${EQR1[12]}" = "警報" ]</span><br />
<span style="font-size: xx-small;"> then</span><br />
<span style="font-size: xx-small;"> EQR2+=( XXXXE )</span><br />
<span style="font-size: xx-small;"> else</span><br />
<span style="font-size: xx-small;"> EQR2+=( XXXXX )</span><br />
<span style="font-size: xx-small;"> fi</span><br />
<span style="font-size: xx-small;"> fi</span><br />
<span style="font-size: xx-small;"> echo ${EQR2[@]} | sed -e 's/ //g'</span><br />
<span style="font-size: xx-small;"><br /></span>
<span style="font-size: xx-small;"> fi</span><br />
<span style="font-size: xx-small;">fi</span><br />
<span style="font-size: xx-small;">~</span><br />
<div>
<br /></div>
<div>
SignalNowのログをNAS上のファイルに書き出させていろいろしてたので</div>
<div>
SignalNowの書式にしてます。</div>
<div>
<br /></div>
<div>
震度演算と猶予時間の計算は完成したらはっつけます…</div>
<div>
<span style="font-size: xx-small;">(S波の速度を求める計算部分がまだ未完成なのでS=4.5km/sでざっくりと仮実装してます)</span></div>
nekomimip@nichttp://www.blogger.com/profile/15526312232201799401noreply@blogger.com0tag:blogger.com,1999:blog-1926782548311136321.post-44887205492075602082015-02-08T04:10:00.002+09:002015-02-08T04:31:04.398+09:00V4L-DVBをごにょごにょ<div>
【DVB driver for SKnet MonsterTV HD series】</div>
<div>
<br /></div>
<div>
を3.0.6Kernelに組み込もうとしているが挫折</div>
<div>
<br /></div>
<div>
途中までのパッチ</div>
<div>
<a href="https://drive.google.com/file/d/0B_XaxKz4_M-AaUFsRUV2MkxiZkE/view?usp=sharing">mtvhd.cのパッチ</a></div>
<div>
<br /></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c: In function ‘__check_enable_hdp_rc’:</span></div>
<div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:28:1: warning: return from incompatible pointer type [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c: At top level:</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:708:4: error: unknown field ‘frontend_attach’ specified in initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:708:4: warning: initialization makes integer from pointer without a cast [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:708:4: warning: (near initialization for ‘hdu2_properties.adapter[1].size_of_priv’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:709:4: error: unknown field ‘streaming_ctrl’ specified in initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:709:4: warning: initialization from incompatible pointer type [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:709:4: warning: (near initialization for ‘hdu2_properties.adapter[1].frontend_ctrl’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:710:4: error: unknown field ‘stream’ specified in initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:710:4: warning: braces around scalar initializer [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:710:4: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:711:5: error: field name not in record or union initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:711:5: error: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’)</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:711:5: warning: initialization makes pointer from integer without a cast [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:711:5: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:712:5: error: field name not in record or union initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:712:5: error: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’)</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:712:5: warning: excess elements in scalar initializer [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:712:5: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:713:5: error: field name not in record or union initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:713:5: error: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’)</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:713:5: warning: excess elements in scalar initializer [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:713:5: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:714:5: error: field name not in record or union initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:714:5: error: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’)</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:714:5: warning: braces around scalar initializer [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:714:5: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:715:6: error: field name not in record or union initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:715:6: error: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’)</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:715:6: warning: braces around scalar initializer [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:715:6: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:716:7: error: field name not in record or union initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:716:7: error: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’)</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:716:7: warning: initialization makes pointer from integer without a cast [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:716:7: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:718:5: warning: excess elements in scalar initializer [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:718:5: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:799:4: error: unknown field ‘frontend_attach’ specified in initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:799:4: warning: initialization makes integer from pointer without a cast [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:799:4: warning: (near initialization for ‘hdp2_properties.adapter[1].size_of_priv’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:800:4: error: unknown field ‘streaming_ctrl’ specified in initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:800:4: warning: initialization from incompatible pointer type [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:800:4: warning: (near initialization for ‘hdp2_properties.adapter[1].frontend_ctrl’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:801:4: error: unknown field ‘stream’ specified in initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:801:4: warning: braces around scalar initializer [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:801:4: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:802:5: error: field name not in record or union initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:802:5: error: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’)</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:802:5: warning: initialization makes pointer from integer without a cast [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:802:5: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:803:5: error: field name not in record or union initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:803:5: error: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’)</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:803:5: warning: excess elements in scalar initializer [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:803:5: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:804:5: error: field name not in record or union initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:804:5: error: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’)</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:804:5: warning: excess elements in scalar initializer [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:804:5: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:805:5: error: field name not in record or union initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:805:5: error: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’)</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:805:5: warning: braces around scalar initializer [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:805:5: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:806:6: error: field name not in record or union initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:806:6: error: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’)</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:806:6: warning: braces around scalar initializer [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:806:6: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:807:7: error: field name not in record or union initializer</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:807:7: error: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’)</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:807:7: warning: initialization makes pointer from integer without a cast [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:807:7: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:809:5: warning: excess elements in scalar initializer [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">drivers/media/dvb/dvb-usb/mtvhd.c:809:5: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]</span></div>
<div>
<span style="font-size: xx-small;">make[4]: *** [drivers/media/dvb/dvb-usb/mtvhd.o] エラー 1</span></div>
<div>
<span style="font-size: xx-small;">make[3]: *** [drivers/media/dvb/dvb-usb] エラー 2</span></div>
<div>
<span style="font-size: xx-small;">make[2]: *** [drivers/media/dvb] エラー 2</span></div>
<div>
<span style="font-size: xx-small;">make[1]: *** [drivers/media] エラー 2</span></div>
<div>
<span style="font-size: xx-small;">make: *** [drivers] エラー 2</span></div>
</div>
<div>
<br /></div>
<div>
になるのでまだ未解決</div>
<div>
<br /></div>
<div>
目標としてはこのドライバでPX-S3U2が動くといいな(たぶん無理)</div>
<div>
<br /></div>
<div>
PX-S3U2のAS11Loaderの<a href="https://drive.google.com/file/d/0B_XaxKz4_M-AMUtEUmJRVzBiRnM/view?usp=sharing">USBログ</a></div>
<div>
とりあえずここからfirmwareとかごにょごにょできるはず</div>
<div>
<br /></div>
<div>
PX-S3U2のLinuxドライバってGNU GP(略)</div>
nekomimip@nichttp://www.blogger.com/profile/15526312232201799401noreply@blogger.com0tag:blogger.com,1999:blog-1926782548311136321.post-60353795094091698682015-02-06T11:29:00.001+09:002015-02-06T12:15:27.823+09:00Chinachu on Banana Pi<br />
Banana Piは中華製のRaspberry Piのパチモノちっくな<br />
Arm-based Single board computerで、<br />
Allwinner A20を搭載しているためRaspberryPIより速い<br />
そしてSerialATAを持っているので録画鯖に最適です。 <br />
<br />
Aliexpressで4-5kぐらいで手に入ります<br />
もしくは<a href="http://akiba-pc.watch.impress.co.jp/hotline/20150117/ni_cbananapi.html">アキバ</a>でも入手可能なので突撃してみるといいかもです<br />
<br />
SDcardに好きなイメージ突っ込んで焼きます<br />
以下のDebian wheezyをいれてみました<br />
<a href="http://www.igorpecovnik.com/2014/09/07/banana-pi-debian-sd-image/">http://www.igorpecovnik.com/2014/09/07/banana-pi-debian-sd-image/</a><br />
fdiskでパーティションを広げたりいろいろ好きにいじってください<br />
<br />
拾い食いはいやな方はごりごりkernel buildとdebootstrapするといいと思う<br />
<br />
これに1TBのTOSHIBA HDDとLinuxで使えそうなICカードリーダをつなげます<br />
<a href="http://www.amazon.co.jp/dp/B003XF2JJY">http://www.amazon.co.jp/dp/B003XF2JJY</a><br />
とか<br />
<a href="http://nekomimip.blogspot.jp/2015/02/realtek-rts5169.html">realtek のチップがのった格安リーダ</a>とか使えるはず<br />
<br />
<a href="http://mimikakimemo.hatenablog.jp/entry/2014/06/08/193608">http://mimikakimemo.hatenablog.jp/entry/2014/06/08/193608</a><br />
を参考に<br />
<br />
$ sudo apt-get install build-essential curl git-core libssl-dev yasm libtool autoconf libboost-all-dev<br />
<br />
$ git clone git://github.com/kanreisa/Chinachu.git ~/chinachu<br />
$ cd ~/chinachu/<br />
<br />
ここで<a href="https://drive.google.com/file/d/0B_XaxKz4_M-ARk1wVENfVjlneGc/view?usp=sharing">パッチ</a>を当ててください。<br />
ただしchinachuのバージョンがころころと変わるので<br />
当たらなかったら大意をくみ取って書き換えてください<br />
sedでnave.shをいじってます。<br />
やっていることは<br />
<br />
CFLAGSのmarchをarmv7-aでベタ指定<br />
nave(というかnode)を --without-snapshotでコンパイル<br />
<br />
$ ./chinachu installer<br />
Chinachu Installer Menu:<br />
[!] These are installed under all /home/*****/chinachu/...<br />
[!] Recommend the Auto installation. <br />
1) Auto (full) 5) Node.js Modules 9) libfdk-aac<br />
2) Auto (fast) 6) epgdump 10) libogg<br />
3) submodule 7) libx264 11) libvorbis<br />
4) Node.js Environment 8) libvpx 12) libav<br />
what do you install? > 1<br />
<br />
あとはほかの方がかかれていることと同じなので詰まるところはないはずです。<br />
一時間以上かかるので放置してください<br />
<br />
<br />
chinachuが導入できたらnginxのstableを最新版を野良ビルドして導入してください。<br />
(Debian wheezyだとnodeのsocket.ioに対応してない?)<br />
<br />
server {<br />
listen 80;<br />
server_name hogehoge.hoge;<br />
access_log /var/log/nginx/hogehoge.hoge.log;<br />
location / {<br />
proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade;<br />
proxy_set_header Connection "upgrade";<br />
proxy_pass http://127.0.0.1:10772/;<br />
}<br />
}<br />
<br />
とりあえずチューナーが来るのを待っている。nekomimip@nichttp://www.blogger.com/profile/15526312232201799401noreply@blogger.com0tag:blogger.com,1999:blog-1926782548311136321.post-66102625313641722392015-02-06T10:34:00.002+09:002015-02-06T10:59:33.177+09:00Realtek RTS5169の回路図解析?<a href="http://www.realtek.com.tw/products/productsView.aspx?Langid=1&PFid=25&Level=4&Conn=3&ProdID=348">Realtek RTS5169</a>はSmartcard やSDなどMultimediacardの統合チップである。<br />
<br />
ただしこれを素でSmart card reader に使っている製品もちらほらある。<br />
<br />
その場合の回路図をジャンクのsmartcard readerから書き起こしたのでメモ程度に<br />
<br />
おいておきます。<br />
<br />
※無保証 コンデンサの定数は不明(LCRメータはあるので時季に追加します)<br />
<br />
<br />
それと基板のスキャンデータも<a href="https://drive.google.com/file/d/0B_XaxKz4_M-Ab2xjU1duY3htbVk/view?usp=sharing">PSD</a>でおいておきます。<br />
回路図が違っていたら突っ込みを入れてください。<br />
回路図が汚いのは仕様です <br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7Q_kWbF3o2TAIDiLW-iaQ-Ei0-e2iQtk1e4uELSrHDOD5jFkyCN2MKzCKKFmqRPKGmLn4531daLj4nukXoKWxDqg8qi05mZIe-8lSnCzao9ckje1pUnLUlnL5yRXmuVVpj2O47obFG5C5/s1600/cirkit.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7Q_kWbF3o2TAIDiLW-iaQ-Ei0-e2iQtk1e4uELSrHDOD5jFkyCN2MKzCKKFmqRPKGmLn4531daLj4nukXoKWxDqg8qi05mZIe-8lSnCzao9ckje1pUnLUlnL5yRXmuVVpj2O47obFG5C5/s1600/cirkit.png" height="252" width="320" /></a></div>
nekomimip@nichttp://www.blogger.com/profile/15526312232201799401noreply@blogger.com0tag:blogger.com,1999:blog-1926782548311136321.post-36566049178197181492012-11-26T04:16:00.000+09:002012-11-26T04:48:51.470+09:00cyanogenmodのビルド(CM10)<strike>cyanogenmodのwikiに書いてあるとおりにして詰まったところ</strike><br />
以前の手順が間違ってたので大幅修正<strike></strike><br />
<b>注:個人的なメモです、無保証</b><strike><br /></strike><br />
<br />
repo init -u git://github.com/CyanogenMod/android.git -b jellybean-stable<br />
repo sync -j16<br />
<u><strike><span style="font-size: xx-small;"><br /></span></strike></u>
でソースを取得。<br />
cd device<br />
で移動<br />
mkdir lge<br />
cd lge <br />
その後<br />
git clone git://github.com/CyanogenMod/android_device_lge_iprj-common<br />
git checkout -b jellybean-stable remotes/origin/jellybean-stable<br />
ブランチを切り替え<br />
cd ../ <br />
git clone git://github.com/CyanogenMod/android_device_lge_p930.git<br />
git checkout -b jellybean-stable remotes/origin/jellybean-stable<br />
デバイスをつなぎ<br />
sh ./extract-files.sh<br />
(もしかするとこの2つのdir名変えないといけないと思う)<br />
その後<br />
topdirに戻り<br />
<pre>cd ./vendor/cm</pre>
<pre>./get-prebuilts</pre>
<pre></pre>
<pre>topdirに(ry</pre>
<pre>. build/envsetup.sh && brunch p930</pre>
<pre></pre>
<pre></pre>
<pre>i_dcmにする場合は./device/lge 以下のp930をi_dcmにしたあとごにょごにょする。</pre>
<pre>後日githubにあげるかも </pre>
<br />
作り直しのときはtopdirでmake clean<br />
<br />
足りない場所は各自補完してください。<br />
<strike><span style="font-size: xx-small;">書くのめんどい </span></strike><br />
間違っている場所は突っ込みいれていただければ直すかも<br />
<br />
<b>注意:ビルド後10分ぐらいで適当に書いたために大いに間違っている可能性あり。</b><br />
<b>ちゃんとrefにあたってください。 </b><br />
<br />
<br />
<a href="http://playfuldroidz.com/wiki/index.php?title=Building_CyanogenMod">参考1</a><br />
<a href="http://forum.xda-developers.com/showthread.php?t=1846651">参考2</a><br />
<br />
kernel sourceの入ったdir(./kernel/lge/iproj)を作らないといけなかったはずnekomimip@nichttp://www.blogger.com/profile/15526312232201799401noreply@blogger.com1tag:blogger.com,1999:blog-1926782548311136321.post-81522452000209561042012-10-14T07:46:00.002+09:002012-10-14T07:46:25.602+09:00JB用kernelの作り方メモ<br />
<blockquote class="tr_bq">
git clone git://github.com/nekomimipanic/lge-kernel-iproj.git<br />
cd ~/lge-kernel-iproj<br />
git checkout android-msm-3.0-jb-dcm origin/android-msm-jb-3.0-dcm<br />
<br />
export CCOMPILER=[適当な場所]/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-<br />
make <span class="st">cyanogenmod_l01d_defconfig</span><br />
<br />
make -j2 ARCH=arm TARGET_PRODUCT=i_dcm CROSS_COMPILE=$CCOMPILER 2>&1 | tee make-log</blockquote>
zimageと*.koを手に入れたら、後は以前と同じようにboot.imgにパッキング。 nekomimip@nichttp://www.blogger.com/profile/15526312232201799401noreply@blogger.com0tag:blogger.com,1999:blog-1926782548311136321.post-71503002600310374642012-10-07T08:04:00.000+09:002012-11-03T08:41:54.265+09:00いままでのあらすじ今までのあらすじ<br />
<br />
カーネルコンパイルしてP930用のCyanogenmodにboot.imgを組み込みました、<br />
おしまい。<br />
<br />
つめこみ方法とか<br />
<br />
- boot.imgの展開 <br />
./split_bootimg.pl boot.img<br />
<br />
- ramdiskの展開<br />
mkdir ramdisk<br />
cd ramdisk <br />
zcat ../boot.img-ramdisk.gz | cpio -i<br />
<br />
- ramdiskを詰め込み<br />
./mkbootfs ./ramdisk | gzip -9 - > new.boot.img-ramdisk.gz<br />
<br />
boot.imgの作成<br />
mkbootimg --kernel zImage --ramdisk new.boot.img-ramdisk.gz --cmdline "console=ttyHSL0,115200,n8 androidboot.hardware=iprj" --base 0x40200000 --pagesize 2048 --ramdiskaddr 0x41a00000 -o new.boot.img<br />
<br />
kernel buildの方法はいろんなところに転がっているのでそこで。<br />
りぱっくbinaryはネット上やAOSPからbuildするなど これも(ry<br />
<br />
kernelは<br />
git clone git://github.com/nekomimipanic/lge-kernel-iproj.git <br />
git checkout -b android-msm-3.0-dcm origin/android-msm-3.0-dcm<br />
でダウンロードできるはず nekomimip@nichttp://www.blogger.com/profile/15526312232201799401noreply@blogger.com0