2016年1月27日 星期三

PI & TTL

最近一直使用 TTL 的方式來控制PI

可是前一陣子的時候發現, 螢幕上有看到畫面, 可是輸入指令完全沒有反應. 囧!!!!!

然後看到這邊
https://www.raspberrypi.org/forums/viewtopic.php?f=28&t=79573

There's a similar-sounding problem here where it turns out the problem was actually a physically damaged RX pin on the Pi.

該不會真的GG吧, pin腳出問題.... QAQ

後來在這邊看到
https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=79512

The most likely is you haven't connected the Pi's RXD to the dongles TX pin, or you haven't connected the grounds.

然後再檢查一下pin腳.......
還真的有一個pin腳鬆脫了  ˊ______>ˋ

默默的把線接回去, 就恢復正常了 orz

看樣子以後遇到這種情形要先檢查線有沒有接好 XD

2016年1月21日 星期四

PI, Wifite

這種東西好像不太適合寫詳細說明(!?)

那就貼連結當備份好了 XD

http://m-jorgensen.dk/wifite-and-raspberry/
https://code.google.com/p/wifite/

wget https://raw.github.com/derv82/wifite/master/wifite.py
chmod +x wifite.py
./wifite.py

http://python-chan.appspot.com/2012/02/10/post_126001.phtml
apt-get install libssl-dev libpcap-dev make
wget http://www.willhackforsushi.com/code/cowpatty/4.6/cowpatty-4.6.tgz
tar zxvf cowpatty-4.6.tgz
cd cowpatty-4.6
make
cp cowpatty /usr/local/bin
cp genpmk /usr/local/bin
http://blog.petrilopia.net/linux/raspberry-pi-install-aircrackng-suite/
wget http://download.aircrack-ng.org/aircrack-ng-1.2-beta1.tar.gz
tar -zxvf aircrack-ng-1.2-beta1.tar.gz
cd aircrack-ng-1.2-beta1
make
make install
airodump-ng-oui-update

2015年11月10日 星期二

用pi安裝OM2M

http://wiki.eclipse.org/OM2M/Clone
  1.     裝java: apt-get install oracle-java7-jdk
  2.     裝Apache Maven (mvn): http://www.xianic.net/post/installing-maven-on-the-raspberry-pi/
  3.     用git抓source code下來安裝: http://wiki.eclipse.org/OM2M/Clone (command line的方式)
  4.     花了45min XD……
  5.     打開 127.0.0.1:8080, 可以看到畫面耶, 應該就可以了(!?)

用pi安裝DHT11 & 讀取資料

http://yehnan.blogspot.tw/2015/05/raspberry-pidht11.html

先安裝所需套件:
sudo apt-get update
sudo apt-get install build-essential python-dev git-core

下載程式,進入該目錄,然後安裝:
git clone https://github.com/adafruit/Adafruit_Python_DHT.git
cd Adafruit_Python_DHT
sudo python setup.py install

讀取DHT11的溫溼度資訊
cd examples
sudo ./AdafruitDHT.py 11 4


2015年4月13日 星期一

在ubuntu上安裝遠端桌面程式 x2go

原本freenx用得好好的, 後來好像系統更新(!?), 變成14.04

結果連過去之後整個都是黑畫面!!!  囧~~~~~~~~~~~ (我還沒跑完程式耶 QAQ)

找了幾篇文章, 試著修復 & 安裝新版的nx-server, 一樣沒辦法 (GG惹)

後來找到另一個遠端程式 x2go
一開始也是完全都是黑畫面, 後來才讓畫面正常顯示 (終於~~~)

不過問題好像是 gnome 的樣子!?!?

-----------------------------------------------------

這次的解決方法, 簡單說就是安裝 x2go (遠端程式) 和 mate (桌面程式)


MATE
http://wiki.mate-desktop.org/download#ubuntu_1404_lts_trusty_thar

[步驟]
sudo apt-add-repository ppa:ubuntu-mate-dev/ppa
sudo apt-add-repository ppa:ubuntu-mate-dev/trusty-mate
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install ubuntu-mate-core ubuntu-mate-desktop


X2Go
http://wiki.x2go.org/doku.php/wiki:repositories:ubuntu

[步驟]
sudo apt-get install python-software-properties
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:x2go/stable
sudo apt-get update
apt-cache search x2go


接著下載X2Go-client, 然後開啟程式, 設定IP, username


"工作階段類型" -> 選擇 MATE !!!!!!!!

然後遠端桌面就復活了wwwwwwwwwwwwwwwww
(可以明天再跑程式嗎 QQ)


補充:
後來發現, 如果在跑大量程式時, 有很高的機率會無法建立連線. 簡單說就是無法遠端.
至於解決方法... 不知道~ 囧~~~~~ 等程式跑完就可以遠端了 XD
或者是電腦一直開著遠端的畫面不要關掉, 這也算一種方法(!?) XDD

2015年3月10日 星期二

矩陣找值

ref:
https://www.ptt.cc/bbs/MATLAB/M.1239179079.A.B2B.html

假如說, 我現在有一個陣列 A = [5566, 7533967, 3345678]   (年代梗? XD)

然後我想要找5566是第幾個元素, 可以用find去找

ex:
find( A == 5566)

然後ans就會顯示1

2015年2月27日 星期五

num2str的簡易教學

這篇是寫給自己看的 XD

ex:
    b1(src_node(1))=1;
    b2(src_node(2))=1;
    b3(src_node(3))=1;
    b4(src_node(4))=1;
    b5(src_node(5))=1;
    b6(src_node(6))=1;

先複製其中一個出來
b1(src_node(1))=1;

然後前面加上  eval(['

後面加上 '])

所以目前變成

eval(['b1(src_node(1))=1;'])

接著再把變數的部分, 改成 ' num2str(i) '

注意空格, num2str前後都要有空格才行

然後就變成了

eval(['b' num2str(i) '(src_node(' num2str(i) '))=1;'])

然後再用一個for迴圈

for i=1:6

    eval(['b' num2str(i) '(src_node(' num2str(i) '))=1;'])

end


這樣就等同於一開始那六行指令 XD


--

感覺shell script的寫法比較直覺? XDDDD

[matlab] fprintf 與 num2str 的整合 XD

終於弄出來了 XD
這樣就只要放個for迴圈, 就可以寫入一堆資訊
不然原本的做法要一個一個慢慢打 ˊ_>ˋ

原: 
    fprintf(fid, 'flow1 \t %.4f \n', XX(src_node(1)));
    fprintf(fid, 'flow2 \t %.4f \n', XX(src_node(2)));
    fprintf(fid, 'flow3 \t %.4f \n', XX(src_node(3)));
    fprintf(fid, 'flow4 \t %.4f \n', XX(src_node(4)));
    fprintf(fid, 'flow5 \t %.4f \n', XX(src_node(5)));
    fprintf(fid, 'flow6 \t %.4f \n', XX(src_node(6)));
    fprintf(fid, 'flow7 \t %.4f \n', XX(src_node(7)));
    fprintf(fid, 'flow8 \t %.4f \n', XX(src_node(8)));
    fprintf(fid, 'flow9 \t %.4f \n', XX(src_node(9)));
    fprintf(fid, 'flow10\t %.4f \n', XX(src_node(10)));

新:
for i=1:10
    flow_value=eval(['XX(src_node(' num2str(i) '))']);
    fprintf(fid, ['flow' num2str(i) ' \t %.4f \n'], flow_value);
end

2015年1月28日 星期三

在matlab把資料寫入到不同檔案 (檔名是變數)

我要寫入 node 1~20 的座標資訊到不同的txt檔: 1.txt, 2.txt .... 以此類推

用 num2str 這個指令就可以了!!! (終於知道這個的用法 XD)

-------------------------------------

for nodeIndex = 1:NODES
     fid = fopen([ num2str(nodeIndex) '.txt'], 'at');
     fprintf(fid, '%.2f %.2f \n', node_x, node_y );
     fclose(fid);

end

2015年1月26日 星期一

用shell script產生ns2的cbr traffic語法

ns2裡面先設定好 attach-cbr-traffic 這個function
接下來只要給他 src, dst, flow_id就好了.
pkt_size和rate都是固定的
-------------------------------------------------------------------

# ex: sh gen_cbr_traffic.sh src_node dst_node flow_id
# default plt_size=512, rate=1Mb

    src=$1
    dst=$2
flow_id=$3

echo \#flow $flow_id, src $src, dst $dst

# CBR traffic: node 0 -> node 3
#
# set dst1 [new Agent/Null]
# $ns_ attach-agent $node_(3) $dst1
# set cbr1 [attach-cbr-traffic $node_(0) $dst1 512 1Mb]
# $ns_ at 0.001 "$cbr1 start"

echo set dst$flow_id \[new Agent\/Null\]
echo \$ns_ attach-agent \$node_\($dst\) \$dst$flow_id
echo set cbr$flow_id \[attach-cbr-traffic \$node_\($src\) \$dst$flow_id 512 1Mb\]
echo \$ns_ at 0.001 \"\$cbr$flow_id start\"
echo \$ns_ at \$val\(stop\) \"\$cbr$flow_id stop\"