Raspberry pi toàn tập từ A-Z

dung44

New Member
Ðề: Raspberry pi toàn tập từ A-Z

Control Panel -> Network and Internet -> Network Connections
Double click lên Internet icon -> Cuộn xuống, double click "Internet protocol version 4"

Use the following IP address
- IP address: 192.168.0.1 (hay 169.254.1.1)
- Subnet mask: 255.255.255.0
OK

Trong cmdline.txt thêm ip=192.168.0.10 (hay ip=169.254.1.10). Nói chung dùng dãy IP 192.168.x.x hay 169.254.x.x, IP trong máy tính và trong cmdline.txt cùng dãy IP và khác nhau.

Sau khi cài đặt được IP tĩnh cho rPI thì xóa cách cài đặt IP tạm này đi (cả trên máy tính và cmdline.txt)

Đặt IP tĩnh cho rPI

Trên máy tính, mở cửa sổ cmd, gõ lệnh ipconfig, xem IP Address và Default Gateway
Chọn một IP tĩnh cho rPI sao cho không trùng với các IP đã dùng trong mạng

Trên rPI, sửa file interfaces

Mã:
nano /etc/network/interfaces

ghi nội dung sau đây

Mã:
auto lo
iface lo inet loopback

auto eth0
allow-hotplug eth0
iface eth0 inet static
address *IP*tĩnh*cho*rPI*
netmask 255.255.255.0
gateway *Default*Gateway*

Đặt IP tĩnh cho LAN và WiFi của rPI

Thông số để cài đặt:
  1. IP tĩnh cho LAN của rPI (thí dụ: 192.168.1.100)
  2. LAN Gateway (thí dụ: 192.168.1.1)
  3. Wifi Gateway (thì dụ: 192.168.2.1)
  4. ID của USB Wifi (dùng lệnh lsusb để xem)
  5. ID của USB 3G (dùng lệnh lsusb để xem)

Trong Windows, gõ ipconfig để xem IP address v4 có dạng gì và chọn IP tĩnh của rPI thuộc dạng này (thí dụ 192.168.1.100). Ghi nhớ LAN Gateway (thí dụ 192.168.1.1)
Chọn Wifi gateway thuộc lớp mạng con, thí dụ 192.168.2.1

Dùng các thông số trên để cài đặt rPI như access point (hostapd + udhcpd hay hostapd + isc-dhcp-sever).

Các tình huống sau đây có thể xảy ra cho rPI
  1. Cắm dây LAN (mạng LAN)
  2. Cắm USB 3G (mạng WAN)
  3. Cắm USB Wifi (mạng LAN)
  4. Cắm dây LAN + USB Wifi (access point)
  5. Cắm USB 3G + USB Wifi (access point)

Giả định đã cài đặt rPI chạy đúng trong mỗi trường hợp trên, file autonet.sh sau đây giúp cấu hình mạng cho rPI tùy theo thiết bị mạng được cắm vào (các canh lề đầu dòng có thể không đẹp nhưng không nên sửa vì có thể sai cú pháp here doc)

Mã:
#!/bin/bash

### BEGIN INIT INFO
# Provides:          autonet
# Required-Start:
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Auto config network
# Description:       LNT <[email protected]>
### END INIT INFO

#IP of RPI
ADDR=[COLOR="#FF0000"]*IP*Tĩnh*của*rPI*[/COLOR]

#Netmask
NMSK="255.255.255.0"

#Gateway
GWAY=[COLOR="#FF0000"]*LAN*Gateway*[/COLOR]

#Wifi Gateway
APADDR=[COLOR="#FF0000"]*WIFI*Gateway*[/COLOR]

IDWIFI=[COLOR="#FF0000"]*ID*USB*WIFI*[/COLOR]
ID3G=[COLOR="#FF0000"]*ID*USB*3G*[/COLOR]
LSUSB=`lsusb`

LAN=`cat /sys/class/net/eth0/carrier|sed -e 's/^ *//g' -e 's/ *$//g'`
WIFI=`echo $LSUSB|grep -c $IDWIFI`
USB3G=`echo $LSUSB|grep -c $ID3G`

#LAN
if [ $LAN -ne 0 ]; then
        cat > /etc/network/interfaces <<EOF
auto lo
iface lo inet loopback

auto eth0
allow-hotplug eth0
iface eth0 inet static
address $ADDR
netmask $NMSK
gateway $GWAY
EOF
        #Wifi
        if [ $WIFI -ne 0 ]; then
                cat >> /etc/network/interfaces <<EOF

iface wlan0 inet static
address $APADDR
netmask $NMSK

up iptables-restore < /etc/iptables.ipv4.nat
EOF
        fi
#noLAN
elif [ $USB3G -ne 0 ]; then
        #Wifi
        if [ $WIFI -ne 0 ]; then
                  cat > /etc/network/interfaces <<EOF

iface wlan0 inet static
address $APADDR
netmask $NMSK

up iptables-restore < /etc/iptables.ipv4.nat
EOF
        fi
else
        #Wifi
        if [ $WIFI -ne 0 ]; then
                cat > /etc/network/interfaces <<EOF
auto lo
iface lo inet loopback

iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

iface default inet static
address $ADDR
netmask $NMSK
gateway $GWAY
EOF
        fi
fi
sleep 1

if [[ $NET -ne 0 ]]; then
        ifdown eth0 && ifup eth0
fi
if [[ $USB3G -ne 0 ]]; then
        if [[ $NET -eq 0 ]]; then
                /etc/init.d/auto3g.sh start
        fi
fi
if [[ $WIFI -ne 0 ]]; then
        ifdown wlan0 && ifup wlan0
fi
Tất cả những điều bạn ghi ra đây với ng mới tập linux như mình cũng phải năm bảy ngày mình mới thực hiện dc. Dù sao thì cũng cảm ơn bạn nhiều. Về phần mình cài đi cài lài cái wheezy-raspbian 2013 mà vẫn ko co cái ip. Mình xóa đi rồi. Đang down cái phiên bản 2012 về cài thử. IDM nó báo 20 tiếng bạn đủ biết mạng ở đây như thế nào rồi đấy... Trưa nay mình có down cái Advanced IP Scanner cắm cái thẻ chạy raspbmc vào thì tìm dc ip. Đã ssh dc nhưng vẫn chưa tìm dc cách nào để nó nhận dc cái d-com. Thực ra mình vẫn thích Raspbian hơn. Giò chỉ chơ down xong là làm theo bạn thôi. Cảm ơn bạn nhiều...
 

phithien

Well-Known Member
Ðề: Raspberry pi toàn tập từ A-Z

Tất cả những điều bạn ghi ra đây với ng mới tập linux như mình cũng phải năm bảy ngày mình mới thực hiện dc. Dù sao thì cũng cảm ơn bạn nhiều. Về phần mình cài đi cài lài cái wheezy-raspbian 2013 mà vẫn ko co cái ip. Mình xóa đi rồi. Đang down cái phiên bản 2012 về cài thử. IDM nó báo 20 tiếng bạn đủ biết mạng ở đây như thế nào rồi đấy... Trưa nay mình có down cái Advanced IP Scanner cắm cái thẻ chạy raspbmc vào thì tìm dc ip. Đã ssh dc nhưng vẫn chưa tìm dc cách nào để nó nhận dc cái d-com. Thực ra mình vẫn thích Raspbian hơn. Giò chỉ chơ down xong là làm theo bạn thôi. Cảm ơn bạn nhiều...

Rất thông cảm với bạn, ko phải ai cũng có thể vọc được, vọc phải có chút tinh ý,chút nghệ thuật để áp dụng vào thực tế mình đang gặp, Nên cùng bài vở trong trường nhưng có người giỏi,người tệ là vậy.

Với trường hợp của bạn,mình khẳng địh ko phải do bản Raspbian mà nguyên nhân nằm ở cái modem hay cục phát wifi,hay swich. sao bạn ko reset tất về mặc định?(hầu như anh em ở đây ai cũng update lên bản mới nhất ngay khi có)

Bạn đang ở đâu mà tốc độ mạng chậm quá vậy, chắc bạn còn là học sinh ?. Bạn cố gắng làm theo hướng dẫn của anh em ở đây, vì tất cả là kinh nghiệm thực tế mà viết ra,nên rất dễ hiểu
 

dung44

New Member
Ðề: Raspberry pi toàn tập từ A-Z

Tất cả các bước đã thực hiện đầy đủ tuy còn lằng nhằng nhưng cũng đã kết nối đươc 3g bằng D-com. Cảm ơn các bạn đã tận tình hướng dẫn. Mà cái cục Pi của mình nó bị làm sao ấy. Dùng ipscan thì thấy một dãy mà $ifconfig thì ko thấy. Đã kết nối 3g mà $lsusb cũng ko có cái modem hay wcdma gì cả. Mong các bạn chỉ cho một cái phần mềm để đánh văn bản mà word đọc dc. Như libre office của ubuntu ấy. Và cài như thế nào mong dc hd...
 

lnt

Active Member
Ðề: Raspberry pi toàn tập từ A-Z

sudo apt-get install libreoffice

Người ta thường dùng rPI như headless PC, chỉ nối với rPI qua net để cài software hay định cấu hình cho soft chạy tự động. Nếu dùng rPI + monitor như máy tính thông thường thì có khi thất vọng đấy!
 
Chỉnh sửa lần cuối:

hzen

New Member
Ðề: Raspberry pi toàn tập từ A-Z

Các bác kinh nghiệm cho mình hỏi chút:

- ở Hà Nội các bác biết chỗ nào bán cái HeatSink ko nhỉ?
Mình dùng trời nóng nóng chút hay bị đứt cái phựt.
Dùng quạt gắn vô thì ko hay lứm

- Giải pháp làm power switch mọi người dùng là gi thế?

Mình dùng thì tắt/bật bằng cách rút nguồn/cắm nguồn khá bất tiện. Có cách nào để tắt bật từ IR Remote ko?
- Có sơ đồ (vỏ) lắp để lắp được cả HDD cho gọn đẹp :).
-
 

phithien

Well-Known Member
Ðề: Raspberry pi toàn tập từ A-Z

Heatsink thì bạn chế cũng được,bạn kiếm cục đồng vuông vuông, dùng silicon tản nhiệt cpu trát lên 1 it, để cục đồng lên,Cục nhôm cũng được

Khi sutdown xong,mún Rasp hoạt độg lại thì lấy nhíp nhổ râu chọc vào 2 cái lổ xinh xinh là đc:D

Còn nút nguồn để power on hay reset thì bạn vào đây coi nhé,mình lấy trên mạng,máy chụp mình hư nên ko chụp thực tế được,Mình dùng dây điện nhét vào,chứ ko hàn chì như trên site,thik hàng Rin nên ko chọc ngoáy:D
Making a Reset Switch for your Rev 2 Raspberry Pi » RasPi.TV



Còn vỏ thì tự làm sao cho vừa là đc,sơ đồ là sao bạn,cái đơn giản vậy cũng phải sơ đồ sao, xây nhà cấp 3,cấp 4 còn ko có sơ đồ vẫn xây đc
 

lnt

Active Member
Ðề: Raspberry pi toàn tập từ A-Z

Reset switch rất hay. Tôi tìm thấy cách làm shutdown và reset switch trên internet. Chỉ cần mua switch 2 chân ráp vào (nhưng không biết mua ở đâu :) )

switch.jpg

shutdown.jpg

reset.jpg
 

tibi01993

New Member
Ðề: Raspberry pi toàn tập từ A-Z

E đang làm đồ án xử lý ảnh . Sử dụng thư viện openCV với visual C++ nhưng vẫn chưa cài được . Mong mọi người giúp đỡ :) . Mình có đọc 1 tài liệu có nói Depian có sẵn openCV, chỉ cần install nó vs lệnh apt-get install libcv* mà không đc .
 

lnt

Active Member
Ðề: Raspberry pi toàn tập từ A-Z

E đang làm đồ án xử lý ảnh . Sử dụng thư viện openCV với visual C++ nhưng vẫn chưa cài được . Mong mọi người giúp đỡ :) . Mình có đọc 1 tài liệu có nói Depian có sẵn openCV, chỉ cần install nó vs lệnh apt-get install libcv* mà không đc .
toThinkOrNotToThink - Raspberry Pi + SimpleCV + OpenCV + Raspicam CSI camera
Facial recognition: OpenCV on the camera board | Raspberry Pi
 

lnt

Active Member
Ðề: Raspberry pi toàn tập từ A-Z

IMG_1069.JPG
Nút nhấn 6x6. Chân có thể bẻ dọc

IMG_1071.JPG
Bẻ chân sát lại cho đúng khoảng cách 2 lổ trên mainboard

IMG_1072.JPG
Cắt bớt ngạnh để dể gắn vào mainboard

IMG_1078.JPG
Nút shutdown

IMG_1077.JPG
Nút reset

IMG_1076.JPG
Mặt dưới mainboard tại vị trí gắn nút

IMG_1073.JPG
Mặt dưới mainboard tại vị trí gắn nút

IMG_1079.JPG
Sau khi hàn, cắt chân thừa

IMG_1080.JPG
Đánh dấu vị trí nút để khoan
 

Đính kèm

  • IMG_1070.JPG
    IMG_1070.JPG
    38.3 KB · Xem: 177

lnt

Active Member
Ðề: Raspberry pi toàn tập từ A-Z

IMG_1081.JPG
Dùng ruột bút bi để nối dài nút nhấn

IMG_1082.JPG
Ruột bút bi nối dài nút nhấn

IMG_1083.JPG
Chui ra khỏi nắp trên của box.
Phía dưới quấn băng keo, phía trên gắn ốc để thanh nối dài không tuột ra khỏi nắp khi tháo lắp

Nút bấm 2 chân mua ở chợ Nhật Tảo giá 500-1000đ/cái
Tôi không quen mua hàng này nên mua đắt, tổng thiệt hại cho 2 nút reset và shutdown là 2000đ
 
Chỉnh sửa lần cuối:

phithien

Well-Known Member
Ðề: Raspberry pi toàn tập từ A-Z

Connect a shutdown-pushbutton to header 5 (pin 6 and 8) and a reset button to header 6 (pin 1 and 2). Copy shutdown.py to your /home/pi folder, and add line in crontab with crontab -e: "@reboot sudo python /home/pi/shutdown.py" (without the quotes). Done.


and add line in crontab with crontab -e: "@reboot sudo python /home/pi/shutdown.py"
Bước này làm thế nào vậy bác lnt

Em add dòng sau
@reboot sudo python /home/pi/shutdown.py vào etc/crontab . sau đó bấm nút ko có tác dụng

 
Chỉnh sửa lần cuối:

lnt

Active Member
Ðề: Raspberry pi toàn tập từ A-Z

Cài đặt cho nút shutdown

Cách 1

1. Login với user pi
2. Tạo file /home/pi/shutdown.py với nội dung
Mã:
import RPi.GPIO as GPIO
import time
import os
GPIO.setmode(GPIO.BCM)
btn_shutdown=31
GPIO.setup(btn_shutdown, GPIO.IN, pull_up_down = GPIO.PUD_UP)  #GPIO.PUD_UP -> [COLOR="#FF0000"]GPIO.PUD_DOWN[/COLOR]
def Int_shutdown(channel):  
	os.system("sudo shutdown -h now")

GPIO.add_event_detect(btn_shutdown, GPIO.FALLING, callback = Int_shutdown, bouncetime = 2000)   #GPIO.FALLING -> [COLOR="#FF0000"]GPIO.RISING[/COLOR]

while 1:
        time.sleep(1)

hoặc ngắn gọn hơn
Mã:
import RPi.GPIO as GPIO
import os

GPIO.setmode(GPIO.BCM)
GPIO.setup(31, GPIO.IN, pull_up_down = GPIO.PUD_UP)
GPIO.wait_for_edge(31, GPIO.FALLING)
os.system('halt')

3. Chạy lệnh
Mã:
crontab -e
nhập dòng @reboot sudo python /home/pi/shutdown.py &

4. Khởi động lại cron
Mã:
/etc/init.d/cron restart

Chú ý
File shutdown.py có thể đặt tại /root, khi đó login với root, sửa đuờng dẫn trong crontab cho phù hợp
File shutdown.py nếu đặt ở thư mục hệ thống như /etc/init.d chẳng hạn thì không có tác dụng

Vài sửa đổi
- Có thể thay theo chú thích màu đỏ, dò phím nhấn thay vì nhả
- Thêm & cuối dòng "@reboot sudo python /home/pi/shutdown.py &" để script chạy ngầm và không dừng quá trình boot
- Có thể cài đặt shutdown.py thành file thực thi, khi đó dòng lệnh không cần có lệnh python

Cách khác để chạy shutdown.py khi khởi động

Cách 2

1. Đặt shutdown.py trong /usr/bin
2. Thêm một dòng trước dòng "exit 0" của file /etc/rc.local
Mã:
(sleep 10;python /usr/bin/shutdown.py)&
3. Khởi động lại
* Kiểm tra xem shutdown.py có chạy không
Mã:
ps x|grep shutdown.py

Với cách này, shutdown.py được gọi chạy sau khi quá trình boot kết thúc, có thể mất vài phút tính từ khi bắt đầu khởi động!

Cách 3

1. Đặt shutdown.py trong /usr/bin
2. Sửa file /etc/crontab
Mã:
nano /etc/crontab
Thêm vào dòng
Mã:
@reboot root python /usr/bin/shutdown.py &
 
Chỉnh sửa lần cuối:

lnt

Active Member
Ðề: Raspberry pi toàn tập từ A-Z

Sử dụng nút reset, shutdown

  1. Nút Reset thuộc về phần cứng, khởi động/tái khởi động RPi ngay cả khi chưa có OS, không chịu trách nhiệm về các công việc đang dang dở
  2. Nút Shutdown gọi lệnh "shutdown -h now" hoạt động trên nền OS, tắt máy theo qui trình của OS

  • Để tắt máy: bấm nút Shutdown
  • Để mở máy: bấm nút Reset
  • Để khởi động lại: bấm nút Reset

RPi giờ đây hoạt động gần giống một máy tính thông thường, ngoại trừ việc không có RTC nên không thể hẹn giờ mở máy
 

tibi01993

New Member
Ðề: Raspberry pi toàn tập từ A-Z

Mình có thấy opencv cho phiên bản Linux nhưng làm sao để coppy vào sdcard và các bước cài đặt ? Mình dân cơ điện tử cũng vọc tý , nhờ các bạn chỉ giáo :)
 
Bên trên