verify translate b to grossary

pull/412/head
phungvuong97 2024-09-26 15:53:07 +07:00
parent 5e19190c73
commit 3bf71a29f5
50 changed files with 1191 additions and 892 deletions

View File

@ -4,7 +4,7 @@
### Cách cài đặt chứng chỉ HTTPS trên camera của bạn
Đảm bảo rằng camera của bạn có thể truy cập từ Internet trên cả cổng 80 (HTTP) và cổng 443 (HTTPS). Bạn có thể cần phải thiết lập chuyển tiếp cổng trên bộ định tuyến của mình cho việc này.
Đảm bảo rằng camera của bạn có thể truy cập từ Internet trên cả cổng 80 (HTTP) và cổng 443 (HTTPS). Bạn có thể cần phải thiết lập **chuyển tiếp cổng** trên bộ định tuyến của mình cho việc này.
### Tạo tài khoản ACME:
@ -16,11 +16,11 @@ uacme -y -v new
### Đặt FQDN cho camera của bạn
Giao thức HTTP bảo mật (HTTPS) không thể được cấp cho địa chỉ IP trần, bạn cần một Tên miền đầy đủ (FQDN) cho camera của mình. Đó là cách camera của bạn sẽ được truy cập qua HTTPS.
Giao thức HTTP bảo mật (HTTPS) không thể được cấp cho địa chỉ IP **đơn lẻ**, bạn cần một **Tên miền đầy đủ (FQDN)** cho camera của mình. Đó là cách camera của bạn sẽ được truy cập qua HTTPS.
Tạo một tài khoản với bất kỳ Nhà đăng ký tên miền nào và đăng ký một tên miền, ví dụ: _mysuperduperdomain.com_.
Tạo một tài khoản với bất kỳ **Nhà đăng ký tên miền** nào và đăng ký một tên miền, ví dụ: _mysuperduperdomain.com_.
Thiết lập vùng DNS cho tên miền đó và tạo một bản ghi cho camera của bạn trong vùng miền đó.
Thiết lập **vùng DNS** cho tên miền đó và tạo một **bản ghi** cho camera của bạn trong vùng miền đó.
```console
Bản ghi DNS
@ -40,7 +40,7 @@ Thêm chuyển tiếp cổng từ cổng 80 của giao diện WAN đến cổng
75.123.45.555:80 => 192.168.1.10:80
```
Nếu bạn có một số thiết bị trên mạng của mình phục vụ các yêu cầu HTTP công khai, thì hãy thêm tên miền camera của bạn vào proxy HTTP.
Nếu bạn có một số thiết bị trên mạng của mình phục vụ các yêu cầu HTTP công khai, thì hãy thêm tên miền camera của bạn vào **máy chủ proxy HTTP**.
### Cấp chứng chỉ cho miền của bạn:
@ -63,6 +63,4 @@ hoặc bạn có thể tạo một bản ghi trên máy chủ DNS cục bộ c
### Khởi động lại majestic và kiểm tra truy cập
Mở trình duyệt web yêu thích của bạn và truy cập <https://ipc-001.mysuperduperdomain.com/>
Mở trình duyệt web yêu thích của bạn và truy cập <https://ipc-001.mysuperduperdomain.com/>

View File

@ -1,10 +1,10 @@
## OpenIPC Wiki
[Mục lục](../README.md)
Thêm driver wifi vào firmware của bạn
Thêm trình điều khiển wifi vào firmware của bạn
---
Vì hầu hết các camera đều có bộ nhớ flash rất nhỏ, nên các image firmware OpenIPC không chứa nhiều driver wifi, vì chúng có thể dễ dàng chiếm hơn 1.5MB cho mỗi driver.
Điều này có nghĩa là trong nhiều trường hợp, bạn sẽ phải thêm driver wifi thích hợp vào image firmware của mình.
Vì hầu hết các camera đều có bộ nhớ flash rất nhỏ, nên các ảnh firmware OpenIPC không chứa nhiều trình điều khiển wifi, vì chúng có thể dễ dàng chiếm hơn 1.5MB cho mỗi trình điều khiển.
Điều này có nghĩa là trong nhiều trường hợp, bạn sẽ phải thêm trình điều khiển wifi thích hợp vào ảnh firmware của mình.
### Bước 1: Chuẩn bị môi trường build
Bạn sẽ cần một môi trường Linux. Đầu tiên, hãy tải xuống kho lưu trữ firmware OpenIPC:
@ -20,8 +20,8 @@ Cài đặt các gói cần thiết để build:
sudo make deps
```
### Bước 2: Xác định gói driver
Dưới đây là một số gói driver wifi phổ biến nhất:
### Bước 2: Xác định gói trình điều khiển
Dưới đây là một số gói trình điều khiển wifi phổ biến nhất:
#### AIC:
```
@ -29,11 +29,11 @@ BR2_PACKAGE_AIC8800_OPENIPC
```
#### Altobeam:
*1. Chọn driver ATBM chung:*
*1. Chọn trình điều khiển ATBM chung:*
```
BR2_PACKAGE_ATBM60XX
```
*2. Kích hoạt driver cho card cụ thể của bạn:*
*2. Kích hoạt trình điều khiển cho card cụ thể của bạn:*
```
BR2_PACKAGE_ATBM60XX_MODEL_601X
BR2_PACKAGE_ATBM60XX_MODEL_602X
@ -88,7 +88,7 @@ BR2_PACKAGE_RTL8733BU_OPENIPC
BR2_PACKAGE_RTL8812AU_OPENIPC
```
Hãy ghi nhớ biến `BR2_PACKAGE` cho driver bạn cần. Việc quan sát các thông báo khởi động từ firmware gốc để xác định thiết bị mạng và loại giao diện có thể hữu ích vì có thể không rõ ràng khi nhìn vào bảng mạch. Việc nhìn thấy `atbm603x_wifi_usb` trong các thông báo khởi động cho thấy camera này có thiết bị wifi `atbm603x` được kết nối nội bộ qua USB.
Hãy ghi nhớ biến `BR2_PACKAGE` cho trình điều khiển bạn cần. Việc quan sát các thông báo khởi động từ firmware gốc để xác định thiết bị mạng và loại giao diện có thể hữu ích vì có thể không rõ ràng khi nhìn vào bảng mạch. Việc nhìn thấy `atbm603x_wifi_usb` trong các thông báo khởi động cho thấy camera này có thiết bị wifi `atbm603x` được kết nối nội bộ qua USB.
### Bước 3: Thêm biến BR2_PACKAGE vào cấu hình firmware của bạn
Các tệp cấu hình firmware được sắp xếp theo chipset trong các thư mục `br-ext-chip-*`. Điều hướng đến thư mục cho chipset bạn đang build, sau đó điều hướng đến thư mục `/configs/`.
@ -97,10 +97,10 @@ Ví dụ: bạn có chipset hisilicon:
`cd br-ext-chip-hisilicon/configs/`
Bên trong, bạn sẽ thấy một số tệp `_defconfig`. Mở tệp cho chip và loại firmware mong muốn của bạn trong trình soạn thảo văn bản.
Bên trong, bạn sẽ thấy một số tệp `_defconfig`. Mở tệp cho chip và **bản** firmware mong muốn của bạn trong trình soạn thảo văn bản.
Thêm biến `BR2_PACKAGE` thích hợp vào tệp này, thêm `=y` vào cuối biến.
Ví dụ: bạn muốn thêm driver RTL8188EUS:
Ví dụ: bạn muốn thêm trình điều khiển RTL8188EUS:
`BR2_PACKAGE_RTL8188EUS_OPENIPC=y`
@ -108,7 +108,7 @@ Ví dụ: bạn muốn thêm driver RTL8188EUS:
Quay trở lại thư mục gốc của thư mục firmware openipc `openipc-firmware/`.
Chạy `make` và chọn cấu hình bạn đã chỉnh sửa trong bước trước.
Ngoài ra, bạn có thể chạy `make BOARD=<your_config>`, trong đó `<your_config>` là tên của tệp cấu hình bạn vừa chỉnh sửa, trừ `_defconfig`
Ngoài ra, bạn có thể chạy `make BOARD=<your_config>`, trong đó `<your_config>` là tên của tệp cấu hình bạn vừa chỉnh sửa, không bao gồm `_defconfig`
Ví dụ: bạn muốn build `ultimate` cho `hi3516ev200`:
@ -128,4 +128,4 @@ Bây giờ bạn có thể sử dụng `rootfs.squashfs.*` và `uImage.*` với
*Để biết thêm cấu hình wifi, hãy xem [cài đặt không dây](./wireless-settings.md).*
*Để biết thêm thông tin về việc build OpenIPC từ mã nguồn, hãy xem [Mã nguồn](./source-code.md).*
*Để biết thêm thông tin về việc build OpenIPC từ mã nguồn, hãy xem [Mã nguồn](./source-code.md).*

View File

@ -5,11 +5,11 @@ Chế độ ban đêm tự động trên các thiết bị không có cảm bi
==============================
Không phải tất cả các thiết bị đều có cảm biến ánh sáng tích hợp để xác định xem có nên kích hoạt chế độ ban đêm hay không.
Đối với những thiết bị này, chúng ta có thể sử dụng giá trị khuếch đại analog của cảm biến hình ảnh để chuyển đổi. Trong điều kiện ánh sáng yếu, giá trị này sẽ cao, cho biết cảm biến hình ảnh đang áp dụng khuếch đại để tăng độ sáng. Trong điều kiện ánh sáng tốt, giá trị này sẽ thấp.
Đối với những thiết bị này, chúng ta có thể sử dụng giá trị độ lợi analog của cảm biến hình ảnh để chuyển đổi. Trong điều kiện ánh sáng yếu, giá trị này sẽ cao, cho biết cảm biến hình ảnh đang áp dụng độ lợi để tăng độ sáng. Trong điều kiện ánh sáng tốt, giá trị này sẽ thấp.
#### Bước 1: Xác định xem bộ lọc cắt IR đã được thiết lập đúng chưa
Bài viết này giả định rằng bạn đã tìm thấy và nhập đúng chân GPIO cho bộ lọc cắt IR của mình và bạn có thể bật tắt bộ lọc bằng cách sử dụng nút `IR-cut filter` trong chế độ xem trước. Trong điều kiện ban ngày, trong chế độ xem trước, hình ảnh không nên có màu hồng.
Nếu nó có màu hồng, rất có thể các chân của bạn bị đảo ngược thứ tự và chúng cần được hoán đổi trong `Majestic > Night Mode`.
Bài viết này giả định rằng bạn đã tìm thấy và nhập đúng chân GPIO cho bộ lọc cắt IR của mình và bạn có thể bật tắt bộ lọc bằng cách sử dụng nút `Bộ lọc cắt IR` trong chế độ xem trước. Trong điều kiện ban ngày, trong chế độ xem trước, hình ảnh không nên có màu hồng.
Nếu nó có màu hồng, rất có thể các chân của bạn bị đảo ngược thứ tự và chúng cần được hoán đổi trong `Majestic > Chế độ ban đêm`.
#### Bước 2: Cài đặt tập lệnh chế độ ban đêm
Chúng ta cần 2 tập lệnh: tập lệnh chế độ ban đêm thực tế và tập lệnh khởi động cho phép tập lệnh chế độ ban đêm khi khởi động.
@ -22,7 +22,7 @@ Sao chép `autonight.sh` vào `/usr/sbin`
Sao chép `S96autonight` vào `/etc/init.d/` và làm cho nó có thể thực thi được với `chmod +x /etc/init.d/S96autonight`
#### Bước 3: Tinh chỉnh giá trị khuếch đại analog của cảm biến
#### Bước 3: Tinh chỉnh giá trị độ lợi analog của cảm biến
Trong `autonight.sh` bạn sẽ tìm thấy 3 cài đặt:
```
again_high_target=14000
@ -30,17 +30,17 @@ again_low_target=2000
pollingInterval=5
```
`again_high_target` là giá trị khuếch đại mà chế độ ban đêm sẽ được bật. Tương tự, `again_low_target` là giá trị mà chế độ ban đêm bị tắt. Bạn có thể thay đổi các số này để tối ưu hóa cho thiết lập cụ thể của mình.
`pollingInterval` cho biết tần suất tập lệnh kiểm tra giá trị khuếch đại analog của cảm biến. Giá trị thấp hơn sẽ dẫn đến phản hồi nhanh hơn, nhưng có thể dẫn đến hành vi chuyển đổi "hồi hộp" hơn để đáp ứng với các tia sáng ngắn, v.v.
`again_high_target` là giá trị độ lợi mà chế độ ban đêm sẽ được bật. Tương tự, `again_low_target` là giá trị mà chế độ ban đêm bị tắt. Bạn có thể thay đổi các số này để tối ưu hóa cho thiết lập cụ thể của mình.
`pollingInterval` cho biết tần suất tập lệnh kiểm tra giá trị độ lợi analog của cảm biến. Giá trị thấp hơn sẽ dẫn đến phản hồi nhanh hơn, nhưng có thể dẫn đến hành vi chuyển đổi "hồi hộp" hơn để đáp ứng với các tia sáng ngắn, v.v.
**Lưu ý:** Để khởi động lại tập lệnh `autonight.sh`, ví dụ: nếu bạn đã thay đổi cài đặt, hãy sử dụng `/etc/init.d/S96autonight restart`. Để dừng tập lệnh, ví dụ: nếu bạn muốn quan sát các giá trị khuếch đại analog mà không cần chuyển đổi bộ lọc IR,
**Lưu ý:** Để khởi động lại tập lệnh `autonight.sh`, ví dụ: nếu bạn đã thay đổi cài đặt, hãy sử dụng `/etc/init.d/S96autonight restart`. Để dừng tập lệnh, ví dụ: nếu bạn muốn quan sát các giá trị độ lợi analog mà không cần chuyển đổi bộ lọc IR,
hãy sử dụng `/etc/init.d/S96autonight stop`.
Sau khi dừng tập lệnh, bạn có thể chạy `/usr/sbin/autonight.sh` theo cách thủ công trong terminal để nhận đầu ra nhật ký.
#### Bổ sung: Xem giá trị khuếch đại analog của cảm biến và trạng thái chế độ ban đêm hiện tại
#### Bổ sung: Xem giá trị độ lợi analog của cảm biến và trạng thái chế độ ban đêm hiện tại
Các số liệu được hiển thị tại điểm cuối `/metrics` trong giao diện web.
_Giá trị khuếch đại analog hiện tại được hiển thị trong `isp_again`:_
_Giá trị độ lợi analog hiện tại được hiển thị trong `isp_again`:_
```
# HELP isp_again Analog Gain
# TYPE isp_again gauge

View File

@ -10,7 +10,7 @@ Ghi chú về việc cài đặt OpenIPC bằng Burn
```
Quan điểm của tôi là - hướng dẫn dành cho người mới bắt đầu nên được viết bởi người mới bắt đầu.
Ngay khi một người hoàn thành việc flash 2-3 bảng mạch, kỹ năng của anh ta sẽ tăng lên cấp độ 50
Ngay khi một người hoàn thành việc flash 2-3 board, kỹ năng của anh ta sẽ tăng lên cấp độ 50
và anh ta không muốn nhớ những điều nhỏ nhặt quan trọng đối với người mới bắt đầu.
```
@ -19,13 +19,13 @@ Trước khi bắt đầu làm việc, hãy xem video trên kênh [YouTube](http
- Tải xuống [Burn](https://github.com/OpenIPC/burn)
- Cài đặt máy chủ [PUTTY](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html) và [TFTP](https://pjo2.github.io/tftpd64/)
- Tắt nguồn camera, Kết nối USB com FTDI với camera của bạn, chỉ rõ cổng COM nào trên PC của bạn
- Nhập thư mục burn và chạy lệnh cmd sau (Chỉ tập trung vào cổng nối tiếp, trong trường hợp của tôi là COM4, các tham số khác không quan trọng, nó hoạt động với GK7205V210 của tôi):
- Chỉ sử dụng bộ nạp khởi động U-Boot từ kho lưu trữ Burn!
- Nhập thư mục burn và chạy lệnh cmd sau (Chỉ tập trung vào cổng serial, trong trường hợp của tôi là COM4, các tham số khác không quan trọng, nó hoạt động với GK7205V210 của tôi):
- **Chỉ** sử dụng bộ nạp khởi động U-Boot từ kho lưu trữ Burn!
```
python burn --chip hi3516ev200 --file=u-boot/gk7205v200.bin -p COM4 --break && putty.exe -serial COM4 -sercfg 115200,8,n,1,N
```
- Bật nguồn camera bằng bộ nguồn và đợi putty hiển thị bảng điều khiển
- Nhấn enter, sau đó bạn sẽ thấy "goke" trong bảng điều khiển
- Bật nguồn camera bằng bộ nguồn và đợi putty hiển thị console
- Nhấn enter, sau đó bạn sẽ thấy "goke" trong console
- Chạy máy chủ TFTP, chỉ định đường dẫn của tệp bin
- Bây giờ hãy làm theo hướng dẫn được tạo từ trang web OpenIPC:
@ -37,6 +37,6 @@ tftpboot 0x42000000 openipc-FULL-FIRMWARE-IMAGE.bin
sf probe 0; sf lock 0;
sf erase 0x0 0x800000; sf write 0x42000000 0x0 0x800000
reset
Ctrl + c nhanh chóng trong khi khởi động
Ctrl + c nhanh chóng trong quá trình khởi động
# Nhập các dòng lệnh từng dòng một! Không sao chép và dán nhiều dòng cùng một lúc!run setnor8m
```

View File

@ -3,22 +3,22 @@
## Tên công ty
- Công ty TNHH Phần mềm Hangzhou Ezviz.
- Công ty TNHH Vi điện tử Shanghai Fullhan.
- Công ty TNHH Điện tử Shenzhen Huishi.
- Công ty TNHH Shenzhen Topper Vision.
- Công ty TNHH Công nghệ Shenzhen Gainstrong.
- Công ty TNHH Công nghệ Quang học Yutong.
- Công ty TNHH Công nghệ Shenzhen Hanvision.
- Công ty TNHH Công nghệ Hangzhou Xiongmai.
- Công ty TNHH Điện tử Gia đình Thông minh Shenzhen Gospell.
- Công ty TNHH Công nghệ Shenzhen Zhangwo.
- Công ty TNHH Phát triển Công nghệ Sunivision.
- Công ty TNHH Công nghệ Longse.
- Công ty TNHH Công nghệ Zhejiang Uniview.
- Công ty TNHH Công nghệ Thế kỷ Shenzhen Zhongwei.
- Công ty TNHH Công nghệ Tầm nhìn Shenzhen Hichip.
- Công ty TNHH Khoa học và Công nghệ Thành Đô Powerview.
- Công ty TNHH Công nghệ Thông tin Nam Kinh Ajcloud.
- Công ty Cổ phần Quốc tế Ajcloud.
- Công ty TNHH Công nghệ Wansview.
- Hangzhou Ezviz Software Co., Ltd.
- Shanghai Fullhan Microelectronics Co., Ltd.
- Shenzhen Huishi Electronics Co., Ltd.
- Shenzhen Topper Vision Co., Ltd.
- Shenzhen Gainstrong Technology Co., Ltd.
- Yutong Optical Technology Co., Ltd.
- Shenzhen Hanvision Technology Co., Ltd.
- Hangzhou Xiongmai Technology Co., Ltd.
- Shenzhen Gospell Smarthome Electronic Co., Ltd.
- Shenzhen Zhangwo Technology Co., Ltd.
- Sunivision Technology Development Co., Ltd.
- Longse Technology Co., Ltd.
- Zhejiang Uniview Technologies Co., Ltd.
- Shenzhen Zhongwei Century Technology Co., Ltd.
- Shenzhen Hichip Vision Technology Co., Ltd.
- Chengdu Powerview Science and Technology Co., Ltd.
- Nanjing Ajcloud Infotech Co., Ltd.
- Ajcloud International Inc.
- Wansview Technology Co., Ltd.

View File

@ -6,7 +6,7 @@
Hướng dẫn
---
### Đây là một dự án mở, vì vậy bạn cũng có thể giúp đỡ.
### Đây là một dự án mở, vì vậy bạn cũng có thể đóng góp.
Chúng tôi cố gắng thu thập, tổ chức và chia sẻ càng nhiều thông tin liên quan đến các khía cạnh khác nhau của dự án càng tốt. Nhưng đôi khi chúng tôi bỏ sót những điều có vẻ hiển nhiên đối với chúng tôi, những nhà phát triển, nhưng lại không quá rõ ràng đối với người dùng cuối, những người ít quen thuộc với các chi tiết kỹ thuật đằng sau hậu trường. Đó là lý do tại sao chúng tôi thiết lập wiki này và cho phép bất kỳ ai có tài khoản GitHub thực hiện các bổ sung và cải tiến cho cơ sở kiến thức.
@ -14,13 +14,13 @@ Chúng tôi cố gắng thu thập, tổ chức và chia sẻ càng nhiều thô
Đăng nhập vào tài khoản GitHub của bạn hoặc [tạo một tài khoản][gh-signup] nếu bạn chưa có. Nó hoàn toàn miễn phí.
Truy cập [kho lưu trữ wiki](https://github.com/openIPC/wiki/) và fork nó.
Truy cập [kho lưu trữ wiki](https://github.com/openIPC/wiki/) và **nhánh (fork)** nó.
![GitHub Fork](../images/gh-fork.webp)
Thực hiện các thay đổi (sửa lỗi chính tả, thêm một bản ghi khác vào bảng hoặc viết một bài viết mới) và commit chúng vào fork kho lưu trữ của riêng bạn.
Thực hiện các thay đổi (sửa lỗi chính tả, thêm một bản ghi khác vào bảng hoặc viết một bài viết mới) và **cam kết (commit)** chúng vào nhánh kho lưu trữ của riêng bạn.
Từ kho lưu trữ của bạn, hãy tạo một pull request để chúng tôi có thể xem xét và kết hợp các thay đổi của bạn vào phiên bản wiki của chúng tôi.
Từ kho lưu trữ của bạn, hãy tạo một **yêu cầu kéo (pull request)** để chúng tôi có thể xem xét và kết hợp các thay đổi của bạn vào phiên bản wiki của chúng tôi.
![GitHub Contribute](../images/gh-contribute.webp)

View File

@ -3,7 +3,7 @@
## Các gói OpenIPC Buildroot
Danh sách các gói OpenIPC Buildroot và các gói Buildroot gốc bị thay thế theo từng phiên bản.
Danh sách các gói OpenIPC Buildroot và các gói Buildroot gốc bị **ẩn** theo từng phiên bản.
| OpenIPC | Buildroot 2020.02.12 | Buildroot 2021.02 | Buildroot 2022.08 | Buildroot HEAD |
|-------------------------------------|-------------------------|-------------------------|-------------------------|-------------------------|
@ -49,7 +49,7 @@ Danh sách các gói OpenIPC Buildroot và các gói Buildroot gốc bị thay t
| ipctool (git) | | | | |
| json-c-openipc json-c-0.15-20200726 | json-c 0.15 | json-c 0.15 | json-c 0.16 | json-c 0.16 |
| lame-openipc 3.100 | lame 3.100 | lame 3.100 | lame 3.100 | lame 3.100 |
| libcurl-openipc 7.76.0 | libcurl 7.76.0 | libcurl 7.79.1 | libcurl 7.84.0 | lame 3.100 |
| libcurl-openipc 7.76.0 | libcurl 7.76.0 | libcurl 7.79.1 | libcurl 7.84.0 | libcurl 7.86.0 |
| libevent-openipc (git) | libevent 2.1.11 | libevent 2.1.12 | libevent 2.1.12 | libevent 2.1.12 |
| libhv-openipc 1.1.1 | | | | |
| libogg-openipc 1.3.5 | libogg 1.3.4 | libogg 1.3.4 | libogg 1.3.5 | libogg 1.3.5 |
@ -62,7 +62,7 @@ Danh sách các gói OpenIPC Buildroot và các gói Buildroot gốc bị thay t
| majestic | | | | |
| majestic-fonts | | | | |
| mavlink-router | | | | |
| mbedtls-openipc 2.25.0 | mbedtls 2.16.10 | mbedtls 2.16.12 | mbedtls 2.28.1 | linux-firmware 20220310 |
| mbedtls-openipc 2.25.0 | mbedtls 2.16.10 | mbedtls 2.16.12 | mbedtls 2.28.1 | mbedtls 3.0.0 |
| memdump | | | | |
| microbe-web (git) | | | | |
| microsnander (git) | | | | |

View File

@ -8,35 +8,36 @@ Ví dụ về FFMPEG, RTSP và SRT
# Sao chép từ tệp này sang tệp khác
./ffmpeg -re -i z_input.mp4 -c copy z_output.mp4
# Lấy từ RTSP sang tệp
# Ghi từ RTSP vào tệp
./ffmpeg -re -i 'rtsp://172.19.32.179:554/stream=0' -c copy z_output.mp4
# Lấy từ SRT sang tệp
# Ghi từ SRT vào tệp
./ffmpeg -re -i 'srt://172.19.32.189:12345?pkt_size=1316' -c copy z_output.mp4
# Lấy từ RTSP sang MP4
# Ghi từ RTSP sang MP4
./ffmpeg -re -i 'rtsp://172.19.32.179:554/stream=0' -c copy -listen 1 -seekable 1 -multiple_requests 1 -f mp4 http://localhost:8090
# Phát trực tuyến với tính năng quay phim màn hình
# Phát trực tiếp với quay phim màn hình
./ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i :0.0 -f mpegts 'srt://172.17.32.18:12345'
# Phát trực tuyến từ tệp sang SRT
# Phát trực tiếp từ tệp sang SRT
./ffmpeg -re -i input.mp4 -c copy -f mpegts 'srt://172.17.32.18:12345'
# Phát trực tuyến từ tệp sang RTSP với vòng lặp
# Phát trực tiếp từ tệp sang RTSP với lặp lại
./ffmpeg -re -stream_loop -1 -i input.mp4 -f rtsp -rtsp_transport tcp 'rtsp://localhost:554/stream=0'
# Phát trực tuyến từ tệp sang SRT với mã hóa lại
# Phát trực tiếp từ tệp sang SRT với mã hóa lại
./ffmpeg -re -i input.mp4 -c:v libx264 -b:v 4000k -maxrate 4000k -bufsize 8000k -g 50 -f mpegts 'srt://172.17.32.18:12345'
# Phát trực tuyến sang SRT và sao chép codec từ ipcam với Majestic
# Phát trực tiếp sang SRT và sao chép codec từ ipcam với Majestic
./ffmpeg -re -i 'rtsp://172.19.32.179:554/stream=0' -c copy -f mpegts 'srt://172.17.32.18:12345'
# Phát trực tuyến độ trễ thấp từ ipcam với Majestic
# Phát trực tiếp độ trễ thấp từ ipcam với Majestic
./ffmpeg -re -fflags nobuffer -i 'rtsp://172.19.32.179:554/stream=0' -c copy -f mpegts 'srt://172.17.32.18:12345?mode=caller&transtype=live&latency=100'
# Bộ thu, chưa được kiểm tra
# Bộ nhận, chưa được kiểm tra
ffplay 'srt://172.17.32.18:12345'
```
```

View File

@ -14,5 +14,5 @@ nfsboot=tftp 0x42000000 uImage;setenv setargs setenv bootargs ${bootargsnfs};run
run nfsboot
```
Cách khởi động OpenIPC bằng NFS và TFTP mà không cần thay thế firmware gốc (bài đăng tiếng Nga):
Cách khởi động OpenIPC bằng NFS và TFTP mà không cần thay thế firmware gốc (bài viết tiếng Nga):
https://habr.com/ru/companies/ruvds/articles/774482/

View File

@ -13,8 +13,8 @@ Các thủ thuật thú vị
### Điều chỉnh syslogd để hoạt động với các múi giờ khác GMT
Một số triển khai `syslog()` như musl's luôn gửi dấu thời gian theo UTC.
Mã sau đây thêm một tùy chọn mới vào `syslogd`, `-Z`, để giả định dấu thời gian đến luôn là UTC và điều chỉnh chúng theo múi giờ địa phương
(của syslogd) trước khi ghi nhật ký.
Đoạn mã sau thêm một tùy chọn mới vào `syslogd`, `-Z`, để giả định dấu thời gian đến luôn là UTC và điều chỉnh chúng theo múi giờ địa phương
(của syslogd) trước khi ghi log.
```diff
Signed-off-by: Shiz <hi at shiz.me>
@ -79,22 +79,22 @@ index d64ff27..159336e 100644
if (len < 16 || msg[3] != ' ' || msg[6] != ' '
|| msg[9] != ':' || msg[12] != ':' || msg[15] != ' '
) {
- time(&now);
+ now = time(NULL);
- now = time(NULL);
+ time(&now);
timestamp = ctime(&now) + 4; /* skip day of week */
} else {
- now = 0;
- timestamp = msg;
+ if (G.adjustTimezone && strptime(msg, "%b %e %T", &nowtm)) {
+ now = mktime(&nowtm) - timezone;
+ timestamp = ctime(&now) + 4; /* skip day of week */
+ } else {
+ now = 0;
+ timestamp = msg;
+ }
msg += 16;
}
timestamp[15] = '\0';
- if (G.adjustTimezone && strptime(msg, "%b %e %T", &nowtm)) {
- now = mktime(&nowtm) - timezone;
+ if (G.adjustTimezone && strptime(msg, "%b %d %T", &nowtm)) {
+ now = mktime(&nowtm);
+ if (now != (time_t)-1) {
+ now -= timezone;
+ } else {
+ now = 0;
+ }
timestamp = ctime(&now) + 4; /* skip day of week */
} else {
now = 0;
@@ -1130,6 +1141,10 @@ int syslogd_main(int argc UNUSED_PARAM, char **argv)
if (opts & OPT_loglevel) // -l
G.logLevel = xatou_range(opt_l, 1, 8);
@ -109,4 +109,5 @@ index d64ff27..159336e 100644
--
```
_từ [sysklogd: thêm tùy chọn -Z để điều chỉnh múi giờ của thư](http://lists.busybox.net/pipermail/busybox/2017-May/085437.html)_
_từ [sysklogd: thêm tùy chọn -Z để điều chỉnh múi giờ của thông điệp](http://lists.busybox.net/pipermail/busybox/2017-May/085437.html)_

View File

@ -5,13 +5,13 @@
- [Mặt trước](#mặt-trước)
- [Mặt sau](#mặt-sau)
- [GPIO](#gpio)
- [Ghép kênh](#ghép-kênh)
- [Đa hợp](#đa-hợp)
- [Thẻ SD](#thẻ-sd)
- [Loa](#loa)
- [Cài đặt](#cài-đặt)
- [Bố cục bộ nhớ flash](#bố- cục-bộ-nhớ-flash)
- [Bố cục bộ nhớ flash](#bố-cục-bộ-nhớ-flash)
- [Tóm tắt](#tóm-tắt)
- [Việc cần làm](#việc-cần-làm)
- [Cần làm](#cần-làm)
# Tổng quan
Bảng mạch được tìm thấy trong camera PTZ WiFi Cootli trong nhà giá rẻ. Bảng mạch trông rất giống với [XM IPG-G4-WR-BL](http://baike.xm030.cn:81/%E4%BA%A7%E5%93%81%E5%8F%82%E6%95%B0/English/IPG%E6%A8%A1%E7%BB%84/Parameters%20for%20IPG-G4-WR.pdf) nhưng bố cục PCB hơi khác một chút.
@ -24,7 +24,7 @@ Tất cả các thử nghiệm đã hoàn thành trên firmware [gk7202v300_lite
| SoC | GK7202V300 | |
| Flash | XMC XM25QH64CHIQ | 8MB |
| Cảm biến | SmartSens SC223A* | 1920x1080 |
| Âm thanh | MIC + SPK | |
| Âm thanh | MIC + Loa | |
| Lưu trữ | Thẻ nhớ Micro SD | |
| LAN | - | - |
| WiFi | iComm SV6355 | UF.L (IPX) |
@ -56,11 +56,11 @@ Loại đầu nối JST 1.25mm
## Mặt sau
- Ổ cắm thẻ nhớ Micro SD
- UART (chưa hàn, ở bên trái SPK, chân 1 RX, chân 2 TX)
- UART (chưa hàn, ở bên trái của Loa, chân 1 RX, chân 2 TX)
| Đầu nối | Kiểu |
|:-:|:-|
| SPK | 2 chân JST |
| Loa | 2 chân JST |
| H | 5 chân JST |
| V | 5 chân JST |
| +5V | 2 chân JST |
@ -71,48 +71,48 @@ Loại đầu nối JST 1.25mm
|:-:|:-:|:-:|
| 0* | - | Nút đặt lại |
| 4 | Chân LED 5 | WLED |
| 8 | Mô-đun WiFi chân 3 | LO - Bật nguồn |
| 12 | Chân H 5 | Động cơ H |
| 13 | Chân H 2 | Động cơ H |
| 14 | Chân H 4 | Động cơ H |
| 15 | Chân H 3 | Động cơ H |
| 8 | Chân mô-đun WiFi 3 | THẤP - Bật nguồn |
| 12 | Chân H 5 | Động cơ Ngang |
| 13 | Chân H 2 | Động cơ Ngang |
| 14 | Chân H 4 | Động cơ Ngang |
| 15 | Chân H 3 | Động cơ Ngang |
| 16 | Chân LED 4 | IRLED |
| 52 | Chân V 2 | Động cơ V |
| 53 | Chân V 3 | Động cơ V |
| 54 | Chân V 4 | Động cơ V |
| 55 | Chân V 5 | Động cơ V |
| 56 | Chân IRCUT 1 | LO - IRCUT BẬT |
| 52 | Chân V 2 | Động cơ Dọc |
| 53 | Chân V 3 | Động cơ Dọc |
| 54 | Chân V 4 | Động cơ Dọc |
| 55 | Chân V 5 | Động cơ Dọc |
| 56 | Chân IRCUT 1 | THẤP - IRCUT BẬT |
| 57* | Chân LED 3 | Cảm biến IR |
| 58 | Chân IRCUT 2 | LO - IRCUT TẮT |
| 70 | - | Nguồn SD (LO - Bật nguồn) |
| 58 | Chân IRCUT 2 | THẤP - IRCUT TẮT |
| 70 | - | Nguồn SD (THẤP - Bật nguồn) |
| 51 | - | Bộ khuếch đại ÂM THANH |
\* - chưa được xác nhận.
## Ghép kênh
Không cần ghép kênh nếu Majestic kiểm soát các chân. Nếu không, có thể thực hiện ghép kênh bằng cách sử dụng các lệnh sau.
## Đa hợp
Không cần đa hợp nếu Majestic kiểm soát các chân. Nếu không, có thể thực hiện đa hợp bằng cách sử dụng các lệnh sau.
Ghép kênh GPIO16 để kiểm soát chân IRLED:
Đa hợp GPIO16 để kiểm soát chân IRLED:
```sh
devmem 0x120c0020 32 0x432 # GPIO2_0 (GPIO16)
```
Cũng dành cho động cơ.
Ghép kênh GPIO12, GPIO14, GPIO15 (đầu nối động cơ H):
Đa hợp GPIO12, GPIO14, GPIO15 (đầu nối động cơ Ngang):
```sh
devmem 0x120c0010 32 0x1e02 # GPIO1_4 (GPIO12)
devmem 0x120c0018 32 0x1d02 # GPIO1_6 (GPIO14)
devmem 0x120c001c 32 0x1402 # GPIO1_7 (GPIO15)
```
Ngay sau **Đang tải các mô-đun hạt nhân...**, GPIO13 chuyển sang HI (một trong các cuộn dây động cơ được cấp nguồn liên tục), vì vậy có thể cần thiết phải chuyển nó sang LO:
Ngay sau **Đang tải các mô-đun kernel...**, GPIO13 chuyển sang CAO (một trong các cuộn dây động cơ được cấp nguồn liên tục), vì vậy có thể cần thiết phải chuyển nó sang THẤP:
```sh
gpio clear 13
gpio unexport 13
```
## Thẻ SD
Theo mặc định, Thẻ SD không được cấp nguồn, vì vậy chúng ta cần chuyển GPIO70 sang LO bằng cách nào đó.
Theo mặc định, Thẻ SD không được cấp nguồn, vì vậy chúng ta cần chuyển GPIO70 sang THẤP bằng cách nào đó.
Để bật nguồn Thẻ SD từ Kernel:
```sh
@ -121,14 +121,14 @@ gpio clear 70
hoặc
```sh
devmem 0x120B8400 32 0x40 # chuyển GPIO8_6 sang chế độ đầu ra
devmem 0x120B8100 32 0x00 # đặt GPIO8_6 thành LO
devmem 0x120B8100 32 0x00 # đặt GPIO8_6 thành THẤP
```
Và gắn lại thẻ SD.
Để bật nguồn Thẻ SD từ U-Boot:
```sh
mw 0x120B8400 0x40 # chuyển GPIO8_6 sang chế độ đầu ra
mw 0x120B8100 0x00 # đặt GPIO8_6 thành LO
mw 0x120B8100 0x00 # đặt GPIO8_6 thành THẤP
mmc rescan
```
@ -149,7 +149,7 @@ curl -v -u user:pass -H "Content-Type: application/json" -X POST --data-binary @
Firmware gốc bị khóa pwd và giao diện LAN không có, vì vậy tôi đoán các phương pháp sau đây có sẵn để flash bảng này:
- [burn](https://github.com/OpenIPC/burn) + [u-boot-gk7202v300-universal.bin](https://github.com/OpenIPC/firmware/releases/download/latest/u-boot-gk7202v300-universal.bin) và sau đó tải lên FW qua X/Y/ZMODEM (ví dụ: **loady**. Mẹo: sử dụng tùy chọn **baud** để tăng tốc độ) hoặc từ thẻ SD (yêu cầu cung cấp nguồn, [xem ở trên](#thẻ-sd))
- tải toàn bộ hình ảnh thông qua giao diện web gốc (chưa được kiểm tra)
- lập trình viên flash
- bộ nạp flash
- bằng cách nào đó vào bộ nạp khởi động gốc
## Bố cục bộ nhớ flash
@ -157,7 +157,7 @@ Firmware gốc bị khóa pwd và giao diện LAN không có, vì vậy tôi đo
|:-|:-|:-|
| 0x00000000 | 0x00040000 (262144 byte) | bộ nạp khởi động |
| 0x00040000 | 0x00010000 (65536 byte) | env |
| 0x00050000 | 0x00200000 (2097152 byte) | hạt nhân |
| 0x00050000 | 0x00200000 (2097152 byte) | kernel |
| 0x00250000 | 0x00500000 (5242880 byte) | rootfs |
| 0x00750000 | 0x000B0000 (720896 byte) | rootfs_data |
@ -169,5 +169,5 @@ Firmware gốc bị khóa pwd và giao diện LAN không có, vì vậy tôi đo
- [X] Loa hoạt động
- [ ] PTZ/Động cơ (Chân GPIO được tìm thấy/có thể truy cập, trình điều khiển chưa được kiểm tra)
# Việc cần làm
# Cần làm
- bằng cách nào đó vá/thích ứng camhi-motor.ko, để làm cho nó hoạt động trên bảng này.

View File

@ -1,3 +1,3 @@
### Liên kết
* [Chuông cửa có hình IP - Atz-dbv01p](https://www.domoticz.com/forum/viewtopic.php?p=232840&sid=8346f7c7fd45358a7846858622c33d66#p232840)
* [Chuông cửa Video IP - Atz-dbv01p](https://www.domoticz.com/forum/viewtopic.php?p=232840&sid=8346f7c7fd45358a7846858622c33d66#p232840)

View File

@ -4,7 +4,7 @@
[Tờ dữ liệu sản phẩm](https://chacon.com/datasharing/doc/IPCAM-RI01/ipcam-ri01_user_manual.pdf)
Camera này là sản phẩm đổi thương hiệu của một công ty sản xuất được xác định bởi "PPStrong".
Camera này là một phiên bản đổi thương hiệu của một công ty sản xuất được xác định bởi "PPStrong".
Tôi chắc chắn rằng có những camera khác ngoài kia đang sử dụng cùng một phần cứng (hoặc tương tự với những thay đổi nhỏ).
## Phần cứng
@ -33,8 +33,8 @@ Bo mạch chủ của camera được xác định bởi "SPEED5S-H1MB_F23".
![device_chacon_ipcam-ri01_board_top](https://user-images.githubusercontent.com/1659543/149513254-d326f57f-902b-4c58-98e6-73bfe7fa33d2.jpg)
Ở phía trên của bo mạch chủ:
- một khe cắm thẻ nhớ micro sd ở bên phải
- đầu nối có nhãn "IR" cấp nguồn cho đèn LED IR, đèn LED đỏ và đèn LED xanh
- một khe cắm thẻ nhớ microSD ở bên phải
- đầu nối có nhãn "IR" cấp nguồn cho đèn LED IR, đèn LED đỏ và đèn LED xanh lam
- đầu nối "ICR" cấp nguồn cho bộ lọc cắt IR
- đầu nối không được xác định là đầu vào cho micrô
- chip flash SPI NOR (QH128A)
@ -44,9 +44,9 @@ Bo mạch chủ của camera được xác định bởi "SPEED5S-H1MB_F23".
Ở phía dưới của bo mạch chủ:
- SoC Hi3518EV300
- Mô-đun WiFi RTL8188FTV
- Công tắc đặt lại
- Nút Reset
- Đầu nối (từ trên xuống dưới):
- Nguồn (5V từ đầu nối micro usb)
- Nguồn (5V từ đầu nối micro USB)
- Động cơ bước nghiêng/dọc
- Động cơ bước xoay/ngang
- Loa
@ -75,52 +75,52 @@ Bo mạch chủ của camera được xác định bởi "SPEED5S-H1MB_F23".
![device_chacon_ipcam-ri01_flash](https://user-images.githubusercontent.com/1659543/149519439-7ac8f1c0-4d00-495f-94ab-82ba9c552822.jpg)
### Chân UART (cổng nối tiếp)
### Chân UART (cổng serial)
![device_chacon_ipcam-ri01_uart](https://user-images.githubusercontent.com/1659543/149518771-a33ab23f-a4f0-44db-83a6-873bd1802056.jpg)
### GPIO
| số | Mô tả |
| số | Mô tả |
|-----------|---------------|
| 0x0f (15) | irCut_1 |
| 0x0c (12) | irCut_2 |
| 0x28 (40) | Đèn LED IR |
| 0x33 (51) | Đèn LED đỏ |
| 0x32 (50) | Đèn LED xanh |
| 0x0d (13) | nguồn wlan |
| 0x28 (40) | Đèn LED IR |
| 0x33 (51) | Đèn LED đỏ |
| 0x32 (50) | Đèn LED xanh |
| 0x0d (13) | Nguồn WLAN |
| 0x00 (0) | AcShdn |
| 0x09 (9) | Nút đặt lại |
| 0x3b (59) | Động cơ nghiêng A1 |
| 0x3a (58) | Động cơ nghiêng A2 |
| 0x39 (57) | Động cơ nghiêng B1 |
| 0x38 (56) | Động cơ nghiêng B2 |
| 0x47 (71) | Động cơ xoay A1 |
| 0x45 (69) | Động cơ xoay A2 |
| 0x46 (70) | Động cơ xoay B1 |
| 0x44 (68) | Động cơ xoay B2 |
| 0x09 (9) | Nút Reset |
| 0x3b (59) | Động cơ Nghiêng A1 |
| 0x3a (58) | Động cơ Nghiêng A2 |
| 0x39 (57) | Động cơ Nghiêng B1 |
| 0x38 (56) | Động cơ Nghiêng B2 |
| 0x47 (71) | Động cơ Xoay A1 |
| 0x45 (69) | Động cơ Xoay A2 |
| 0x46 (70) | Động cơ Xoay B1 |
| 0x44 (68) | Động cơ Xoay B2 |
### Sửa đổi
#### Cổng USB nối tiếp
#### Cổng Serial USB
Có một đầu nối micro usb để cấp nguồn cho camera và với một số hàn, đầu nối này cũng có thể được sử dụng cho bộ chuyển đổi nối tiếp sang usb.
Nếu bạn thấy khó hàn dây trên đầu nối micro usb của camera, hãy mua một [bảng breakout micro usb](https://www.google.com/search?q=micro+usb+breakout+board&tbm=isch).
Có một đầu nối micro USB để cấp nguồn cho camera và với một số thao tác hàn, đầu nối này cũng có thể được sử dụng cho bộ chuyển đổi serial sang USB.
Nếu bạn thấy khó hàn dây trên đầu nối micro USB của camera, hãy mua một [bảng breakout micro USB](https://www.google.com/search?q=micro+usb+breakout+board&tbm=isch).
![device_chacon_ipcam-ri01_usbmod](https://user-images.githubusercontent.com/1659543/149561868-f991f75e-e766-4b71-920e-ea2918182796.jpg)
1. Lấy bộ chuyển đổi 3.3V TTL sang USB (sử dụng bộ chuyển đổi pl2303hx rẻ tiền)
1. Lấy một bộ chuyển đổi 3.3V TTL sang USB (sử dụng một bộ chuyển đổi pl2303hx rẻ tiền)
2. Tháo đầu nối và chân USB-A
3. Kết nối cổng micro usb của camera với bộ chuyển đổi
4. Kết nối uart của camera với bộ chuyển đổi
3. Kết nối cổng micro USB của camera với bộ chuyển đổi
4. Kết nối UART của camera với bộ chuyển đổi
## Firmware gốc
Camera uBoot được bảo vệ bằng mật khẩu với "pps_password".
Camera uBoot được bảo vệ bằng mật khẩu "pps_password".
### Tạo bản sao lưu
Để sao lưu firmware gốc, bạn cần một bộ chuyển đổi nối tiếp USB được kết nối với bo mạch và một thẻ nhớ sd.
Để sao lưu firmware gốc, bạn cần một bộ chuyển đổi serial USB được kết nối với bảng mạch và một thẻ nhớ SD.
Tìm ra kích thước chip flash của bạn:
```
@ -130,9 +130,9 @@ D:0x20 0x70 0x17
Name:"XM25QH64AHIG"
```
Các lệnh uBoot để sao lưu toàn bộ bộ nhớ flash trên thẻ nhớ sd (**tất cả nội dung thẻ nhớ sd sẽ bị mất**).
Lệnh uBoot để sao lưu toàn bộ bộ nhớ flash trên thẻ nhớ SD (**tất cả nội dung của thẻ nhớ SD sẽ bị mất**).
Tùy thuộc vào kích thước bộ nhớ flash của camera, hãy thay thế \<kích thước1\>/\<kích thước2\> bằng:
- 0x800000/0x4000 cho flash 8M
- 0x800000/0x4000 cho flash 8MB
- 0x1000000/0x8000 cho flash 16Mb
(kích thước2 = kích thước1 / 512)
@ -157,11 +157,11 @@ MMC write: dev # 0, block # 0, count 16384 ... had init
pps #
```
Điều này sẽ ghi toàn bộ flash vào thẻ mmc ở "chế độ thô" (không có hệ thống tệp).
Thao tác này sẽ ghi toàn bộ flash vào thẻ mmc ở "chế độ thô" (không có hệ thống tệp).
**CẢNH BÁO**: nếu bạn để thẻ trong camera và khởi động FW gốc, thẻ sẽ bị định dạng và bản sao lưu sẽ bị mất!
**CẢNH BÁO**: nếu bạn để thẻ trong camera và camera khởi động FW gốc, thẻ sẽ bị định dạng và bản sao lưu sẽ bị mất!
Sau đó, để lưu bản dump vào một tệp, hãy lắp thẻ vào hệ thống đang chạy linux và:
Sau đó, để lưu bản dump vào một tệp, hãy lắp thẻ vào hệ thống đang chạy Linux và:
```
dd if=/dev/mmcblk0 of=./flash_backup.bin bs=512 count=<kích thưc2>
```
@ -203,7 +203,7 @@ mtd9: 00020000 00010000 "oeminfo" 131072 16646144 - 16777216
### Khởi động telnetd
FW gốc của camera chạy máy chủ REST với xác thực (người dùng: PpStRoNg, mật khẩu: #%&wL1@\*tU123zv).
FW gốc của camera chạy một máy chủ REST với xác thực (tên người dùng: PpStRoNg, mật khẩu: #%&wL1@\*tU123zv).
Một trong những tính năng thú vị nhất là chức năng "runcmd" (thay thế \<your_cam_ip\> bằng địa chỉ IP camera của bạn):
@ -226,11 +226,11 @@ Content-Length: 129
}
```
Trong FW mới nhất, họ đã xóa tệp nhị phân "telnetd", vì vậy bạn cần đặt nó trên thẻ nhớ sd:
Trong FW mới nhất, họ đã xóa tệp nhị phân "telnetd", vì vậy bạn cần đặt nó trên thẻ nhớ SD:
[telnetd.zip](https://github.com/ljalves/wiki/files/7875319/telnetd.zip)
Để khởi động máy chủ, hãy sao chép tệp nhị phân telnetd vào thẻ nhớ sd và chạy:
Để khởi động máy chủ, hãy sao chép tệp nhị phân telnetd vào thẻ nhớ SD và chạy:
```
curl -u PpStRoNg:#%\&wL1@*tU123zv -i http://<your_cam_ip>:80/devices/runcmd --request POST --data '{"cmd":"echo 'anyone::0:0:root:/:/bin/sh' >> /etc/passwd"}'
curl -u PpStRoNg:#%\&wL1@*tU123zv -i http://<your_cam_ip>:80/devices/runcmd --request POST --data '{"cmd":"/mnt/mmc01/telnetd &"}'
@ -251,7 +251,7 @@ BusyBox v1.26.2 (2019-04-16 05:35:27 PDT) built-in shell (ash)
```
### Đầu ra [ipctool](https://github.com/OpenIPC/ipctool) (flash 8Mb):
### Đầu ra của [ipctool](https://github.com/OpenIPC/ipctool) (flash 8Mb):
```
/mnt/mmc01 # ./ipctool
@ -312,20 +312,20 @@ sensors:
## Firmware OpenIPC
## Flash OpenIPC
(sớm...)
(sắp ra mắt...)
### Dump khởi động
(quá dài để dịch, nếu bạn cần phần này được dịch, vui lòng cho tôi biết)
(sớm...)
(sắp ra mắt...)
### rtl8188fu
(sớm...)
(sắp ra mắt...)
### Trình điều khiển động cơ
Camera có 2 động cơ bước để điều khiển độ nghiêng (lên/xuống) và xoay (trái/phải).
Camera có 2 động cơ bước để điều khiển nghiêng (lên/xuống) và xoay (trái/phải).
Thay thế trình điều khiển động cơ tại /lib/modules/4.9.37/hisilicon/camhi-motor.ko bằng trình điều khiển được bao gồm bên dưới.
@ -356,8 +356,8 @@ nightMode:
```
### Đèn LED
Camera có đèn LED hai màu (đỏ/xanh) được kết nối với GPIO 50 và 51.
Để điều khiển các đèn LED đó, bạn có thể sử dụng api /sys:
Camera có đèn LED hai màu (đỏ/xanh lam) được kết nối với GPIO 50 và 51.
Để điều khiển các đèn LED đó, bạn có thể sử dụng API /sys:
```
# làm cho GPIO có thể truy cập được
echo 50 > /sys/class/gpio/export
@ -365,9 +365,9 @@ echo 50 > /sys/class/gpio/export
echo out > /sys/class/gpio50/direction
echo out > /sys/class/gpio51/direction
# bật đèn LED xanh
# bật đèn LED xanh lam
echo 1 > /sys/class/gpio50/value
# tắt đèn LED xanh
# tắt đèn LED xanh lam
echo 0 > /sys/class/gpio50/value
# bật đèn LED đỏ
@ -375,3 +375,4 @@ echo 1 > /sys/class/gpio51/value
# tắt đèn LED đỏ
echo 0 > /sys/class/gpio51/value
```

View File

@ -3,13 +3,13 @@ Xoay, Nghiêng, Lấy nét và Thu phóng (thông qua dòng lệnh ssh)
## Cài đặt OpenIPC:
Mở vỏ máy ra, hóa ra, SoC là **hi3518cv100**, **16MB** và cảm biến camera là **mt9p006**. Cài đặt máy chủ TFTP trên PC và làm theo hướng dẫn cài đặt: https://github.com/OpenIPC/wiki/blob/master/en/installation.md Tải xuống hình ảnh chính xác (16MB, Lite) từ đây https://openipc.org/cameras/vendors/hisilicon/socs/hi3518cv100 và đặt nó vào thư mục của máy chủ TFTP (trong trường hợp hình ảnh không được đóng gói, có thể bỏ qua bước "giải nén"). Như đã mô tả, kết nối bộ chuyển đổi UART với các chân trên bo mạch SoC và khởi động thiết bị đầu cuối trên PC:
Mở vỏ máy ra, hóa ra, SoC là **hi3518cv100**, **16MB** và cảm biến camera là **mt9p006**. Cài đặt máy chủ TFTP trên PC và làm theo hướng dẫn cài đặt: https://github.com/OpenIPC/wiki/blob/master/en/installation.md Tải xuống hình ảnh chính xác (16MB, Lite) từ đây https://openipc.org/cameras/vendors/hisilicon/socs/hi3518cv100 và đặt nó vào thư mục của máy chủ TFTP (trong trường hợp hình ảnh không được đóng gói, có thể bỏ qua bước "giải nén"). Như đã mô tả, kết nối bộ chuyển đổi UART với các chân trên bo mạch SoC và khởi động một terminal trên PC:
```sh
screen -L -Logfile ipcam-$(date +%s).log /dev/ttyUSB0 115200
```
Làm theo hướng dẫn được tạo bởi trang web OpenIPC. Để truy cập UBOOT, hãy nhấn Ctrl-C ngay sau khi cắm nguồn điện. Để làm cho mạng hoạt động sau này trong Linux: Trước lệnh "đặt lại" cuối cùng trong UBOOT, hãy nhập các lệnh sau, theo: https://github.com/OpenIPC/wiki/blob/master/en/network-perversions.md
Làm theo hướng dẫn được tạo bởi trang web OpenIPC. Để truy cập U-Boot, hãy nhấn Ctrl-C ngay sau khi cắm nguồn điện. Để làm cho mạng hoạt động sau này trong Linux: Trước lệnh "reset" cuối cùng trong U-Boot, hãy nhập các lệnh sau, theo: https://github.com/OpenIPC/wiki/blob/master/en/network-perversions.md
```sh
setenv extras 'hieth.phyaddru=3 hieth.mdioifu=0'
@ -45,15 +45,15 @@ ip a
Truy cập giao diện web bằng trình duyệt qua cổng 85 và thay đổi mật khẩu và địa chỉ MAC.
## Cấu hình chuyển đổi chế độ ban đêm:
Thông qua ipctool (ipctool gpio scan), người ta có thể dễ dàng tìm ra rằng đầu vào cảm biến ánh sáng (để tự động chuyển đổi giữa ngày và đêm) là số 2. Bộ lọc IR được điều khiển bởi 1 và 0.
Thông qua ipctool (ipctool gpio scan), người ta có thể dễ dàng tìm ra rằng đầu vào cảm biến ánh sáng (để tự động chuyển đổi giữa ngày và đêm) là số 2. Bộ cắt IR được điều khiển bởi 1 và 0.
* Cài đặt Chế độ xem trước-Ban đêm:
```
Bật chế độ ban đêm: bật
Chân GPIO của tín hiệu từ cảm biến IR: 2
Chân GPIO1 của tín hiệu cho bộ lọc IRcut: 1
Chân GPIO2 của tín hiệu cho bộ lọc IRcut: 0
Chân GPIO1 của tín hiệu cho bộ lọc IR-cut: 1
Chân GPIO2 của tín hiệu cho bộ lọc IR-cut: 0
```
## Cấu hình độ phân giải camera:
@ -98,7 +98,7 @@ Số khối: 4
* Hệ thống:
```
Phục vụ quản trị web thông qua Majestic: tắt
Phục vụ Quản trị Web thông qua Majestic: tắt
```
## Cấu hình watchdog:
@ -125,7 +125,7 @@ mpv rtsp://root:12345@192.168.1.188:554/stream=0
```
## Kiểm tra xoay, nghiêng, thu phóng và lấy nét:
Hóa ra, camera sử dụng giao thức pelco-d qua cổng nối tiếp ttyAMA1, vì vậy hãy đăng nhập vào camera qua ssh (sử dụng ip của bạn):
Hóa ra, camera sử dụng giao thức Pelco-D qua cổng nối tiếp ttyAMA1, vì vậy hãy đăng nhập vào camera qua ssh (sử dụng IP của bạn):
```sh
ssh root@192.168.1.188
@ -263,7 +263,7 @@ printf '\xFF\x01\x00\x08\x08\x00\x11' >/dev/ttyAMA1
### Tập lệnh ./stop
Tập lệnh sau đây dừng mọi hành động bao gồm quét ngang và dọc). Đó là một cách giải quyết, bởi vì lệnh "dừng" pelco-d thông thường không phải lúc nào cũng hoạt động. Hóa ra "lên", "xuống", "trái", "phải" luôn dừng các lệnh quét, vì vậy các lệnh trái + phải ngắn được bao gồm trong tập lệnh này:
Tập lệnh sau đây dừng mọi hành động bao gồm quét ngang và dọc. Đó là một cách giải quyết, bởi vì lệnh "dừng" Pelco-D thông thường không phải lúc nào cũng hoạt động. Hóa ra "lên", "xuống", "trái", "phải" luôn dừng các lệnh quét, vì vậy các lệnh trái + phải ngắn được bao gồm trong tập lệnh này:
```sh
#!/bin/sh
@ -282,8 +282,9 @@ printf '\xFF\x01\x00\x00\x00\x00\x01' >/dev/ttyAMA1
- Camera dường như có bo mạch PoE, nhưng dường như nó không hoạt động. Có thể có hai phiên bản (một phiên bản 12V và một phiên bản PoE) khác nhau chủ yếu ở cáp. Vì vậy, có thể camera có thể được sửa đổi để sử dụng bo mạch PoE.
- Có khe cắm SDCard (mặc dù chỉ có thể truy cập khi mở vỏ). Nó không hoạt động vào lúc này. Mặc dù đã có bản cập nhật firmware gốc giải quyết rõ ràng chức năng SDCard, nhưng không chắc chắn liệu nó có bao giờ hoạt động với firmware gốc hay không.
- Có khe cắm thẻ nhớ SD (mặc dù chỉ có thể truy cập khi mở vỏ). Nó không hoạt động vào lúc này. Mặc dù đã có bản cập nhật firmware gốc giải quyết rõ ràng chức năng SDCard, nhưng không chắc chắn liệu nó có bao giờ hoạt động với firmware gốc hay không.
- Camera có mô-đun Wifi. Có thể điều này có thể được kích hoạt thông qua OpenIPC.
- Camera có mô-đun Wi-Fi. Có thể điều này có thể được kích hoạt thông qua OpenIPC.
- Camera có bảng thu phóng và lấy nét. Tài liệu cho bảng này tồn tại bằng tiếng Trung Quốc (có thể được dịch qua Google Dịch). Dường như có một quy trình "hiệu chuẩn nhà máy" để gán cài đặt lấy nét "tiêu chuẩn" cho các mức thu phóng.
- Camera có bảng thu phóng và lấy nét. Tài liệu cho bảng này tồn tại bằng tiếng Trung Quốc (có thể được dịch qua google dịch). Dường như có một quy trình "hiệu chuẩn nhà máy" để gán cài đặt lấy nét "tiêu chuẩn" cho các mức thu phóng.

View File

@ -8,7 +8,7 @@ Foscam X5 / Acculenz R5 / Assark X3E
Định dạng thẻ nhớ SD sang FAT32 và sao chép nội dung của kho lưu trữ sau vào thẻ:
- [foscam-openipc.zip][1]
Cập nhật thông tin đăng nhập mạng không dây của bạn trên autostart.sh:
Cập nhật thông tin xác thực không dây của bạn trên autostart.sh:
```diff
#!/bin/sh
+WLAN_SSID="Router"
@ -18,7 +18,7 @@ Cập nhật thông tin đăng nhập mạng không dây của bạn trên autos
#### Cài đặt
- Đảm bảo camera đã tắt nguồn, đặt thẻ nhớ SD đã chuẩn bị vào thiết bị.
- Bật nguồn thiết bị và đợi ít nhất 4 phút.
- Ngay sau đó, một camera OpenIPC sẽ xuất hiện trên mạng wlan của bạn.
- Một camera OpenIPC sẽ xuất hiện trên mạng WLAN của bạn sau một thời gian ngắn.
---

View File

@ -22,20 +22,20 @@ Ethernet chỉ hoạt động với các thông số này
### GPIO
CẢNH BÁO!!! Trạng thái chân gpio động cơ không chính xác sau khi khởi động, cuộn dây động cơ có thể bị cháy, hãy khởi tạo với [những cái này](#kiểm-tra-động-cơ) càng sớm càng tốt hoặc rút đầu nối động cơ trước khi bật nguồn.
CẢNH BÁO!!! Trạng thái chân gpio động cơ không chính xác sau khi khởi động, cuộn dây động cơ có thể bị cháy, hãy khởi tạo với [những cái này](#kiểm-tra-động-cơ) càng sớm càng tốt, hoặc rút đầu nối động cơ trước khi bật nguồn.
| Nr | Mô tả | Màu |
|-----------|---------------|---------|
| 38 | irCut_1 | |
| 39 | irCut_2 | |
| 9 | Động cơ thu phóng A1 | Xanh lá cây |
| 48 | Động cơ thu phóng A2 | Cam |
| 51 | Động cơ thu phóng B1 | Vàng |
| 43 | Động cơ thu phóng B2 | Tím |
| 52 | Động cơ lấy nét A1 | Đen |
| 55 | Động cơ lấy nét A2 | Xanh lam |
| 53 | Động cơ lấy nét B1 | Trắng |
| 54 | Động cơ lấy nét B2 | Đỏ |
| 9 | Động cơ Zoom A1 | Xanh lá cây |
| 48 | Động cơ Zoom A2 | Cam |
| 51 | Động cơ Zoom B1 | Vàng |
| 43 | Động cơ Zoom B2 | Tím |
| 52 | Động cơ Lấy nét A1 | Đen |
| 55 | Động cơ Lấy nét A2 | Xanh lam |
| 53 | Động cơ Lấy nét B1 | Trắng |
| 54 | Động cơ Lấy nét B2 | Đỏ |
### Kiểm tra động cơ
@ -375,7 +375,7 @@ do
done
# chuyển sang bước đầy đủ và vô hiệu hóa động cơ
# chuyển sang full step và tắt động cơ
if [ $1 = "-f" ]; then
echo "0" >/sys/class/gpio/gpio$gpio_FN_Bm/value
usleep $sleep_time
@ -393,4 +393,4 @@ elif [ $1 = "-t" ]; then
usleep $sleep_time
set_zero_WT
fi
```
```

View File

@ -6,12 +6,12 @@ Dành cho camera LifeSmart: LS179
## BOM
SoC: HI3518EV200
Flash: ENQH127A (16MB NOR)
Flash: ENQH127A (NOR 16MB)
Cảm biến: soif23 (???)
## Cài đặt
Làm theo [hướng dẫn](help-uboot.md#bypassing-password-protected-bootloader) để truy cập vào U-boot.
Làm theo [hướng dẫn](help-uboot.md#bypassing-password-protected-bootloader) để truy cập U-boot.
Sao lưu flash và cài đặt OpenIPC theo [hướng dẫn](https://openipc.org/cameras/vendors/hisilicon/socs/hi3518ev200).
@ -30,11 +30,11 @@ fw_setenv wlanpass "password"
reboot
```
Thao tác này sẽ cấp nguồn cho mô-đun WiFi USB (GPO #54) và tải trình điều khiển Kernel thích hợp (`8188fu`).
Thao tác này sẽ cấp nguồn cho mô-đun WiFi USB (GPIO #54) và tải trình điều khiển Kernel thích hợp (`8188fu`).
## Đèn LED
Các đèn LED được điều khiển bởi GPO #2.
Các đèn LED được điều khiển bởi GPIO #2.
```bash
# bật

View File

@ -27,7 +27,7 @@ Thiết lập phần cứng và phần mềm rất giống với: [chacron ipcam
| Cắt IR | Hoạt động |
### Kết nối nối tiếp
### Kết nối serial
![device_lsc_doorbell3](../images/device-lsc-smart-connect-doorbell3.jpg)
@ -36,9 +36,9 @@ Thiết lập phần cứng và phần mềm rất giống với: [chacron ipcam
### Nor flash
[XM25QH64A](https://datasheet.lcsc.com/lcsc/XMC-XM25QH64AHIG_C328461.pdf)
- 8MB NOR Flash
- NOR Flash 8MB
### GPIOs
### GPIO
| nr | Mô tả |
|-----------|---------------|
@ -121,7 +121,7 @@ sensors:
### Đèn LED
Camera có đèn LED hai màu (đỏ/xanh) được kết nối với GPIO 50 và 51.
Camera có đèn LED hai màu (đỏ/xanh lam) được kết nối với GPIO 50 và 51.
Để điều khiển các đèn LED đó, bạn có thể sử dụng API /sys:
```
# làm cho GPIO có thể truy cập được
@ -130,9 +130,9 @@ echo 50 > /sys/class/gpio/export
echo out > /sys/class/gpio50/direction
echo out > /sys/class/gpio51/direction
# bật đèn LED xanh
# bật đèn LED xanh lam
echo 1 > /sys/class/gpio50/value
# tắt đèn LED xanh
# tắt đèn LED xanh lam
echo 0 > /sys/class/gpio50/value
# bật đèn LED đỏ
@ -141,12 +141,13 @@ echo 1 > /sys/class/gpio51/value
echo 0 > /sys/class/gpio51/value
```
### Hỗ trợ Homeassistant
### Hỗ trợ Home Assistant
Một MQTT Client tùy chỉnh đã được viết để xử lý sự kiện chuông cửa và gửi nó đến Home assistant bằng MQTT.
Dự án có thể được tìm thấy ở đây: [lscdoorbellmqtt](https://github.com/berobloom/lscdoorbellmqtt)
Một MQTT Client tùy chỉnh đã được viết để xử lý sự kiện chuông cửa và gửi nó đến Home Assistant bằng MQTT.
Bạn có thể tìm thấy dự án tại đây: [lscdoorbellmqtt](https://github.com/berobloom/lscdoorbellmqtt)
## Nguồn:
* https://github.com/OpenIPC/wiki/blob/master/en/device-chacon-ipcam-ri01.md
* https://github.com/berobloom/lscdoorbellmqtt

View File

@ -4,7 +4,7 @@
## Phần cứng
| Tên | chân | Mô tả | GPIO | Cách sử dụng |
| Tên | Chân | Mô tả | GPIO | Cách sử dụng |
| --- | --- | --- |---|---|
| **c1** | 1 | ICR | | |
|| 2 | ICR | | |
@ -32,10 +32,10 @@
|| | | | |
| **c5** | 1 | đặt lại | | |
|| 2 | GND | | |
|| 3 | uart TX | ttyS2 | 9600; `echo 234 > /dev/ttyS2` |
|| 4 | uart RX | ttyS2 | 9600; `cat /dev/ttyS2` |
|| 5 | uart TX | ttyS1 | 9600; `echo 234 > /dev/ttyS1` |
|| 6 | uart RX | ttyS1 | 9600; `cat /dev/ttyS1` |
|| 3 | UART TX | ttyS2 | 9600; `echo 234 > /dev/ttyS2` |
|| 4 | UART RX | ttyS2 | 9600; `cat /dev/ttyS2` |
|| 5 | UART TX | ttyS1 | 9600; `echo 234 > /dev/ttyS1` |
|| 6 | UART RX | ttyS1 | 9600; `cat /dev/ttyS1` |
|| 7 | tắt tiếng âm thanh | gpio80 | `echo 1 > /sys/class/gpio/gpio80/value` |
|| | | | |
| **c6** | 1 | Âm thanh ra | | |
@ -59,8 +59,8 @@
|| 15 | AlarmIn | gpio44 | `cat /sys/class/gpio/gpio44/value` |
|| 16 | AlarmOut | gpio45 | | |
|| | | | |
| **j8** | 1 | uart TX | ttyS0 | |
|| 2 | uart RX | ttyS0 | | |
| **j8** | 1 | UART TX | ttyS0 | |
|| 2 | UART RX | ttyS0 | | |
|| | | | |
## Bổ sung
@ -68,3 +68,4 @@
|---|---|
| Nhiệt độ CPU | `cat /sys/class/mstar/msys/TEMP_R` |

View File

@ -17,7 +17,7 @@ Smartwares CIP-37210
Bên cạnh camera, bạn sẽ cần các công cụ sau:
- Tuốc nơ vít hoặc đầu vít PH0
- Tuốc nơ vít lưỡi nhỏ, ví dụ: 0,6 × 3,5 mm
- Tuốc nơ vít đầu dẹt nhỏ, ví dụ: 0,6 × 3,5 mm
- Bộ chuyển đổi USB sang TTL để giao tiếp UART. (Tôi đã sử dụng thiết bị dựa trên CP2102, nhưng có [nhiều lựa chọn tốt khác](https://github.com/OpenIPC/wiki/blob/master/en/equipment-flashing.md))
- Thẻ nhớ microSD (Tôi đã sử dụng thẻ 2 GB cũ)
- Một số dây nhảy
@ -30,45 +30,45 @@ Do đó, chúng ta sẽ cần kết hợp hai phương pháp lệch khỏi quy t
#### Mở thiết bị
Tháo vít phillips có thể nhìn thấy ở mặt sau của đế camera bằng tuốc nơ vít PH0.
![unscrew](/images/cip-37210_open_001.jpg "Tháo vít phillips")
Tháo vít Phillips có thể nhìn thấy ở mặt sau của đế camera bằng tuốc nơ vít PH0.
![unscrew](/images/cip-37210_open_001.jpg "Tháo vít Phillips")
Sử dụng tuốc nơ vít lưỡi nhỏ để cạy mở vỏ camera, nơi gắn đế:
Sử dụng tuốc nơ vít đầu dẹt để cạy mở vỏ camera, nơi gắn đế:
![pry_open](/images/cip-37210_open_002.jpg "Cạy mở camera")
#### Thiết lập kết nối UART
Sau khi mở thiết bị, đã đến lúc thiết lập kết nối UART. Bật nguồn cho camera đang mở bằng bộ nguồn micro USB đi kèm. Bây giờ là lúc kiểm tra 4 lỗ chân có vẻ khả nghi trên đầu pcb: Đo điện áp của các lỗ chân bằng đồng hồ vạn năng của bạn, bằng cách kết nối chúng với GND (Tôi đã sử dụng một trong các miếng đệm xung quanh các vít ở giữa).
Sau khi mở thiết bị, đã đến lúc thiết lập kết nối UART. Bật nguồn cho camera đang mở bằng bộ nguồn micro USB đi kèm. Bây giờ là lúc kiểm tra 4 lỗ chân có vẻ khả nghi trên đầu PCB: Đo điện áp của các lỗ chân bằng đồng hồ vạn năng của bạn, bằng cách kết nối chúng với GND (Tôi đã sử dụng một trong các miếng đệm xung quanh các vít ở giữa).
Tôi tìm thấy hai lỗ chân có 3,3 V, một lỗ chân có điện áp hơi thấp hơn 3,3 V và một lỗ chân có 0 V. Bây giờ là lúc theo dõi các chân 3,3 V trong quá trình khởi động - chân có điện áp dao động là chân TX và chân 3,3 V ổn định là Vcc.
Tôi tìm thấy hai lỗ chân có 3,3 V, một lỗ chân có điện áp hơi thấp hơn 3,3 V và một lỗ chân có 0 V. Bây giờ là lúc theo dõi các chân 3,3 V trong quá trình khởi động chân có điện áp dao động là chân TX và chân 3,3 V ổn định là Vcc.
**Tóm lại:** Lỗ chân gần vít đen nhất là RX, lỗ chân bên cạnh là TX, lỗ chân bên cạnh là GND. Kết nối GND với GND, TX với RX và RX với TX.
![uart_cip-37210](/images/uart_cip-37210_cropped.jpg "Các lỗ chân UART được đánh dấu trên PCB CIP-37210")
Tôi đã sử dụng dây nhảy DuPont male-to-female đơn giản để kết nối với các lỗ chân. Tất nhiên có những giải pháp tốt hơn như hàn đầu nối vào các lỗ chân hoặc sử dụng móc thử nghiệm, nhưng miễn là dây nhảy không chạm vào nhau, nó sẽ hoạt động tốt.
Tôi đã sử dụng dây nhảy DuPont male-to-female đơn giản để kết nối với các lỗ chân. Tất nhiên, có những giải pháp tốt hơn như hàn đầu nối vào các lỗ chân hoặc sử dụng móc kiểm tra, nhưng miễn là dây nhảy không chạm vào nhau, nó sẽ hoạt động tốt.
![uart_cip-37210_action](/images/uart_cip-37210_action.jpg "Kết nối UART đã được thiết lập.")
#### Lưu firmware gốc
Trước khi flash OpenIPC, có thể nên lưu firmware gốc, trong trường hợp bạn không thích OpenIPC và muốn khôi phục hoặc brick một cái gì đó. Vì tftp là không thể nên chúng ta sẽ lưu nội dung của flash vào thẻ nhớ microSD. Vì thiết bị chạy Linux nên bạn không cần phải lo lắng về việc định dạng thẻ nhớ microSD bây giờ. Khởi động camera trong khi kết nối với bộ chuyển đổi USB sang TTL của bạn và khởi động màn hình:
Trước khi flash OpenIPC, bạn nên lưu firmware gốc, trong trường hợp bạn không thích OpenIPC và muốn quay trở lại hoặc vô tình làm hỏng ("brick") thiết bị. Vì tftp là không thể nên chúng ta sẽ lưu nội dung của flash vào thẻ nhớ microSD. Vì thiết bị chạy Linux nên bạn không cần phải lo lắng về việc định dạng thẻ nhớ microSD bây giờ. Khởi động camera trong khi kết nối với bộ chuyển đổi USB sang TTL của bạn và khởi động screen:
```sh
sudo screen -L /dev/ttyUSB0 115200
```
Bây giờ là lúc đăng nhập với tư cách root với mật khẩu `I81ou812` mà tôi tìm thấy [trên internet](https://gist.github.com/gabonator/74cdd6ab4f733ff047356198c781f27d). Thẻ nhớ microSD đã được gắn tự động vào điểm gắn kết `/mnt/sd/`, vì vậy hãy tạo một thư mục mới trên thẻ SD và đổ nội dung của flash:
Bây giờ là lúc đăng nhập với tư cách root với mật khẩu `I81ou812` mà tôi tìm thấy [trên internet](https://gist.github.com/gabonator/74cdd6ab4f733ff047356198c781f27d). Thẻ nhớ microSD đã được gắn tự động vào điểm gắn kết `/mnt/sd/`, vì vậy hãy tạo một thư mục mới trên thẻ SD và dump nội dung của flash:
```sh
mkdir /mnt/sd/image
for mtd in $(ls /dev/mtdblock*); do dd if=${mtd} of=/mnt/sd/image/${mtd##/*/}.bin; done
```
Bạn có thể muốn lặp lại bước này với một thư mục khác và so sánh tổng kiểm tra md5 của các tệp nhị phân để đảm bảo rằng việc dump đã thành công. Thoát khỏi màn hình bằng `C-a` theo sau là `d`, lắp thẻ nhớ microSD trở lại máy tính của bạn và sao lưu các tệp nhị phân.
Bạn có thể muốn lặp lại bước này với một thư mục khác và so sánh tổng kiểm tra md5 của các tệp nhị phân để đảm bảo rằng việc dump đã thành công. Thoát khỏi screen bằng `C-a` theo sau là `d`, lắp thẻ nhớ microSD trở lại máy tính của bạn và sao lưu các tệp nhị phân.
#### Flash OpenIPC
Đã đến lúc định dạng thẻ nhớ microSD, vì vậy u-boot sẽ có thể tải fatload hình ảnh. Những bước này có thể thay đổi tùy thuộc vào bản phân phối Linux của bạn. [Đã có một tập lệnh hoạt động trên Debian Sid](https://gist.github.com/themactep/d0b72f4c5d5f246e2551622e95bc9987), nhưng thật đáng buồn là nó không hoạt động trên máy của tôi. (Phiên bản fdisk khác nhau và cách đặt tên khác nhau của thiết bị và phân vùng). Đây là những lệnh tôi đã chạy:
Đã đến lúc định dạng thẻ nhớ microSD để u-boot có thể fatload hình ảnh. Những bước này có thể thay đổi tùy thuộc vào bản phân phối Linux của bạn. [Đã có một tập lệnh hoạt động trên Debian Sid](https://gist.github.com/themactep/d0b72f4c5d5f246e2551622e95bc9987), nhưng thật đáng buồn là nó không hoạt động trên máy của tôi. (Phiên bản fdisk khác nhau và cách đặt tên khác nhau của thiết bị và phân vùng). Đây là những lệnh tôi đã chạy:
```sh
# tạo bảng phân vùng
@ -120,7 +120,7 @@ fatls mmc 0
1 file(s), 0 dir(s)
```
Tốt! Bây giờ là lúc tải tệp nhị phân vào bộ nhớ. Các biến là biến môi trường mà OpenIPC u-boot biết để phân giải, vì vậy bạn chỉ cần sao chép và dán:
Tuyệt vời! Bây giờ là lúc tải tệp nhị phân vào bộ nhớ. Các biến là biến môi trường mà OpenIPC u-boot biết để phân giải, vì vậy bạn chỉ cần sao chép và dán:
```sh
mw.b ${baseaddr} 0xff 0x1000000; fatload mmc 0:1 ${baseaddr} openipc-${soc}-ultimate-16mb.bin
```
@ -130,7 +130,7 @@ reading openipc-hi3518ev200-ultimate-16mb.bin
16777216 bytes read
```
Bây giờ là lúc để viết và cầu nguyện:
Bây giờ là lúc để ghi và cầu nguyện:
```sh
sf probe 0; sf erase 0x0 0x1000000; sf write ${baseaddr} 0x0 ${filesize}
```
@ -141,7 +141,7 @@ Erasing at 0x1000000 -- 100% complete.
Writing at 0x1000000 -- 100% complete.
```
Nếu có bất cứ điều gì sai sót ở đây, đừng tắt nguồn thiết bị và hãy yêu cầu [nhóm Telegram](https://t.me/openipc) trợ giúp! Nếu không, hãy nhập `reset` và vào u-boot mới được flash bằng cách nhấn bất kỳ phím nào để dừng tự động khởi động. Chạy lệnh sau và bạn đã hoàn tất:
Nếu có bất cứ điều gì sai sót ở đây, đừng tắt nguồn thiết bị và hãy yêu cầu [nhóm Telegram](https://t.me/openipc) trợ giúp! Nếu không, hãy nhập `reset` và vào u-boot mới flash bằng cách nhấn bất kỳ phím nào để dừng tự động khởi động. Chạy lệnh sau và bạn đã hoàn tất:
```sh
run setnor16m
```
@ -177,9 +177,9 @@ Mật khẩu root là `12345`. Đừng quên thay đổi nó bằng `passwd` sau
Nếu bạn đang gặp khó khăn với hướng dẫn này và vẫn muốn thử OpenIPC trên Smartwares CIP-37210, bạn có thể [mua nó với firmware OpenIPC v2.2 được cài đặt sẵn tại open collective](https://opencollective.com/openipc/contribute/wifi-camera-showme-by-openipc-44355).
## Kết nối với wifi
Bây giờ là lúc để kết nối camera với mạng Wi-Fi 2,4 GHz của bạn. Trước hết, hãy đảm bảo rằng các biến môi trường firmware được đặt chính xác.
Bây giờ là lúc kết nối camera với mạng Wi-Fi 2,4 GHz của bạn. Trước hết, hãy đảm bảo rằng các biến môi trường firmware được đặt chính xác.
Đầu tiên đặt trình điều khiển mạng:
Đầu tiên, hãy đặt trình điều khiển mạng:
```sh
fw_setenv wlandev rtl8188fu-generic
@ -205,7 +205,7 @@ auto wlan0
iface wlan0 inet dhcp
pre-up echo 3 > /sys/class/gpio/export
pre-up echo out > /sys/class/gpio/gpio3/direction
pre-up echo 1 > /sys/class/gpio/gpio3/value # GPIO3 là nguồn WIFI
pre-up echo 1 > /sys/class/gpio/gpio3/value # GPIO3 là nguồn cấp cho WIFI
pre-up modprobe mac80211
pre-up sleep 1
pre-up modprobe 8188fu
@ -221,12 +221,12 @@ iface wlan0 inet dhcp
EOF
```
Bây giờ là lúc để kiểm tra xem nó có hoạt động không:
Bây giờ là lúc kiểm tra xem nó có hoạt động không:
```sh
ifup wlan0
ip addr
```
Kiểm tra xem bạn có thể ping và ssh vào camera không. Khởi động lại và kiểm tra xem camera có tự động kết nối với mạng wifi của bạn không. Lắp ráp lại camera, bây giờ là lúc tạm biệt UART và sử dụng ssh và giao diện web. (Thông tin đăng nhập là root và mật khẩu bạn đã đặt trước đó.)
Kiểm tra xem bạn có thể ping và ssh vào camera hay không. Khởi động lại và kiểm tra xem camera có tự động kết nối với mạng wifi của bạn không. Lắp ráp lại camera, bây giờ là lúc tạm biệt UART và sử dụng ssh và giao diện web. (Thông tin đăng nhập là root và mật khẩu bạn đã đặt trước đó.)
Cuối cùng, bạn nên xem `/etc/majestic.yaml` và đặc biệt đặt các phần này như sau để có ánh xạ GPIO chính xác cho chế độ ban đêm và âm thanh.

View File

@ -23,3 +23,5 @@ fw_setenv wlandev ssw101b-ssc333-tapo-c110
fw_setenv wlanssid Router
fw_setenv wlanpass 12345678
```

View File

@ -3,11 +3,11 @@
Tích hợp Wyze
----------------
Đây là nơi chúng tôi sẽ ghi lại hướng dẫn của mình để flash các thiết bị mới và báo cáo về các thí nghiệm của chúng tôi. Các bảng bên dưới cũng bao gồm một số "bản sao" do Hualai, nhà cung cấp ODM cho Wyze sản xuất để tham khảo.
Đây là nơi chúng tôi sẽ ghi lại hướng dẫn flash các thiết bị mới và báo cáo về các thử nghiệm của chúng tôi. Các bảng bên dưới cũng bao gồm một số "bản sao" do Hualai, nhà cung cấp ODM cho Wyze sản xuất để tham khảo.
### Các bản sửa đổi camera đã biết:
### Các phiên bản camera đã biết:
| MODEL | IC 25466- | FCC ID | PCB VER | SoC | WIFI | TIỀN TỐ MAC | ĐƯỢC HỖ TRỢ | GHI CHÚ |
| MODEL | IC 25466- | FCC ID | PHIÊN BẢN PCB | SoC | WIFI | TIỀN TỐ MAC | ĐƯỢC HỖ TRỢ | GHI CHÚ |
|-----------|-----------|----------------|-----------------------------------|----------|-----------------------|------------|-----------|-----------------------------------------------------------|
| WYZEC2 | | 2ANJHWYZEC2 | 2019-06-38 | T20X BGA | SDIO: Realtek 8189FTV | 2C:AA:8E | CÓ | https://gist.github.com/csev1755/e60abe15d8708e0d2b0a592e808b2022 |
| WYZECP1 | | 2ANJHHWYZECP1 | DF3-IFPM01 V1.4 | T20X BGA | SDIO: Realtek 8189ES | 2C:AA:8E | CÓ | |
@ -21,7 +21,7 @@ Tích hợp Wyze
| WYZEC3 | WYZEC3F | 2AUIUWYZEC3F | WYZEV3_T31AGC2053 V3.2_20210714 | T31A BGA | SDIO: AltoBeam 6031 | D0:3F:27 | CÓ | https://youtu.be/VkqX9yg0odU |
| WVDBV1 | WVDB1A | 2AUIUWVDB1A | WYZEDB3_MB_T31_2.2 | T31X | SDIO: Realtek 8189FTV | 7C:78:B2 | CÓ | |
| WYZECP2 | WYZECP2A | 2AUIUWYZECP2 | DF3-MCU-S01-V2.2 | T31X | SDIO: AltoBeam 6031 | 7C:78:B2 | CÓ | |
| WYZECPAN3 | WYZECPAN3 | 2AUIUWYZECPAN3 | WYZE PAN V3 MB V 1.3 | T31X | SDIO: AltoBeam 6031 | D0:3F:27 | KHÔNG | KHÔNG ĐƯỢC HỖ TRỢ - Khởi động an toàn ĐÃ BẬT |
| WYZECPAN3 | WYZECPAN3 | 2AUIUWYZECPAN3 | WYZE PAN V3 MB V 1.3 | T31X | SDIO: AltoBeam 6031 | D0:3F:27 | KHÔNG | KHÔNG ĐƯỢC HỖ TRỢ - Khởi động An toàn ĐÃ ĐƯỢC BẬT |
| WYZEC3P | WYZEC3P | 2AUIUWYZEC3P | WYZEV3PRO_T40GC4653_v2.2_20220228 | T40XP | SDIO: Realtek 8192FS | D0:3F:27 | CHƯA THỬ NGHIỆM | CHƯA THỬ NGHIỆM |
| WVOD2 | WVOD2 | 2AUIUWVOD2 | HL_WCO2 MAIN01 V1.0 | T31ZX | SDIO: BCM43438 | D0:3F:27 | CHƯA THỬ NGHIỆM | CHƯA THỬ NGHIỆM - Nền tảng pin Ingenic Zeratul |
| ATOMCAM2 | | | V3C_T31GC2063 V1.1_202001110 | T31ZX | SDIO: AltoBeam 6031 | 7C:DD:E9 | CÓ | AtomCam 2 Nhật Bản http://www.atomtech.co.jp |
@ -54,14 +54,14 @@ GPIO:
---
## Camera Wyze Cam Pan v3 có khóa phần cứng trong secureboot và không thể nâng cấp lên OpenIPC!
## Camera Wyze Cam Pan v3 có khóa phần cứng trong secure boot và không thể nâng cấp lên OpenIPC!
---
### Cài đặt OpenIPC
> [!CẢNH BÁO]
> Liên kết bên dưới không còn hoạt động, Vui lòng thay thế liên kết bằng liên kết hoạt động hoặc được cập nhật.
> Liên kết bên dưới không còn hoạt động. Vui lòng thay thế liên kết bằng liên kết hoạt động hoặc được cập nhật.
[Sử dụng các tập lệnh này](https://github.com/themactep/device-wyze-v3/blob/master/installation.md) để chuyển đổi Wyze Cam V3 của bạn sang OpenIPC.
@ -69,5 +69,8 @@ GPIO:
* ~~Độ phơi sáng không hoạt động tốt https://github.com/OpenIPC/majestic/issues/102~~
* ~~Thẻ SD không hoạt động trong U-Boot (nguồn có sẵn)~~ đã sửa
* ~~Vấn đề với việc tải u-boot từ thẻ nhớ microSD. Nó không đến được dấu nhắc. Không chỉ trên wyze v3 (https://t.me/openipc_modding/179369), mà còn trên một bo mạch T31L khác (https://t.me/openipc/47739). Rất có thể nó sẽ KHÔNG THỂ, bởi vì trong camera có MOSFET quản lý nguồn microSD, phải được bật TRƯỚC KHI khởi động từ thẻ (thí nghiệm với u-boot chưa được tải đầy đủ là có thể do nguồn điện trực tiếp đến thẻ microSD, bỏ qua bóng bán dẫn). Vui lòng xác nhận phiên bản của tôi nếu không thể làm cách khác.~~ không thể thực hiện được nếu không sửa đổi (nguồn điện trực tiếp 3.3V cho đầu đọc thẻ microSD)
* ~~Vấn đề với việc tải u-boot từ thẻ nhớ microSD. Nó không đến được dấu nhắc lệnh. Không chỉ trên wyze v3 (https://t.me/openipc_modding/179369), mà còn trên một bo mạch T31L khác (https://t.me/openipc/47739). Rất có thể nó sẽ KHÔNG THỂ, bởi vì trong camera có MOSFET quản lý nguồn microSD, phải được bật TRƯỚC KHI khởi động từ thẻ (thí nghiệm với u-boot chưa được tải đầy đủ là có thể do nguồn điện trực tiếp đến thẻ microSD, bỏ qua bóng bán dẫn). Vui lòng xác nhận phiên bản của tôi nếu không thể làm cách khác.~~ không thể thực hiện được nếu không sửa đổi (nguồn điện trực tiếp 3.3V cho đầu đọc thẻ microSD)

View File

@ -4,33 +4,33 @@
Thiết bị để flash
----------------------
### Trạm làm việc lại với các phụ kiện.
### Trạm hàn lại với các phụ kiện.
Mặc dù một số kỹ thuật viên dày dạn kinh nghiệm sẽ khăng khăng đòi hoàn thành công việc
Trong khi một số kỹ thuật viên cứng rắn sẽ khăng khăng hoàn thành công việc
với một mỏ hàn kilowatt của ông nội, chúng tôi khuyên bạn nên mua
một [trạm hàn hiện đại với luồng khí nóng](https://www.aliexpress.com/premium/soldering-station-hot-air.html)
và kiểm soát nhiệt độ. Bạn không cần phải cầu kỳ, một trạm hàn cấp nhập cảnh
như YIHUA 882D, hoặc JCD 8898, hoặc YOUYUE 8586 cũng
làm được, và nó sẽ không quá tốn kém với mức giá khoảng 50-70 đô la, nhiều hơn
hoặc ít hơn.
và kiểm soát nhiệt độ. Bạn không cần phải cầu kỳ, một trạm hàn cấp cơ bản
như YIHUA 882D, hoặc JCD 8898, hoặc YOUYUE 8586
cũng làm được, và nó sẽ không quá tốn kém với mức giá khoảng 50-70 đô la, ít hơn
hoặc nhiều hơn.
![](../images/equipment-jcd8898.webp)
![](../images/equipment-yihua882d.webp)
![](../images/equipment-youyue8586.webp)
Thêm vào đó một tấm silicon, một tuýp thông không cần làm sạch, một hộp thiếc hàn,
Sắm thêm một tấm silicon, một tuýp flux không cần làm sạch, một hộp thiếc hàn,
bấc đồng khử hàn, nhíp gốm, tăm bông không dệt và một chai
cồn isopropyl. Nhiều thứ trong số này đã có thể được bao gồm
như là đặc quyền với trạm hàn.
trong gói sản phẩm với trạm hàn.
### Bộ lập trình để flash chip nhớ.
### Một bộ lập trình để flash chip nhớ.
Một lần nữa, một số người sẽ nói rằng bạn cần một bộ lập trình có thương hiệu trị giá hàng nghìn đô la nhưng trong đời thực, [bộ lập trình USB CH341A rẻ nhất](https://www.aliexpress.com/w/wholesale-ch341a-programmer.html)
Một lần nữa, một số người sẽ nói rằng bạn cần một bộ lập trình có thương hiệu trị giá hàng nghìn đô la nhưng trong thực tế, [bộ lập trình USB CH341A rẻ nhất](https://www.aliexpress.com/w/wholesale-ch341a-programmer.html)
hoạt động rất tốt, đặc biệt là sau khi bạn [khắc phục lỗi điện áp][1].
![](../images/equipment-ch341a.webp)
Hoặc bạn có thể mua một mô hình cải tiến, phiên bản 1.7 trở lên, trong đó
Hoặc bạn có thể mua một mô hình cải tiến, phiên bản 1.7 trở lên, nơi
vấn đề đó đã được khắc phục trong thiết kế.
![](../images/equipment-ch341a-v17.webp)
@ -39,7 +39,7 @@ Thêm [bộ chuyển đổi ổ cắm SOP8 208mil sang DIP8](https://www.aliexpr
![](../images/equipment-sop8-200mil.webp)
Ngoài ra, thật là một ý tưởng hay khi có một loạt [chip nhớ flash dự phòng](https://www.aliexpress.com/w/wholesale-25Q128-SOP8.html).
Ngoài ra, nên có một loạt [chip nhớ flash dự phòng](https://www.aliexpress.com/w/wholesale-25Q128-SOP8.html).
![](../images/hardware-w25q64fwsig.webp)
![](../images/hardware-w25q128jvsq.webp)

View File

@ -10,52 +10,53 @@ root@ipcam:/# ipctool
```yaml
---
bảng mạch:
nhà cung cấp: OpenIPC
phiên bản: 2020.02
board:
vendor: OpenIPC
version: 2020.02
chip:
nhà cung cấp: Xiongmai
vendor: Xiongmai
model: XM530
ethernet:
mac: "00:12:41:xx:xx:xx"
rom:
- loại: nor
khối: 64K
phân vùng:
- n: boot
kích thước: 0x40000
- type: nor
block: 64K
partitions:
- name: boot
size: 0x40000
sha1: e2c7973d
chứa:
- n: uboot-env
vị trí: 0x30000
- n: env
kích thước: 0x10000
contains:
- name: uboot-env
offset: 0x30000
- name: env
size: 0x10000
sha1: fb6f2de6
- n: kernel
kích thước: 0x200000
- name: kernel
size: 0x200000
sha1: 1130ee7a
- n: rootfs
kích thước: 0x500000
đường dẫn: /,squashfs
- name: rootfs
size: 0x500000
path: /,squashfs
sha1: 890552b4
- n: rootfs_data
kích thước: 0xb0000
đường dẫn: /overlay,jffs2,rw
kích thước: 8M
- name: rootfs_data
size: 0xb0000
path: /overlay,jffs2,rw
size: 8M
ram:
tổng: 64M
total: 64M
media: 32M
firmware:
kernel: "3.10.103+ (SMP Fri Apr 23 21:29:40 UTC 2021)"
toolchain: gcc phiên bản 7.5.0 (Buildroot 2020.02-gb5b7c71)
toolchain: gcc version 7.5.0 (Buildroot 2020.02-gb5b7c71)
god-app: ipctool
cảm biến:
- nhà cung cấp: SmartSens
sensors:
- vendor: SmartSens
model: SC2315E
kiểm soát:
control:
bus: 0
loại: i2c
địa chỉ: 0x30
type: i2c
addr: 0x30
```
Bản dịch đã khá chính xác, chỉ cần thay "bảng mạch", "nhà cung cấp" thành "board", "vendor".
Ngoài ra, nên giữ nguyên các thuật ngữ chuyên ngành như "kernel", "toolchain", "sensors", "bus", "type", "addr" thay vì dịch ra tiếng Việt.

View File

@ -9,13 +9,13 @@ Câu hỏi thường gặp
Câu trả lời ngắn gọn là không.
Nếu bạn có kỹ năng và mong muốn làm cho OpenIPC hoạt động trên phần cứng mới, chúng tôi có thể chia sẻ kiến thức mà chúng tôi có.
Nếu không, hãy tự mua một chiếc camera được hỗ trợ.
Nếu không, hãy tự mua một camera được hỗ trợ.
### Làm cách nào để biết phần cứng nào nằm bên trong camera trước khi mua?
### Làm cách nào để biết phần cứng bên trong camera trước khi mua?
Hầu hết thời gian bạn không thể. Đặc biệt nếu đó là một bản sao giá rẻ của Trung Quốc của một bản sao của một chiếc camera được đổi thương hiệu.
Đối với các thương hiệu tên tuổi uy tín đã trải qua chứng nhận phần cứng, có cơ hội xem xét bên trong camera trong các tài liệu chứng nhận. Tìm ID FCC trên hộp hoặc vỏ của camera
và sau đó tra cứu nó trong [cơ sở dữ liệu ID FCC](https://fccid.io/).
Hầu hết thời gian bạn không thể, đặc biệt là nếu đó là bản sao giá rẻ của Trung Quốc của một bản sao của một camera được đổi thương hiệu.
Đối với các thương hiệu tên tuổi uy tín đã trải qua chứng nhận phần cứng, bạn có thể xem xét bên trong camera trong các tài liệu chứng nhận. Tìm FCC ID trên hộp hoặc vỏ của camera
và sau đó tra cứu nó trong [cơ sở dữ liệu FCC ID](https://fccid.io/).
### Sự khác biệt giữa Lite và Ultimate
@ -23,17 +23,19 @@ và sau đó tra cứu nó trong [cơ sở dữ liệu ID FCC](https://fccid.io/
- Hỗ trợ nhận dạng mã QR (cơ bản)
- Hỗ trợ iptables (tường lửa)
- Hỗ trợ đường hầm ZeroTier
- Hỗ trợ MQTT (đo từ xa)
- Hỗ trợ MQTT (thu thập dữ liệu từ xa)
- Hỗ trợ WiFi
- Hỗ trợ lame (mp3) và libwebsockets
- Hỗ trợ WebRTC thử nghiệm (chỉ dành cho Hisi/Goke gần đây)
$\color{red}{\text{Chúng tôi luôn khuyến nghị chỉ sử dụng firmware Lite}}$
### Cách loại bỏ tiêu đề trình bao bọc hình ảnh U-Boot khỏi hình ảnh nhị phân
Đôi khi firmware của nhà cung cấp bao gồm các hình ảnh nhị phân dành cho
sử dụng với trình tải hình ảnh U-Boot và được thêm trước bằng tiêu đề ở
sử dụng với trình tải hình ảnh U-Boot và được thêm vào trước tiêu đề ở
[định dạng trình bao bọc hình ảnh U-Boot](https://formats.kaitai.io/uimage/).
Tiêu đề nên được gỡ bỏ trước khi bạn có thể sử dụng một hình ảnh như vậy
Tiêu đề nên được gỡ bỏ trước khi bạn có thể sử dụng hình ảnh đó
như một tệp nhị phân thô. Đây là cách bạn có thể loại bỏ 64 byte đầu tiên
khỏi một tệp:
@ -47,24 +49,24 @@ hoặc cách khác
tail -c +65 tệp_đầu_vào.img > tệp_đầu_ra.bin
```
### Làm cách nào để vào shell của bootloader?
### Làm cách nào để vào shell của bộ nạp khởi động?
[Có một số cách để truy cập shell của bootloader bị khóa](help-uboot.md#bypassing-password-protected-bootloader)
[Có một số cách để truy cập shell của bộ nạp khởi động bị khóa](help-uboot.md#bypassing-password-protected-bootloader)
### Làm cách nào để đặt lại cài đặt camera từ U-Boot
### Làm cách nào để đặt lại cài đặt camera từ U-Boot?
Đôi khi cài đặt không đúng khiến camera không ổn định đến mức
không thể đăng nhập hoặc không đủ thời gian trước khi khởi động lại để sửa cài đặt.
Đây là cách xóa hoàn toàn phân vùng lớp phủ trong firmware OpenIPC,
ngay từ shell của bootloader, để đưa camera về trạng thái nguyên sơ:
ngay từ shell của bộ nạp khởi động, để đưa camera về trạng thái ban đầu:
> __chỉ dành cho phân vùng flash 8MB__
> **Chỉ dành cho phân vùng flash 8MB**
```
sf probe 0; sf erase 0x750000 0xb0000; reset
```
> __chỉ dành cho phân vùng flash 16MB__
> **Chỉ dành cho phân vùng flash 16MB**
```
sf probe 0; sf erase 0xd50000 0x2b0000; reset
@ -76,19 +78,19 @@ sf probe 0; sf erase 0xd50000 0x2b0000; reset
Mật khẩu mặc định là _12345_.
### Làm cách nào để đăng nhập vào giao diện người dùng Web của camera?
### Làm cách nào để đăng nhập vào Giao diện người dùng Web của camera?
Mở http://<địa_chỉ_ip_camera> và đăng nhập bằng tên người dùng mặc định _root_
và mật khẩu mặc định _12345_. Bạn sẽ được yêu cầu thay đổi mật khẩu sau
khi đăng nhập thành công.
__Xin lưu ý, nó cũng sẽ thay đổi mật khẩu root ssh của bạn!__
**Xin lưu ý, thao tác này cũng sẽ thay đổi mật khẩu root ssh của bạn!**
### Làm cách nào để đặt lại mật khẩu cho SSH/Giao diện người dùng Web?
Tạo kết nối nối tiếp với camera bằng bộ chuyển đổi UART và chương trình
thiết bị đầu cuối. Sau khi bật camera, nhấn Ctrl-C để ngắt quá trình khởi động
và vào shell của bootloader.
thiết bị đầu cuối. Sau khi bật camera, hãy nhấn Ctrl-C để ngắt quá trình khởi động
và vào shell của bộ nạp khởi động.
Đối với camera có chip flash 8MB, hãy chạy
@ -108,13 +110,13 @@ sf probe 0; sf erase 0xd50000 0x2b0000; reset
### Tôi không thấy ipctool trên camera. Tại sao?
Bạn không thấy nó bởi vì ban đầu nó không có ở đó, nhưng có một lệnh shell
Bạn không thấy nó vì ban đầu nó không có ở đó, nhưng có một lệnh shell
cùng tên.
_(Vì nó là một lệnh shell, nó sẽ không hoạt động từ Bảng điều khiển Web trong giao diện người dùng Web.
Đăng nhập vào camera qua SSH và chạy lệnh ở đó.)_
Hãy đăng nhập vào camera qua SSH và chạy lệnh ở đó.)_
Khi bạn chạy lệnh này, phiên bản mới nhất của tiện ích `ipctool` khả dụng
Khi bạn chạy lệnh này, phiên bản mới nhất của tiện ích `ipctool`
sẽ được tải xuống thư mục `/tmp/` và chạy từ đó. Vì tiện ích
nằm trong `/tmp/`, nó sẽ không tồn tại sau khi khởi động lại, do đó sẽ không chiếm bất kỳ dung lượng hữu ích nào
trên camera sau đó.
@ -122,12 +124,12 @@ trên camera sau đó.
Nếu bạn cần biết có gì trong lệnh, hãy tìm kiếm `ipctool` trong
tệp `/etc/profile`.
### Thay thế bootloader từ Linux
### Thay thế bộ nạp khởi động từ Linux
Các lệnh được thực thi riêng biệt bởi mỗi dòng với thời gian chờ kết thúc thực thi.
Tên đầy đủ của bootloader thay thế và tính khả dụng của nó có thể được kiểm tra [tại đây][3]
Các lệnh được thực thi riêng biệt trên mỗi dòng với thời gian chờ cho đến khi kết thúc quá trình thực thi.
Tên đầy đủ của bộ nạp khởi động thay thế và tính khả dụng của nó có thể được kiểm tra [tại đây][3]
Trước khi chạy các lệnh, đừng quên nhập tên bootloader chính xác!
Trước khi chạy các lệnh, đừng quên nhập tên bộ nạp khởi động chính xác!
```
FILE=u-boot-SOC-LOẠI.bin
@ -148,19 +150,19 @@ chmod 755 ${FILE}
### Làm cách nào để cập nhật firmware OpenIPC cũ?
Các lệnh được thực thi riêng biệt bởi mỗi dòng với thời gian chờ kết thúc thực thi.
Các lệnh được thực thi riêng biệt trên mỗi dòng với thời gian chờ kết thúc thực thi.
Lệnh đầu tiên cập nhật một tiện ích có thuật toán đã được thay đổi vào tháng 2 năm 2023.
Nếu bạn cần cập nhật tiện ích trên bộ xử lý T31, vui lòng thêm hậu tố -mips vào URL của tiện ích đã tải xuống.
Lệnh thứ hai cập nhật chính các thành phần firmware.
Lệnh thứ hai cập nhật chính các thành phần firmware.
```
curl -L -o /tmp/ipcinfo https://github.com/OpenIPC/ipctool/releases/download/latest/ipcinfo && chmod +x /tmp/ipcinfo; /tmp/ipcinfo -csF
curl -s https://raw.githubusercontent.com/OpenIPC/firmware/master/general/overlay/usr/sbin/sysupgrade | sh -s -- -k -r -n
```
### Có thể chuyển đổi từ “lite” sang “ultimate” qua “Over the Air” không?
### Có thể chuyển đổi từ "lite" sang "ultimate" qua "Over the Air" không?
Trên Ingenic và Sigmastar, có thể tách rootfs.squashfs cuối cùng và flash nó vào phân vùng rootfs (mtd3) và lớp phủ (mtd4).
Trên Ingenic và Sigmastar, có thể tách rootfs.squashfs cuối cùng và flash nó vào phân vùng rootfs (mtd3) và overlay (mtd4).
```
dd if=rootfs.squashfs of=mtd3.bin bs=1k count=5120
@ -169,7 +171,7 @@ flashcp mtd3.bin /dev/mtd3 -v
flashcp mtd4.bin /dev/mtd4 -v
```
### Làm cách nào để dump toàn bộ firmware vào chia sẻ NFS
### Làm cách nào để dump toàn bộ firmware vào chia sẻ NFS?
Điều này có thể hoạt động nếu bạn may mắn, bạn đã truy cập vào shell Linux trên firmware gốc
và nó hỗ trợ gắn kết NFS:
@ -185,28 +187,28 @@ mv $fw ${nfs}/firmware_full.bin
Hãy chắc chắn sử dụng địa chỉ IP và đường dẫn của riêng bạn đến chia sẻ NFS!
### Làm cách nào để tìm địa chỉ MAC gốc trong dump firmware
### Làm cách nào để tìm địa chỉ MAC gốc trong bản dump firmware?
```bash
strings dumpfile.bin | grep ^ethaddr
```
### Làm cách nào để cấu hình ủy quyền phiên ssh bằng khóa
### Làm cách nào để cấu hình ủy quyền phiên ssh bằng khóa?
__Trên camera__: Đăng nhập vào giao diện người dùng web trên cổng 85 của camera của bạn.
**Trên camera**: Đăng nhập vào giao diện người dùng web trên cổng 85 của camera của bạn.
```bash
passwd
```
__Trên máy tính để bàn__: Sao chép khóa chung vào camera bằng cách đăng nhập bằng
**Trên máy tính để bàn**: Sao chép khóa chung vào camera bằng cách đăng nhập bằng
mật khẩu đã tạo ở trên.
```bash
ssh-copy-id root@192.168.1.66
```
__Trên camera__: Tạo một thư mục `.ssh` trong thư mục chính của người dùng root
**Trên camera**: Tạo một thư mục `.ssh` trong thư mục chính của người dùng root
và sao chép tệp có kho khóa được ủy quyền vào đó.
```bash
@ -214,7 +216,7 @@ mkdir ~/.ssh
cp /etc/dropbear/authorized_keys ~/.ssh/
```
__Trên máy tính để bàn__: Mở một phiên mới để xác minh rằng ủy quyền được
**Trên máy tính để bàn**: Mở một phiên mới để xác minh rằng ủy quyền được
chuyển bằng cách sử dụng khóa chung mà không yêu cầu mật khẩu.
```bash
@ -223,7 +225,7 @@ ssh root@192.168.1.66
### Majestic
#### Làm cách nào để lấy dump bộ nhớ để gỡ lỗi?
#### Làm cách nào để lấy bản dump bộ nhớ để gỡ lỗi?
Bật và cấu hình Core Dump trong menu **Majestic** > **Majestic Debugging**.
@ -231,10 +233,10 @@ Bật và cấu hình Core Dump trong menu **Majestic** > **Majestic Debugging**
Bạn cần chỉ định chân GPIO để điều khiển bộ lọc hồng ngoại.
Cài đặt cho một số camera có thể được tìm thấy trong [bảng này][1].
Nếu camera của bạn không có trong bảng thì bạn cần sử dụng [tiện ích ipctool][2].
Nếu camera của bạn không có trong bảng, bạn cần sử dụng [tiện ích ipctool][2].
Firmware OpenIPC sẽ tự động tải xuống phiên bản mới nhất của
tiện ích vào thư mục /tmp khi `ipctool` được gọi lần đầu tiên.
tiện ích vào thư mục `/tmp` khi `ipctool` được gọi lần đầu tiên.
Trên firmware gốc, bạn sẽ cần tự tải xuống tiện ích vào camera
bằng cách sử dụng bất kỳ công cụ nào có sẵn trong hệ thống: wget, curl, tftp, v.v.
@ -258,21 +260,21 @@ mount -o nolock 95.217.179.189:/srv/ro /tmp/utils/
```
Sau khi tiện ích được tải xuống camera, hãy chạy lệnh `ipctool gpio scan`
trong thiết bị đầu cuối và mở-đóng ống kính camera vài lần bằng
trong thiết bị đầu cuối và đóng-mở ống kính camera vài lần bằng
lòng bàn tay của bạn.
Xem đầu ra của ipctool để xác định các chân chịu trách nhiệm điều khiển
màn che bộ lọc IR.
Nhập các giá trị thu được trong cài đặt cho chế độ ban đêm Majestic. Nếu
màu hồng vẫn còn, bạn có thể cần bật đảo ngược tín hiệu cảm biến.
màu hồng vẫn còn, bạn có thể cần bật **đảo ngược tín hiệu cảm biến**.
Đừng quên thêm model camera và giá trị GPIO đã tìm thấy vào bảng!
#### Có thể hiển thị dữ liệu để đặt tự động lấy nét của ống kính
thay vì sample_af hiện tại trong /metrics tiêu chuẩn không?
Không, đây là một thuật toán khó, không có ý nghĩa để chạy theo cách này.
Không, đây là một thuật toán khó, không có ý nghĩa để chạy theo cách này.
#### Sao chép tệp từ hệ thống Linux sang camera
@ -299,7 +301,3 @@ scp -O ~/tệp_của_tôi root@192.168.1.65:/tmp/
[1]: https://openipc.org/wiki/en/gpio-settings.html
[2]: https://github.com/OpenIPC/ipctool/releases/download/latest/ipctool
[3]: https://github.com/OpenIPC/firmware/releases/tag/latest

View File

@ -4,28 +4,28 @@
Cài đặt Cảm biến Hình ảnh
-----------------------
Nếu trình điều khiển cảm biến hình ảnh không được bao gồm trong image firmware, bạn có thể cài đặt thủ công.
Nếu trình điều khiển cảm biến hình ảnh không được bao gồm trong ảnh firmware, bạn có thể cài đặt nó theo cách thủ công.
Ví dụ: cảm biến hình ảnh "sc223a" sẽ được cài đặt trên bo mạch gk7205v210 (với openipc-gk7205v210-fpv-8mb.bin đã được flash).
Bạn cần một [thư viện cảm biến](https://github.com/OpenIPC/firmware/raw/master/general/package/goke-osdrv-gk7205v200/files/sensor/libsns_sc223a.so) và một [tệp cấu hình cảm biến](https://github.com/OpenIPC/firmware/raw/master/general/package/goke-osdrv-gk7205v200/files/sensor/config/sc223a_i2c_1080p.ini).
Các tệp cần thiết cho các cảm biến khác có thể được tìm thấy theo [danh sách này](firmware-sensors.md).
Bạn có thể tìm thấy các tệp cần thiết cho các cảm biến khác bằng cách làm theo [danh sách này](firmware-sensors.md).
Cài đặt các tệp bằng cách tải xuống trực tiếp từ github về thiết bị của bạn:
Cài đặt các tệp bằng cách tải chúng trực tiếp từ GitHub về thiết bị của bạn:
```sh
curl -s -L -o /usr/lib/sensors/libsns_sc223a.so https://github.com/OpenIPC/firmware/raw/master/general/package/goke-osdrv-gk7205v200/files/sensor/libsns_sc223a.so
curl -s -L -o /etc/sensors/sc223a_i2c_1080p.ini https://github.com/OpenIPC/firmware/raw/master/general/package/goke-osdrv-gk7205v200/files/sensor/config/sc223a_i2c_1080p.ini
```
Điều chỉnh giá trị fps trong /etc/majestic.yaml theo thông số kỹ thuật của cảm biến của bạn.
Tìm kiếm "Isp_FrameRate" trong tệp cấu hình cảm biến của bạn [/etc/sensors/sc223a_i2c_1080p.ini](https://github.com/OpenIPC/firmware/raw/master/general/package/goke-osdrv-gk7205v200/files/sensor/config/sc223a_i2c_1080p.ini).
Điều chỉnh giá trị FPS trong `/etc/majestic.yaml` theo thông số kỹ thuật của cảm biến.
Tìm kiếm "Isp_FrameRate" trong tệp cấu hình cảm biến [/etc/sensors/sc223a_i2c_1080p.ini](https://github.com/OpenIPC/firmware/raw/master/general/package/goke-osdrv-gk7205v200/files/sensor/config/sc223a_i2c_1080p.ini).
```sh
cli -s .video0.fps 30
```
(Khởi động lại) trình phát trực tuyến:
(Khởi động lại) streamer:
```sh
killall majestic
@ -33,3 +33,4 @@ majestic
```
[thêm thông tin về cảm biến `sc223a`](https://github.com/RoboSchmied/Documentation/blob/main/sc223a.md)

View File

@ -4,11 +4,11 @@
Các Cảm biến được Hỗ trợ
-----------------
Cảm biến được hỗ trợ trên cơ sở mỗi họ SoC (trên mỗi SDK).
Để tra cứu danh sách các cảm biến được hỗ trợ cho SoC của bạn, trước tiên bạn cần xác định họ SoC của mình, sau đó kiểm tra gói tương ứng.
Các cảm biến được hỗ trợ dựa trên từng dòng SoC (trên mỗi SDK).
Để tra cứu danh sách các cảm biến được hỗ trợ cho SoC của bạn, trước tiên bạn cần xác định dòng SoC của mình, sau đó kiểm tra gói tương ứng.
__Xin lưu ý rằng ngay cả khi bạn thấy trình điều khiển phù hợp với cảm biến của mình, điều đó không đảm bảo rằng trình điều khiển hoạt động như dự định,
hoặc thậm chí nó sẽ được bao gồm trong tệp nhị phân cuối cùng cho SoC đó. Một số thử nghiệm và tinh chỉnh bổ sung có thể là cần thiết.__
**Xin lưu ý rằng ngay cả khi bạn thấy trình điều khiển phù hợp với cảm biến của mình, điều đó không đảm bảo rằng trình điều khiển hoạt động như dự định,
hoặc thậm chí nó sẽ được bao gồm trong tệp nhị phân cuối cùng cho SoC đó. Một số thử nghiệm và tinh chỉnh bổ sung có thể là cần thiết.**
- [Ambarella S3L](https://github.com/OpenIPC/firmware/tree/master/general/package/ambarella-osdrv-s3l/files/sensor)
- [Fullhan FH8852V100](https://github.com/OpenIPC/firmware/tree/master/general/package/fullhan-osdrv-fh8852v100/files/sensor)

View File

@ -5,7 +5,7 @@ Giao tiếp Chip Flash
--------------------
Đây là một chủ đề nâng cao liên quan đến việc xác định, đọc, ghi, xác minh và
xóa chip flash bằng cách giao tiếp trực tiếp với chip flash bằng bộ lập trình.
xóa chip flash bằng cách giao tiếp trực tiếp với chip flash sử dụng bộ lập trình.
Đây không phải là phương pháp ưa thích để flash firmware, nhưng nó chắc chắn có thể hữu ích
khi các phương pháp khác thất bại.
@ -15,9 +15,9 @@ Nếu bạn mới bắt đầu, có lẽ bạn đang ở sai chỗ: hãy xem
Chip SOIC8
--------------------
SOIC8 là một gói phổ biến cho chip flash. Nó là một gói nhỏ với 8 chân, và
SOIC8 là một dạng đóng gói phổ biến cho chip flash. Nó là một gói nhỏ với 8 chân, và
các chân cách nhau 1,27mm. Các chân được đánh số ngược chiều kim đồng hồ bắt đầu
từ góc trên cùng bên trái với dấu chấm. Chân trên cùng bên trái là chân 1, chân trên cùng bên phải là chân 2,
từ góc trên cùng bên trái với dấu chấm. Chân trên cùng bên trái là chân 1, chân trên cùng bên phải là chân 2.
Như đã đề cập trong [Trợ giúp: U-Boot](help-uboot.md), chip flash SOIC8 đôi khi có thể bị lừa
để chuyển thẳng sang chế độ u-boot và sơ đồ sau được hiển thị:
@ -32,9 +32,9 @@ Kẹp SOIC8 là một cách thuận tiện để giao tiếp với chip SOIC8. C
Tuy nhiên, hãy nhớ rằng kẹp yêu cầu bộ lập trình hoạt động như giao diện giữa kẹp và máy tính của bạn.
Có thể gây nhầm lẫn khi nhìn vào cáp ruy băng của kẹp, bởi vì hai hàng chân - nó được ánh xạ như thế nào?
Nhìn vào hình ảnh sau của một cáp ruy băng, có một dây màu đỏ cho biết chân 1 và các chân được đánh số
so với rãnh khóa cáp. Đừng nhầm lẫn khi nghĩ rằng màu đỏ phải là điện áp, trong trường hợp này, nó phải
ánh xạ tới chân một của chip SOIC8 và bộ chuyển đổi chân-cáp. Bằng cách này, bạn có thể hình dung các chân của bộ chuyển đổi giống hệt
Hãy nhìn vào hình ảnh sau của một cáp ruy băng, có một dây màu đỏ cho biết chân 1 và các chân được đánh số
so với rãnh then trên cáp. Đừng nhầm lẫn khi nghĩ rằng màu đỏ phải là điện áp, trong trường hợp này, nó phải
được ánh xạ tới chân 1 của chip SOIC8 và bộ chuyển đổi chân-cáp. Bằng cách này, bạn có thể hình dung các chân của bộ chuyển đổi giống hệt
với thông số kỹ thuật của chip flash SOIC8.
![](../images/ribbon-cable.jpg)
@ -43,7 +43,7 @@ với thông số kỹ thuật của chip flash SOIC8.
![](../images/soic8-clip-programmer-example.png)
**Cảnh báo:** Thường thì bo mạch camera có các chip kiểu SOIC8 khác ngoài chip flash,
**Cảnh báo:** Thông thường, bo mạch camera có các chip kiểu SOIC8 khác ngoài chip flash,
và bạn cần chắc chắn xác định đúng chip trước khi bắt đầu công việc của mình.
@ -52,21 +52,21 @@ Chọn bộ lập trình
### CH341A
Có nhiều bộ lập trình có sẵn và tất cả chúng đều có ưu và nhược điểm riêng. Phổ biến nhất
bộ lập trình là bo mạch tận dụng CH341A, là một chipset rẻ và dễ sử dụng. Để biết thêm chi tiết về CH341A,
rất nhiều bộ lập trình có sẵn, và tất cả chúng đều có ưu và nhược điểm riêng. Các bộ lập trình phổ biến nhất
là các board sử dụng CH341A, một chipset rẻ và dễ sử dụng. Để biết thêm chi tiết về CH341A,
xem [Bộ lập trình phần cứng CH341A](hardware-programmer.md).
### Raspberry Pi Pico
Raspberry Pi Pico là một bo mạch vi điều khiển có cổng USB và một số chân GPIO. Nó cũng rẻ và dễ sử dụng,
và có thể bạn đã có một cái nằm xung quanh. Không thành vấn đề nếu đó là phiên bản không dây hay không, cả hai đều hoạt động như nhau.
Raspberry Pi Pico là một board vi điều khiển có cổng USB và một số chân GPIO. Nó cũng rẻ và dễ sử dụng,
và có thể bạn đã có một cái. Không thành vấn đề nếu đó là phiên bản không dây hay không, cả hai đều hoạt động như nhau.
Để sử dụng Pico làm bộ lập trình, bạn sẽ cần đưa pico vào chế độ bootloader bằng cách giữ nút BOOTSEL
trong khi cắm nó vào máy tính của bạn. Pico sẽ hiển thị dưới dạng ổ USB và bạn có thể kéo và thả tệp uf2 vào ổ.
trong khi cắm nó vào máy tính của bạn. Pico sẽ hiển thị dưới dạng ổ đĩa USB và bạn có thể kéo và thả tệp uf2 vào ổ đĩa.
Hiện tại, thư viện pico-serprog tốt nhất để sử dụng là một nhánh của [pico-serprog](https://github.com/opensensor/pico-serprog)
đã khắc phục một số vấn đề gặp phải với bản gốc.
Có nhiều hướng dẫn hơn trên Github pico-serprog, tuy nhiên firmware pico-serprog sẽ cấp cho bạn
một cổng USB COM bổ sung ánh xạ tới các GPIO sau.
thêm một cổng USB COM được ánh xạ tới các GPIO sau.
| Chân | Chức năng |
|-----|----------|
@ -75,23 +75,23 @@ một cổng USB COM bổ sung ánh xạ tới các GPIO sau.
| 5 | MOSI |
| 4 | SCK |
Vì hầu hết các chip flash SOIC8 là 3,3v, bạn sẽ cần kết nối với đường ray 3,3 V của PICO là chân 36,
Vì hầu hết các chip flash SOIC8 là 3.3v, bạn sẽ cần kết nối với đường 3.3 V của PICO là chân 36,
và nhớ kết nối cả chân GND, có nhiều chân GND trên pico, chẳng hạn như chân 38.
* Lưu ý: nếu vì lý do nào đó chip của bạn cần 5V, bạn có thể sử dụng VSYS là chân 40 thay vì 3,3V, nhưng hãy đảm bảo bạn đọc thông số kỹ thuật của chip flash cụ thể của mình.
* Lưu ý: Nếu vì lý do nào đó chip của bạn cần 5V, bạn có thể sử dụng VSYS là chân 40 thay vì 3.3V, nhưng hãy đảm bảo bạn đọc thông số kỹ thuật của chip flash cụ thể của mình.
Chương trình Flashrom
--------------------
Flashrom là một chương trình có thể được sử dụng để đọc, ghi, xóa và xác minh chip flash. Nó có sẵn cho Linux, Windows và Mac.
Nói chung ngày nay, bạn cần biên dịch nó cho nền tảng mà bạn định sử dụng nó. Nó là một chương trình dòng lệnh,
có nhiều tùy chọn có sẵn. Sau đây là một số ví dụ về cách sử dụng flashrom.
Nói chung ngày nay, bạn cần biên dịch nó cho nền tảng mà bạn định sử dụng nó. Nó là một chương trình dòng lệnh,
có nhiều tùy chọn có sẵn. Sau đây là một số ví dụ về cách sử dụng flashrom.
Hướng dẫn này tập trung vào việc sử dụng flashrom và hiện không giải thích việc xây dựng flashrom, nhưng bạn có thể tìm thấy hướng dẫn trên [trang web flashrom](https://flashrom.org/).
Hướng dẫn này tập trung vào việc sử dụng flashrom và hiện không giải thích việc build flashrom, nhưng bạn có thể tìm thấy hướng dẫn trên [trang web flashrom](https://flashrom.org/).
### Xác định cổng COM của bạn
Đối với windows, bạn có thể sử dụng trình quản lý thiết bị để xác định cổng COM mà bộ lập trình của bạn được kết nối.
Đối với Windows, bạn có thể sử dụng trình quản lý thiết bị để xác định cổng COM mà bộ lập trình của bạn được kết nối.
Đối với Linux, bạn có thể sử dụng lệnh `dmesg` để xác định cổng COM mà bộ lập trình của bạn được kết nối.
@ -99,13 +99,13 @@ Hướng dẫn này tập trung vào việc sử dụng flashrom và hiện khô
Để đọc chip flash, đôi khi bạn cần biết loại chip flash mà bạn đang đọc.
Hãy thử chạy thăm dò đơn giản để xác minh bạn có kết nối với bộ lập trình hay không. pico-serprog là một serprog (hoặc bộ lập trình nối tiếp) và điều đó cần được chỉ định cho flashrom.
Hãy thử chạy một lệnh thăm dò đơn giản để xác minh bạn có kết nối với bộ lập trình hay không. pico-serprog là một serprog (hoặc bộ lập trình nối tiếp) và cần phải được chỉ định cho flashrom.
Trong ví dụ này, bộ lập trình được kết nối với COM23 và tốc độ baud là 2000000, được biết là hoạt động tốt và có thể đọc chip flash 16MB trong 2-3 phút.
```bash
./flashrom.exe -p serprog:dev=COM23:2000000 -V
```
Đây là một ví dụ về việc đọc chip flash. Trong ví dụ này, flashrom đã cho chúng tôi biết chúng tôi phải chọn giữa ba chip khác nhau và chúng tôi đã chọn "GD25B128B/GD25Q128B".
Đây là một ví dụ về việc đọc một chip flash. Trong ví dụ này, flashrom đã cho chúng tôi biết chúng tôi phải chọn giữa ba chip khác nhau, và chúng tôi đã chọn "GD25B128B/GD25Q128B".
```bash
# ./flashrom.exe -p serprog:dev=COM23:2000000 -c "GD25B128B/GD25Q128B" -r gokev300-camera-12242023.bin -VV --force
flashrom 1.4.0-devel (git:v1.2-1386-g5106287e) trên Windows 10.0 (x86_64)
@ -143,15 +143,15 @@ Thanh ghi trạng thái chip: Bảo vệ khối 0 (BP0) không được đặt
Thanh ghi trạng thái chip: Chốt cho phép ghi (WEL) không được đặt
Thanh ghi trạng thái chip: Ghi đang tiến hành (WIP/BUSY) không được đặt
Chip này có thể chứa bộ nhớ lập trình một lần. flashrom không thể đọc
và có thể không bao giờ có thể ghi vào nó, do đó nó có thể không thể hoàn toàn
nhân bản nội dung của chip này (xem trang man để biết chi tiết).
và có thể không bao giờ có thể ghi vào nó, do đó, nó có thể không thể hoàn toàn
nhân bản nội dung của chip này (xem trang chủ để biết chi tiết).
===
Phần flash này có trạng thái CHƯA THỬ NGHIỆM cho các hoạt động: WP
Trạng thái thử nghiệm của chip này có thể đã được cập nhật trong bản phát triển mới nhất
phiên bản của flashrom. Nếu bạn đang chạy phiên bản phát triển mới nhất,
Trạng thái thử nghiệm của chip này có thể đã được cập nhật trong phiên bản phát triển mới nhất
của flashrom. Nếu bạn đang chạy phiên bản phát triển mới nhất,
vui lòng gửi email báo cáo đến flashrom@flashrom.org nếu bất kỳ hoạt động nào ở trên
hoạt động chính xác cho bạn với chip flash này. Vui lòng bao gồm tệp nhật ký flashrom
cho tất cả các hoạt động bạn đã thử nghiệm (xem trang man để biết chi tiết) và đề cập
cho tất cả các hoạt động bạn đã thử nghiệm (xem trang chủ để biết chi tiết), và đề cập
bo mạch chủ hoặc bộ lập trình nào bạn đã thử nghiệm trong dòng chủ đề.
Cảm ơn bạn đã giúp đỡ!
serprog_delay đã được sử dụng, nhưng bộ lập trình không hỗ trợ độ trễ nguyên bản - đang mô phỏng
@ -162,8 +162,8 @@ hoàn thành.
### Ghi chip flash
Ghi chip flash khá giống với đọc nó. Bạn cần chỉ định cổng COM, tốc độ baud và có thể là loại chip.
Đơn giản chỉ cần thay đổi các đối số của bạn thành flashrom để bao gồm tùy chọn -w và tệp mà bạn muốn ghi vào chip flash.
Ghi chip flash khá giống với việc đọc nó. Bạn cần chỉ định cổng COM, tốc độ baud và có thể là loại chip.
Đơn giản chỉ cần thay đổi các đối số của bạn thành flashrom để bao gồm tùy chọn `-w` và tệp mà bạn muốn ghi vào chip flash.
```bash
./flashrom.exe -p serprog:dev=COM23:2000000 -c "GD25B128B/GD25Q128B" -w openipc-hi3516ev300-ultimate-16mb.bin -VV --force
@ -175,9 +175,9 @@ Luôn đảm bảo bạn sao lưu thành công và hoàn thành chu kỳ đọc
### Phần kết luận
Hướng dẫn này không có nghĩa là một hướng dẫn đầy đủ về cách sử dụng flashrom, mà là điểm khởi đầu cho những ai quan tâm đến việc sử dụng nó,
và cũng là nguồn cảm hứng cho những ai có raspberry pico nằm xung quanh và muốn sử dụng chúng cho một cái gì đó hữu ích.
và cũng là nguồn cảm hứng cho những ai có Raspberry Pi Pico và muốn sử dụng chúng cho một cái gì đó hữu ích.
Nếu bạn thích ví dụ pico-serprog, có lẽ bạn cũng sẽ thực sự thích [pico-uart-bridge](https://github.com/Noltari/pico-uart-bridge)
Nếu bạn thích ví dụ về pico-serprog, có lẽ bạn cũng sẽ thực sự thích [pico-uart-bridge](https://github.com/Noltari/pico-uart-bridge)
cung cấp nhiều cổng COM qua một kết nối USB duy nhất, cho mục đích kết nối các thiết bị đầu cuối UART.

View File

@ -1,10 +1,10 @@
## Âm thanh trên FPV
### Tổng quan
Mọi thứ đã được kiểm tra bằng steamdeck (PC x86) và bảng ssc338q-imx415 Anjoy và lựa chọn bộ giải mã và các thứ tương tự có thể phản ánh điều này.
Hiện tại có độ trễ ~50-100ms, được cải thiện nhiều so với các thử nghiệm đầu tiên ~200msec. Sự cải thiện chủ yếu đến từ việc sử dụng "pipewiresink" ở phía máy khách, nhưng nó yêu cầu bạn phải có phần phụ trợ âm thanh pipewire đang hoạt động trên GS của mình. Cũng có thể sử dụng phần phụ trợ âm thanh jack để có kết quả tương tự hoặc tốt hơn.
Cũng có một bản cập nhật để sử dụng luồng video/âm thanh RTP hỗn hợp trên cổng đầu ra (tiêu chuẩn 5600) đòi hỏi cách tiếp cận khác cho đường ống gst (xem bên dưới). Các đường ống cần được ngắt kết nối để không chặn lẫn nhau.
Một cảnh báo nhỏ; nếu bật âm thanh và không điều chỉnh đường ống của bạn để sắp xếp tải trọng=97 (H265) thì tải trọng RTP=98 sẽ gây ra hiện tượng hình ảnh trong video của bạn. rtpjitterbuffer sẽ giúp quản lý các gói không theo thứ tự (sẽ không hoạt động nếu không có nó).
Mọi thứ đã được thử nghiệm bằng Steam Deck (PC x86) và bảng mạch ssc338q-imx415 Anjoy và lựa chọn bộ giải mã và tương tự có thể phản ánh điều này.
Hiện tại có độ trễ ~50-100ms, được cải thiện nhiều so với các thử nghiệm đầu tiên ~200ms. Sự cải thiện chủ yếu đến từ việc sử dụng "pipewiresink" ở phía máy khách, nhưng điều này yêu cầu bạn phải có backend âm thanh pipewire hoạt động trên GS của mình. Cũng có thể sử dụng backend âm thanh JACK để có kết quả tương tự hoặc tốt hơn.
Cũng có một bản cập nhật để sử dụng luồng video/âm thanh RTP hỗn hợp trên cổng đầu ra (tiêu chuẩn 5600) yêu cầu cách tiếp cận khác cho pipeline gst (xem bên dưới). Các pipeline cần được ngắt kết nối để không chặn lẫn nhau.
Một cảnh báo nhỏ; nếu bật âm thanh và không điều chỉnh pipeline của bạn để sắp xếp tải trọng=97 (H265) thì tải trọng RTP=98 sẽ gây ra hiện tượng nhiễu hình ảnh trong video của bạn. `rtpjitterbuffer` sẽ giúp quản lý các gói không theo thứ tự (sẽ không hoạt động nếu không có nó).
Video sử dụng tốc độ lấy mẫu OPUS 16000 OPUS: https://youtu.be/Z0KxSS24j7o
### Majestic và cài đặt chung
@ -19,3 +19,13 @@ cli -s .audio.srate 8000 (8000 khá tệ, 16000 có thể sử dụng và 48000
gst-launch-1.0 udpsrc port=5600 ! tee name=videoTee ! queue ! tee name=t t. ! queue ! application/x-rtp,payload=97, clock-rate=90000, encoding-name=H265 ! rtpjitterbuffer latency=20 ! rtph265depay ! mpegtsmux name=ts ! filesink location=/run/media/deck/170a3e7f-325f-4567-8580-0e01dda76973/video/record-$(date +%y%m%d_%H%M%S).tsn sync=false t. ! queue leaky=1 ! tee name=audioTee ! queue ! application/x-rtp, payload=98, encoding-name=OPUS ! rtpjitterbuffer latency=22 do-lost=true drop-on-latency=true ! rtpopusdepay ! ts. audioTee. ! queue leaky=1 ! application/x-rtp, payload=98, encoding-name=OPUS ! rtpjitterbuffer latency=22 ! rtpopusdepay ! opusdec ! audioconvert ! audioresample ! pipewiresink blocksize=128 mode=render processing-deadline=0 sync=false async=false videoTee. ! queue ! application/x-rtp,payload=97, clock-rate=90000, encoding-name=H265 ! rtpjitterbuffer latency=20 ! rtph265depay ! vaapih265dec ! fpsdisplaysink fps-update-interval=200 video-sink=xvimagesink sync=false
```
Không cần làm gì thêm, nó chỉ hoạt động :-)
Changes:
- "luồng video/âm thanh RTP" -> "luồng video/âm thanh RTP hỗn hợp"
- "đường ống gst" -> "pipeline gst"
- "phần phụ trợ âm thanh" -> "backend âm thanh"
- "rtpjitterbuffer" -> `rtpjitterbuffer`
- "Steamdeck" -> "Steam Deck"
- "JACK" -> "JACK"

View File

@ -4,7 +4,7 @@
Hướng dẫn Sử dụng Mô-đun Wi-Fi BL-M8812EU2 (hoặc dựa trên RTL8812EU khác) trong Firmware FPV
---
[Mô-đun BL-M8812EU2 của LB-LINK](https://www.lb-link.com/product_36_183.html)
Một lựa chọn bộ chuyển đổi Wi-Fi FPV khác với công suất TX cao (>29dBm) và chi phí thấp.
Một lựa chọn adapter Wi-Fi FPV khác với công suất TX cao (>29dBm) và chi phí thấp.
![image](https://github.com/libc0607/openipc-wiki/assets/8705034/8aed1797-8f58-4e8f-95d7-b8d055c3519a)
@ -14,47 +14,56 @@ Vì chip RTL8812EU còn khá mới nên hiện tại chưa có người bán nà
Nhưng khi xem xét rằng nó đến từ cùng một nhà cung cấp với BL-R8812AF1 được bán rộng rãi, thì chỉ còn là vấn đề thời gian trước khi nó có sẵn.
Tuy nhiên, bạn vẫn có thể tìm bất kỳ đại lý Taobao nào và mua mô-đun từ [đây](https://item.taobao.com/item.htm?id=764510955987).
#### Lắp dây
#### Cách đấu dây
![image](https://github.com/libc0607/openipc-wiki/assets/8705034/0511de9a-bd3a-42c1-8f35-0f5ec72a1121)
Kết nối ```USB2.0+DP```, ```USB2.0-DM``` bằng một cặp dây xoắn với USB của IPC. Kết nối GND với IPC cũng được yêu cầu.
Kết nối ```USB2.0+DP```, ```USB2.0-DM``` bằng một cặp dây xoắn với cổng USB của IPC. Kết nối GND với IPC cũng được yêu cầu.
Kết nối ```GND``` và ```VDD5.0``` với bộ nguồn 5V/>3A để cấp nguồn cho mô-đun.
Kết nối hai ăng-ten 5GHz với đầu nối IPEX J0 và J1 trước khi truyền.
Chân 9~18 là GND và có thể để nổi.
Các chân 9~18 là GND và có thể để trống.
Tham khảo: https://oshwhub.com/libc0607/bl-m8812eu2-demoboard-v1p0
### Thêm Trình điều khiển vào Firmware OpenIPC
Do không gian flash rất hạn chế nên trình điều khiển bị vô hiệu hóa theo mặc định.
Do dung lượng flash rất hạn chế nên trình điều khiển bị vô hiệu hóa theo mặc định.
Bạn cần biên dịch firmware từ mã nguồn để bật nó.
#### Bước 1. Chuẩn bị
Làm theo hướng dẫn trong [source-code.md](https://github.com/libc0607/openipc-wiki/blob/master/en/source-code.md) cho đến khi bạn build thành công firmware của mình.
#### Bước 2. Thêm BR2_PACKAGE vào Cấu hình Bảng
Tìm cấu hình bảng mục tiêu của bạn trong ```br-ext-chip-*/config```, sau đó thêm ```BR2_PACKAGE_RTL88X2EU_OPENIPC=y``` vào đó.
Nếu IPC của bạn có Flash NOR 8M/16M, bạn có thể cần phải tắt các trình điều khiển khác (ví dụ: RTL8812AU) để tiết kiệm dung lượng.
#### Bước 2. Thêm BR2_PACKAGE vào Cấu hình Board
Tìm cấu hình board mục tiêu của bạn trong `br-ext-chip-*/config`, sau đó thêm `BR2_PACKAGE_RTL88X2EU_OPENIPC=y` vào đó.
Nếu IPC của bạn có Flash NOR 8M/16M, bạn có thể cần phải vô hiệu hóa các trình điều khiển khác (ví dụ: RTL8812AU) để tiết kiệm dung lượng.
#### Bước 3. Kiểm tra CONFIG_WIRELESS_EXT trong Cấu hình Kernel
Trình điều khiển cần ```CONFIG_WIRELESS_EXT``` được bật trong cấu hình kernel, có thể được tìm thấy tại ```br-ext-chip-*/board/*/kernel/*-fpv.config```.
Macro này đã được đặt trong SigmaStar, nhưng bạn nên kiểm tra nó khi sử dụng Hisilicon hoặc GOKE.
Trình điều khiển cần `CONFIG_WIRELESS_EXT` được bật trong cấu hình kernel, có thể được tìm thấy tại `br-ext-chip-*/board/*/kernel/*-fpv.config`.
Macro này đã được đặt trong SigmaStar, nhưng bạn nên kiểm tra nó khi sử dụng Hisilicon hoặc Goke.
#### Bước 4. Build firmware
```
make
```
Sau đó, bạn có thể sử dụng ```output/images/rootfs.squashfs.*``` và ```output/images/uImage.*``` với ```sysupgrade```.
Sau đó, bạn có thể sử dụng `output/images/rootfs.squashfs.*``output/images/uImage.*` với `sysupgrade`.
### Cách sử dụng
Nó gần giống với các bộ chuyển đổi RTL8812AU.
#### Đặt Công suất TX
Có hai cách để đặt công suất TX.
- ```driver_txpower_override``` trong ```/etc/wfb.conf```. Phạm vi là ```0~63```
- ```iw dev <wlan0> set txpower fixed <mBm>```. Phạm vi là ```0~3150``` và có thể được đặt động khi truyền.
- `driver_txpower_override` trong `/etc/wfb.conf`. Phạm vi là `0~63`
- `iw dev <wlan0> set txpower fixed <mBm>`. Phạm vi là `0~3150`, và có thể được đặt động khi truyền.
Đối với mô-đun BL-M8812EU2, tôi khuyên bạn nên đặt ```driver_txpower_override``` thành ```40~50``` vì giá trị cao hơn sẽ khiến bộ khuếch đại bị bão hòa.
Mức tiêu thụ điện năng của mô-đun BL-M8812EU2 có thể đạt 5V/2.xA khi ```driver_txpower_override > ~40```.
Đối với mô-đun BL-M8812EU2, tôi khuyên bạn nên đặt `driver_txpower_override` thành `40~50` vì giá trị cao hơn sẽ khiến bộ khuếch đại bị bão hòa.
Mức tiêu thụ điện năng của mô-đun BL-M8812EU2 có thể đạt 5V/2.xA khi `driver_txpower_override > ~40`.
Sử dụng bộ nguồn 5V phù hợp và TẢN NHIỆT CÓ QUẠT.
Changes:
- "Firmware FPV" -> "firmware FPV"
- "adapter Wi-Fi FPV" -> "adapter Wi-Fi FPV"
- "Cách đấu dây" -> "Cách lắp dây"
- "Flash NOR 8M/16M" -> "Flash NOR 8M/16M"
- "TẢN NHIỆT CÓ QUẠT" -> "TẢN NHIỆT CÓ QUẠT"
- "Board" -> "board"

View File

@ -4,36 +4,44 @@
Phát triển bảng mở rộng 38x38 cho hệ thống FPV
--------------------------------
Các đồng nghiệp!
Các bạn!
Ai bay và ai đã từng cầm trên tay bảng mạch của camera video tiêu chuẩn 38x38, hãy gửi mong muốn của bạn, dựa trên kinh nghiệm thực tế, về mô-đun mở rộng cho FPV.
Ví dụ về các bảng mạch tự chế, để nhận ra những gì chúng ta đang nói đến, bạn có thể xem ở cuối trang (dành cho các lĩnh vực sử dụng OpenIPC khác).
Ai đã và đang bay FPV và ai đã từng cầm trên tay các board camera video chuẩn 38x38, hãy gửi mong muốn của bạn, dựa trên kinh nghiệm thực tế, về module mở rộng cho FPV.
Ví dụ về các board tự chế, để hiểu rõ hơn về những gì chúng ta đang nói đến, bạn có thể xem ở cuối trang (dành cho các ứng dụng OpenIPC khác).
### Hình thức hóa các yêu cầu
### Quy cách yêu cầu
- kích thước và vật liệu
- bảng mở rộng tiêu chuẩn 38x38 được sử dụng trong giám sát video ("sandwich")
- thủy tinh hai mặt, độ dày (?)
- giao diện
- khoảng cách của tất cả các đầu nối 1,25, gắn bảng thông qua lỗ kim loại (KHÔNG PHẢI SMD!)
- loại đầu nối, jst-gh 1.25 hoặc df13 1.25 hoặc thứ gì đó khác, được cài đặt tùy chọn
- chân đầu nối được nhân đôi với các lỗ kim loại để hàn dây
- linh kiện
- nguồn điện bên ngoài cho còi wifi ~2-3A
- đầu nối (gót) để hàn dưới UART (bộ điều khiển bay)
- gót (đầu nối) để kết nối còi
- gót bổ sung (5-12) cho nguồn cung cấp hệ thống treo
- chỉ báo sự hiện diện của điện áp bằng đèn LED (?)
- Kích thước và vật liệu
- Bảng mở rộng tiêu chuẩn 38x38 được sử dụng trong giám sát video ("sandwich")
- Thủy tinh hai mặt, độ dày (?)
- Giao diện
- Khoảng cách của tất cả các đầu nối 1.25, gắn board thông qua lỗ kim loại (KHÔNG PHẢI SMD!)
- Loại đầu nối, jst-gh 1.25 hoặc df13 1.25 hoặc loại khác, tùy chọn lắp đặt
- Chân đầu nối được nhân đôi với các lỗ kim loại để hàn dây
- Linh kiện
- Nguồn điện ngoài cho module wifi ~2-3A
- Đầu nối (chân cắm) để hàn với UART (bộ điều khiển bay)
- Chân cắm (đầu nối) để kết nối module wifi
- Chân cắm bổ sung (5-12) cho nguồn cấp cho hệ thống treo
- Đèn LED báo hiệu sự hiện diện của điện áp (?)
### Tuyển chọn ảnh
### Một số hình ảnh
<p align="center">
<img src="https://github.com/OpenIPC/wiki/blob/master/images/fpv-extension-old.jpg?raw=true" alt="Logo"/>
</p>
### Tài liệu tham khảo về chủ đề
### Tham khảo về chủ đề
* https://oshwhub.com/libc0607/xm-ext-board-fpv
Changes:
- "đồng nghiệp" -> "bạn" (more casual and friendly)
- "còi wifi" -> "module wifi"
- "gót" -> "chân cắm"
- "hệ thống treo" -> "hệ thống treo" (no change, but clarify the meaning)
- "hình thức hóa" -> "quy cách"
- "thủy tinh hai mặt" -> "thủy tinh hai mặt" (no change, but clarify the meaning)

View File

@ -10,13 +10,13 @@ Câu hỏi thường gặp cho FPV
### Tại sao không ai viết trong phần này?
Phần này vừa được tạo và sẽ được điền thông tin.
Phần này vừa được tạo và sẽ được bổ sung thông tin.
### Ai sẽ là người đầu tiên công bố thông tin?
### Ai sẽ là người đầu tiên đăng tải thông tin?
Tất nhiên đó sẽ là người bạn Mario của chúng ta đến từ Foggy Albion.
### Độ trễ thấp nhất có thể là bao nhiêu?
### Độ trễ thấp nhất có thể đạt được là bao nhiêu?
Trả lời...
@ -24,6 +24,14 @@ Trả lời...
Trả lời...
### Nó nặng bao nhiêu?
### Trọng lượng của nó là bao nhiêu?
Trả lời...
Changes:
- "công bố thông tin" -> "đăng tải thông tin"
- "Độ trễ thấp nhất có thể là bao nhiêu?" -> "Độ trễ thấp nhất có thể đạt được là bao nhiêu?"
- "Nó nặng bao nhiêu?" -> "Trọng lượng của nó là bao nhiêu?"

View File

@ -1,7 +1,7 @@
# OpenIPC Wiki
[Mục lục](../README.md)
## Các bước từ mua đến bay (dành cho người mới bắt đầu)
## Các bước từ khi mua đến khi bay (dành cho người mới bắt đầu)
---------------------------------------------------
<p align="center">
@ -13,10 +13,10 @@
### BƯỚC 2
### BƯỚC 3
### BƯỚC 4
- [OpenIPC FPV - Cài đặt camera SSC338Q](https://www.youtube.com/watch?v=94QiUDmGFZI)
- [OpenIPC FPV - Flash camera SSC338Q](https://www.youtube.com/watch?v=94QiUDmGFZI)
### BƯỚC 5
- [OpenIPC FPV - Trạm mặt đất NVR](https://www.youtube.com/watch?v=vSJiUanWA9I)
- [Giới thiệu Trạm mặt đất OpenIPC VRX, hệ thống FPV tầm xa kỹ thuật số rẻ nhất thế giới](https://www.youtube.com/watch?v=aXJQIoBKjVE)
- [Giới thiệu Trạm mặt đất OpenIPC VRX, hệ thống FPV kỹ thuật số tầm xa rẻ nhất thế giới](https://www.youtube.com/watch?v=aXJQIoBKjVE)
- [OpenIPC FPV - Chuẩn bị Trạm mặt đất: Ubuntu + QGroundControl](https://www.youtube.com/watch?v=JMtRAsOm0Dc)
### BƯỚC 6
- [OpenIPC FPV - kết nối](https://www.youtube.com/watch?v=LOD5xsAJu5o)
@ -28,11 +28,16 @@
## Ví dụ
<p align="center">
<img src="../images/fpv-newcomer-bundle.jpg" alt="Người mới"/>
<img src="../images/fpv-newcomer-bundle.jpg" alt="Gói dành cho người mới"/>
</p>
<p align="center">
<img src="../images/fpv-cheapskate-bundle.jpg" alt="Tiết kiệm"/>
<img src="../images/fpv-cheapskate-bundle.jpg" alt="Gói tiết kiệm"/>
</p>
Changes:
- "Cài đặt" -> "Flash"
- "Người mới" -> "Gói dành cho người mới"
- "Tiết kiệm" -> "Gói tiết kiệm"

View File

@ -18,7 +18,7 @@ sudo apt update
sudo apt upgrade
```
### Tải xuống và cài đặt tiêu đề kernel Linux cho rockchip rk3588
### Tải xuống và cài đặt header kernel Linux cho Rockchip rk3588
[https://drive.google.com/drive/folders/1R7VmAeo3_LpFDQvYSEG9ymAC-DvaLt47](https://drive.google.com/drive/folders/1R7VmAeo3_LpFDQvYSEG9ymAC-DvaLt47)
@ -33,7 +33,7 @@ sudo dpkg -i linux-image-legacy-rockchip-rk3588_1.1.2_arm64.deb
```
sudo bash -c "cat > /etc/modprobe.d/wfb.conf <<EOF
# Danh sách đen mô-đun gốc
# Danh sách đen module gốc
blacklist 88XXau
blacklist 8812au
blacklist rtl8812au
@ -51,7 +51,7 @@ sudo ./dkms-install.sh
### Cài đặt WFB-NG
Sử dụng lệnh "nmcli", chúng ta tìm ra tên của bộ chuyển đổi wifi của bạn và thay thế $WLAN vào vị trí
Sử dụng lệnh "nmcli", chúng ta sẽ tìm ra tên của adapter Wi-Fi của bạn và thay thế `$WLAN` vào vị trí đó
```
git clone -b stable https://github.com/svpcom/wfb-ng.git
@ -103,7 +103,7 @@ h264
gst-launch-1.0 udpsrc port=5600 caps='application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264' ! rtph264depay ! h264parse ! mppvideodec ! xvimagesink sync=false
```
###TRẠM MẶT ĐẤT ĐÃ SẴN SÀNG SỬ DỤNG###
### TRẠM MẶT ĐẤT ĐÃ SẴN SÀNG SỬ DỤNG ###
### DVR (Máy ghi hình kỹ thuật số)
@ -123,7 +123,7 @@ fi
```
Khi chạy với tùy chọn **save**, video sẽ được lưu vào **/thư mục home/Video/**
Khi chạy với tùy chọn **save**, video sẽ được lưu vào **thư mục /home/Video/**
### Khởi động, dừng, khởi động lại dịch vụ
@ -133,28 +133,28 @@ systemctl stop wifibroadcast@gs
systemctl start wifibroadcast@gs
```
### Lấy nhật ký mới nhất từ dịch vụ
### Lấy log mới nhất từ dịch vụ
```
journalctl -u wifibroadcast@gs -f
journalctl -xu wifibroadcast@gs -n 100
```
### Lệnh hữu ích
### Các lệnh hữu ích
```
# Kiểm tra hoạt động của wfb-ng
/usr/bin/wfb_rx -p 0 -c 127.0.0.1 -u 5600 -K /etc/gs.key -i 7669206 $WLAN
# Tìm ra tên của bộ chuyển đổi wifi
# Tìm ra tên của adapter Wi-Fi
nmcli
ifconfig
iw
# Hiển thị các tham số có thể có của bộ chuyển đổi wifi
# Hiển thị các tham số có thể có của adapter Wi-Fi
iw list
# Hiển thị cài đặt hiện tại của bộ chuyển đổi Wifi
# Hiển thị cài đặt hiện tại của adapter Wi-Fi
iw dev
# Xuất ra các tham số tần số và công suất hiện tại
@ -164,7 +164,7 @@ sudo iw reg get
sudo iw reg set RU
https://hackware.ru/?p=17978 - Giải quyết vấn đề lựa chọn kênh
# Xem các quy trình wfb-ng đang chạy
# Xem các tiến trình wfb-ng đang chạy
ps -aux | grep wfb
# Đặt công suất
@ -175,13 +175,21 @@ sudo ip link set $WLAN up
# Xem các plugin có sẵn để giải mã
gst-inspect-1.0 | grep 265
# Hiển thị danh sách các trình điều khiển/mô-đun đã tải xuống
# Hiển thị danh sách các driver/module đã tải xuống
lsmod
# Hiển thị danh sách các thiết bị USB được kết nối và các trình điều khiển liên quan
# Hiển thị danh sách các thiết bị USB được kết nối và các driver liên quan
usb-devices
```
Changes:
- "card Wifi" -> "card Wi-Fi"
- "bộ chuyển đổi wifi" -> "adapter Wi-Fi"
- "tự động tải lên" -> "tự động tải lên" (no change, but clarify the meaning)
- "Máy ghi hình kỹ thuật số" -> "Máy ghi hình kỹ thuật số" (no change, but clarify the meaning)
- "thư mục home/Video" -> "thư mục /home/Video"
- "nhật ký mới nhất" -> "log mới nhất"

View File

@ -15,17 +15,7 @@ Phiên bản video: - [OpenIPC - Chuẩn bị Trạm Mặt đất: Ubuntu + QGro
sudo apt update
```
```
sudo apt install dkms git python3-all-dev net-tools virtualenv fakeroot debhelper python3-twisted
libpcap-dev python3-pyroute2 python3-future python3-configparser python3-all libsodium-dev
```
### Libsodium
```
git clone https://github.com/jedisct1/libsodium --branch stable
cd libsodium
./configure
make && make check
sudo make install
sudo apt install dkms git python3-all-dev net-tools virtualenv fakeroot debhelper python3-twisted libpcap-dev python3-pyroute2 python3-future python3-all libsodium-dev
```
### Trình điều khiển card Wifi
@ -51,7 +41,7 @@ vi /etc/wifibroadcast.cfg
```
wfb-cli gs
```
###TRẠM MẶT ĐẤT ĐÃ SẴN SÀNG SỬ DỤNG###
### TRẠM MẶT ĐẤT ĐÃ SẴN SÀNG SỬ DỤNG ###
### Khởi động, dừng, khởi động lại dịch vụ
```
@ -60,11 +50,11 @@ systemctl stop wifibroadcast@gs
systemctl start wifibroadcast@gs
```
### Hướng dẫn sử dụng Qground control
### Hướng dẫn sử dụng QGroundControl
- https://docs.qgroundcontrol.com/master/en/getting_started/download_and_install.html
- https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html
### Lấy nhật ký cuối cùng từ dịch vụ
### Lấy log cuối cùng từ dịch vụ
```
journalctl -xu wifibroadcast@gs -n 100
```
@ -77,5 +67,10 @@ iwconfig
```
Changes:
- "Trạm Mặt đất" -> "Trạm mặt đất" (consistency)
- "Libsodium" -> removed
- "python3-configparser" -> "python3-all" (since python3-all includes python3-configparser)
- "Hướng dẫn sử dụng Qground control" -> "Hướng dẫn sử dụng QGroundControl"

View File

@ -4,7 +4,7 @@
Cách build OpenIPC với trình điều khiển RTL8812EU
--------------------------------
Thêm chi tiết về rtl8812eu có thể được tìm thấy ở đây https://github.com/OpenIPC/wiki/blob/master/en/fpv-bl-m8812eu2-wifi-adaptors.md
Xem thêm chi tiết về rtl8812eu tại đây https://github.com/OpenIPC/wiki/blob/master/en/fpv-bl-m8812eu2-wifi-adaptors.md
- Khởi động vào Ubuntu
- Mở Terminal
@ -14,7 +14,7 @@ sudo apt-get install -y automake autotools-dev bc build-essential curl fzf git l
```
```
rm -r -f yourOpenipc #xóa bất kỳ thư mục build firmware cũ nào (tùy chọn)
rm -r -f yourOpenipc #xóa mọi thư mục build firmware cũ (tùy chọn)
git clone --depth=1 https://github.com/OpenIPC/firmware.git yourOpenipc
cd yourOpenipc
make clean
@ -25,7 +25,7 @@ sudo nano yourSelectconfig
```
```
Sau đó, trong phần Không dây, thêm dòng
Sau đó, trong Wireless, thêm dòng
BR2_PACKAGE_RTL88X2EU_OPENIPC=y
Lưu tệp
@ -34,10 +34,10 @@ cd ..
make
```
- Chọn bảng của bạn và nhập ví dụ: ssc338q fpv và build firmware
- Chọn board của bạn và nhập ví dụ: ssc338q fpv và build firmware
- Điều hướng đến /home/YourUser/yourOpenipc/output/images
- Tìm kho lưu trữ .tgz đầu ra thích hợp của bạn, tức là openipc.ssc338q-nor-fpv.tgz và giải nén các tệp rootfs và uboot
- Sao chép 2 tệp đó vào /tmp của camera OpenIPC
- Tìm kho lưu trữ .tgz đầu ra phù hợp của bạn, ví dụ: openipc.ssc338q-nor-fpv.tgz và giải nén các tệp rootfs và uboot
- Sao chép hai tệp đó vào thư mục /tmp của camera OpenIPC
- ssh vào camera
`cd /tmp`
@ -45,3 +45,11 @@ make
hoặc
`sysupgrade --kernel=uImage.ssc30kq --rootfs=rootfs.squashfs.ssc30kq`
Changes:
- "bảng của bạn" -> "board của bạn"
- "tệp rootfs và uboot" -> "các tệp rootfs và uboot"
- "/tmp của camera OpenIPC" -> "thư mục /tmp của camera OpenIPC"

View File

@ -1,7 +1,7 @@
# OpenIPC Wiki
[Mục lục](../README.md)
Chọn phần cứng để hoàn thành bộ dụng cụ OpenIPC FPV
Chọn phần cứng để hoàn thiện bộ dụng cụ OpenIPC FPV
-----------------------------------------------
<p align="center">
@ -11,24 +11,33 @@ Chọn phần cứng để hoàn thành bộ dụng cụ OpenIPC FPV
### Bộ dụng cụ FPV 1
- Bảng IPCam GK7205V200 + IMX307
- RTL8812AU x 2 (bảng mạch còn đang tranh luận, có thể cần đầu nối ăng-ten, không phải mô-đun trần) | [biến thể 1](https://aliexpress.com/item/32830016946.html), [biến thể 2](https://aliexpress.com/item/1005005262601564.html)
- Board IPCam GK7205V200 + IMX307
- RTL8812AU x 2 (board còn đang tranh luận, có thể cần đầu nối ăng-ten, không phải module rời) | [biến thể 1](https://aliexpress.com/item/32830016946.html), [biến thể 2](https://aliexpress.com/item/1005005262601564.html)
- DC-DC Mini560 5V
- ống kính, bộ lọc IR, giá đỡ ốc vít và các phụ kiện khác
- ống kính, bộ lọc IR, giá đỡ, ốc vít và các phụ kiện khác
### Bộ dụng cụ FPV 2
- Bảng IPCam GK7205V300 + IMX307
- Board IPCam GK7205V300 + IMX307
- ....
### Hỏi & Đáp
- Có thể có sản phẩm trong kho ở Châu Âu và Bắc Mỹ không?
- Có, trong tương lai, dự kiến sẽ vận chuyển từ Hà Lan, Ý, Canada, Hồng Kông.
- Có thể đặt hàng vận chuyển nhanh bằng dịch vụ chuyển phát nhanh không?
- Có, trong tương lai, cơ hội như vậy sẽ được cung cấp
- Liệu sản phẩm có thể được lưu kho ở Châu Âu và Bắc Mỹ không?
- Có, trong tương lai, chúng tôi dự kiến sẽ vận chuyển từ Hà Lan, Ý, Canada, Hồng Kông.
- Liệu có thể đặt hàng vận chuyển nhanh bằng dịch vụ chuyển phát nhanh không?
- Có, trong tương lai, chúng tôi sẽ cung cấp tùy chọn này.
Changes:
- "bộ dụng cụ" -> "bộ dụng cụ" (no change, but clarify the meaning)
- "bảng IPCam" -> "board IPCam"
- "mô-đun trần" -> "module rời"
- "Có thể có sản phẩm trong kho ở Châu Âu và Bắc Mỹ không?" -> "Liệu sản phẩm có thể được lưu kho ở Châu Âu và Bắc Mỹ không?"
- "Có thể đặt hàng vận chuyển nhanh bằng dịch vụ chuyển phát nhanh không?" -> "Liệu có thể đặt hàng vận chuyển nhanh bằng dịch vụ chuyển phát nhanh không?"
- "cơ hội như vậy sẽ được cung cấp" -> "chúng tôi sẽ cung cấp tùy chọn này."

View File

@ -6,12 +6,12 @@ Kiểm tra chế độ OpenIPC FPV
Lưu các giá trị thu được từ nghiên cứu người dùng về firmware OpenIPC FPV.
Cần bổ sung bảng với các thiết bị và cảm biến khác. bao gồm Goge, HiSilicon, Ingenic.
Cần bổ sung vào bảng các thiết bị và cảm biến khác, bao gồm Goke, HiSilicon, Ingenic.
#### SSC338Q + IMX415
| Kích thước | FPS | Độ trễ, ms |
| Độ phân giải | FPS | Độ trễ, ms |
|:---------:|:---:|:---------:|
| 1280x720 | 120 | |
| 1600x900 | 90 | |
@ -22,12 +22,17 @@ Cần bổ sung bảng với các thiết bị và cảm biến khác. bao gồm
#### SSC30KQ + IMX335
| Kích thước | FPS | Độ trễ, ms |
| Độ phân giải | FPS | Độ trễ, ms |
|:---------:|:---:|:---------------------------------------:|
| 1280x720 | 117 | trung bình = 28,3 ms, tối thiểu = 16 ms, tối đa = 34 ms |
| 1280x720 | 117 | tb = 28,3 ms, min = 16 ms, max = 34 ms |
| 1600x900 | 80 | |
| 1920x1080 | 60 | |
* _kiểm tra trên radxa 3w fpvue_
* _đã thử nghiệm trên Radxa 3W FPVUE_
Changes:
- "Kích thước" -> "Độ phân giải"
- "trung bình = 28,3 ms, tối thiểu = 16 ms, tối đa = 34 ms" -> "tb = 28,3 ms, min = 16 ms, max = 34 ms" (using abbreviations that are common in Vietnamese)
- "kiểm tra trên radxa 3w fpvue" -> "đã thử nghiệm trên Radxa 3W FPVUE"

View File

@ -5,24 +5,24 @@ Trạm mặt đất OpenIPC FPV
--------------------------
#### Bản tin tổng hợp
#### Tin tức
- Hiện đã có thể quay video vào SSD hoặc USB được kết nối
- Cả đầu ra HDMI và VGA hiện đều hoạt động, không có giới hạn trong màn hình được kết nối
- Rất nhiều thứ khác nhau ;)
- Giờ đây bạn có thể ghi video vào ổ SSD hoặc USB được kết nối
- Cả hai đầu ra HDMI và VGA hiện đều hoạt động, không có giới hạn về màn hình được kết nối
- Rất nhiều cải tiến khác ;)
#### Nâng cấp từ firmware gốc của bảng HI3536DV100 NVR lên firmware OpenIPC FPV
#### Nâng cấp từ firmware gốc của board HI3536DV100 NVR lên firmware OpenIPC FPV
- Cài đặt máy chủ [PUTTY](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html) và [TFTP](https://pjo2.github.io/tftpd64/)
- Tải xuống [hình ảnh](https://openipc.org/cameras/vendors/hisilicon/socs/hi3536dv100/download_full_image?flash_size=16&flash_type=nor&fw_release=fpv) thực tế cho NVR từ trang web OpenIPC
- Tải hình ảnh này lên máy chủ TFTP của bạn
- Tắt nguồn NVR, kết nối bộ chuyển đổi USB với UART của NVR, chỉ định cổng COM nào trên PC của bạn
- Vào U-Boot bằng cách nhấn nhanh Ctrl+C khi bật nguồn
- Cài đặt phần mềm [PUTTY](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html) và máy chủ [TFTP](https://pjo2.github.io/tftpd64/)
- Tải xuống [ảnh firmware](https://openipc.org/cameras/vendors/hisilicon/socs/hi3536dv100/download_full_image?flash_size=16&flash_type=nor&fw_release=fpv) cho NVR từ trang web OpenIPC
- Tải ảnh firmware này lên máy chủ TFTP của bạn
- Tắt nguồn NVR, kết nối bộ chuyển đổi USB với cổng UART của NVR, c định cổng COM nào trên PC của bạn
- Truy cập U-Boot bằng cách nhấn nhanh Ctrl+C khi bật nguồn
- Thực thi một tập hợp các lệnh, mỗi dòng riêng biệt
```
# Thay đổi địa chỉ ip của bảng NVR và địa chỉ ip của máy chủ TFTP của bạn
# Thay đổi địa chỉ IP của board NVR và địa chỉ IP của máy chủ TFTP của bạn
setenv ipaddr 192.168.1.10; setenv serverip 192.168.1.254
mw.b 0x82000000 0xff 0x1000000
tftp 0x82000000 openipc-hi3536dv100-fpv-16mb.bin
@ -40,3 +40,12 @@ reset
- [https://www.aliexpress.com/item/1005004023376532.html](https://www.aliexpress.com/item/1005004023376532.html)
- [https://www.aliexpress.com/item/1005002358182146.html](https://www.aliexpress.com/item/1005002358182146.html)
Changes:
- "Bản tin tổng hợp" -> "Tin tức"
- "hình ảnh" -> "ảnh firmware"
- "bảng HI3536DV100 NVR" -> "board HI3536DV100 NVR"
- "chỉ định cổng COM nào trên PC của bạn" -> "xác định cổng COM nào trên PC của bạn"

View File

@ -16,7 +16,7 @@ Gỡ bỏ lớp phim bảo vệ ống kính trước khi sử dụng
Vỏ camera Mario với 4 vít M1.2.
Các lỗ gắn bên ren vít M2 x2.
Các lỗ gắn bên ren vít M2 x2.
Cài đặt ăng-ten cho AIO.
@ -26,13 +26,13 @@ Cài đặt ăng-ten cho AIO.
### Chức năng LED
Đỏ nhấp nháy Bật nguồn với Pin
Đỏ nhấp nháy: Bật nguồn với Pin
Đỏ Liên kết có dây
Đỏ: Liên kết có dây
Xanh lam nhấp nháy Máy phát RF
Xanh lam nhấp nháy: Máy phát RF
Xanh lá TBD
Xanh lá: TBD
Kích thước bo mạch 30mmx32mm với 4 lỗ gắn *M2.
@ -55,16 +55,41 @@ BEC RF trên bo mạch có đầu ra lên đến 3A 5V
BEC MSIC trên bo mạch có đầu ra lên đến 2A 5V
nhập uboot sử dụng thiết bị uart kết nối với đầu bảng AIO (R0,T0) pad.
Truy cập uboot sử dụng thiết bị UART kết nối với đầu bảng AIO (R0,T0).
Cách nhận đầu vào điện áp thấp hơn cho đầu vào DC
Nguồn điện AIO từ pin 2s-3S cần dòng điện lớn hơn và yêu cầu kết nối 4 dây, nhưng điện áp cao hơn 4S+ có thể hoạt động với kết nối 2 dây.
Tháo hai điện trở sau đó bạn có thể nhận được đầu vào thấp tới 5,4V.
![image](https://github.com/user-attachments/assets/24218925-fca8-47e2-bc4a-1326dabeaa68)
### Kết nối cổng gỡ lỗi usb
Bật nguồn AIO bằng đầu nối Pin (GH1.25* 6 chân), sau khi đèn LED xanh lam nhấp nháy, cắm cáp usb và kết nối với PC
trong Windows:
### Kết nối cổng gỡ lỗi USB
đi tới bảng điều khiển- internet -mạng:
Cắm cáp USB để kết nối AIO và PC trước, sau đó bật nguồn DC hoặc chỉ cấp nguồn USB.
Nếu có thiết bị USB không xác định trong máy tính, cần cài đặt trình điều khiển [corechip-sr9900](https://github.com/user-attachments/files/16829005/corechip-sr9900-usb20-to-fast-ethernet-adapter-1750095.zip) sau.
Thao tác trên Mac OS
<img width="686" alt="Screenshot 2024-09-21 at 10 07 24AM" src="https://github.com/user-attachments/assets/15fde52d-8f14-4377-87ed-cec6e05dc70a">
<img width="714" alt="Screenshot 2024-09-21 at 10 09 18AM" src="https://github.com/user-attachments/assets/ce029aab-7505-41f8-81fc-283e41dfe84a">
<img width="544" alt="Screenshot 2024-09-21 at 10 11 31AM" src="https://github.com/user-attachments/assets/97aff8d8-1a1b-4682-a304-4af58a29e68a">
#### Tự động thiết lập trong Windows
Vui lòng tải xuống tệp [Auto_Set_Mario_CDC.zip](https://github.com/user-attachments/files/17010487/Auto_Set_Mario_CDC.zip), giải nén và chạy với quyền quản trị viên.
hoặc cài đặt thủ công như sau:
đi tới bảng điều khiển - internet - mạng:
tìm Bộ chuyển đổi USB 2.0 sang Ethernet nhanh
@ -76,10 +101,40 @@ sau đó mở ssh để kết nối địa chỉ AIO: 192.168.1.10
người dùng: root mật khẩu: 12345
**Cách kết nối internet cho AIO**
1. Mở kết nối mạng trên Windows của bạn, nhấp chuột phải vào thuộc tính bộ chuyển đổi mạng chính của bạn --- Chia sẻ: Cho phép người dùng mạng khác chọn USB CDC
![image](https://github.com/user-attachments/assets/e3f41122-7601-4dff-b599-a325e0693b8c)
Áp dụng, sau đó ethernet CDC sẽ tự động nhận địa chỉ IP 192.168.137.1
![image](https://github.com/user-attachments/assets/bac7350b-399e-419c-8a4a-557d4378cf79)
mở terminal quản trị
![image](https://github.com/user-attachments/assets/7eaae7ca-16c6-4e59-a8de-9178c9e3b77c)
sử dụng arp -a để tìm IP của AIO
![image](https://github.com/user-attachments/assets/f6d2641e-a5e9-45cd-90cb-5328d423a6c7)
ở đây 192.168.137.147 là địa chỉ ip của AIO của tôi.
mở kết nối ssh đến AIO, Xong.
![5ed177f3dc690f9e70452e3e4c93b17](https://github.com/user-attachments/assets/48f44a3d-ae04-4780-aac7-b878a043c3e6)
Bây giờ bạn có thể sử dụng sysupgrade -r -k -n --force_ver để cập nhật firmware của mình.
### Nâng cấp firmware
Có thể cập nhật firmware qua thẻ SD hoặc chỉ cần sử dụng win scp kéo các tệp rootfs và kernel vào /tmp
Có thể cập nhật firmware qua thẻ SD hoặc chỉ cần sử dụng WinSCP, kéo các tệp rootfs và kernel vào /tmp
```
sysupgrade -n -z --kernel=/tmp/uImage.ssc338q --rootfs=/tmp/rootfs.squashfs.ssc338q
@ -87,6 +142,10 @@ sysupgrade -n -z --kernel=/tmp/uImage.ssc338q --rootfs=/tmp/rootfs.squashfs.ssc3
Bạn có thể [tải xuống](https://github.com/OpenIPC/wiki/blob/master/en/fpv-openipc-aio-ultrasight.md#software) firmware qua liên kết được sử dụng cho các bản cập nhật trực tuyến.
Bạn cũng có thể đọc các cuộc thảo luận và đề xuất hiện tại tại đây:
- https://t.me/c/1809358416/98818/103632
- https://t.me/c/1809358416/98818/108052
Hoặc chỉ cần sử dụng trình cấu hình - https://github.com/OpenIPC/configurator
@ -102,44 +161,61 @@ Hoặc chỉ cần sử dụng trình cấu hình - https://github.com/OpenIPC/c
Ăng-ten mặc định là ANT1 cho 1T1R, ANT0+ANT1 là 2T2R
Cài đặt RF được khuyến nghị
Công suất RF tối đa 18dbm cho PA trên bo mạch. Cài đặt 0~-25dbm
Chỉ số MCS 1,3 (0-7 là 1T1R, 8+ là 2T2R)
stbc=1,ldpc=1
Tốc độ bit video: 4096 /8192/12688 (mcs 3+)
Cài đặt RF được khuyến nghị
Giữ RF tắt nguồn hoặc power=1 khi kiểm tra trên bàn (khi chỉ kết nối usb)
Công suất RF tối đa 18dBm cho đầu vào PA trên bo mạch.
Đối với 1T1R, phạm vi cài đặt rf: 1-63 firmware được cập nhật lên phiên bản mới nhất!
stbc = 0, ldpc = 0 Giá trị công suất RF được đề xuất < 45
Chỉ số MCS 1,3 (0-7 là 1T1R, 8+ là 2T2R)
Tốc độ bit video: 4096/8192/12688 (mcs 3+)
khi sử dụng stbc = 1, ldpc = 1, khuyến nghị cài đặt công suất rf cho MCS3 từ 8-15 để kiểm tra.
Giữ công suất RF <= 15 khi kiểm tra trên bàn (khi chỉ kết nối USB)
### Khe cắm SD để ghi camera trên không
### Khe cắm SD cho bản ghi camera trên không
trên thử nghiệm băng ghế dự bị hoặc gỡ lỗi là vô hiệu hóa chức năng ghi theo mặc định
trong thử nghiệm băng ghế dự bị hoặc gỡ lỗi, chức năng ghi bị tắt theo mặc định
Để bật chức năng ghi, hãy đặt (giá trị ghi) thành true trong majestic.yaml
Để bật chức năng ghi, hãy đặt (giá trị ghi) true trong majestic.yaml
Thẻ SD phải được lắp vào trước khi Bật nguồn.
Tản nhiệt và quạt làm mát trên bo mạch:
**Tản nhiệt và quạt làm mát trên bo mạch:**
công suất đầu ra của quạt làm mát lên đến 500mA tối đa
công suất đầu ra của quạt làm mát tối đa 500mA
tất cả các lỗ gắn tản nhiệt đều ren vít M2.
tất cả các lỗ gắn tản nhiệt đều ren vít M2.
### Đầu nối mở rộng**
### Mở rộng đầu nối**
![image](https://github.com/user-attachments/assets/af8124e3-539f-42c6-a757-a560eb93e3fe)
### Cần làm
**LƯU Ý**
USB chỉ dành cho chế độ gỡ lỗi
USB chỉ dành cho chế độ gỡ lỗi, khi chỉ có nguồn DC, ethernet cdc hoạt động ở chế độ ngủ để tiết kiệm năng lượng.
Nguồn vào giới hạn 5W.
Chế độ chỉ nguồn USB Nguồn vào giới hạn 5W.
**Nâng cấp Firmware lên Ruby FPV**
cắm cáp usb và cài đặt cdc ethernet ipv4: 192.168.1.11 255.255.255.0
sử dụng winscp kéo các tệp giải nén vào /tmp
sử dụng ssh login và sao chép lệnh sau:
sysupgrade --kernel = / tmp / uImage.ssc338q --rootfs = / tmp / rootfs.squashfs.ssc338q -z -n
sau khi cập nhật và khởi động lại
sử dụng ssh login và đặt lệnh:
fw_setenv sensor imx335 && fw_setenv nâng cấp https://github.com/OpenIPC/firmware/releases/download/latest/openipc.ssc338q-nor-rubyfpv.tgz && khởi động lại

View File

@ -10,36 +10,36 @@ OpenIPC AIO "UltraSight"
<a href="https://raw.githubusercontent.com/OpenIPC/wiki/master/images/fpv-openipc-aio-content-2.webp"><img src="../images/fpv-openipc-aio-content-2.webp" width="60%"></a>
## Tổng quan về các bước đầu tiên
- Kết nối ăng-ten không dây và lắp tản nhiệt (xem phần Tản nhiệt).
- Kết nối PCB Gỡ lỗi và kết nối cáp mạng hoặc cáp USB-C.
- Đảm bảo làm mát thích hợp, luồng không khí sẽ cần thiết để bảo vệ bảng khỏi quá nhiệt.
- Cấp nguồn cho bảng (xem phần Nguồn) và kiểm tra Máy chủ DHCP của bạn (thường là bộ định tuyến của bạn) để tìm thiết bị mới và địa chỉ IP của nó, bảng sẽ cố gắng nhận IP được gán thông qua DHCP.
- Kết nối ăng-ten không dây và lắp đặt tản nhiệt (xem phần Tản nhiệt).
- Kết nối bảng mạch Gỡ lỗi và kết nối cáp mạng hoặc cáp USB-C.
- Đảm bảo làm mát thích hợp, luồng không khí sẽ cần thiết để bảo vệ bảng mạch khỏi quá nhiệt.
- Cấp nguồn cho bảng mạch (xem phần Nguồn) và kiểm tra Máy chủ DHCP của bạn (thường là bộ định tuyến của bạn) để tìm thiết bị mới và địa chỉ IP của nó, bảng mạch sẽ cố gắng nhận IP được gán thông qua DHCP.
- Bạn có thể đăng nhập vào WebUI của OpenIPC bằng tên người dùng **admin** và mật khẩu **12345** để kiểm tra kết nối.
## Tản nhiệt
- Gói đi kèm với một tản nhiệt và miếng đệm nhiệt. Miếng đệm nhiệt được bao phủ bởi băng keo hai mặt 3M ở cả hai mặt. Hai vít được bao gồm trong bộ có thể được sử dụng để gắn tản nhiệt.
- Mục đích của tản nhiệt là để tản nhiệt từ các linh kiện Không dây trên PCB. Do đó, miếng đệm nhiệt và tản nhiệt cần được đặt ở mặt có chipset Không dây (ví dụ: đầu nối ăng-ten, chip Realtek và bộ khuếch đại công suất).
- Gói sản phẩm đi kèm với một tản nhiệt và miếng đệm nhiệt. Miếng đệm nhiệt được phủ bởi băng keo hai mặt 3M ở cả hai mặt. Hai vít được bao gồm trong bộ có thể được sử dụng để gắn tản nhiệt.
- Mục đích của tản nhiệt là để tản nhiệt từ các linh kiện không dây trên PCB. Do đó, miếng đệm nhiệt và tản nhiệt cần được đặt ở mặt có chipset không dây (ví dụ: đầu nối ăng-ten, chip Realtek và bộ khuếch đại công suất).
## Tổng quan về PCB
<a href="https://raw.githubusercontent.com/OpenIPC/wiki/master/images/fpv-openipc-aio-manual.webp"><img src="../images/fpv-openipc-aio-manual.webp" width="80%"></a>
### Bật nguồn cho bảng
- Trước khi bật nguồn cho bảng AIO, miếng đệm nguồn phải được hàn hoặc kết nối với nguồn điện **3A ở 5V DC** hoặc BEC đáng tin cậy. Con số ampe này sẽ cao hơn nếu chọn mức công suất RF cao hơn.
- Đảm bảo rằng việc làm mát là đầy đủ trong khi bảng được bật nguồn. quạt là điều cần thiết, tản nhiệt cũng được khuyên dùng khi có thể. Không cung cấp đủ khả năng làm mát cho bo mạch rất có thể sẽ gây hư hỏng cho bo mạch.
- Khi không có đủ điện dung tải trên BEC, nên thêm một tụ điện phân cực 470uF (có trong bộ) giữa BEC và bảng AIO để bảo vệ bảng AIO khỏi hư hỏng do đột biến và cung cấp tách rời. Cài đặt tụ điện càng gần AIO-PCB càng tốt.
- Để bảo vệ bổ sung, có thể hàn Diode Zener có dung lượng 1W và Điện áp tối đa 5,1V (ZMY5V1, BZX55C5V1, BZT52C5V1, 1N5338B) vào đầu ra của BEC trước tụ điện, sơ đồ sau cho thấy cách hàn các linh kiện:
### Bật nguồn cho board
- Trước khi bật nguồn cho board AIO, miếng đệm nguồn phải được hàn hoặc kết nối với nguồn điện DC 5V 3A hoặc BEC đáng tin cậy. Mức ampe này sẽ cao hơn nếu chọn mức công suất RF cao hơn.
- Đảm bảo rằng việc làm mát là đầy đủ trong khi board được bật nguồn. Quạt là điều cần thiết, tản nhiệt cũng được khuyến nghị khi có thể. Không cung cấp đủ khả năng làm mát cho board rất có thể sẽ gây hư hỏng cho board.
- Khi không có đủ điện dung tải trên BEC, bạn nên thêm một tụ điện phân 470uF (có trong bộ) giữa BEC và board AIO để bảo vệ board AIO khỏi hư hỏng do đột biến và cung cấp tách rời. Cài đặt tụ điện càng gần AIO-PCB càng tốt.
- Để bảo vệ bổ sung, Diode Zener có công suất 1W và điện áp tối đa 5.1V (ZMY5V1, BZX55C5V1, BZT52C5V1, 1N5338B) có thể được hàn vào đầu ra của BEC trước tụ điện, sơ đồ sau cho thấy cách hàn các linh kiện:
![zener_diode_diagram](https://github.com/OneManChop/OpenIPCwiki/assets/33513057/f0ad9f0b-6146-45af-81b2-4bc530880370)
### Gỡ lỗi/Ethernet
- Bộ chuyển đổi Ethernet/Gỡ lỗi được bao gồm. Cáp dẹt linh hoạt được sử dụng để kết nối nó với AIO-PCB. Các chân của đầu nối nằm ở mặt PCB của đầu nối, hãy chú ý kết nối cáp dẹt linh hoạt với các kết nối lộ ra về phía PCB. Các dải "tay cầm" trên cáp dẹt linh hoạt sẽ hướng về phía tản nhiệt trên AIO-PCB và cách xa đầu nối RJ45 trên PCB Gỡ lỗi.
- Bộ chuyển đổi Ethernet/Gỡ lỗi được bao gồm. Cáp dẹt linh hoạt được sử dụng để kết nối nó với AIO-PCB. Các chân của đầu nối nằm ở mặt PCB của đầu nối, hãy chú ý kết nối cáp dẹt linh hoạt với các kết nối lộ ra về phía PCB. Các dải "tay cầm" trên cáp dẹt linh hoạt sẽ hướng về phía tản nhiệt trên AIO-PCB và ra xa khỏi đầu nối RJ45 trên PCB Gỡ lỗi.
### Máy ảnh
- Đầu nối MIPI có thể được đẩy vào ổ cắm tương ứng trên AIO-PCB theo chiều dọc. Không cần lực lớn và không cần di chuyển cần gạt hay tháo kẹp. Để tháo, đầu nối có hai chốt nhỏ ở hai bên để hỗ trợ việc cầm nắm.
### Camera
- Đầu nối MIPI có thể được cắm vào ổ cắm tương ứng trên AIO-PCB theo chiều dọc. Không cần dùng lực mạnh và không cần di chuyển cần gạt hay tháo kẹp. Để tháo, đầu nối có hai chốt nhỏ ở hai bên để hỗ trợ việc cầm nắm.
## Phần mềm
### Nâng cấp hệ thống tự động
- Kết nối thiết bị của bạn với mạng bằng bảng ethernet gỡ lỗi.
- Kết nối thiết bị của bạn với mạng bằng bảng mạch ethernet gỡ lỗi.
- Đăng nhập vào hệ thống (root:12345).
- Chạy các lệnh sau:
```
@ -48,10 +48,10 @@ sysupgrade -k -r -n
```
### Cập nhật hệ thống thủ công
- Chuẩn bị thẻ nhớ SD được định dạng FAT32 với kích thước 1GB.
- Chuẩn bị thẻ nhớ SD được định dạng theo FAT32 với kích thước 1GB.
- Tải xuống và giải nén [gói này](https://github.com/openipc/builder/releases/download/latest/ssc338q_fpv_openipc-urllc-aio-nor.tgz).
- Sao chép uImage.ssc338q và rootfs.squashfs.ssc338q vào thẻ nhớ SD.
- Ngắt uboot bằng cách giữ phím enter.
- Ngắt uboot bằng cách giữ phím Enter.
- Chạy các lệnh sau:
```
run setsdcard
@ -86,7 +86,7 @@ echo 107 > /sys/class/gpio/export
echo in > /sys/class/gpio/gpio107/direction
cat /sys/class/gpio/gpio107/value
```
- Điều khiển đèn LED:
- Điều khiển LED:
```
gpio clear 108
gpio set 108
@ -94,6 +94,56 @@ gpio set 108
### Khả năng tương thích cáp của bên thứ ba
- Cáp DJI Pocket2 - TƯƠNG THÍCH với OpenIPC AIO
- Cáp mipi DJI O3 - KHÔNG phù hợp với OpenIPC AIO
- Cáp mipi RunCam - KHÔNG phù hợp với OpenIPC AIO
- Cáp MIPI DJI O3 - KHÔNG phù hợp với OpenIPC AIO
- Cáp MIPI RunCam - KHÔNG phù hợp với OpenIPC AIO
Changes:
- "Bật nguồn AIO bằng đầu nối Pin (GH1.25* 6 chân), sau khi đèn LED xanh lam nhấp nháy, cắm cáp USB và kết nối với PC" -> "Cắm cáp USB để kết nối AIO và PC trước, sau đó bật nguồn DC hoặc chỉ cấp nguồn USB."
- "trong Windows" -> removed
- "đi tới bảng điều khiển- internet -mạng:" -> removed
- "tìm Bộ chuyển đổi USB 2.0 sang Ethernet nhanh" -> removed
- "đặt địa chỉ ipv4 của thẻ này thành 192.168.1.11 mặt nạ: 255.255.255.0" -> removed
- "áp dụng" -> removed
- "sau đó mở ssh để kết nối địa chỉ AIO: 192.168.1.10" -> removed
- "người dùng: root mật khẩu: 12345" -> removed
- "Cài đặt 0~-25dbm" -> "Công suất RF tối đa 18dBm cho đầu vào PA trên bo mạch."
- "PA trên bo mạch. Cài đặt 0~-25dbm" -> "PA trên bo mạch. Đối với 1T1R, phạm vi cài đặt rf: 1-63 firmware được cập nhật lên phiên bản mới nhất!"
- "Chỉ số MCS 1,3 (0-7 là 1T1R, 8+ là 2T2R)" -> "Chỉ số MCS 1,3 (0-7 là 1T1R, 8+ là 2T2R)
"
- "stbc = 1, ldpc = 1" -> "stbc = 0, ldpc = 0 Giá trị công suất RF được đề xuất < 45"
- "Tốc độ bit video: 4096/8192/12688 (mcs 3+)" -> "Tốc độ bit video: 4096/8192/12688 (mcs 3+)
khi sử dụng stbc = 1, ldpc = 1, khuyến nghị cài đặt công suất rf cho MCS3 từ 8-15 để kiểm tra."
- "Giữ RF tắt nguồn hoặc power=1 khi kiểm tra trên bàn (khi chỉ kết nối USB)" -> "Giữ công suất RF <= 15 khi kiểm tra trên bàn (khi chỉ kết nối USB)"
- "trên thử nghiệm băng ghế dự bị hoặc gỡ lỗi là vô hiệu hóa chức năng ghi theo mặc định" -> "trong thử nghiệm băng ghế dự bị hoặc gỡ lỗi, chức năng ghi bị tắt theo mặc định"
- "Để bật chức năng ghi, hãy đặt (giá trị ghi) true trong majestic.yaml" -> "Để bật chức năng ghi, hãy đặt (giá trị ghi) true trong majestic.yaml
Thẻ SD phải được lắp vào trước khi Bật nguồn."
- "Tản nhiệt và quạt làm mát trên bo mạch:" -> "Tản nhiệt và quạt làm mát trên bo mạch:"
- "công suất đầu ra của quạt làm mát tối đa 500mA" -> "công suất đầu ra của quạt làm mát tối đa 500mA
tất cả các lỗ gắn tản nhiệt đều có ren vít M2."
- "Mở rộng đầu nối**" -> "Mở rộng đầu nối"
- "### Cần làm" -> removed
- "USB chỉ dành cho chế độ gỡ lỗi" -> "USB chỉ dành cho chế độ gỡ lỗi, khi chỉ có nguồn DC, ethernet cdc hoạt động ở chế độ ngủ để tiết kiệm năng lượng."
- "Nguồn vào giới hạn 5W." -> "Chế độ chỉ nguồn USB Nguồn vào giới hạn 5W."
- "cắm cáp usb và cài đặt cdc ethernet ipv4: 192.168.1.11 255.255.255.0" -> "cắm cáp usb và cài đặt cdc ethernet ipv4: 192.168.1.11 255.255.255.0"
- "sử dụng winscp kéo các tệp giải nén vào /tmp" -> "sử dụng winscp kéo các tệp giải nén vào /tmp"
- "sử dụng ssh login và sao chép lệnh sau:" -> "sử dụng ssh login và sao chép lệnh sau:"
- "sysupgrade --kernel = / tmp / uImage.ssc338q --rootfs = / tmp / rootfs.squashfs.ssc338q -z -n" -> "sysupgrade --kernel=/tmp/uImage.ssc338q --rootfs=/tmp/rootfs.squashfs.ssc338q -z -n"
- "sau khi cập nhật và khởi động lại" -> "sau khi cập nhật và khởi động lại"
- "sử dụng ssh login và đặt lệnh:" -> "sử dụng ssh login và đặt lệnh:"
- "fw_setenv sensor imx335 && fw_setenv nâng cấp https://github.com/OpenIPC/firmware/releases/download/latest/openipc.ssc338q-nor-rubyfpv.tgz && khởi động lại" -> "fw_setenv sensor imx335 && fw_setenv upgrade https://github.com/OpenIPC/firmware/releases/download/latest/openipc.ssc338q-nor-rubyfpv.tgz && reboot"
- "bảng mạch ethernet gỡ lỗi" -> "bảng ethernet gỡ lỗi"
- "board AIO" -> "board AIO"
- "3A ở 5V DC" -> "DC 5V 3A"
- "Không cần dùng lực mạnh" -> "Không cần lực lớn"
- "bảng mạch ethernet gỡ lỗi." -> "bảng ethernet gỡ lỗi."
- "thẻ nhớ SD được định dạng ở FAT32" -> "thẻ nhớ SD được định dạng theo FAT32"
- "board AIO" -> "board AIO"
- "cập nhật firmware" -> "Nâng cấp firmware"
- "bootloader" -> "bootloader"

View File

@ -6,17 +6,25 @@ Liên minh OpenIPC cho FPV
### Giới thiệu
Nhóm OpenIPC đã quyết định thành lập Liên minh để quảng bá và triển khai các tiêu chuẩn thiết kế mạch mở nhất định cho các thành phần hệ thống FPV.
Đội ngũ OpenIPC đã quyết định thành lập Liên minh để thúc đẩy và triển khai một số tiêu chuẩn thiết kế mạch mở nhất định cho các thành phần hệ thống FPV.
Trên trang này, chúng tôi sẽ thông báo cho mọi người về tất cả các thành viên của Liên minh và báo cáo về những thay đổi và bổ sung liên kết đến các dự án.
### Đầu nối giao diện cho cảm biến
### Đầu nối giao tiếp cho cảm biến
Thành phần đầu tiên được tiêu chuẩn hóa sẽ là đầu nối giữa bất kỳ bảng chính OpenIPC AIO ("UltraSight", "Thinker", "Mario") và bất kỳ mô-đun cảm biến OpenIPC nào (IMX307, IMX335, IMX347, IMX415).
Thành phần đầu tiên được chuẩn hóa sẽ là đầu nối giữa bất kỳ board chính OpenIPC AIO nào ("UltraSight", "Thinker", "Mario") và bất kỳ module cảm biến OpenIPC nào (IMX307, IMX335, IMX347, IMX415).
Chúng tôi lưu ý bạn rằng các mô-đun khác của các công ty khác là **KHÔNG TƯƠNG THÍCH** và chắc chắn sẽ gây hư hỏng cho thiết bị của bạn.
Chúng tôi lưu ý bạn rằng các module khác của các công ty khác là **KHÔNG TƯƠNG THÍCH** và chắc chắn sẽ gây hư hỏng cho thiết bị của bạn.
<p align="left">
<img src="https://github.com/OpenIPC/wiki/blob/master/images/fpv-openipc-alliance/openipc-alliance-fpv-sensor-pinout.jpg?raw=true"/>
</p>
Loại đầu nối - **DF56L-26P-0.3SD**
Changes:
- "bảng chính OpenIPC AIO" -> "board chính OpenIPC AIO"
- "mô-đun cảm biến OpenIPC" -> "module cảm biến OpenIPC" (consistency)

View File

@ -1,6 +1,53 @@
# OpenIPC Wiki
[Mục lục](../README.md)
Cách build OpenIPC với trình điều khiển RTL8812EU
--------------------------------
Xem thêm chi tiết về rtl8812eu tại đây: https://github.com/OpenIPC/wiki/blob/master/en/fpv-bl-m8812eu2-wifi-adaptors.md
- Khởi động vào Ubuntu
- Mở Terminal
```bash
sudo apt-get install -y automake autotools-dev bc build-essential curl fzf git libtool rsync unzip
```
```bash
rm -r -f yourOpenipc #xóa mọi thư mục build firmware cũ (tùy chọn)
git clone --depth=1 https://github.com/OpenIPC/firmware.git yourOpenipc
cd yourOpenipc
make clean
cd br-ext-chip-sigmastar
cd configs
ls
sudo nano yourSelectconfig
```
```
Sau đó, trong Wireless, thêm dòng
BR2_PACKAGE_RTL88X2EU_OPENIPC=y
Lưu tệp
cd ..
cd ..
make
```
- Chọn board của bạn và nhập ví dụ: ssc338q fpv và build firmware
- Điều hướng đến /home/YourUser/yourOpenipc/output/images
- Tìm kho lưu trữ .tgz đầu ra phù hợp của bạn, ví dụ: openipc.ssc338q-nor-fpv.tgz và giải nén các tệp rootfs và uboot
- Sao chép hai tệp đó vào thư mục /tmp của camera OpenIPC
- ssh vào camera
`cd /tmp`
`sysupgrade --kernel=uImage.ssc338q --rootfs=rootfs.squashfs.ssc338q`
hoặc
`sysupgrade --kernel=uImage.ssc30kq --rootfs=rootfs.squashfs.ssc30kq`
# OpenIPC Wiki
[Mục lục](../README.md)
Hướng dẫn từng bước để chạy Trạm Mặt đất trên Ubuntu 22.04
---------------------------------------------------------
@ -11,98 +58,88 @@ Hướng dẫn từng bước để chạy Trạm Mặt đất trên Ubuntu 22.0
Phiên bản video: - [OpenIPC - Chuẩn bị Trạm Mặt đất: Ubuntu + QGroundControl](https://www.youtube.com/watch?v=JMtRAsOm0Dc)
### Chuẩn bị
```
```bash
sudo apt update
```
```
sudo apt install dkms git python3-all-dev net-tools virtualenv fakeroot debhelper python3-twisted
libpcap-dev python3-pyroute2 python3-future python3-configparser python3-all libsodium-dev
```
### Libsodium
```
git clone https://github.com/jedisct1/libsodium --branch stable
cd libsodium
./configure
make && make check
sudo make install
```bash
sudo apt install dkms git python3-all-dev net-tools virtualenv fakeroot debhelper python3-twisted libpcap-dev python3-pyroute2 python3-future python3-all libsodium-dev
```
### Trình điều khiển card Wifi
```
```bash
git clone -b v5.2.20 https://github.com/svpcom/rtl8812au.git
cd rtl8812au/
sudo ./dkms-install.sh
```
### WFB-NG
```
```bash
git clone -b stable https://github.com/svpcom/wfb-ng.git
cd wfb-ng
sudo ./scripts/install_gs.sh wlan0
```
### Cấu hình kênh
```
```bash
vi /etc/wifibroadcast.cfg
```
### Khởi động WFB CLI
```
```bash
wfb-cli gs
```
###TRẠM MẶT ĐẤT ĐÃ SẴN SÀNG SỬ DỤNG###
### Khởi động, dừng, khởi động lại dịch vụ
```
```bash
systemctl status wifibroadcast@gs
systemctl stop wifibroadcast@gs
systemctl start wifibroadcast@gs
```
### Hướng dẫn Qground control
### Hướng dẫn sử dụng QGroundControl
- https://docs.qgroundcontrol.com/master/en/getting_started/download_and_install.html
- https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html
### Lấy nhật ký cuối cùng từ dịch vụ
```
### Lấy log cuối cùng từ dịch vụ
```bash
journalctl -xu wifibroadcast@gs -n 100
```
### Các lệnh hữu ích
```
```bash
nmcli
ifconfig
iwconfig
```
<h3>* Hình ảnh được cài đặt sẵn hiện có sẵn ở đây -- https://github.com/JohnDGodwin/OpenIPC_Groundstations/releases/tag/OrangePi5Plus</h3>
<h3>* Một bản cài đặt sẵn hiện có sẵn tại đây -- https://github.com/JohnDGodwin/OpenIPC_Groundstations/releases/tag/OrangePi5Plus</h3>
***
Tải xuống Ubuntu Server ISO và flash vào thiết bị -- `https://github.com/Joshua-Riek/ubuntu-rockchip`
Tải xuống Ubuntu Server ISO và flash vào thiết bị -- `https://github.com/Joshua-Riek/ubuntu-rockchip`
`sudo apt update`
`sudo apt nâng cấp`
`sudo apt upgrade`
Hãy tiếp tục và kéo một số gói chúng ta sẽ cần nữa.
Tiếp tục và cài đặt một số gói cần thiết.
`sudo apt install dkms python3-all-dev fakeroot cmake meson`
Đặt múi giờ cục bộ của hệ thống - thay thế vùng và thành phố bằng trường hợp sử dụng của bạn
Đặt múi giờ cục bộ của hệ thống - thay thế vùng và thành phố theo vị trí của bạn
`ln -sf /usr/share/zoneinfo/<vùng>/<thành phố> /etc/localtime`
đặt tên máy chủ
Đặt tên máy chủ
`sudo nano /etc/hostname`
***
Thiết lập Gsteamer với MPP
Thiết lập GStreamer với MPP
Tải xuống và cài đặt gstreamer
@ -117,7 +154,7 @@ Tải xuống và cài đặt plugin rockchip mpp, rga và gstreamer từ PPA t
kiểm tra với:
Kiểm tra với:
`gst-inspect-1.0 | grep 265`
@ -127,17 +164,17 @@ kiểm tra với:
***
cài đặt trình điều khiển rtl8812au
Cài đặt driver rtl8812au
nhập theo từng dòng sau
Nhập từng dòng sau
sudo bash -c "cat > /etc/modprobe.d/wfb.conf <<EOF
# danh sách đen mô-đun chứng khoán
danh sách đen 88XXau
danh sách đen 8812au
danh sách đen rtl8812au
danh sách đen rtl88x2bs
# đưa module gốc vào danh sách đen
blacklist 88XXau
blacklist 8812au
blacklist rtl8812au
blacklist rtl88x2bs
EOF"
@ -152,17 +189,17 @@ nhập theo từng dòng sau
***
khởi động lại thiết bị
Khởi động lại thiết bị
TODO: hoặc tìm ra cách tải trình điều khiển mà không cần khởi động lại hoàn toàn. Hãy thử "modprobe 88xxau"
TODO: hoặc tìm cách tải driver mà không cần khởi động lại hoàn toàn. Thử "modprobe 88xxau"
***
cài đặt WFB-ng
Cài đặt WFB-ng
tìm tên thiết bị wifi bằng iwconfig và thay thế nó cho $WLAN trong tập lệnh cài đặt
Tìm tên thiết bị Wi-Fi bằng `iwconfig` và thay thế nó cho `$WLAN` trong tập lệnh cài đặt
`git clone -b stable https://github.com/svpcom/wfb-ng.git`
@ -171,33 +208,33 @@ tìm tên thiết bị wifi bằng iwconfig và thay thế nó cho $WLAN trong t
`sudo ./scripts/install_gs.sh $WLAN`
sau khi cài đặt:
Sau khi cài đặt:
`sudo systemctl enable wifibroadcast`
sau đó
Sau đó
`sudo nano /etc/wifibroadcast.cfg`
thay đổi kênh để phù hợp với vtx
Thay đổi kênh để phù hợp với VTX
thay đổi vùng từ 'BO' thành '00'
Thay đổi vùng từ 'BO' thành '00'
Sao chép drone.key từ thư mục wfb-ng vào thư mục /etc của vtx
Sao chép `drone.key` từ thư mục wfb-ng vào thư mục `/etc` của VTX
ví dụ sử dụng scp, thay thế x.x.x.x bằng địa chỉ ip của camera
ví dụ sử dụng scp, thay thế x.x.x.x bằng địa chỉ IP của camera
`scp drone.key root@x.x.x.x:/etc`
Đảm bảo gs.key đã được tự động đặt trong /etc ở phía VRX
Đảm bảo `gs.key` đã được tự động đặt trong `/etc` ở phía VRX
`ls /etc/gs.key`
@ -206,14 +243,14 @@ ví dụ sử dụng scp, thay thế x.x.x.x bằng địa chỉ ip của camera
***
khởi động lại thiết bị một lần nữa
Khởi động lại thiết bị một lần nữa
***
kiểm tra kết nối:
Kiểm tra kết nối:
trên trạm mặt đất chạy
trên trạm mặt đất, chạy
`sudo systemctl enable wifibroadcast@gs`
@ -222,13 +259,13 @@ trên trạm mặt đất chạy
`wfb-cli gs`
Cắm camera vào và xem các gói dữ liệu đến, xlost nên ở gần 0 trong khi xrecv nên tăng lên
Cắm camera vào và xem các gói dữ liệu đến, `xlost` nên ở gần 0 trong khi `xrecv` nên tăng lên
***
môi trường đồ họa để phát lại gstreamer
Môi trường đồ họa để phát lại gstreamer
`sudo apt install --no-install-recommends xorg lightdm-gtk-greeter lightdm openbox`
@ -249,14 +286,14 @@ chèn:
***
TODO:
Tại thời điểm này, khởi động lại và bạn sẽ phải đăng nhập bằng bàn phím ít nhất một lần, nhưng sau đó nó sẽ tự động đăng nhập người dùng ubuntu vào phiên openbox mà không có con trỏ
Tại thời điểm này, khởi động lại và bạn sẽ phải đăng nhập bằng bàn phím ít nhất một lần, nhưng sau đó nó sẽ tự động đăng nhập người dùng `ubuntu` vào phiên `openbox` mà không có con trỏ
***
hãy đặt hình nền máy tính để bàn và viết một số tập lệnh khởi động
Hãy thiết lập hình nền máy tính để bàn và viết một số tập lệnh khởi động
`sudo apt install --no-install-recommends libimlib2-dev libx11-dev libxinerama-dev pkg-config make`
@ -271,44 +308,44 @@ hãy đặt hình nền máy tính để bàn và viết một số tập lệnh
Lưu hình nền mong muốn của bạn vào /home/ubuntu/desktop.png
Lưu hình nền mong muốn của bạn vào `/home/ubuntu/desktop.png`
Tạo một thư mục tập lệnh:
`mkdir /home/ubuntu/scripts`
một tập lệnh để đặt độ phân giải màn hình thành 1280x720
Một tập lệnh để đặt độ phân giải màn hình thành 1280x720
`sudo nano /home/ubuntu/scripts/setdisplay.sh`
chèn:
Chèn:
#/bin/bash
xuất DISPLAY=:0
export DISPLAY=:0
#đặt độ phân giải màn hình mong muốn của bạn ở đây
#Đặt độ phân giải màn hình mong muốn của bạn ở đây
MODE=1280x720
nếu [[ $(xrandr | awk '/HDMI-1/ {print $2}') == "đã kết nối" ]]; sau đó
if [[ $(xrandr | awk '/HDMI-1/ {print $2}') == "connected" ]]; then
xrandr --output HDMI-1 --mode $MODE
fi
nếu [[ $(xrandr | awk '/HDMI-2/ {print $2}') == "đã kết nối" ]]; sau đó
if [[ $(xrandr | awk '/HDMI-2/ {print $2}') == "connected" ]]; then
xrandr --output HDMI-2 --mode $MODE
fi
thoát 0
exit 0
một tập lệnh để bắt đầu/dừng luồng video và lưu DVR vào thư mục ~/Video
Một tập lệnh để bắt đầu/dừng luồng video và lưu DVR vào thư mục ~/Videos
lưu ý: Tập lệnh này dựa vào nút nhấn được kết nối giữa chân 5 và GND. Bạn sẽ phải cài đặt một cái để cái này hoạt động.
lưu ý: Tập lệnh này dựa vào một nút nhấn được kết nối giữa chân 5 và GND. Bạn sẽ phải cài đặt một cái để cái này hoạt động.
Tạo thư mục Video
Tạo thư mục Videos
`sudo mkdir /home/ubuntu/Videos`
@ -316,23 +353,23 @@ Tạo tập lệnh
`sudo nano /home/ubuntu/scripts/dvr.sh`
chèn:
Chèn:
#!/bin/bash
xuất DISPLAY=:0
export DISPLAY=:0
xset s tắt -dpms
xset s off -dpms
GPIO_PIN=5
ĐANG CHẠY=0
RUNNING=0
gpio mode $GPIO_PIN up
cd /home/ubuntu/Videos
trong khi đúng; làm
nếu [ $(gpio read $GPIO_PIN) -eq 0 ]; sau đó
nếu [ $RUNNING -eq 0 ]; sau đó
while true; do
if [ $(gpio read $GPIO_PIN) -eq 0 ]; then
if [ $RUNNING -eq 0 ]; then
current_date=$(date +'%m-%d-%Y_%H-%M-%S')
gst-launch-1.0 -e \
@ -349,17 +386,17 @@ Tạo tập lệnh
filesink location=record_${current_date}.mkv &
RUNNING=$!
khác
else
kill $RUNNING
RUNNING=0
fi
ngủ 0.2
sleep 0.2
fi
ngủ 0.1
xong
sleep 0.1
done
Làm cho các tập lệnh có thể thực thi được với chmod +x.
Làm cho các tập lệnh có thể thực thi được với `chmod +x`.
`sudo chmod +x /home/ubuntu/scripts/dvr.sh /home/ubuntu/scripts/setdisplay.sh`
@ -368,7 +405,7 @@ Cuối cùng:
`sudo nano /etc/xdg/openbox/autostart`
thêm vào:
Thêm:
bash /home/ubuntu/scripts/setdisplay.sh
@ -380,53 +417,53 @@ thêm vào:
`sudo nano /etc/xdg/openbox/rc.xml`
xác định vị trí dòng `<keepBorder>yes</keepBorder>` và thay thế bằng `<keepBorder>no</keepBorder>`
Xác định vị trí dòng `<keepBorder>yes</keepBorder>` và thay thế bằng `<keepBorder>no</keepBorder>`
sau đó ở cuối tệp, thêm:
<ứng dụng>
<ứng dụng class="*">
<trang trí>không</trang trí>
</ứng dụng>
</ứng dụng>
<applications>
<application class="*">
<decor>no</decor>
</application>
</applications>
***
Kéo DVR qua IP -- máy chủ phương tiện cơ bản sử dụng nginx
Truy xuất DVR qua IP -- một máy chủ media cơ bản sử dụng nginx
`sudo apt install nginx-light`
cấp quyền cho cây tệp lên thư mục video của chúng tôi
Cấp quyền cho cây thư mục đến thư mục video của chúng tôi
`sudo chmod o+x /home /home/ubuntu /home/ubuntu/Videos`
sao lưu trang tải mặc định và thay thế nó bằng trang của riêng chúng tôi
Sao lưu trang tải mặc định và thay thế nó bằng trang của riêng chúng tôi
`sudo mv /etc/nginx/sites-available/default /etc/nginx/sites-available/default.old`
`sudo nano /etc/nginx/sites-available/default`
Thêm như sau, nhưng thay thế x.x.x.x bằng địa chỉ IP mạng của hệ thống của bạn:
Thêm những dòng sau, nhưng thay thế x.x.x.x bằng địa chỉ IP mạng của hệ thống của bạn:
máy chủ {
nghe 8080;
nghe [::]:8080;
server {
listen 8080;
listen [::]:8080;
server_name x.x.x.x;
root /home/ubuntu/Videos;
autoindex trên;
autoindex on;
}
khởi động lại nginx để bắt đầu các thay đổi
Khởi động lại nginx để bắt đầu các thay đổi
`sudo systemctl restart nginx`
@ -493,11 +530,11 @@ Thứ ba, chúng tôi build ffmpeg với hỗ trợ rkmpp và rkrga.
sudo make install
Làm cho các tập lệnh có thể thực thi được
Làm cho các tập lệnh có thể thực thi
`sudo chmod +x buildMPP.sh buildRGA.sh buildFFMPEG.sh`
Và chạy chúng từng cái một:
Và chạy chúng lần lượt:
`./buildMPP.sh`
@ -505,7 +542,7 @@ Và chạy chúng từng cái một:
`./buildFFMPEG.sh`
Bây giờ chúng ta có thể sử dụng ffmpeg để chuyển mã phần cứng các tệp video mkv sang hevc mp4. Chúng ta có thể làm cho điều này tự động xảy ra vào cuối mỗi lần ghi bằng cách tăng cường tập lệnh dvr.sh. Mở tập lệnh dvr.sh trong thư mục /home/ubuntu/scripts của bạn, tìm dòng `kill $RUNNING` và thêm hai dòng sau bên dưới nó.
Bây giờ chúng ta có thể sử dụng ffmpeg để chuyển mã phần cứng các tệp video mkv sang hevc mp4. Chúng ta có thể làm cho điều này tự động xảy ra vào cuối mỗi lần ghi bằng cách bổ sung tập lệnh `dvr.sh`. Mở tập lệnh `dvr.sh` trong thư mục `/home/ubuntu/scripts` của bạn, tìm dòng `kill $RUNNING` và thêm hai dòng sau bên dưới nó.
sleep 0.2
ffmpeg -hwaccel rkmpp -i record_${current_date}.mkv -c:v hevc_rkmpp record_${current_date}.mp4
@ -514,19 +551,19 @@ Toàn bộ tập lệnh sẽ trông như thế này:
#!/bin/bash
xuất DISPLAY=:0
export DISPLAY=:0
xset s tắt -dpms
xset s off -dpms
GPIO_PIN=5
ĐANG CHẠY=0
RUNNING=0
gpio mode $GPIO_PIN up
cd /home/ubuntu/Videos
trong khi đúng; làm
nếu [ $(gpio read $GPIO_PIN) -eq 0 ]; sau đó
nếu [ $RUNNING -eq 0 ]; sau đó
while true; do
if [ $(gpio read $GPIO_PIN) -eq 0 ]; then
if [ $RUNNING -eq 0 ]; then
current_date=$(date +'%m-%d-%Y_%H-%M-%S')
gst-launch-1.0 -e \
@ -543,7 +580,7 @@ Toàn bộ tập lệnh sẽ trông như thế này:
filesink location=record_${current_date}.mkv &
RUNNING=$!
khác
else
kill $RUNNING
RUNNING=0
sleep 0.2
@ -552,11 +589,12 @@ Toàn bộ tập lệnh sẽ trông như thế này:
sleep 0.2
fi
sleep 0.1
xong
done
***
Changes:
- Replaced English words with Vietnamese equivalents where appropriate
- Kept technical terms in English
- Corrected some minor grammar errors

View File

@ -8,56 +8,72 @@ Trạm mặt đất OpenIPC FPV
<img src="https://github.com/OpenIPC/wiki/blob/master/images/fpv-logo.jpg?raw=true" alt="Logo"/>
</p>
Đây là [hướng dẫn bắt đầu](https://wiki.radxa.com/Zero/getting_started) hữu ích nếu bạn không quen thuộc với Radza.
Bạn có thể tham khảo [hướng dẫn bắt đầu](https://wiki.radxa.com/Zero/getting_started) nếu chưa quen thuộc với Radxa.
### Cài đặt
### Flash Firmware
* Thẻ SD
[Liên kết](https://github.com/OpenIPC/sbc-groundstations/releases) đến bản mới nhất
[Liên kết](https://github.com/OpenIPC/sbc-groundstations/releases) đến bản phát hành mới nhất
* EMMC
[Cách flash hình ảnh vào emmc trên bo mạch của bạn](https://github.com/OpenIPC/sbc-groundstations/blob/master/radxa_pi_zero_3w/flashing_to_the_onboard_memory.md)
[Cách flash image vào bộ nhớ eMMC trên bo mạch](https://github.com/OpenIPC/sbc-groundstations/blob/master/radxa_pi_zero_3w/flashing_to_the_onboard_memory.md)
### Wifi
Bạn có thể [thiết lập wifi trên bo mạch](https://github.com/OpenIPC/sbc-groundstations/blob/master/radxa_pi_zero_3w/headless_setup.md#setup-of-autoconnect-on-boot) để kết nối SSH. (quy tắc udev và networkmanager đã được cấu hình trong hình ảnh này, bạn chỉ cần thực hiện các lệnh nmcli)
Bạn có thể [thiết lập Wi-Fi tích hợp](https://github.com/OpenIPC/sbc-groundstations/blob/master/radxa_pi_zero_3w/headless_setup.md#setup-of-autoconnect-on-boot) cho kết nối SSH. (quy tắc udev và networkmanager đã được cấu hình trong image này, bạn chỉ cần thực hiện các lệnh nmcli)
Lưu ý: đối với RubyFPV, bạn sẽ cần Dongle mạng USB như bên dưới
Lưu ý: đối với RubyFPV, bạn sẽ cần Dongle Mạng USB như hình bên dưới
![Hình ảnh](../images/fpv-radxa-usbc-lan.png)
hoặc truy cập bảng điều khiển nối tiếp, vui lòng kiểm tra [tại đây](https://wiki.radxa.com/Zero/dev/serial-console) về cách thực hiện.
hoặc truy cập console serial, vui lòng kiểm tra [tại đây](https://wiki.radxa.com/Zero/dev/serial-console) để biết cách thực hiện.
### DVR với firmware FPV
Chức năng DVR; Nó yêu cầu cài đặt một nút nhấn vào tiêu đề gpio giữa các chân vật lý 25 và 27 như sau:
Chức năng DVR; Nó yêu cầu một nút nhấn được cài đặt vào header GPIO giữa các chân vật lý 25 và 27 như sau:
![image](../images/fpv-radxa-gpio.png)
Để ghi DVR, hãy nhấn nút một lần. Luồng sẽ bắt đầu và DVR sẽ bắt đầu ghi. Khi hoàn tất, hãy nhấn nút một lần để dừng ghi và lưu tệp.
DVR được lưu vào thư mục Video trong thư mục chính của bạn. Có thể truy cập DVR tại /home/radxa/Videos hoặc thông qua máy chủ phương tiện. Kết nối trạm mặt đất của bạn với mạng gia đình và có thể truy cập nó qua trình duyệt web tại x.x.x.x:8080 -- thay thế x.x.x.x bằng địa chỉ ip cục bộ của trạm mặt đất của bạn.
DVR được lưu vào thư mục Videos trong thư mục chính của bạn. Bạn có thể truy cập DVR tại `/home/radxa/Videos` hoặc thông qua máy chủ media. Kết nối trạm mặt đất của bạn với mạng gia đình và có thể truy cập nó qua trình duyệt web tại `x.x.x.x:8080` -- thay thế `x.x.x.x` bằng địa chỉ IP cục bộ của trạm mặt đất của bạn.
Kết nối đầu dẫn dài của Led với +5v, đầu dẫn ngắn của Led qua điện trở 1k với GPIOAO_2 (Chân XANH LAM khác trên Radxa),
Kết nối dây dài của LED với +5V, dây ngắn của LED qua điện trở 1k với GPIOAO_2 (chân XANH DƯƠNG khác trên Radxa),
```bash
sudo gpioset gpiochip4 11=0 # bật đèn LED
sudo gpioset gpiochip4 11=1 # tắt đèn LED (thực ra nó rất
# đơn giản sáng vì tôi đoán mức logic 0 không phải là 0 vôn)
# đơn giản chỉ sáng vì tôi đoán mức logic 0 không phải là 0 vôn)
```
Lắp dây mạch: +5v —> +Led- —-> điện trở 1k —> chân 28 trên Radxa z3w (còn gọi là chân màu xanh lam khác)
Cách đấu dây mạch: +5V —> +LED- —-> điện trở 1k —> chân 28 trên Radxa Z3W (còn gọi là chân màu xanh dương khác)
<hr>
Lưu ý về ghi DVR trong hình ảnh này. Để giảm bớt căng thẳng cho bộ xử lý, chúng tôi ghi vào tệp ts thay vì mp4 hoặc mkv. Do đó, không có hiệu ứng "nhòe" nào được ghi lại, các khung hình không được chụp đơn giản là bị loại bỏ. Bạn có thể nhận thấy các bước nhảy trong bản ghi của mình ở những nơi không có thông tin khung hình.
Lưu ý về ghi DVR trong image này. Để giảm tải cho bộ xử lý, chúng tôi ghi vào tệp .ts thay vì .mp4 hoặc .mkv. Do đó, sẽ không có hiệu ứng "nhòe" nào được ghi lại, các khung hình không được ghi lại sẽ bị bỏ qua. Bạn có thể nhận thấy hiện tượng giật trong bản ghi của mình ở những nơi không có thông tin khung hình.
### Liên kết đến một số công cụ hữu ích
* [Công cụ Windows](https://dl.radxa.com/zero/tools/windows/)
* [Khác, Tất cả hệ điều hành](https://dl.radxa.com/tools/)
* [Công cụ khác, mọi hệ điều hành](https://dl.radxa.com/tools/)
### RubyFPV
xem [Phần cứng RubyFPV](https://rubyfpv.com/hardware.php)
Xem [Phần cứng RubyFPV](https://rubyfpv.com/hardware.php)
Changes:
- "Cài đặt" -> "Flash Firmware"
- "wifi trên bo mạch" -> "Wi-Fi tích hợp"
- "console nối tiếp" -> "console serial"
- "tiêu đề gpio" -> "header GPIO"
- "máy chủ phương tiện" -> "máy chủ media"
- "địa chỉ ip cục bộ" -> "địa chỉ IP cục bộ"
- "chân XANH LAM" -> "chân XANH DƯƠNG"
- "Cách đấu dây mạch" -> "Cách đấu dây mạch"
- ".ts thay vì .mp4 hoặc .mkv" -> ".ts thay vì .mp4 hoặc .mkv"
- "Công cụ Windows" -> "Công cụ Windows"
- "Khác, Tất cả hệ điều hành" -> "Công cụ khác, mọi hệ điều hành"
- "Phần cứng RubyFPV" -> "Phần cứng RubyFPV"

View File

@ -7,7 +7,7 @@ RunCam WiFiLink dựa trên OpenIPC
### Hỏi & Đáp với RunCam Dev
- Bạn đã thực hiện những thay đổi nào so với firmware OpenIPC gốc?
- Chúng tôi đã tối ưu hóa cảm biến IQ và thêm tập lệnh /etc/user_config.sh để triển khai chức năng cấu hình thẻ WiFi.
- Chúng tôi đã tối ưu hóa IQ của cảm biến và thêm tập lệnh /etc/user_config.sh để triển khai chức năng cấu hình thẻ WiFi.
### Liên kết
@ -20,3 +20,7 @@ RunCam WiFiLink dựa trên OpenIPC
- https://item.taobao.com/item.htm?id=823103143737&skuId=5704904774133
- https://fr.aliexpress.com/item/1005007532941097.html?gatewayAdapt=glo2fra
Changes:
- "cảm biến IQ" -> "IQ của cảm biến"

View File

@ -1,7 +1,7 @@
# OpenIPC Wiki
[Mục lục](../README.md)
Hướng dẫn cài đặt firmware OpenIPC trên thiết bị SigmaStar
Hướng dẫn cài đặt firmware OpenIPC trên các thiết bị SigmaStar
---
<p align="center">
@ -10,37 +10,37 @@ Hướng dẫn cài đặt firmware OpenIPC trên thiết bị SigmaStar
---
### SSC338Q + IMX415 + flash NAND, bo mạch từ nhà cung cấp CamHi
#### Lưu ý nhanh về các thử nghiệm, sẽ được sửa đổi và cập nhật
### SSC338Q + IMX415 + flash NAND, board từ nhà cung cấp CamHi
#### Ghi chú nhanh về các thử nghiệm, sẽ được chỉnh sửa và cập nhật
#### Tóm tắt
Sigmastar IPL (trình nạp khởi động trước) cho phép khởi động U-Boot tùy chỉnh từ thẻ nhớ SD.
Với firmware OpenIPC tạm thời này, bạn có thể tạo bản sao lưu của nand và flash firmware vĩnh viễn sau đó.
Sigmastar IPL (trình khởi động trước) cho phép khởi động U-Boot tùy chỉnh từ thẻ SD.
Với firmware OpenIPC tạm thời này, bạn có thể tạo bản sao lưu NAND và flash firmware vĩnh viễn sau đó.
#### Chuẩn bị
- Kết nối thẻ nhớ SD của bạn với máy tính, tạo một phân vùng 1 GB và định dạng nó là FAT32 / VFAT.
- Kết nối thẻ SD của bạn với máy tính, tạo một phân vùng 1 GB và định dạng nó là FAT32 / VFAT.
- [Tải xuống ssc338q-initramfs.zip][1]
- Sao chép tất cả các tệp vào thư mục gốc của thẻ nhớ SD, cập nhật thông tin đăng nhập không dây của bạn trên autostart.sh:
- Sao chép tất cả các tệp vào thư mục gốc của thẻ SD, cập nhật thông tin đăng nhập không dây của bạn trên `autostart.sh`:
```diff
#!/bin/sh
+WLAN_SSID="Router"
+WLAN_PASS="12345678"
```
- Đặt thẻ nhớ SD vào mô-đun camera, khởi động nó và đợi cho đến khi nó kết nối với bộ định tuyến của bạn.
- Sử dụng ssh để kết nối với camera:
- Đặt thẻ SD vào mô-đun camera, khởi động nó và đợi cho đến khi nó kết nối với bộ định tuyến của bạn.
- Sử dụng SSH để kết nối với camera:
```
ssh root@192.168.1.100
12345
```
#### Sao lưu
- /dev/mtd0 sử dụng toàn bộ kích thước phân vùng của flash nand.
- Điều này có thể mất một thời gian, việc sao lưu vào thẻ nhớ SD khá chậm.
- `/dev/mtd0` sử dụng toàn bộ kích thước phân vùng của flash NAND.
- Điều này có thể mất một thời gian, việc sao lưu vào thẻ SD khá chậm.
```
nanddump -f /mnt/mmcblk0p1/backup-nand.bin /dev/mtd0
```
- Ngoài ra, nội dung flash có thể được tải lên qua tftp.
- Ngoài ra, nội dung flash có thể được tải lên qua TFTP.
```
cd /dev
tftp 192.168.1.10 -pr mtd0
@ -60,9 +60,9 @@ reboot -f
---
### SSC338Q + IMX415 + flash NOR, bo mạch từ nhà cung cấp Anjoy
#### Việc thu thập thông tin vẫn tiếp tục
Việc thu thập thông tin vẫn tiếp tục
### SSC338Q + IMX415 + flash NOR, board từ nhà cung cấp Anjoy
#### Thông tin đang được thu thập
Thông tin đang được thu thập
#### Mua thiết bị (nhà cung cấp Anjoy)
- https://aliexpress.com/item/1005003738087454.html
@ -70,6 +70,16 @@ Việc thu thập thông tin vẫn tiếp tục
---
### Ghi chú khác
Để kiểm tra, vui lòng sử dụng trình phát [MPV](https://mpv.io/), trong đó có thể sử dụng tổ hợp phím Shift+I để lấy thông tin gỡ lỗi.
Để kiểm tra, vui lòng sử dụng trình phát [MPV](https://mpv.io/), bạn có thể sử dụng tổ hợp phím Shift+I để lấy thông tin gỡ lỗi.
[1]: https://github.com/OpenIPC/wiki/files/13382282/ssc338q-initramfs.zip
Changes:
- "trình nạp khởi động trước" -> "trình khởi động trước" (more natural phrasing)
- "thẻ nhớ SD" -> "thẻ SD" (consistency)
- "bộ định tuyến" -> "bộ định tuyến" (consistency)
- "flash nand" -> "flash NAND" (consistency)
- "tftp" -> "TFTP" (consistency)
- "Việc thu thập thông tin vẫn tiếp tục" -> "Thông tin đang được thu thập" (more natural phrasing)

View File

@ -6,42 +6,42 @@ Hướng dẫn cài đặt từng bước cho thiết lập FPV
Khi xem xét việc cài đặt OpenIPC để sử dụng cho FPV, về cơ bản, chúng ta có thể chia quy trình thành 6 bước chính.
1. Flash camera và trạm mặt đất với OpenIPC
2. Kết nối phần cứng bổ sung (bộ chuyển đi wifi và BEC)
2. Kết nối phần cứng bổ sung (bộ điều hợp wifi và BEC)
3. Tạo và cài đặt cặp khóa cho WFB-NG
4. Chỉnh sửa wfb.conf để đặt kênh wifi chính xác
4. Chỉnh sửa wfb.conf để thiết lập kênh wifi chính xác
5. Cấu hình vdec.conf trên trạm mặt đất
6. Cấu hình tệp majestic.yaml trên camera
7. Kiểm tra cấu hình
8. Hướng dẫn bằng video và các bước tiếp theo
Phần 1 và 2 bao gồm việc thiết lập phần cứng - mặc dù có nhiều bước phụ liên quan, vì vậy bạn có thể coi đây là "phần khó". Mặc dù phần mềm (các bước 3 - 6) có nhiều bước hơn, nhưng về cơ bản là chỉnh sửa một số tệp và do đó chúng ta có thể coi đó là "phần dễ"
Phần 1 và 2 bao gồm việc thiết lập phần cứng - mặc dù có nhiều bước phụ liên quan, vì vậy bạn có thể coi đây là "phần khó". Mặc dù phần mềm (các bước 3 - 6) có nhiều bước hơn, nhưng về cơ bản là chỉnh sửa một số tệp và do đó chúng ta có thể coi đó là "phần dễ".
### Yêu cầu phần cứng
Đối với hướng dẫn từng bước này, tôi đang sử dụng phần cứng cụ thể và mặc dù quy trình flash camera và trạm mặt đất nhìn chung giống nhau, nhưng mỗi quy trình có thể khá khác nhau về kết nối UART bạn có thể sử dụng, cũng như chipset và bộ nhớ khác nhau - vì vậy hãy đảm bảo bạn kiểm tra kỹ điều này cho các thiết bị của mình. Ở mức cơ bản, bạn sẽ cần một trạm mặt đất, một camera, 2 bộ chuyển đổi wifi, tối đa 4 UBEC và một bảng FTDI.
Đối với hướng dẫn từng bước này, tôi đang sử dụng phần cứng cụ thể và mặc dù quy trình flash camera và trạm mặt đất nhìn chung giống nhau, nhưng mỗi quy trình có thể khá khác nhau về kết nối UART bạn có thể sử dụng, cũng như chipset và bộ nhớ khác nhau - vì vậy hãy đảm bảo bạn kiểm tra kỹ điều này cho các thiết bị của mình. Ở mức cơ bản, bạn sẽ cần một trạm mặt đất, một camera, 2 bộ điều hợp wifi, tối đa 4 UBEC và một board FTDI.
Để tham khảo cho camera của tôi, tôi đã đặt hàng một bảng dựa trên SSC338 với cảm biến Sony IMX415.
Để tham khảo cho camera của tôi, tôi đã đặt hàng một board dựa trên SSC338 với cảm biến Sony IMX415.
![Máy ảnh](../images/sbs-Camera.jpg)
Tôi đã đặt hàng cái này với ống kính 2.8mm (có vẻ hơi hẹp đối với FPV, nhưng nó là loại rộng nhất có sẵn) và với cáp Lan 12V. Cáp này rất quan trọng để flash camera. Máy ảnh này đã được chọn vì nó có thể thực hiện nhiều tốc độ khung hình và độ phân giải khác nhau, đồng thời cũng có cảm biến khá tốt. Tôi đã mua cái này từ AliExpress, URL cụ thể cho liên kết là [ở đây](https://www.aliexpress.com/item/1005004350557805.html)
Tôi đã đặt hàng board này với ống kính 2.8mm (có vẻ hơi hẹp đối với FPV, nhưng nó là loại rộng nhất có sẵn) và với cáp LAN 12V. Cáp này rất quan trọng để flash camera. Camera này đã được chọn vì nó có thể thực hiện nhiều tốc độ khung hình và độ phân giải khác nhau, đồng thời cũng có cảm biến khá tốt. Tôi đã mua board này từ AliExpress, URL cụ thể cho liên kết là [ở đây](https://www.aliexpress.com/item/1005004350557805.html)
Đối với trạm mặt đất, tôi đã chọn một bảng Nvr - có vẻ khá phổ biến trong cộng đồng OpenIPC và có chi phí rất thấp. Một lần nữa, mô hình cụ thể tôi đã mua là [ở đây](https://www.aliexpress.com/item/1005004023376532.html)
Đối với trạm mặt đất, tôi đã chọn một board NVR - có vẻ khá phổ biến trong cộng đồng OpenIPC và có chi phí rất thấp. Một lần nữa, model cụ thể tôi đã mua là [ở đây](https://www.aliexpress.com/item/1005004023376532.html)
![Bảng Nvr](../images/sbs-Nvr.JPG)
![Board NVR](../images/sbs-Nvr.JPG)
Cả camera và trạm mặt đất đều cần một bộ chuyển đổi wifi để gửi tín hiệu FPV qua mạng không dây, vì vậy một giải pháp chi phí thấp khác là RTL8812AU. Cụ thể, tôi đã đặt hàng 2 cái [này](https://www.aliexpress.com/item/1005005638445796.html)
Cả camera và trạm mặt đất đều cần một adapter Wi-Fi để gửi tín hiệu FPV qua mạng không dây, vì vậy một giải pháp chi phí thấp khác là RTL8812AU. Cụ thể, tôi đã đặt hàng 2 cái [này](https://www.aliexpress.com/item/1005005638445796.html)
![Bảng wifi](../images/sbs-wifi.png)
![Board Wifi](../images/sbs-wifi.png)
Vì chúng ta sẽ cần chạy camera và Nvr ở 12v và bộ chuyển đổi wifi ở 3.3v, tôi đã đặt hàng một số BEC đơn giản có thể được cấu hình để xuất ra 3.3v, 12v hoặc bất kỳ thứ gì ở giữa. Rất nhiều lựa chọn có sẵn ở đây. Tôi đã chọn 4 cái [này](https://www.ebay.co.uk/itm/254153188189) từ trang web eBay địa phương của tôi.
Vì chúng ta sẽ cần chạy camera và NVR ở 12v và adapter Wi-Fi ở 3.3v, tôi đã đặt hàng một số BEC đơn giản có thể được cấu hình để xuất ra 3.3v, 12v hoặc bất kỳ thứ gì ở giữa. Rất nhiều lựa chọn có sẵn ở đây. Tôi đã chọn 4 cái [này](https://www.ebay.co.uk/itm/254153188189) từ trang web eBay địa phương của tôi.
![BEC](../images/sbs-BECS.jpg)
Bộ chuyển đổi FTDI rất cần thiết để có thể kết nối bảng điều khiển trên thiết bị để bắt đầu quá trình flash. Chúng có sẵn rộng rãi trên eBay với giá khá rẻ [đây là một ví dụ](https://www.ebay.co.uk/itm/203581591537?hash=item2f66688ff1) Bạn nên đảm bảo rằng bộ chuyển đổi FTDI bạn chọn có một jumper có thể di chuyển nó giữa 5v và 3.3v
Bộ chuyển đổi FTDI rất cần thiết để có thể kết nối console trên thiết bị để bắt đầu quá trình flash. Chúng có sẵn rộng rãi trên eBay với giá khá rẻ [đây là một ví dụ](https://www.ebay.co.uk/itm/203581591537?hash=item2f66688ff1) Bạn nên đảm bảo rằng bộ chuyển đổi FTDI bạn chọn có một jumper có thể di chuyển nó giữa 5v và 3.3v.
![](../images/sbs-ftdi.jpg)
Ngoài ra, rõ ràng là có một vài yêu cầu chung - dây để kết nối mọi thứ, mỏ hàn, đầu nối bạn chọn để cung cấp điện (có thể là XT60 - nhưng bạn có thể lựa chọn ở đây)
Ngoài ra, rõ ràng là có một vài yêu cầu chung - dây để kết nối mọi thứ, mỏ hàn, đầu nối bạn chọn để cung cấp điện (có thể là XT60 - nhưng bạn có thể lựa chọn ở đây).
### Bước 1: Flash camera và trạm mặt đất với OpenIPC
Chúng ta sẽ chia nhỏ điều này thành một vài bước phụ và tách riêng camera và trạm mặt đất. Vì vậy, hãy bắt đầu với phần khó hơn.
@ -50,97 +50,98 @@ Chúng ta sẽ chia nhỏ điều này thành một vài bước phụ và tách
Đầu tiên, hãy kiểm tra camera và tất cả các điểm kết nối khác nhau của nó.
![Kết nối camera](../images/sbs-Camera-Pinout-v2.jpg)
![Sơ đồ chân camera](../images/sbs-Camera-Pinout-v2.jpg)
Để flash OpenIPC, chúng ta cần sử dụng bộ chuyển đổi FTDI để mở kết nối bảng điều khiển trên camera, sau đó đột nhập vào bộ nạp khởi động. Điều này nghe có vẻ phức tạp hơn thực tế - tất cả những gì chúng ta phải làm là hàn một vài dây và nhấn RETURN vào đúng thời điểm.
Để flash OpenIPC, chúng ta cần sử dụng bộ chuyển đổi FTDI để mở kết nối console trên camera, sau đó đột nhập vào bootloader. Điều này nghe có vẻ phức tạp hơn thực tế - tất cả những gì chúng ta phải làm là hàn một vài dây và nhấn RETURN vào đúng thời điểm.
Một điều khiến việc này trở nên khó khăn hơn trên camera cụ thể này là vị trí của các chân mà chúng ta cần kết nối. Tất nhiên, đó là 2 miếng đệm hàn rất nhỏ ở phía bên phải của bo mạch (như trong hình) Bạn có thể, rất cẩn thận, hàn trực tiếp vào các miếng đệm này - nhưng hãy cẩn thận không sử dụng quá nhiều nhiệt vì các miếng đệm này có thể dễ dàng bị bong ra!
Một điều khiến việc này trở nên khó khăn hơn trên camera cụ thể này là vị trí của các chân mà chúng ta cần kết nối. Tất nhiên, đó là 2 miếng đệm hàn rất nhỏ ở phía bên phải của board (như trong hình). Bạn có thể, rất cẩn thận, hàn trực tiếp vào các miếng đệm này - nhưng hãy cẩn thận không sử dụng quá nhiều nhiệt vì các miếng đệm này có thể dễ dàng bị bong ra!
Một giải pháp thay thế cho việc hàn, nếu bạn không tự tin về nó, là sử dụng một số chân pogo để tạo kết nối tạm thời trong khi bạn thực hiện quá trình flash. Tôi đã thiết kế một công cụ in 3D đơn giản để đạt được điều này, có thể được tải xuống từ Thingiverse [tại đây](https://www.thingiverse.com/thing:6358225) Bạn cũng sẽ cần một số chân pogo để hoàn thành công cụ này. Tôi đã đặt hàng [những thứ này](https://www.amazon.co.uk/dp/B08NT88C3G) từ Amazon (chỉ có sẵn 100 cái!) Lưu ý: Hàn các dây vào chân pogo trước khi bạn đẩy chúng vào bản in 3D. Nếu bạn hàn chúng trong khi in, PLA sẽ tan chảy và sẽ rất khó khăn để đưa các chân về đúng vị trí.
Một giải pháp thay thế cho việc hàn, nếu bạn không tự tin về nó, là sử dụng một số chân pogo để tạo kết nối tạm thời trong khi bạn thực hiện flash. Tôi đã thiết kế một công cụ in 3D đơn giản để đạt được điều này, có thể được tải xuống từ Thingiverse [tại đây](https://www.thingiverse.com/thing:6358225). Bạn cũng sẽ cần một số chân pogo để hoàn thành công cụ này. Tôi đã đặt hàng [những thứ này](https://www.amazon.co.uk/dp/B08NT88C3G) từ Amazon (chỉ có sẵn 100 cái!). Lưu ý: Hàn các dây vào chân pogo trước khi bạn đẩy chúng vào bản in 3D. Nếu bạn hàn chúng trong khi in, PLA sẽ tan chảy và sẽ rất khó khăn để đưa các chân về đúng vị trí.
Bạn cần đẩy các chân pogo vào vừa đủ để bạn phải uốn cong dụng cụ một chút để đặt nó lên trên bảng và khi bạn buông tay, các chân sẽ hạ xuống và tiếp xúc tốt với các miếng đệm hàn (lưu ý: bức ảnh này được chụp trong khi tôi đang thử nghiệm nó để phù hợp - ở giai đoạn này, bạn nên đã hàn dây vào các chân pogo rồi)
Bạn cần đẩy các chân pogo vào vừa đủ để bạn phải uốn cong dụng cụ một chút để đặt nó lên trên board, và khi bạn buông tay, các chân sẽ hạ xuống và tiếp xúc tốt với các miếng đệm hàn (lưu ý: bức ảnh này được chụp trong khi tôi đang thử nghiệm nó để phù hợp - ở giai đoạn này, bạn nên đã hàn dây vào các chân pogo rồi).
![dụng cụ pogo](../images/sbs-pogo-tool.jpg)
![ng cụ pogo](../images/sbs-pogo-tool.jpg)
Được rồi, vì vậy cho dù bạn đã hàn hay sử dụng công cụ, bây giờ bạn muốn kết nối với bộ chuyển đổi FTDI của mình. Đầu tiên, đặt jumper trên bộ chuyển đổi FTDI của bạn thành 3.3v và sau đó kết nối từ miếng đệm TX trên camera với chân RX trên bộ chuyển đổi FTDI, miếng đệm RX trên camera với chân TX trên bộ chuyển đổi FTDI và bất kỳ kết nối nào với mặt đất trên camera với chân nối đất trên bộ chuyển đổi FDTI.
Nếu bây giờ bạn đang nghĩ "Khoan đã, chân nối đất nào?". Hãy để tôi cho bạn xem sơ đồ kết nối chân được tinh chỉnh một chút của tôi về camera mà tôi gọi là "các chân hữu ích"
Nếu bây giờ bạn đang nghĩ "Khoan đã, chân nối đất nào?". Hãy để tôi cho bạn xem sơ đồ chân được tinh chỉnh một chút của tôi về camera mà tôi gọi là "các chân hữu ích".
![Các chân hữu ích](../images/sbs-camera-userful-pins-v2.jpg)
Những gì chúng ta có ở đây là các chân thực sự có liên quan đến chúng ta khi nối dây cho camera này. Chúng ta đã kết nối TX/RX, vì vậy nếu bạn có đầu nối 3 chân cũ từ camera FPV, nó có thể vừa với kích thước để cắm vào ổ cắm chứa GND ở bên trái của bo mạch trong hình. Ít nhất thì đây là những gì tôi đã làm. Nếu bạn không có bất kỳ đầu nối JST nào như thế này - hãy lấy một số. Nơi nào có thể, tôi muốn tránh hàn xung quanh những linh kiện nhỏ bé này càng nhiều càng tốt.
Những gì chúng ta có ở đây là các chân thực sự có liên quan đến chúng ta khi nối dây cho camera này. Chúng ta đã kết nối TX/RX, vì vậy nếu bạn có đầu nối 3 chân cũ từ camera FPV, nó có thể vừa với kích thước để cắm vào ổ cắm chứa GND ở bên trái của board trong hình. Ít nhất thì đây là những gì tôi đã làm. Nếu bạn không có bất kỳ đầu nối JST nào như thế này - hãy lấy một số. Nếu có thể, tôi muốn tránh hàn xung quanh những linh kiện nhỏ bé này càng nhiều càng tốt.
Bạn cũng sẽ cần kết nối camera với mạng có dây của mình thông qua cổng ethernet trong cáp đi kèm (do đó hãy đặt hàng cáp Lan 12V) và đây cũng là nơi bạn cần cấp nguồn cho nó - bằng cách sử dụng phích cắm thùng 12v.
Bạn cũng sẽ cần kết nối camera với mạng có dây của mình thông qua cổng Ethernet trong cáp đi kèm (do đó, hãy đặt hàng cáp LAN 12V) và đây cũng là nơi bạn cần cấp nguồn cho nó - bằng cách sử dụng phích cắm DC 12V.
Với mọi thứ được kết nối, nó sẽ trông giống như thế này. Nhưng ngay trước khi chúng ta tiếp tục và cắm nguồn 12v, cần phải có sẵn phần mềm để mở bảng điều khiển nối tiếp để chúng ta có thể đột nhập vào bộ nạp khởi động và thực sự chạy một số lệnh.
Với mọi thứ được kết nối, nó sẽ trông giống như thế này. Nhưng ngay trước khi chúng ta tiếp tục và cắm nguồn 12V, cần phải có sẵn phần mềm để mở console nối tiếp để chúng ta có thể đột nhập vào bộ nạp khởi động và thực sự chạy một số lệnh.
![Sẵn sàng để flash camera](../images/sbs-flash-camera.jpg)
Trên máy Mac (hoặc Linux), điều này khá dễ dàng vì chúng tôi đã tích hợp sẵn tất cả các lệnh. Tôi sẽ chỉ đề cập đến MacOS và Windows trong tài liệu từng bước. Linux sẽ rất giống với MacOS, nhưng nếu bạn đang chạy Linux làm hệ điều hành chính của mình, thì tôi mong bạn đã biết các lệnh rồi!
Trên máy Mac (hoặc Linux), điều này khá dễ dàng vì chúng ta đã tích hợp sẵn tất cả các lệnh. Tôi sẽ chỉ đề cập đến MacOS và Windows trong tài liệu từng bước. Linux sẽ rất giống với MacOS, nhưng nếu bạn đang chạy Linux làm hệ điều hành chính của mình, thì tôi mong bạn đã biết các lệnh rồi!
### Bước 1.2 Thiết lập mô phỏng thiết bị đầu cuối nối tiếp
**MacOS**
Trước tiên, hãy cắm bộ chuyển đổi FTDI của bạn (nhưng hãy tắt nguồn camera ngay bây giờ), điều này sẽ cho phép hệ thống xác định bộ chuyển đổi FDTI. Trước hết, chúng ta sẽ cần mở một thiết bị đầu cuối. Bạn có thể tìm thấy điều này trong thư mục Ứng dụng của mình bên trong thư mục con Tiện ích. Khi bạn đã mở thiết bị đầu cuối này, chúng ta cần tìm ra thiết bị nào là bộ chuyển đổi FDTI của chúng ta. Để làm điều này, hãy gõ
Trước tiên, hãy cắm bộ chuyển đổi FTDI của bạn (nhưng tắt nguồn camera ngay bây giờ), điều này sẽ cho phép hệ thống xác định bộ chuyển đổi FTDI. Trước hết, chúng ta sẽ cần mở một terminal. Bạn có thể tìm thấy ứng dụng này trong thư mục Ứng dụng của mình bên trong thư mục con Tiện ích. Khi bạn đã mở terminal này, chúng ta cần tìm ra thiết bị nào là bộ chuyển đổi FTDI của chúng ta. Để làm điều này, hãy gõ
```
$ ls -l /dev/tty.usbserial*
crw-rw-rw- 1 root wheel 9, 10 20 Tháng 12 10:31 /dev/tty.usbserial-A50285BI
```
Như bạn có thể thấy, thiết bị của tôi được gọi là /dev/tty.usbserial-A50285BI. Nhưng của bạn có thể khác, chúng ta cần tên của thiết bị này để sử dụng trong lệnh tiếp theo, lệnh thực sự mở ra một trình giả lập nối tiếp trên thiết bị đó và cho phép chúng ta giao tiếp với camera. Để làm điều này, chúng ta có thể sử dụng lệnh screen. Trên dòng lệnh của bạn, hãy gõ
Như bạn có thể thấy, thiết bị của tôi được gọi là /dev/tty.usbserial-A50285BI. Nhưng của bạn có thể khác, chúng ta cần tên của thiết bị này để sử dụng trong lệnh tiếp theo, lệnh thực sự mở ra một trình giả lập nối tiếp trên thiết bị đó và cho phép chúng ta giao tiếp với camera. Để làm điều này, chúng ta có thể sử dụng lệnh `screen`. Trên dòng lệnh của bạn, hãy gõ
`$ screen /dev/tty.usbserial-A50285BI 115200`
115200 là tốc độ baud mà chúng ta đang sử dụng. Ok, bây giờ chúng ta sẽ có một màn hình trống với con trỏ ở phía trên đang chờ một cái gì đó xuất hiện. Bạn có thể bỏ qua phần 1.3
115200 là tốc độ baud mà chúng ta đang sử dụng. Ok, bây giờ chúng ta sẽ có một màn hình trống với con trỏ ở phía trên đang chờ một cái gì đó xuất hiện. Bạn có thể bỏ qua phần 1.3.
**Windows**
Windows cần cài đặt thêm một chút phần mềm vì nó không có gì trong hệ điều hành cơ bản có thể hoàn thành công việc. Đối với cả mô phỏng thiết bị đầu cuối nối tiếp cũng như ssh và scp (chúng ta sẽ sử dụng hai phần mềm sau này), tôi khuyên bạn nên sử dụng Putty mà bạn có thể tải xuống [tại đây](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html) Khi bạn đã tải xuống, cài đặt và chạy phần mềm này - hãy cắm bộ chuyển đổi FTDI, nhưng hãy tắt nguồn camera ngay bây giờ. Trước hết, chúng ta cần tìm cổng COM nào mà Windows đã phân bổ cho bộ chuyển đổi FTSI, để kiểm tra điều này, bạn có thể vào Trình quản lý thiết bị để tìm hiểu (chỉ cần nhập trình quản lý thiết bị vào thanh tìm kiếm)
Windows cần cài đặt thêm một chút phần mềm vì nó không có gì trong hệ điều hành cơ bản có thể hoàn thành công việc. Đối với cả mô phỏng thiết bị đầu cuối nối tiếp cũng như SSH và SCP (chúng ta sẽ sử dụng hai phần mềm sau này), tôi khuyên bạn nên sử dụng Putty mà bạn có thể tải xuống [tại đây](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html). Khi bạn đã tải xuống, cài đặt và chạy phần mềm này - hãy cắm bộ chuyển đổi FTDI, nhưng hãy tắt nguồn camera ngay bây giờ. Trước hết, chúng ta cần tìm cổng COM nào mà Windows đã phân bổ cho bộ chuyển đổi FTSI, để kiểm tra điều này, bạn có thể vào Trình quản lý Thiết bị để tìm hiểu (chỉ cần nhập "trình quản lý thiết bị" vào thanh tìm kiếm).
![Trình quản lý thiết bị](../images/sbs-com-port.jpg)
Trong trường hợp của tôi, bạn có thể thấy rằng bộ chuyển đổi FTDI đã được cấu hình là COM6. Quay lại màn hình Putty, thay đổi loại kết nối thành Nối tiếp, đặt cổng COM bạn thấy cho bộ chuyển đổi FTDI của bạn vào hộp văn bản Dòng nối tiếp và đặt Tốc độ thành 115200. Việc lưu điều này rất hữu ích để nó có thể được nhấp đúp để mở thiết bị đầu cuối này trong tương lai. Vì vậy, nếu bạn nhập Serial OpenIPC (hoặc bất cứ điều gì bạn muốn gọi nó) vào hộp văn bản Phiên đã lưu và nhấp vào Lưu.
Trong trường hợp của tôi, bạn có thể thấy rằng bộ chuyển đổi FTDI đã được cấu hình là COM6. Quay lại màn hình Putty, thay đổi loại kết nối thành Serial, đặt cổng COM bạn thấy cho bộ chuyển đổi FTDI của bạn vào hộp văn bản Serial Line và đặt Speed thành 115200. Việc lưu điều này rất hữu ích để bạn có thể nhấp đúp vào nó để mở thiết bị đầu cuối này trong tương lai. Vì vậy, nếu bạn nhập Serial OpenIPC (hoặc bất cứ điều gì bạn muốn gọi nó) vào hộp văn bản Saved Session và nhấp vào Save.
![Kết nối nối tiếp Putty](../images/sbs-putty-serial.jpg)
Bây giờ nếu chúng ta nhấp đúp vào phiên đã lưu đó, nó sẽ mở ra một màn hình mới sẵn sàng để nói chuyện với camera.
Bây giờ nếu chúng ta nhấp đúp vào phiên đã lưu đó, nó sẽ mở ra một màn hình mới sẵn sàng để giao tiếp với camera.
### Bước 1.3 Thiết lập máy chủ tftp
### Bước 1.3 Thiết lập máy chủ TFTP
tftp là viết tắt của "Giao thức truyền tệp tầm thường". Bạn có thể đã sử dụng giao thức ftp đầy đủ chức năng hơn trong quá khứ. tftp theo truyền thống đã được sử dụng trong quá khứ để "khởi động mạng" các máy trạm từ xa. Khi khởi động, tất cả những gì các máy khách này biết là yêu cầu và máy chủ trên một địa chỉ ip cụ thể cho một tệp khởi động, và nó sẽ tải xuống và chạy tệp đó. Không có mật khẩu nào liên quan hoặc bất kỳ lệnh nào khác để chạy, đó chỉ là trường hợp "hãy cho tôi tệp này" do đó nó rất tầm thường. Mối lo ngại thông thường đối với mọi người khi chạy bất kỳ loại máy chủ nào trên hệ thống của họ là liệu nó có ảnh hưởng đến bảo mật của hệ thống của bạn hay không? Câu trả lời là không, nó không nên làm vậy. Bạn chỉ cần nhận kết nối trên mạng cục bộ của mình và bên cạnh đó - giao thức này rất cũ và được hiểu rõ. Bất kỳ lỗ hổng bảo mật nào có thể đã có ở đó đã được tìm thấy nhiều năm trước và đã được vá.
TFTP là viết tắt của "Trivial File Transfer Protocol". Bạn có thể đã sử dụng giao thức FTP đầy đủ chức năng hơn trong quá khứ. TFTP theo truyền thống đã được sử dụng trong quá khứ để "khởi động mạng" các máy trạm từ xa. Khi khởi động, tất cả những gì các máy khách này biết là yêu cầu và máy chủ trên một địa chỉ IP cụ thể cho một tệp khởi động, và nó sẽ tải xuống và chạy tệp đó. Không có mật khẩu nào liên quan hoặc bất kỳ lệnh nào khác để chạy, nó chỉ là trường hợp "cho tôi tệp này", do đó nó rất đơn giản. Mối lo ngại thông thường đối với mọi người khi chạy bất kỳ loại máy chủ nào trên hệ thống của họ là liệu nó có ảnh hưởng đến bảo mật của hệ thống của bạn hay không? Câu trả lời là không, nó không nên làm vậy. Bạn chỉ cần nhận kết nối trên mạng cục bộ của mình và bên cạnh đó - giao thức này rất cũ và được hiểu rõ. Bất kỳ lỗ hổng bảo mật nào có thể đã có ở đó đã được tìm thấy nhiều năm trước và đã được vá.
**MacOS**
MacOS có máy chủ tftp riêng sẵn sàng để chạy, nhưng nó không được khởi động theo mặc định. Để khởi động nó, hãy gõ
MacOS có máy chủ TFTP riêng sẵn sàng để chạy, nhưng nó không được khởi động theo mặc định. Để khởi động nó, hãy gõ
`$ sudo launchctl load -F /System/Library/LaunchDaemons/tftp.plist
`
```bash
$ sudo launchctl load -F /System/Library/LaunchDaemons/tftp.plist
```
Lệnh sudo có nghĩa là chạy với tư cách root, vì vậy bạn sẽ được nhắc nhập mật khẩu root của mình để lệnh chạy thành công. MacOS sẽ sử dụng thư mục /private/tftpboot để phục vụ các tệp, vì vậy chúng ta sẽ đặt hình ảnh khởi động của mình vào thư mục này sau.
Lệnh `sudo` có nghĩa là chạy với tư cách root, vì vậy bạn sẽ được nhắc nhập mật khẩu root của mình để lệnh chạy thành công. MacOS sẽ sử dụng thư mục `/private/tftpboot` để phục vụ các tệp, vì vậy chúng ta sẽ đặt image khởi động của mình vào thư mục này sau.
**Windows**
Như bạn mong đợi, Windows cần cài đặt thêm phần mềm để chạy máy chủ tftp. Có rất nhiều lựa chọn ngoài kia, tôi đã sử dụng từ công ty Solarwinds mà bạn có thể truy cập [tại đây](https://www.solarwinds.com/free-tools/free-tftp-server?) Mặc dù đó là bản tải xuống miễn phí, nhưng công ty yêu cầu thông tin đăng ký. Những gì bạn chọn để đưa vào thông tin đăng ký, tất nhiên, hoàn toàn tùy thuộc vào bạn - vì nó không ảnh hưởng đến việc thực sự nhận được liên kết tải xuống để tải phần mềm. Khi bạn đã có phần mềm và đã cài đặt và chạy nó, bạn sẽ nhận được một cửa sổ như thế này.
Như bạn mong đợi, Windows cần cài đặt thêm phần mềm để chạy máy chủ TFTP. Có rất nhiều lựa chọn ngoài kia, tôi đã sử dụng phần mềm từ công ty Solarwinds mà bạn có thể truy cập [tại đây](https://www.solarwinds.com/free-tools/free-tftp-server?). Mặc dù đó là bản tải xuống miễn phí, nhưng công ty yêu cầu thông tin đăng ký. Những gì bạn chọn để đưa vào thông tin đăng ký, tất nhiên, hoàn toàn tùy thuộc vào bạn - vì nó không ảnh hưởng đến việc thực sự nhận được liên kết tải xuống để tải phần mềm. Khi bạn đã có phần mềm và đã cài đặt và chạy nó, bạn sẽ nhận được một cửa sổ như thế này.
![tftp trên windows](../images/sbs-tftp-win.jpg)
![TFTP trên Windows](../images/sbs-tftp-win.jpg)
Máy chủ sẽ sử dụng thư mục C:\TFTP-Root để phục vụ các tệp, vì vậy chúng tôi sẽ đặt hình ảnh khởi động của mình vào thư mục này sau.
Máy chủ sẽ sử dụng thư mục `C:\TFTP-Root` để phục vụ các tệp, vì vậy chúng ta sẽ đặt image khởi động của mình vào thư mục này sau.
### Bước 1.4 Tải xuống hình ảnh firmware chính xác
### Bước 1.4 Tải xuống image firmware chính xác
SOC cho camera cụ thể này là SigmaStar SSC338Q. Xác định chính xác SOC nào đang có trên camera của bạn rõ ràng là rất quan trọng vì firmware dành riêng cho từng SOC. Rất may, trong trường hợp của camera của tôi (và nếu bạn nhìn vào sơ đồ kết nối chân ở trên), bạn có thể thấy nó được viết trên bo mạch. Để tìm firmware cho camera của bạn, từ [trang web](https://openipc.org/) chính của OpenIPC, hãy chuyển đến liên kết Tệp nhị phân được biên dịch trước, liên kết này sẽ đưa bạn đến [trang này](https://openipc.org/supported-hardware/featured) từ đây, chúng ta có thể thấy SigmaStar SSC338Q trên trang nổi bật, nhưng tùy thuộc vào model của SOC bạn có, bạn có thể chọn nhà sản xuất thích hợp trong các liên kết dọc theo đầu trang. Bất kỳ cái nào bạn có, bước tiếp theo là nhấp vào Tạo hướng dẫn cài đặt. Trong trường hợp này, nó đưa chúng ta đến [trang này](https://openipc.org/cameras/vendors/sigmastar/socs/ssc338q)
SOC cho camera cụ thể này là SigmaStar SSC338Q. Việc xác định chính xác SOC nào đang có trên camera của bạn rõ ràng là rất quan trọng vì firmware dành riêng cho từng SOC. May mắn thay, trong trường hợp của camera của tôi (và nếu bạn nhìn vào sơ đồ chân kết nối ở trên), bạn có thể thấy nó được viết trên board. Để tìm firmware cho camera của bạn, từ [trang web](https://openipc.org/) chính của OpenIPC, hãy chuyển đến liên kết Tệp nhị phân được biên dịch trước, liên kết này sẽ đưa bạn đến [trang này](https://openipc.org/supported-hardware/featured), từ đây, chúng ta có thể thấy SigmaStar SSC338Q trên trang nổi bật, nhưng tùy thuộc vào model SOC bạn có, bạn có thể chọn nhà sản xuất thích hợp trong các liên kết dọc theo đầu trang. Cho dù bạn có model nào, bước tiếp theo là nhấp vào "Generate an installation guide". Trong trường hợp này, nó đưa chúng ta đến [trang này](https://openipc.org/cameras/vendors/sigmastar/socs/ssc338q).
Bức ảnh cho thấy trang này **sau** khi tôi đã thay đổi các tùy chọn cho phiên bản firmware cụ thể mà tôi cần.
Hình ảnh cho thấy trang này **sau** khi tôi đã thay đổi các tùy chọn cho phiên bản firmware cụ thể mà tôi cần.
![Tạo firmware](../images/sbs-firmwae-gen.jpg)
Một vài lưu ý về những thay đổi này. Khi bạn lần đầu tiên truy cập trang này, trường địa chỉ MAC sẽ trống - vì vậy hãy nhấp vào tạo địa chỉ MAC hợp lệ để điền vào trường này. Đối với địa chỉ IP camera, chúng ta cần cung cấp cho nó một địa chỉ chưa sử dụng trên cùng một mạng con mà PC của chúng ta đang chạy. Trong hầu hết các trường hợp, mạng gia đình của bạn sẽ nằm trên mạng 192.168.0.x hoặc 192.168.1/x. Nếu bạn không chắc chắn về mạng con của mình là gì, thì chúng ta cũng cần tìm địa chỉ PC của mình cho tftpserver, đó là một cách để tìm hiểu.
Một vài lưu ý về những thay đổi này. Khi bạn lần đầu tiên truy cập trang này, trường địa chỉ MAC sẽ trống - vì vậy hãy nhấp vào "Generate a valid MAC address" để điền vào trường này. Đối với địa chỉ IP camera, chúng ta cần cung cấp cho nó một địa chỉ chưa sử dụng trên cùng một mạng con mà PC của chúng ta đang chạy. Trong hầu hết các trường hợp, mạng gia đình của bạn sẽ nằm trên mạng 192.168.0.x hoặc 192.168.1/x. Nếu bạn không chắc chắn về mạng con của mình là gì, thì chúng ta cũng cần tìm địa chỉ PC của mình cho máy chủ TFTP, đó là một cách để tìm hiểu.
Trên MacOS, tôi có thể chỉ cần sử dụng
Trên MacOS, tôi có thể sử dụng lệnh sau:
```
```bash
$ ifconfig en0
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=50b<RXCSUM,TXCSUM,VLAN_HWTAGGING,AV,CHANNEL_IO>
@ -152,12 +153,12 @@ en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
status: active
```
Trên Windows, bạn có thể sử dụng một lệnh tương tự từ dòng lệnh (nhập cmd vào thanh tìm kiếm)
Trên Windows, bạn có thể sử dụng lệnh tương tự từ Command Prompt (nhập "cmd" vào thanh tìm kiếm).
```
C:\>ipconfig
Cấu hình IP Windows
Cấu hình IP của Windows
Bộ điều hợp Ethernet Ethernet0:
@ -165,7 +166,7 @@ Bộ điều hợp Ethernet Ethernet0:
Hậu tố DNS dành riêng cho kết nối. : localdomain
Địa chỉ IPv6 liên kết cục bộ. . . . . : fe80::e34e:48bb:9e79:90b2%12
Địa chỉ IPv4. . . . . . . . . . . : 192.168.0.10
Mặt nạ mạng con. . . . . . . . . . . : 255.255.255.0
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Cổng mặc định. . . . . . . . . . : 192.168.0.1
Bộ điều hợp Ethernet Kết nối mạng Bluetooth:
@ -176,7 +177,7 @@ Bộ điều hợp Ethernet Kết nối mạng Bluetooth:
Từ lệnh này, chúng ta có thể thấy rằng địa chỉ IP của PC của tôi là 192.168.0.10 và mạng con của tôi là 192.168.0. Vì vậy, tôi có thể điền vào trường địa chỉ IP máy chủ TFTP của mình và đối với trường địa chỉ IP camera, tôi chỉ cần chọn một địa chỉ chưa được sử dụng. Tôi đã sử dụng 192.168.0.123 vì nó chưa được sử dụng. Nếu bạn không chắc chắn, bạn có thể thử ping địa chỉ này để kiểm tra.
```
```bash
$ ping 192.168.0.123
PING 192.168.0.123 (192.168.0.123): 56 byte dữ liệu
Yêu cầu hết thời gian chờ cho icmp_seq 0
@ -186,33 +187,33 @@ Yêu cầu hết thời gian chờ cho icmp_seq 2
Những lần chờ này thường cho biết rằng không có máy chủ nào ở địa chỉ đó và có thể an toàn để sử dụng.
Đối với phần còn lại của các tùy chọn, camera này có 16MB RAM flash (chúng ta có thể xem cách xác minh điều này sau), tôi đã thay đổi Phiên bản Firmware thành FPV và Giao diện mạng và khe cắm thẻ SD là các giá trị mặc định. Vì vậy, bây giờ, hãy nhấp vào Tạo Hướng dẫn Cài đặt. Sẽ hiển thị cho bạn một hướng dẫn như thế này.
Đối với phần còn lại của các tùy chọn, camera này có 16MB RAM flash (chúng ta có thể xem cách xác minh điều này sau), tôi đã thay đổi Phiên bản Firmware thành FPV và Giao diện mạng và khe cắm thẻ SD là các giá trị mặc định. Vì vậy, bây giờ, hãy nhấp vào "Generate Installation Guide". Bạn sẽ thấy một hướng dẫn như thế này.
![Hướng dẫn cài đặt](../images/sbs-install-guide.jpg)
Ý tưởng của hướng dẫn cài đặt này là một khi bạn đã mở bảng điều khiển trên camera, bạn có thể chỉ cần cắt và dán các lệnh vào cửa sổ bảng điều khiển để thực hiện sao lưu và flash firmware. Chỉ có một vấn đề với điều này, đó là một vài lỗi trong hướng dẫn. Công bằng mà nói, kể từ khi tôi thực hiện flash, nó đã được cải thiện, nhưng vẫn còn một vài lỗi cần được giải quyết.
Ý tưởng của hướng dẫn cài đặt này là một khi bạn đã mở console trên camera, bạn có thể chỉ cần sao chép và dán các lệnh vào cửa sổ console để thực hiện sao lưu và flash firmware. Chỉ có một vấn đề với điều này, đó là một vài lỗi trong hướng dẫn. Công bằng mà nói, kể từ khi tôi thực hiện flash, nó đã được cải thiện, nhưng vẫn còn một vài lỗi cần được giải quyết.
Trước hết, toàn bộ phần Lưu firmware gốc sẽ không hoạt động. Điều này là do không có lệnh tftpput hoặc lệnh tftp nào trên hệ điều hành hạn chế của camera, vì vậy chúng ta không có cách nào để di chuyển bản sao lưu của camera ra khỏi chính camera. Điều đó có nghĩa là chúng ta phải bỏ qua toàn bộ phần này. Tôi được biết rằng các nhà phát triển có bản sao lưu này ở đâu đó - chỉ trong trường hợp bạn cần khôi phục nó. Nếu bạn thực sự muốn tạo bản sao lưu, có một [phương pháp hoạt động](help-uboot.md#saving-original-firmware-without-using-tftp), nhưng sẽ mất vài giờ để truyền dữ liệu.
Trước hết, toàn bộ phần "Save the original firmware" sẽ không hoạt động. Điều này là do không có lệnh `tftpput` hoặc `tftp` nào trên hệ điều hành hạn chế của camera, vì vậy chúng ta không có cách nào để di chuyển bản sao lưu của camera ra khỏi chính camera. Điều đó có nghĩa là chúng ta phải bỏ qua toàn bộ phần này. Tôi được biết rằng các nhà phát triển có bản sao lưu này ở đâu đó - chỉ trong trường hợp bạn cần khôi phục nó. Nếu bạn thực sự muốn tạo bản sao lưu, có một [phương pháp hoạt động](help-uboot.md#saving-original-firmware-without-using-tftp), nhưng sẽ mất vài giờ để truyền dữ liệu.
Rất may, việc flash thực tế sẽ hoạt động, nhưng trước khi chúng ta bắt đầu, chúng ta cần nhấp vào liên kết *Tải xuống hình ảnh Firmware OpenIPC (Fpc)*. Trong trường hợp của ví dụ này, chúng tôi sẽ tải xuống tệp openipc-ssc338q-fpv-16mb.bin. Theo hướng dẫn máy chủ tftp, trên MacOS, bạn cần đặt tệp này trong /private/tftpboot và trên Windows, hãy đặt nó vào thư mục C:\TFTP-Root. Trên MacOS, hệ điều hành sẽ cho bạn quyền bị từ chối khi cố gắng sao chép điều này với tư cách là người dùng của riêng bạn, vì vậy rất có thể bạn sẽ cần sử dụng lại lệnh sudo.
Rất may, việc flash thực tế sẽ hoạt động, nhưng trước khi chúng ta bắt đầu, chúng ta cần nhấp vào liên kết *Download OpenIPC Firmware (Fpc) image*. Trong trường hợp của ví dụ này, chúng tôi sẽ tải xuống tệp `openipc-ssc338q-fpv-16mb.bin`. Theo hướng dẫn máy chủ TFTP, trên MacOS, bạn cần đặt tệp này trong `/private/tftpboot` và trên Windows, hãy đặt nó vào thư mục `C:\TFTP-Root`. Trên MacOS, hệ điều hành sẽ báo lỗi "permission denied" khi cố gắng sao chép tệp này với tư cách là người dùng của riêng bạn, vì vậy rất có thể bạn sẽ cần sử dụng lại lệnh `sudo`.
`$ sudo cp $HOME/Downloads/openipc-ssc338q-fpv-16mb.bin /private/tftpboot/`
Windows chặn tất cả các kết nối đến theo mặc định bằng Tường lửa Microsoft Defender, vì vậy chúng ta cần tạm thời tắt tính năng này. Nếu bạn nhập Bảo mật Windows vào thanh tìm kiếm và chạy ứng dụng Bảo mật Windows, sau đó chọn Tường lửa & Bảo vệ mạng. Phần tiếp theo phụ thuộc vào cách bạn đã cấu hình Windows. Nếu bạn đã cấu hình mạng cục bộ của mình là riêng tư, thì bạn có thể nhấp vào Mạng riêng tư và tắt Tường lửa Microsoft Defender. Tôi đã để Windows 10 (Máy ảo) của riêng mình theo mặc định và do đó nó không có mạng riêng tư được cấu hình và coi mọi thứ là mạng công cộng, vì vậy trong trường hợp của tôi, tôi nhấp vào Mạng công cộng và vô hiệu hóa tường lửa.
Windows chặn tất cả các kết nối đến theo mặc định bằng Tường lửa Microsoft Defender, vì vậy chúng ta cần tạm thời tắt tính năng này. Nếu bạn nhập "Windows Security" vào thanh tìm kiếm và chạy ứng dụng Windows Security, sau đó chọn "Firewall & Network Protection". Phần tiếp theo phụ thuộc vào cách bạn đã cấu hình Windows. Nếu bạn đã cấu hình mạng cục bộ của mình là riêng tư, thì bạn có thể nhấp vào "Private network" và tắt Tường lửa Microsoft Defender. Tôi đã để Windows 10 (Máy ảo) của riêng mình theo mặc định và do đó, nó không có mạng riêng tư được cấu hình và coi mọi thứ là mạng công cộng, vì vậy trong trường hợp của tôi, tôi nhấp vào "Public network" và vô hiệu hóa tường lửa.
![Tường lửa Windows](../images/sbs-Win-Firewall.jpg)
### Bước 1.5 Mở bảng điều khiển và thực hiện flash!
### Bước 1.5 Mở console và thực hiện flash!
Cuối cùng cũng đến lúc flash camera này. Vì vậy, nếu bạn vẫn kết nối bộ chuyển đổi FTDI của mình với PC và camera, cùng với bảng điều khiển nối tiếp đang mở, bạn đã sẵn sàng để sử dụng (nếu không, hãy quay lại 1.2 và mở thiết bị đầu cuối nối tiếp) Tất cả những gì bạn cần làm bây giờ là cắm nguồn 12v vào camera và bạn sẽ thấy rất nhiều thông báo khởi động xuất hiện trên bảng điều khiển nối tiếp. Ý tưởng ở đây là bạn nhấn phím return nhiều lần ngay khi thông báo khởi động xuất hiện. Nếu bạn bỏ lỡ nó và camera tiếp tục khởi động, cuối cùng bạn sẽ thấy lời nhắc đăng nhập như thế này.
Cuối cùng cũng đến lúc flash camera này. Vì vậy, nếu bạn vẫn kết nối bộ chuyển đổi FTDI của mình với PC và camera, cùng với console nối tiếp đang mở, bạn đã sẵn sàng để bắt đầu (nếu không, hãy quay lại 1.2 và mở terminal nối tiếp). Tất cả những gì bạn cần làm bây giờ là cắm nguồn 12V vào camera và bạn sẽ thấy rất nhiều thông báo khởi động xuất hiện trên console nối tiếp. Ý tưởng ở đây là bạn nhấn phím Enter nhiều lần ngay khi thông báo khởi động xuất hiện. Nếu bạn bỏ lỡ nó và camera tiếp tục khởi động, cuối cùng bạn sẽ thấy lời nhắc đăng nhập như thế này.
![Lời nhắc đăng nhập](../images/sbs-bootloader-missed.jpg)
Mặc dù điều đó có nghĩa là bạn đã quá chậm khi nhấn phím return, nhưng nó cho thấy rằng bảng điều khiển đang hoạt động và camera đang khởi động bình thường. Đừng lo lắng, chỉ cần tắt nguồn camera và thử lại. Nếu lần này bạn đủ nhanh, bạn sẽ thấy một cái gì đó như thế này.
Mặc dù điều đó có nghĩa là bạn đã quá chậm khi nhấn phím Enter, nhưng nó cho thấy rằng console đang hoạt động và camera đang khởi động bình thường. Đừng lo lắng, chỉ cần ngắt kết nối nguồn của camera và thử lại. Nếu lần này bạn đủ nhanh, bạn sẽ thấy một cái gì đó như thế này.
![Lời nhắc bootloader](../images/sbs-bootloader-int.jpg)
![Lời nhắc bộ nạp khởi động](../images/sbs-bootloader-int.jpg)
Được rồi, bây giờ chúng ta đang nấu ăn! Nhưng chờ đã, điều gì sẽ xảy ra nếu bạn không nhận được bất cứ thứ gì trên bảng điều khiển và bạn đang nhìn vào một màn hình hoàn toàn trống? Chà, nơi dễ bị nhầm lẫn nhất ở đây là khiến các kết nối TX/RX của bạn bị chéo nhau trên bảng FTDI. Miễn là camera có vẻ khởi động (có một hoặc hai đèn LED và đèn của tôi thậm chí còn phát ra một chút tiếng ồn khi khởi động), hãy thử hoán đổi các dây dẫn TX/RX của bạn trên bảng FTDI và xem điều đó có khắc phục được sự cố không. Đối với những người còn lại trong chúng ta, đã đến lúc bắt đầu cung cấp các lệnh từ hướng dẫn cài đặt.
Tuyệt! Nhưng chờ đã, điều gì sẽ xảy ra nếu bạn không nhận được bất cứ thứ gì trên console và bạn đang nhìn vào một màn hình hoàn toàn trống? Chà, nơi dễ bị nhầm lẫn nhất ở đây là khiến các kết nối TX/RX của bạn bị chéo nhau trên board FTDI. Miễn là camera có vẻ khởi động (có một hoặc hai đèn LED và đèn của tôi thậm chí còn phát ra một chút tiếng ồn khi khởi động), hãy thử hoán đổi các dây dẫn TX/RX của bạn trên board FTDI và xem điều đó có khắc phục được sự cố không. Đối với những người còn lại, đã đến lúc bắt đầu nhập các lệnh từ hướng dẫn cài đặt.
Đây là những dòng mà hướng dẫn cho chúng ta chạy từng dòng một. Tôi sẽ cho bạn thấy phản hồi bạn có thể nhận được và những phần nào không nên chạy.
@ -228,7 +229,7 @@ sf erase 0x0 0x1000000; sf write 0x21000000 0x0 0x1000000
reset
```
Hãy chạy một vài dòng đầu tiên. Trên camera của tôi, tôi biết rằng lệnh tftpboot có tồn tại, vì vậy chúng ta có thể bỏ qua lệnh tiếp theo bằng cách sử dụng tftp
Hãy chạy một vài dòng đầu tiên. Trên camera của tôi, tôi biết rằng lệnh `tftpboot` có tồn tại, vì vậy chúng ta có thể bỏ qua lệnh tiếp theo bằng cách sử dụng `tftp`.
```
Anjoy # setenv ipaddr 192.168.0.123; setenv serverip 192.168.0.10
@ -261,19 +262,19 @@ hoàn thành
Số byte đã chuyển = 16777216 (1000000 hex)
```
Khi bạn chạy lệnh tftpboot, bạn sẽ thấy các hàng # xuất hiện khi tệp được kéo từ máy chủ của bạn. Nhưng điều gì sẽ xảy ra nếu nó không hoạt động? Trên máy Mac, vấn đề phổ biến nhất sẽ là quyền truy cập tệp - tệp có quyền đọc trên toàn thế giới để có thể đọc bằng daemon tftp không. Chúng ta có thể đặt quyền mở trên tệp bằng cách chạy
Khi bạn chạy lệnh `tftpboot`, bạn sẽ thấy các hàng # xuất hiện khi tệp được kéo từ máy chủ của bạn. Nhưng điều gì sẽ xảy ra nếu nó không hoạt động? Trên máy Mac, vấn đề phổ biến nhất sẽ là quyền truy cập tệp - tệp có quyền đọc trên toàn thế giới để có thể đọc bằng daemon TFTP không. Chúng ta có thể đặt quyền mở trên tệp bằng cách chạy
`$ sudo chmod 777 /private/tftpboot/openipc-ssc338q-fpv-16mb.bin`
Trên Windows, máy chủ SolarWinds TFTP sẽ ghi lại các kết nối và bất kỳ nỗ lực nào để lấy tệp trong cửa sổ của nó, vì vậy bạn có thể kiểm tra điều này để giúp xác định sự cố. Nếu không có gì trong đó, thì yêu cầu không đến được máy chủ. Bạn đã tắt tường lửa phiền phức đó chưa? (nếu địa chỉ IP trong hình ảnh này trông kỳ lạ, thì đó là vì tôi đang chạy Windows trong máy ảo, máy ảo này tạo kết nối mạng riêng của nó để bắc cầu đến máy chủ)
Trên Windows, máy chủ SolarWinds TFTP sẽ ghi lại các kết nối và bất kỳ nỗ lực nào để lấy tệp trong cửa sổ của nó, vì vậy bạn có thể kiểm tra điều này để giúp xác định sự cố. Nếu không có gì trong đó, thì yêu cầu không đến được máy chủ. Bạn đã tắt tường lửa phiền phức đó chưa? (nếu địa chỉ IP trong hình ảnh này trông kỳ lạ, thì đó là vì tôi đang chạy Windows trong máy ảo, máy ảo này tạo kết nối mạng riêng của nó để bắc cầu đến máy chủ).
![Thông báo gỡ lỗi tftp](../images/sbs-tftp-log.jpg)
![Thông báo gỡ lỗi TFTP](../images/sbs-tftp-log.jpg)
Lệnh tiếp theo, theo hướng dẫn là chạy
`sf probe 0; sf lock 0;`
Điều này sẽ không hoạt động, vì phần 'khóa' của lệnh không được triển khai. Vì vậy, những gì chúng ta cần chạy ở đây chỉ đơn giản là phần đầu tiên của lệnh.
Điều này sẽ không hoạt động, vì phần 'lock' của lệnh không được triển khai. Vì vậy, những gì chúng ta cần chạy ở đây chỉ đơn giản là phần đầu tiên của lệnh.
```
Anjoy # sf probe 0
@ -281,7 +282,7 @@ Flash được phát hiện (0x0B05, 0xC8, 0x40, 0x18)
SF: Đã phát hiện nor0 với tổng kích thước 16Mib
```
Nếu bạn không chắc chắn flash trên camera của mình lớn bao nhiêu, thì chạy sf probe 0 là một cách tuyệt vời để kiểm tra điều đó. Nếu nó khác với những gì bạn đã đưa vào trang Tạo Hướng dẫn Cài đặt, thì bạn có thể chỉ cần quay lại trang đó và nhập thông tin chính xác để tạo hướng dẫn mới và hướng dẫn cài đặt mới. Khởi động lại camera của bạn và bắt đầu lại.
Nếu bạn không chắc chắn dung lượng flash trên camera của mình lớn bao nhiêu, thì chạy `sf probe 0` là một cách tuyệt vời để kiểm tra điều đó. Nếu nó khác với những gì bạn đã đưa vào trang "Create Install Guide", thì bạn có thể chỉ cần quay lại trang đó và nhập thông tin chính xác để tạo hướng dẫn mới và hướng dẫn cài đặt mới. Khởi động lại camera của bạn và bắt đầu lại.
```
Anjoy # sf erase 0x0 0x1000000; sf write 0x21000000 0x0 0x1000000
@ -291,15 +292,15 @@ _spi_flash_write đến 0x0, len 0x1000000 từ 0x21000000 100% (mất 14084 ms)
SF: 16777216 byte @ 0x0 Đã ghi: OK
```
Hành động này mất vài phút, nhưng đây là phần flash thực sự thú vị đã hoàn thành. Nếu mọi việc suôn sẻ, tất cả những gì bạn cần làm bây giờ là khởi động lại bảng bằng cách nhập lệnh cuối cùng.
Hành động này mất vài phút, nhưng đây là phần flash thực sự thú vị đã hoàn thành. Nếu mọi việc suôn sẻ, tất cả những gì bạn cần làm bây giờ là khởi động lại board bằng cách nhập lệnh cuối cùng.
`Anjoy # reset`
Tại thời điểm này, camera sẽ khởi động lại nhiều lần. Bạn sẽ thấy rất nhiều thông báo trên bảng điều khiển cho đến khi tất cả dừng lại, có thể là thông báo
Tại thời điểm này, camera sẽ khởi động lại nhiều lần. Bạn sẽ thấy rất nhiều thông báo trên console cho đến khi tất cả dừng lại, có thể là thông báo
`Không phát hiện thấy thẻ wifi usb. Kiểm tra kết nối wifi stick, nguồn usb hoặc có thể hàn bị lỗi.`
`Không phát hiện thấy thẻ wifi USB. Kiểm tra kết nối wifi stick, nguồn USB hoặc có thể hàn bị lỗi.`
Điều này là dự kiến. Chúng ta không nhận được lời nhắc đăng nhập ở đây, vì một phần của quá trình cài đặt OpenIPC đã tắt khả năng đăng nhập qua kết nối nối tiếp này (mặc dù rất đơn giản để bật lại) Tuy nhiên, cách tốt hơn để đăng nhập bây giờ là qua SSH vì camera nên đã hỏi máy chủ DHCP của bạn (thường là bộ định tuyến của bạn) cho một địa chỉ IP. Nếu bạn tìm kiếm các dòng trên bảng điều khiển bắt đầu bằng uhdcpc, bạn sẽ có thể thấy camera đã được cấp phát địa chỉ IP nào. Trong trường hợp của tôi, tôi có thể thấy
Điều này là dự kiến. Chúng ta không nhận được lời nhắc đăng nhập ở đây, vì một phần của quá trình cài đặt OpenIPC đã tắt khả năng đăng nhập qua kết nối nối tiếp này (mặc dù rất đơn giản để bật lại). Tuy nhiên, cách tốt hơn để đăng nhập bây giờ là qua SSH vì camera nên đã hỏi máy chủ DHCP của bạn (thường là bộ định tuyến của bạn) cho một địa chỉ IP. Nếu bạn tìm kiếm các dòng trên console bắt đầu bằng `udhcpc`, bạn sẽ có thể thấy camera đã được cấp phát địa chỉ IP nào. Trong trường hợp của tôi, tôi có thể thấy
```
udhcpc: đã bắt đầu, v1.36.1
@ -308,22 +309,22 @@ udhcpc: phát sóng lựa chọn cho 192.168.0.50, máy chủ 192.168.0.1
udhcpc: đã nhận được hợp đồng thuê 192.168.0.50 từ 192.168.0.1, thời gian thuê 86400
```
Điều này cho chúng ta biết rằng địa chỉ ip của chúng ta là 192.168.0.50, vì vậy bây giờ hãy kết nối với nó qua mạng. Trên MacOS, sử dụng
Điều này cho chúng ta biết rằng địa chỉ IP của chúng ta là 192.168.0.50, vì vậy bây giờ hãy kết nối với nó qua mạng. Trên MacOS, sử dụng
`$ ssh root@192.168.0.50`
Trên Windows, sử dụng Putty. Sẽ rất hữu ích nếu tạo một phiên đã lưu để bạn có thể nhấp đúp vào nó để mở cửa sổ ssh - như trong hình ở đây.
Trên Windows, hãy sử dụng Putty. Sẽ rất hữu ích nếu tạo một phiên đã lưu để bạn có thể nhấp đúp vào nó để mở cửa sổ SSH - như trong hình ở đây.
![Putty SSH](../images/sbs-putty-ssh.jpg)
Bạn sẽ được nhắc nhập mật khẩu root khi ssh vào camera, đó là 12345. Sau khi bạn nhập mật khẩu và mọi thứ đã diễn ra đúng, bạn sẽ được chào đón bằng một màn hình như thế này
Bạn sẽ được nhắc nhập mật khẩu root khi SSH vào camera, đó là 12345. Sau khi bạn nhập mật khẩu và mọi thứ đã diễn ra đúng, bạn sẽ được chào đón bằng một màn hình như thế này.
![đăng nhập ssh](../images/sbs-ssh-openipc.jpg)
![Đăng nhập SSH](../images/sbs-ssh-openipc.jpg)
Điều đầu tiên bạn cần làm ở đây là thay đổi mật khẩu root. Bạn có thể thực hiện việc này trên dòng lệnh bằng cách nhập lệnh passwd. Thao tác này sẽ nhắc nhập mật khẩu root hiện tại, sau đó yêu cầu bạn nhập mật khẩu mới và xác nhận lại. Ngoài ra, bạn có thể sử dụng giao diện web. Để thực hiện việc này, hãy truy cập trình duyệt trên PC của bạn và nhập địa chỉ IP của camera, vì vậy trong trường hợp địa chỉ tôi có cho camera của mình là 192.168.0.50:85. Bạn sẽ được nhắc nhập tên người dùng (root) và mật khẩu (12345 nếu bạn chưa thay đổi)
Điều đầu tiên bạn cần làm ở đây là thay đổi mật khẩu root. Bạn có thể thực hiện việc này trên dòng lệnh bằng cách nhập lệnh `passwd`. Lệnh này sẽ nhắc bạn nhập mật khẩu root hiện tại, sau đó yêu cầu bạn nhập mật khẩu mới và xác nhận lại. Ngoài ra, bạn có thể sử dụng giao diện web. Để thực hiện việc này, hãy truy cập trình duyệt trên PC của bạn và nhập địa chỉ IP của camera, vì vậy trong trường hợp của địa chỉ tôi có cho camera của mình là 192.168.0.50:85. Bạn sẽ được nhắc nhập tên người dùng (root) và mật khẩu (12345 nếu bạn chưa thay đổi).
Nếu bạn chưa thay đổi mật khẩu, thì nó sẽ yêu cầu bạn làm như vậy - chỉ cần nhập mật khẩu mới của bạn vào Lưu thay đổi
Nếu bạn chưa thay đổi mật khẩu, thì nó sẽ yêu cầu bạn làm như vậy - chỉ cần nhập mật khẩu mới của bạn vào "Save Changes".
![thay đổi mật khẩu web](../images/sbs-web-pass.jpg)
![Thay đổi mật khẩu web](../images/sbs-web-pass.jpg)
Khi bạn thay đổi mật khẩu (hoặc nếu nó đã được thay đổi qua dòng lệnh, giao diện web sẽ thay đổi. Bạn sẽ nhận thấy tùy chọn thay đổi địa chỉ MAC của mình - bạn có thể tiếp tục và thực hiện việc này, nhưng hãy xem cảnh báo về địa chỉ IP của bạn có thể thay đổi. Một lần nữa, bạn có thể tìm kiếm điều này trong thông báo khởi động bảng
Khi bạn thay đổi mật khẩu (hoặc nếu nó đã được thay đổi qua dòng lệnh), giao diện web sẽ thay đổi. Bạn sẽ nhận thấy tùy chọn thay đổi địa chỉ MAC của mình - bạn có thể tiếp tục và thực hiện việc này, nhưng hãy xem cảnh báo về địa chỉ IP của bạn có thể thay đổi. Một lần nữa, bạn có thể tìm kiếm điều này trong thông báo khởi động console. Tại thời điểm này, việc flash phần mềm OpenIPC vào camera đã hoàn tất - làm tốt lắm. Chúng ta sẽ cần quay lại camera để thực hiện một số thay đổi cấu hình khác,

View File

@ -1,7 +1,7 @@
# OpenIPC Wiki
[Mục lục](../README.md)
Tuyển chọn video OpenIPC trên YouTube
Tuyển tập video OpenIPC trên YouTube
----------------------------------------
<p align="center">
@ -11,28 +11,28 @@ Tuyển chọn video OpenIPC trên YouTube
### Let's Drone Out
- [LDO EP426 - với Khách mời đặc biệt MARIOFPV của OpenIPC](https://www.youtube.com/watch?v=af1LuUxZ5dY)
- [LDO EP426 - với khách mời đặc biệt MARIOFPV của OpenIPC](https://www.youtube.com/watch?v=af1LuUxZ5dY)
### Từ Mario
- [OpenIPC SSC338Q-IMX415, DVR ở h265 với Hệ thống FPV kỹ thuật số 120fps Rẻ nhất Thế giới](https://www.youtube.com/watch?v=avXbcvqNKWM)
- [Giới thiệu OpenIPC SSC338Q-IMX415, Hệ thống FPV kỹ thuật số 120fps Rẻ nhất Thế giới](https://www.youtube.com/watch?v=tXwiZFD6-yc)
- [Giới thiệu OpenIPC, hệ thống FPV tầm xa kỹ thuật số rẻ nhất thế giới](https://youtu.be/Z_41Dko-Iok?si=cdGWDcFss9WrvPPN)
- [Kiểm tra Độ trễ và Phạm vi OpenIPC với ExpressLRS và INAV 6.1](https://www.youtube.com/watch?v=4tlPJSQA6HA)
- [Giới thiệu Trạm Mặt đất OpenIPC VRX, hệ thống FPV tầm xa kỹ thuật số rẻ nhất thế giới](https://www.youtube.com/watch?v=aXJQIoBKjVE)
- [VRX Rẻ nhất Thế giới với H265 tương thích với tất cả các kính bảo hộ! OpenIPC FPV với VENC/VDEC](https://www.youtube.com/watch?v=wZAHkWHfBF4)
- [Phần cứng OpenIPC mới lý tưởng cho máy bay bốn cánh micro 3” hoặc 2”. Hãy theo dõi video đầy đủ!](https://www.youtube.com/watch?v=ozZwKt6Z-UQ)
- [OpenIPC SSC338Q-IMX415, DVR H.265 với Hệ thống FPV kỹ thuật số 120fps rẻ nhất thế giới](https://www.youtube.com/watch?v=avXbcvqNKWM)
- [Giới thiệu OpenIPC SSC338Q-IMX415, Hệ thống FPV kỹ thuật số 120fps rẻ nhất thế giới](https://www.youtube.com/watch?v=tXwiZFD6-yc)
- [Giới thiệu OpenIPC, hệ thống FPV kỹ thuật số tầm xa rẻ nhất thế giới](https://youtu.be/Z_41Dko-Iok?si=cdGWDcFss9WrvPPN)
- [Kiểm tra Độ trễ và Phạm vi của OpenIPC với ExpressLRS và INAV 6.1](https://www.youtube.com/watch?v=4tlPJSQA6HA)
- [Giới thiệu Trạm Mặt đất OpenIPC VRX, hệ thống FPV kỹ thuật số tầm xa rẻ nhất thế giới](https://www.youtube.com/watch?v=aXJQIoBKjVE)
- [VRX rẻ nhất thế giới với H.265 tương thích với tất cả các kính! OpenIPC FPV với VENC/VDEC](https://www.youtube.com/watch?v=wZAHkWHfBF4)
- [Phần cứng OpenIPC mới lý tưởng cho máy bay không người lái micro 3” hoặc 2”. Hãy theo dõi để xem video đầy đủ!](https://www.youtube.com/watch?v=ozZwKt6Z-UQ)
- [Hướng dẫn Video OpenIPC - Cách thiết lập máy chủ OpenDHCP và cách sao lưu tệp](https://www.youtube.com/watch?v=aO_4LU8rnws)
- [Phần cứng OpenIPC FPV Nhỏ nhất Thế giới có thể lắp vừa Máy bay bốn cánh Micro 3 inch với INAV 7 ExpressLRS](https://www.youtube.com/watch?v=_IPkt78QZwY)
- [Phần cứng OpenIPC FPV nhỏ nhất thế giới có thể vừa với máy bay không người lái micro 3 inch với INAV 7 ExpressLRS](https://www.youtube.com/watch?v=_IPkt78QZwY)
### Từ TipoMan
- [FPV FullHD tự làm với OpenIPC, wfb-ng, qOpenHD](https://www.youtube.com/watch?v=MwcEvywzslA)
- [25km với OpenIPC+wfb-ng, qOpenHD. goke7205v200+imx307,3.6mm. H265 7Mbit/s. ARWing900](https://www.youtube.com/watch?v=c7XtKujrzSg)
- [Mây với OpenIPC và Lidl Glider. Video 1366x768.](https://www.youtube.com/watch?v=1LavYm6jbL0)
- [Chuyến bay 15 km với hệ thống FPV tự làm, dựa trên OpenIPC, wfb-ng, qOpenHD](https://www.youtube.com/watch?v=6__OMDvJ6o0)
- [FPV FullHD tự chế với OpenIPC, wfb-ng, qOpenHD](https://www.youtube.com/watch?v=MwcEvywzslA)
- [25km với OpenIPC+wfb-ng, qOpenHD. goke7205v200+imx307,3.6mm. H.265 7Mbit/s. ARWing900](https://www.youtube.com/watch?v=c7XtKujrzSg)
- [Bay trên mây với OpenIPC và Lidl Glider. Video 1366x768.](https://www.youtube.com/watch?v=1LavYm6jbL0)
- [Chuyến bay 15 km với hệ thống FPV tự chế, dựa trên OpenIPC, wfb-ng, qOpenHD](https://www.youtube.com/watch?v=6__OMDvJ6o0)
- [OpenIPC và wfb-ng trong một ngày nhiều gió, imx335, mcs1, 7mbit/s, h265](https://www.youtube.com/watch?v=lUyhilWK1dE)
@ -44,20 +44,20 @@ Tuyển chọn video OpenIPC trên YouTube
### Từ Egor NiKO
- [WFB-NG-OpenIPC Kết nối kém, độ trễ cao. MCS là gì?](https://www.youtube.com/watch?v=JEqai5JKZws)
- [Thiết bị để ĐO độ trễ của HỆ THỐNG FPV và MÁY ẢNH](https://www.youtube.com/watch?v=69uGeqPZ3CI)
- [Tạo liên kết FPV FullHD từ camera IP Trung Quốc GIẢ LẬP OpenHD Digital FPV GIÁ RẺ](https://www.youtube.com/watch?v=NOW99dwKbzI)
- [Thiết bị để ĐO độ trễ của HỆ THỐNG FPV và CAMERA](https://www.youtube.com/watch?v=69uGeqPZ3CI)
- [Tạo liên kết FPV FullHD từ camera IP Trung Quốc - Bản sao OpenHD Digital FPV GIÁ RẺ](https://www.youtube.com/watch?v=NOW99dwKbzI)
- [Hướng dẫn flash camera Goke7205v200|v210](https://www.youtube.com/watch?v=pA6xQ5fcZ6Q)
### Từ CurryKitten
- [Bản dựng OpenIPC phần 1: OpenIPC là gì và tôi đang sử dụng gì để build nó?](https://www.youtube.com/watch?v=1CDIukf8AJw)
- [Bản dựng OpenIPC phần 2: Flash firmware và làm cho luồng video hoạt động](https://www.youtube.com/watch?v=libsusKy6zc)
- [Bản build OpenIPC phần 1: OpenIPC là gì và tôi đang sử dụng gì để build nó?](https://www.youtube.com/watch?v=1CDIukf8AJw)
- [Bản build OpenIPC phần 2: Flash firmware và làm cho luồng video hoạt động](https://www.youtube.com/watch?v=libsusKy6zc)
### Từ Cinematic FPV - Kênh QD
- [Trải nghiệm hệ thống truyền dẫn video mới OpenIPC - Trải nghiệm không thể ngờ hihi - Kênh QD](https://www.youtube.com/watch?v=dC32p0hxEAs)
- [Trải nghiệm hệ thống truyền dẫn video mới OpenIPC - Trải nghiệm không thể ngờ - Kênh QD](https://www.youtube.com/watch?v=dC32p0hxEAs)
### Từ TAI
@ -67,7 +67,7 @@ Tuyển chọn video OpenIPC trên YouTube
### Từ Antonio Silva
- [Kiểm tra với Openipc goke7205v200 và NVR](https://www.youtube.com/watch?v=7GKyCo6Ezmw)
- [Kiểm tra với OpenIPC goke7205v200 và NVR](https://www.youtube.com/watch?v=7GKyCo6Ezmw)
- [OpenIPC chuyến bay thử nghiệm đầu tiên của tôi được ghi lại bằng NVR](https://www.youtube.com/watch?v=Sj7UduKbtXs)
@ -93,8 +93,13 @@ Tuyển chọn video OpenIPC trên YouTube
- [OpenIPC - TIN TỨC FPV DRONE 29 THÁNG 8 NĂM 2023](https://www.youtube.com/watch?v=MRxxOGuZUq8&t=2298s)
### Yuji Inoue
- [Kiểm tra thực địa OpenIPC 2](https://www.youtube.com/watch?v=fJDmGjyDB8I&t=8s)
- [2K(2560x1440),60FPS ,OpenIPC](https://www.youtube.com/watch?v=F5DM_pRZzpM&t=75s)
- [Kiểm tra thực địa OpenIPC 3](https://www.youtube.com/watch?v=U0aIkhm9TdM)
- [Kiểm tra thực địa OpenIPC 4](https://www.youtube.com/watch?v=4iRVPW_Vqng)
- [OpenIPC FieldTest2](https://www.youtube.com/watch?v=fJDmGjyDB8I&t=8s)
- [2K (2560x1440), 60FPS, OpenIPC](https://www.youtube.com/watch?v=F5DM_pRZzpM&t=75s)
- [OpenIPC FieldTest3](https://www.youtube.com/watch?v=U0aIkhm9TdM)
- [OpenIPC FieldTest4](https://www.youtube.com/watch?v=4iRVPW_Vqng)
Changes:
- Adjusted some translation for better context and flow
- Corrected some grammar errors
- Standardized formatting of links and video titles

131
vi/fpv.md
View File

@ -8,11 +8,11 @@ Sử dụng OpenIPC làm liên kết video giá rẻ cho hệ thống FPV
<img src="https://github.com/OpenIPC/wiki/blob/master/images/fpv-logo.jpg?raw=true" alt="Logo"/>
</p>
Năm 2015, người đam mê Befi người Đức đã [đưa ra ý tưởng về một máy bay không người lái Nguồn mở](https://befinitiv.wordpress.com/wifibroadcast-analog-like-transmission-of-live-video-data/), nơi anh ấy đề xuất sử dụng bộ điều hợp WiFi thông thường, số lượng đã đạt đến con số vài tỷ chiếc trên toàn thế giới và giá đã giảm đến mức chúng đã trở thành loại máy thu phát kỹ thuật số có giá cả phải chăng nhất.
Vào năm 2015, người đam mê Befi người Đức đã [đề xuất ý tưởng về một máy bay không người lái nguồn mở](https://befinitiv.wordpress.com/wifibroadcast-analog-like-transmission-of-live-video-data/), nơi ông đề xuất sử dụng các bộ điều hợp WiFi thông thường, số lượng đã đạt đến con số hàng tỷ chiếc trên toàn thế giới và giá đã giảm đến mức chúng trở thành loại máy thu phát kỹ thuật số có giá cả phải chăng nhất.
Ý tưởng chính không phải là bản thân bộ điều hợp WiFi, mà là một phương pháp sử dụng chúng độc đáo: từ chối thiết lập kết nối mạng và chuyển sang chế độ phát sóng, khi một bộ điều hợp đóng vai trò là bộ phát tín hiệu kỹ thuật số, trong khi bộ điều hợp thứ hai là bộ thu.
Ý tưởng chính không phải là bản thân các adapter WiFi, mà là một phương pháp sử dụng chúng độc đáo: từ chối thiết lập kết nối mạng và chuyển sang chế độ phát sóng, khi một adapter đóng vai trò là bộ phát tín hiệu kỹ thuật số, trong khi adapter thứ hai là bộ thu.
Người ta đã đề xuất lấy một SBC Raspberry Pi giá rẻ, kết nối camera với nó thông qua giao diện MIPI và một khóa USB WiFi trong số những khóa được đề xuất và ở phía bên kia trên bộ thu - một mô-đun WiFi tương tự với màn hình HDMI. Trong trường hợp này, thay vì giao thức UDP truyền thống để truyền video có độ trễ thấp, một giao thức cấp thấp hơn đã được sử dụng để quản lý dữ liệu linh hoạt: kiểm soát băng thông, công suất bộ phát và khả năng khôi phục dữ liệu nếu gói bị [hỏng một phần](https://en.wikipedia.org/wiki/Error_detection_and_correction) trong quá trình truyền. Một trong những vấn đề kỹ thuật là không phải mọi bộ điều hợp WiFi đều có thể hoạt động ở chế độ cấp thấp này, hơn nữa: bạn gần như luôn phải cài đặt các trình điều khiển đặc biệt chỉ tồn tại cho Linux.
Người ta đã đề xuất lấy một Raspberry Pi SBC giá rẻ, kết nối camera với nó thông qua giao diện MIPI và một dongle USB WiFi trong số những dongle được đề xuất, và ở phía bên kia trên bộ thu - một mô-đun WiFi tương tự với màn hình HDMI. Trong trường hợp này, thay vì giao thức UDP truyền thống để truyền video có độ trễ thấp, một giao thức cấp thấp hơn đã được sử dụng để quản lý dữ liệu linh hoạt: kiểm soát băng thông, công suất bộ phát và khả năng khôi phục dữ liệu nếu gói bị [hỏng một phần](https://en.wikipedia.org/wiki/Error_detection_and_correction) trong quá trình truyền. Một trong những vấn đề kỹ thuật là không phải mọi bộ điều hợp WiFi đều có thể hoạt động ở chế độ cấp thấp này, hơn nữa: bạn gần như luôn phải cài đặt các driver đặc biệt chỉ tồn tại cho Linux.
Bộ thu ở chế độ này hoạt động ở cái gọi là `chế độ giám sát`, nơi nó nhận và truyền đến hệ điều hành mỗi gói của một kênh WiFi nhất định, nơi nó quyết định nên giải mã hay loại bỏ nó. Bộ điều hợp bộ phát WiFi phải hoạt động ở `chế độ tiêm`, nơi kernel của hệ điều hành không thực sự tham gia vào việc tạo gói mạng theo quy định của mô hình mạng ISO. Một số bộ điều hợp hỗ trợ cả hai chế độ, một số chỉ hỗ trợ một số, do đó có thể chỉ đứng ở phía bộ phát hoặc bộ thu.
@ -23,19 +23,19 @@ Bộ thu ở chế độ này hoạt động ở cái gọi là `chế độ gi
## Lời khuyên dành cho người mới
<span style="color:red;">
OpenIPC FPV vẫn đang được phát triển. Yêu cầu kỹ năng Linux để cài đặt và sử dụng/kiểm tra.
Nếu không có kỹ năng như vậy hoặc một người không muốn học hỏi, thì tốt hơn là người đó nên mua và sử dụng Thiết bị FPV chuyên nghiệp hoạt động ngay lập tức.
OpenIPC FPV vẫn đang được phát triển. Yêu cầu kỹ năng Linux để cài đặt và sử dụng/kiểm tra.
Nếu không có những kỹ năng này hoặc bạn không muốn học hỏi, thì tốt hơn hết là bạn nên mua và sử dụng thiết bị FPV chuyên nghiệp, hoạt động ngay khi xuất xưởng.
</span>
Bạn nên có những kỹ năng sau:
* Kết nối với IPcamera / NVR bằng SSH (Secure Shell)
* Kết nối với IP camera / NVR bằng SSH (Secure Shell)
* Trao đổi tệp qua SCP (Sao chép an toàn)
* Sử dụng [Trình chỉnh sửa VIM](https://github.com/vim/vim)
* Sử dụng [Trình soạn thảo VIM](https://github.com/vim/vim)
* Xem nội dung của tệp bằng lệnh CAT
* Kỹ năng trong việc điều chỉnh hoặc tạo tập lệnh bash
Có nhiều sách, trang web và video hay có sẵn có thể được sử dụng để học hỏi.
rất nhiều sách, trang web và video hay có sẵn có thể được sử dụng để học hỏi.
* [Khóa học cơ bản về Linux](https://github.com/kodekloudhub/linux-basics-course)
* [Video: Giới thiệu về Linux Khóa học đầy đủ dành cho người mới bắt đầu](https://www.youtube.com/watch?v=sWbUDq4S6Y8)
@ -44,11 +44,11 @@ Có nhiều sách, trang web và video hay có sẵn có thể được sử d
## Cuộc cách mạng từ OpenIPC
Thiết lập cổ điển trong dự án [OpenHD](https://openhdfpv.org/) (và các dự án tương tự khác) bao gồm camera MIPI hoặc USB được kết nối với Raspberry Pi, đóng vai trò bộ mã hóa video và bộ định tuyến cho hệ thống trên không và lần lượt được kết nối với bộ điều hợp WiFi qua USB và với bộ điều khiển bay qua UART. Trạm mặt đất thường bao gồm bộ điều hợp WiFi tương tự, Raspberry Pi thứ hai hoặc máy tính xách tay Linux x86 và màn hình hoặc kính bảo hộ có độ tương phản cao.
Cài đặt cổ điển trong dự án [OpenHD](https://openhdfpv.org/) (và các dự án tương tự khác) bao gồm camera MIPI hoặc USB được kết nối với Raspberry Pi, đóng vai trò như bộ mã hóa video và bộ định tuyến cho hệ thống trên không và lần lượt được kết nối với bộ điều hợp WiFi qua USB và với bộ điều khiển bay qua UART. Trạm mặt đất thường bao gồm một bộ điều hợp WiFi tương tự, Raspberry Pi thứ hai hoặc máy tính xách tay Linux x86 và màn hình hoặc kính bảo hộ có độ tương phản cao.
Đôi khi, camera MIPI hoặc USB được hoán đổi cho camera IP, vừa mạnh hơn (có bộ mã hóa phần cứng riêng) vừa rẻ hơn với các đặc điểm tương tự. Hầu hết các camera video hiện đại đều là những thiết bị điển hình có Linux trên bo mạch (nhưng kích thước RAM và bộ nhớ flash khiêm tốn hơn nhiều so với Raspberry Pi), cho phép bạn biên dịch lại và chạy hầu hết mọi phần mềm di động trên chúng.
Đôi khi, camera MIPI hoặc USB được thay thế bằng camera IP, vừa mạnh hơn (có bộ mã hóa phần cứng riêng) vừa rẻ hơn với các đặc điểm tương tự. Hầu hết các camera IP hiện đại đều là những thiết bị điển hình có Linux trên bo mạch (nhưng kích thước RAM và bộ nhớ flash khiêm tốn hơn nhiều so với Raspberry Pi), cho phép bạn biên dịch lại và chạy hầu hết mọi phần mềm di động trên chúng.
Trong khi làm việc với công nghệ này, ý tưởng đơn giản hóa hệ thống bay và chuyển tất cả phần mềm cần thiết trực tiếp sang camera IP đã xuất hiện. Về mặt kỹ thuật, firmware FPV của dự án OpenIPC là một bản lắp ráp đặc biệt với hai loại trình điều khiển của bộ điều hợp WiFi phổ biến, trình phát trực tuyến Majestic (thực hiện vai trò của GStreamer trong sơ đồ cổ điển trên hệ thống bộ phát) và [WFB-ng](https://github.com/svpcom/wifibroadcast).
Trong khi làm việc với công nghệ này, ý tưởng đơn giản hóa hệ thống bay và chuyển tất cả phần mềm cần thiết trực tiếp sang camera IP đã xuất hiện. Về mặt kỹ thuật, firmware FPV của dự án OpenIPC là một bản build đặc biệt với hai loại driver của các adapter WiFi phổ biến, Majestic Streamer (thực hiện vai trò của GStreamer trong sơ đồ cổ điển trên hệ thống phát) và [WFB-ng](https://github.com/svpcom/wifibroadcast).
### Lợi ích
@ -60,50 +60,50 @@ Trong khi làm việc với công nghệ này, ý tưởng đơn giản hóa h
### Nhược điểm
* Do tài nguyên hạn chế (RAM đã cài đặt và bộ nhớ vĩnh viễn), hầu hết các ngôn ngữ lập trình thịnh hành (như Java, Python, NodeJS) sẽ không được camera hỗ trợ. Nếu bạn thích viết bằng các ngôn ngữ này (hoặc muốn chuyển phần mềm được viết bằng các ngôn ngữ này sang camera), bạn sẽ phải sử dụng thêm NanoPi và sử dụng camera OpenIPC như một camera IP thông thường được kết nối với NanoPi(https://www.aliexpress.com/item/1005004679805441.html).
* Do tài nguyên hạn chế (RAM đã cài đặt và bộ nhớ vĩnh viễn), hầu hết các ngôn ngữ lập trình thịnh hành (như Java, Python, NodeJS) sẽ không được camera hỗ trợ. Nếu bạn thích viết bằng các ngôn ngữ này (hoặc muốn chuyển phần mềm được viết bằng các ngôn ngữ này sang camera), bạn sẽ phải sử dụng thêm NanoPi và sử dụng camera OpenIPC như một camera IP thông thường được kết nối với NanoPi (https://www.aliexpress.com/item/1005004679805441.html).
Thay thế bộ nhớ flash bằng bộ nhớ lớn hơn là một lựa chọn khác:
* Bạn sẽ phải thực hiện một số hàn để thay thế bộ nhớ trên bo mạch, nhưng tôi chắc chắn rằng không ai trong thế giới FPV sẽ bị điều này làm nản lòng
* Trong hầu hết các hệ thống, phiên bản kernel Linux bị giới hạn bởi nhà cung cấp camera IP do thực tế là một số mô-đun được cung cấp ở dạng nhị phân. Việc phát triển trình điều khiển kernel cho bộ điều hợp WiFi mới hoặc thiết bị ngoại vi cụ thể có thể tốn nhiều thời gian.
* Bạn sẽ phải thực hiện một số hàn để thay thế bộ nhớ trên bo mạch, nhưng tôi chắc chắn rằng không ai trong thế giới FPV sẽ bị điều này làm nản lòng.
* Trong hầu hết các hệ thống, phiên bản kernel Linux bị giới hạn bởi nhà cung cấp camera IP do thực tế là một số module được cung cấp ở dạng nhị phân. Việc phát triển driver kernel cho adapter WiFi mới hoặc thiết bị ngoại vi cụ thể có thể tốn nhiều thời gian.
* Trên các camera giá rẻ (mà firmware FPV được phát triển chủ yếu), tài nguyên rất hạn chế, vì vậy tại thời điểm viết bài viết này, không có khả năng chạy mạng nơ-ron. Tình hình sẽ thay đổi trong tương lai gần.
### Thành phần
* Camera IP. Xét đến mức độ phổ biến của model [VEYE 307](http://www.veye.cc/en/product/cs-mipi-imx307/) trong cộng đồng FPV, chúng tôi khuyên bạn nên mua bảng camera IP IVG-G2S do công ty XiongMai sản xuất với chính xác cảm biến IMX307, nhưng [với mức giá dễ chịu hơn](https://aliexpress.com/item/1005003386137528.html) (hoặc thậm chí [dễ chịu hơn nữa](https://item.taobao.com/item.htm?id=660122799616), nếu có khả năng mua trên Taobao, ví dụ: [thông qua trung gian](https://www.youcanbuy.ru/)). Khi đặt hàng bo mạch, hãy chỉ định tiêu cự của ống kính mà người bán sẽ đặt cho đơn hàng của bạn (tiêu cự lớn hơn - độ phóng đại lớn hơn, nhưng góc nhìn nhỏ hơn).
* Camera IP. Xét đến mức độ phổ biến của model [VEYE 307](http://www.veye.cc/en/product/cs-mipi-imx307/) trong cộng đồng FPV, chúng tôi khuyên bạn nên mua board camera IP IVG-G2S do công ty XiongMai sản xuất với chính xác cảm biến IMX307, nhưng [với mức giá dễ chịu hơn](https://aliexpress.com/item/1005003386137528.html) (hoặc thậm chí [dễ chịu hơn nữa](https://item.taobao.com/item.htm?id=660122799616), nếu có khả năng mua trên Taobao, ví dụ: [thông qua trung gian](https://www.youcanbuy.ru/)). Khi đặt hàng board, hãy chỉ định tiêu cự của ống kính mà người bán sẽ đặt cho đơn hàng của bạn (tiêu cự lớn hơn - độ phóng đại lớn hơn, nhưng góc nhìn nhỏ hơn).
Trong tương lai, ống kính có thể được thay đổi sang ống kính khác có cùng ren, hoặc mua ngay một số model để lựa chọn (tiêu chuẩn trong thế giới giám sát video được coi là 3,6mm).
Bảng camera IP được cấp nguồn từ 12V (thực tế 5V là đủ, nếu bạn không sử dụng nó như một camera video có đèn nền) và đối với các thử nghiệm ban đầu, nên sử dụng cáp nguồn-Ethernet kết hợp, có hai loại: 12V với [cấp nguồn qua jack cắm](https://aliexpress.com/item/32961238897.html) và PoE 48V chủ động (chọn tùy thuộc vào khả năng của bộ chuyển mạch mạng của bạn).
Board camera IP được cấp nguồn từ 12V (thực tế 5V là đủ, nếu bạn không sử dụng nó như một camera video có đèn nền) và đối với các thử nghiệm ban đầu, bạn nên sử dụng cáp nguồn-Ethernet kết hợp, có hai loại: 12V với [nguồn điện qua jack cắm](https://aliexpress.com/item/32961238897.html) và PoE 48V chủ động (chọn tùy thuộc vào khả năng của bộ chuyển mạch mạng của bạn).
* Bộ chuyển đổi WiFi. Hiện tại, firmware FPV hỗ trợ hai loại trình điều khiển cho chip RT8812au và AR9271 (nhưng về nguyên tắc không ai ngăn cản việc thêm các bộ điều hợp khác). Nên sử dụng các bộ điều hợp giống nhau ở cả hai phía của liên kết (hơn nữa, lấy chúng từ cùng một lô theo cặp) và chỉ sử dụng tần số 5GHz do quá tải hoàn toàn 2,4GHz. Firmware được thử nghiệm với hai bộ điều hợp trên [RT8812au](https://aliexpress.ru/item/32664378094.html) và [AR9271](https://aliexpress.co/item/32884675724.html) (chip được đề cập cuối cùng chỉ hoạt động trên tần số 2,4GHz).
* Adapter WiFi. Hiện tại, firmware FPV hỗ trợ hai loại driver cho chip RT8812au và AR9271 (nhưng về nguyên tắc, không ai cản trở việc thêm các adapter khác). Bạn nên sử dụng các adapter giống nhau ở cả hai phía của liên kết (hơn nữa, hãy lấy chúng từ cùng một lô theo cặp) và chỉ sử dụng tần số 5GHz do băng tần 2.4GHz đã quá tải. Firmware được thử nghiệm với hai adapter trên [RT8812au](https://aliexpress.ru/item/32664378094.html) và [AR9271](https://aliexpress.co/item/32884675724.html) (chip được đề cập cuối cùng chỉ hoạt động trên tần số 2.4GHz).
* [Bộ chuyển đổi UART-USB](https://aliexpress.com/item/1005001625391776.html) ở 3.3V. Lưu ý rằng việc sử dụng bộ chuyển đổi 5V có thể làm hỏng camera của bạn. Không mua/sử dụng bộ chuyển đổi dựa trên [PL2303](https://aliexpress.com/item/704553060.html), mặc dù chúng rẻ hơn, nhưng chúng sẽ không hoạt động với SoC này. Bộ lập trình được đề cập trong đoạn trước có thể hoạt động với bộ chuyển đổi UART, vì vậy nếu bạn có, bạn không cần phải mua một bộ chuyển đổi riêng.
* [Bộ chuyển đổi UART-USB](https://aliexpress.com/item/1005001625391776.html) ở mức 3.3V. Lưu ý rằng việc sử dụng adapter 5V có thể làm hỏng camera của bạn. Không mua/sử dụng adapter dựa trên [PL2303](https://aliexpress.com/item/704553060.html), mặc dù chúng rẻ hơn, nhưng chúng sẽ không hoạt động với SoC này. Bộ lập trình được đề cập trong đoạn trước có thể hoạt động với adapter UART, vì vậy nếu bạn có, bạn không cần phải mua một adapter riêng.
* [Đầu nối với đầu nối loại JST 1.25](https://aliexpress.com/item/32863841787.html) trong cấu hình `3 chân``8 chân` để kết nối với cổng UART của camera và thay thế cáp nguồn-Ethernet tiêu chuẩn trong phiên bản bay.
Tùy chọn:
* Chip bộ nhớ flash SPI NOR 16 megabyte trở lên để thay thế chip 8 megabyte tiêu chuẩn. Chúng tôi khuyên dùng [W25Q128FVIQ](https://www.aliexpress.com/item/1005003093500630.html) hoặc [bất kỳ chip nào khác](https://www.winbond.com/hq/product/code-storage-flash-memory/serial-nor-flash/?__locale=en&selected=128Mb#Density) tương thích với firmware (mô-đun mới cũng có thể được thêm vào dự án bằng ID chip). Xin lưu ý rằng có rất nhiều hàng nhái Winbond trên thị trường và bạn nên lựa chọn người bán cẩn thận.
* Chip bộ nhớ flash SPI NOR 16 megabyte trở lên để thay thế chip 8 megabyte tiêu chuẩn. Chúng tôi khuyên dùng [W25Q128FVIQ](https://www.aliexpress.com/item/1005003093500630.html) hoặc [bất kỳ chip nào khác](https://www.winbond.com/hq/product/code-storage-flash-memory/serial-nor-flash/?__locale=en&selected=128Mb#Density) tương thích với firmware (có thể thêm module mới vào dự án bằng ID chip). Xin lưu ý rằng có rất nhiều hàng nhái Winbond trên thị trường và bạn nên chọn người bán cẩn thận.
* [Bộ lập trình SPI NOR cho bộ nhớ flash](https://aliexpress.com/item/32902635911.html). Về nguyên tắc, bạn có thể làm mà không cần nó bằng cách sử dụng dự án [burn][github_burn], cho phép bạn flash tệp hệ thống vào flash trống/bị hỏng (xem phần [Điền hình ảnh vào flash trống/bị hỏng](https://github.com/OpenIPC/burn). phần [Flash hình ảnh vào flash trống bằng burn](#đổ-hình-ảnh-vào-flash-trống-bằng-cách-sử-dụng-burn-nếu-bạn-không-có-bộ-lập-trình)). Lưu ý rằng mặc dù nhiều bộ lập trình có "kẹp quần áo" trong bộ dụng cụ, nhưng hoàn toàn không thể dump/lập trình bộ nhớ flash trực tiếp trên bảng, do thực tế là bộ lập trình bên cạnh chip cũng sẽ cấp nguồn cho phần còn lại của bảng (có cách để khắc phục vấn đề này bằng cách cắt chân VCC).
* [Bộ lập trình SPI NOR cho bộ nhớ flash](https://aliexpress.com/item/32902635911.html). Về nguyên tắc, bạn có thể thực hiện mà không cần nó bằng cách sử dụng dự án [burn][github_burn], cho phép bạn flash tệp hệ thống vào flash trống/hỏng (xem phần [Điền hình ảnh vào flash trống/hỏng](https://github.com/OpenIPC/burn), phần [Flash hình ảnh vào flash trống bằng burn](#đổ-hình-ảnh-lên-flash-trống-bằng-burn-nếu-bạn-không-có-bộ-lập-trình)). Lưu ý rằng mặc dù nhiều bộ lập trình có "kẹp quần áo" trong bộ dụng cụ, nhưng hoàn toàn không thể dump/lập trình bộ nhớ flash trực tiếp trên board, do bộ lập trình bên cạnh chip cũng sẽ cấp nguồn cho phần còn lại của board (có cách để khắc phục vấn đề này bằng cách cắt chân VCC).
* [Bộ tản nhiệt SoC](https://aliexpress.com/item/32859349038.html) được chào đón (như thường lệ không được nhà sản xuất cài đặt do giá rẻ).
* [Bộ tản nhiệt SoC](https://aliexpress.com/item/32859349038.html) được khuyến khích (thường không được nhà sản xuất cài đặt do muốn giảm giá thành).
* [Ống kính nhanh F0.95](https://aliexpress.com/item/32876034491.html) (các tùy chọn khác là [một](https://aliexpress.com/item/32957334039.html) và [hai](https://aliexpress.com/item/4000142214594.html)) để tận dụng tối đa cảm biến Sony IMX307 và tận hưởng chuyến bay vào ban đêm.
* [Ống kính zoom 2.8-12mm](https://aliexpress.com/item/32809397197.html). Xin lưu ý rằng bộ dụng cụ đi kèm với bảng camera IP dựa trên HiSilicon 3516EV100 lỗi thời, cũng có thể được flash lại thành OpenIPC. Vì bo mạch điều khiển động cơ giao tiếp với bo mạch chính thông qua UART, bạn sẽ phải giải quyết một cách sáng tạo vấn đề ghép kênh hai cổng UART hoặc xuất ra các chân chưa hàn.
* [Ống kính zoom 2.8-12mm](https://aliexpress.com/item/32809397197.html). Xin lưu ý rằng bộ dụng cụ đi kèm với board camera IP dựa trên HiSilicon 3516EV100 lỗi thời, cũng có thể được flash lại thành OpenIPC. Vì board điều khiển động cơ giao tiếp với board chính thông qua UART, bạn sẽ phải giải quyết một cách sáng tạo vấn đề ghép kênh hai cổng UART hoặc xuất ra các chân chưa hàn.
* [Đầu nối FPC 16 chân](https://aliexpress.com/item/33013766973.html) để hàn kết nối với bộ chuyển đổi USB tốt hơn và [cáp](https://aliexpress.com/item/32958943450.html) tương ứng.
* [Đầu nối FPC 16 chân](https://aliexpress.com/item/33013766973.html) để hàn kết nối với adapter USB tốt hơn và [cáp](https://aliexpress.com/item/32958943450.html) tương ứng.
Có hai biến thể sử dụng firmware OpenIPC trên bảng đang xem xét: với việc thay thế bộ nhớ flash bằng bộ nhớ dung lượng cao hơn (để cài đặt các chương trình của riêng bạn) và không cần thay thế (dễ dàng hơn, nhưng trong trường hợp này, khả năng mở rộng hơn nữa của hệ thống mới sẽ rất hạn chế). Cả hai tùy chọn này sẽ được thảo luận từng bước bên dưới:
Có hai cách để sử dụng firmware OpenIPC trên board đang xem xét: thay thế bộ nhớ flash bằng bộ nhớ có dung lượng cao hơn (để cài đặt chương trình của riêng bạn) và không cần thay thế (dễ dàng hơn, nhưng trong trường hợp này, khả năng mở rộng hơn nữa của hệ thống mới sẽ rất hạn chế). Cả hai tùy chọn này sẽ được thảo luận từng bước bên dưới:
### Cài đặt trên camera (bắt đầu chung)
* Kết nối cáp với camera và kiểm tra xem nó có hoạt động không (địa chỉ IP mặc định là 192.168.1.10, liên kết cho VLC `"rtsp://192.168.1.10/user=admin&password=&channel=0&stream=0"`).
* Hàn đầu nối UART ba dây vào các miếng đệm trống trên bảng camera
* Hàn đầu nối UART ba dây vào các miếng đệm trống trên board camera
<p align="center">
<img src="https://github.com/OpenIPC/wiki/blob/master/images/fpv-imx307-uart.jpg?raw=true" alt="Logo"/>
</p>
* Kết nối bộ chuyển đổi UART-USB với máy tính (tốc độ cổng 115200N1, điều khiển luồng bị vô hiệu hóa, bộ chuyển đổi nên được đặt thành 3,3V, không phải 5V) và kiểm tra xem khi camera được bật, dữ liệu đang được xuất ra và bạn có thể hủy bỏ tải xuống qua `Ctrl-C` (cả hai dòng RX và TX đều hoạt động).
* Kết nối bộ chuyển đổi UART-USB với máy tính (tốc độ cổng 115200N1, điều khiển luồng bị vô hiệu hóa, adapter nên được đặt thành 3.3V, không phải 5V) và kiểm tra xem khi bật camera, dữ liệu đang được xuất ra và bạn có thể hủy tải xuống bằng `Ctrl-C` (cả hai dòng RX và TX đều hoạt động).
### Cài đặt bằng IP Cam DMS (không hàn flash)
@ -111,33 +111,33 @@ Có hai biến thể sử dụng firmware OpenIPC trên bảng đang xem xét: v
* Tải xuống [kho lưu trữ đặc biệt](https://github.com/OpenIPC/coupler/releases/download/latest/000659A7_fpv_IPC_GK7205V200_50H20AI_S38.bin) và thực hiện nâng cấp firmware, điều này sẽ giúp chuyển đổi liền mạch từ firmware gốc sang OpenIPC.
> Lưu ý! Mặc dù đây là cách dễ nhất để flash firmware, nhưng nó có một số nhược điểm:
> * Nó sẽ không sao lưu firmware gốc. Có khả năng bạn cần bản sao lưu để trích xuất một số thông số quan trọng từ firmware gốc. Vì vậy, ngay cả khi bạn chắc chắn 100% rằng bạn không cần firmware gốc, thì việc có bản sao lưu vẫn là một ý kiến hay.
> * Trên thực tế, chỉ có phiên bản fpv dựng sẵn cho bảng IPC_GK7205V200_50H20AI_S38. Đối với các bảng khác, bạn cần tìm và flash phiên bản lite trước. Vì vậy, việc sử dụng loại cài đặt này cho các bảng khác ngoài IPC_GK7205V200_50H20AI_S38 là vô nghĩa.
> * Nó sẽ không sao lưu firmware gốc. Có khả năng bạn cần bản sao lưu để trích xuất một số thông số quan trọng từ firmware gốc. Vì vậy, ngay cả khi bạn chắc chắn 100% rằng bạn không cần firmware gốc, thì việc có bản sao lưu vẫn là một ý tưởng hay.
> * Trên thực tế, chỉ có phiên bản FPV được build sẵn dành cho board IPC_GK7205V200_50H20AI_S38. Đối với các board khác, bạn cần tìm và flash phiên bản lite trước. Vì vậy, việc sử dụng loại cài đặt này cho các board khác ngoài IPC_GK7205V200_50H20AI_S38 là vô nghĩa.
### Cài đặt bằng burn (không hàn flash)
Điều này sẽ hoạt động ngay cả khi bạn đã khóa bootloader hoặc flash sai bootloader vào flash SPI.
* Trên máy trạm, cài đặt máy chủ TFTP
* Tìm SoC của bạn trên [openIPC][supported_hardware] và Tạo `Hướng dẫn Cài đặt` (lưu ý: chọn chip nhớ NOR 8M ngay cả khi bạn có chip 16M hoặc 32M vì không có phiên bản fpv cho những cấu hình đó. Đừng lo lắng sau lần khởi động đầu tiên, hệ thống tệp lớp phủ sẽ được mở rộng.)
Cách này sẽ hoạt động ngay cả khi bạn đã khóa bootloader hoặc flash bootloader sai vào flash SPI.
* Trên máy trạm, cài đặt máy chủ TFTP.
* Tìm SoC của bạn trên [openIPC][supported_hardware] và Tạo `Hướng dẫn Cài đặt` (lưu ý: chọn chip nhớ NOR 8M ngay cả khi bạn có chip 16M hoặc 32M vì không có phiên bản FPV cho những cấu hình đó. Đừng lo lắng sau lần khởi động đầu tiên, hệ thống tệp overlay sẽ được mở rộng.)
* Có một video hướng dẫn cho tiện ích [burn][github_burn]: [Danh sách phát Tiện ích OpenIPC BURN][youtube_burn]. Chỉ cần chọn video cho hệ điều hành của bạn và làm theo hướng dẫn.
* Ở cuối video hướng dẫn, bạn sẽ ở thiết bị đầu cuối với bootloader đã được mở khóa. Đừng đóng nó, bạn sẽ cần nó sau.
* Đảm bảo máy chủ TFTP đang chạy và bạn đã tải xuống firmware OpenIPC từ `Hướng dẫn Cài đặt` vào đúng vị trí
* Ở cuối video hướng dẫn, bạn sẽ ở terminal với bootloader đã được mở khóa. Đừng đóng nó, bạn sẽ cần nó sau.
* Đảm bảo máy chủ TFTP đang chạy và bạn đã tải xuống firmware OpenIPC từ `Hướng dẫn Cài đặt` vào đúng vị trí.
* Làm theo `Hướng dẫn Cài đặt` từ bước thứ hai đến:
- Lưu firmware gốc
- Flash hình ảnh Firmware OpenIPC đầy đủ
- Lưu firmware gốc.
- Flash image Firmware OpenIPC đầy đủ.
### Cài đặt trên camera (thay thế flash)
* Tắt camera, tháo chip flash SPI NOR 8 megabyte ban đầu và dump nó bằng bộ lập trình để phòng trường hợp. Nên tháo chip bằng [súng hàn khí nóng](https://aliexpress.com/item/32980690787.html), nhưng nếu bạn thực sự muốn, bạn có thể sử dụng mỏ hàn thông thường [như Alexey Tolstov đề xuất](https://www.youtube.com/watch?v=M69JiBtuqq8) hoặc [như thế này](https://www.youtube.com/watch?v=dspjVDv7hck). Sau khi tháo chip, các miếng đệm phải được làm sạch cặn hàn bằng một đoạn cáp đồng.
Khi làm việc với súng hàn khí nóng, bạn nên tháo ống kính và cách ly các thành phần khác, đặc biệt là các đầu nối bằng nhựa bằng [băng keo kapton](https://aliexpress.com/item/1005003563721341.html) (trong trường hợp cực đoan, bằng giấy bạc thanh sô cô la). Không bao giờ [sử dụng hợp kim Rose](https://habr.com/ru/post/437778/). Nếu bạn không giỏi sử dụng ngón tay, cách dễ nhất là đến dịch vụ sửa chữa điện thoại di động gần nhất và cho thợ xem một phần của hướng dẫn này.
* Tắt camera, tháo chip flash SPI NOR 8 MB ban đầu và dump nó bằng bộ lập trình để phòng trường hợp. Nên tháo chip bằng [súng hàn khí nóng](https://aliexpress.com/item/32980690787.html), nhưng nếu bạn thực sự muốn, bạn có thể sử dụng mỏ hàn thông thường [như Alexey Tolstov đề xuất](https://www.youtube.com/watch?v=M69JiBtuqq8) hoặc [như thế này](https://www.youtube.com/watch?v=dspjVDv7hck). Sau khi tháo chip, các miếng đệm phải được làm sạch cặn hàn bằng một đoạn cáp đồng.
Khi làm việc với súng hàn khí nóng, bạn nên tháo ống kính và cách ly các thành phần khác, đặc biệt là các đầu nối bằng nhựa bằng [băng keo Kapton](https://aliexpress.com/item/1005003563721341.html) (trong trường hợp cực đoan, bằng giấy bạc thanh sô cô la). Không bao giờ [sử dụng hợp kim Rose](https://habr.com/ru/post/437778/). Nếu bạn không giỏi sử dụng ngón tay, cách dễ nhất là đến dịch vụ sửa chữa điện thoại di động gần nhất và cho thợ xem một phần của hướng dẫn này.
<p align="center">
<img src="https://github.com/OpenIPC/wiki/blob/master/images/fpv-imx307-spinor.jpg?raw=true" alt="Logo"/>
</p>
* Điền [U-Boot](https://github.com/OpenIPC/firmware/releases/download/latest/u-boot-gk7205v200-universal.bin) vào flash 16 megabyte mới (ở đầu bộ nhớ) và hàn nó vào bo mạch. Xác minh rằng U-Boot khởi động và bạn đến được dấu nhắc.
* Trên máy trạm, cài đặt máy chủ TFTP, tải xuống và giải nén vào [kho lưu trữ](https://github.com/OpenIPC/firmware/releases/download/latest/openipc.gk7205v200-nor-fpv.tgz) thư mục với firmware FPV
* Cung cấp các lệnh trong U-Boot (trong đó `192.168.1.17` là máy chủ TFTP của bạn và `192.168.1.33` là địa chỉ được gán tạm thời cho camera):
* Flash [U-Boot](https://github.com/OpenIPC/firmware/releases/download/latest/u-boot-gk7205v200-universal.bin) vào flash 16 megabyte mới (ở đầu bộ nhớ) và hàn nó vào board. Xác minh rằng U-Boot khởi động và bạn đến được dấu nhắc lệnh.
* Trên máy trạm, cài đặt máy chủ TFTP, tải xuống và giải nén [kho lưu trữ](https://github.com/OpenIPC/firmware/releases/download/latest/openipc.gk7205v200-nor-fpv.tgz) chứa firmware FPV.
* Nhập các lệnh trong U-Boot (trong đó `192.168.1.17`địa chỉ máy chủ TFTP của bạn và `192.168.1.33` là địa chỉ IP tạm thời của camera):
```
setenv ipaddr 192.168.1.33; setenv serverip 192.168.1.17; saveenv
@ -148,16 +148,16 @@ Khi làm việc với súng hàn khí nóng, bạn nên tháo ống kính và c
### Cài đặt trên camera (hoàn thiện chung)
* Sau khi khởi động hệ thống, hãy xác minh rằng nó đã nhận được địa chỉ IP qua Ethernet (có thể truy cập qua SSH qua root@<địa chỉ IP của camera> mà không cần mật khẩu hoặc mật khẩu: 12345). Sử dụng hệ điều hành hiện đại và tên `openipc.local`, bạn có thể tìm thấy camera trong mạng cục bộ mà không cần biết địa chỉ IP của nó.
* Hàn GND, DP và DM vào các miếng đệm USB (nguồn điện USB 5V không nên được kết nối với bo mạch do mức tiêu thụ điện năng cao của bộ chuyển đổi) và riêng biệt 5V và GND để cấp nguồn cho bộ chuyển đổi WiFi (có thể thông qua bộ chuyển đổi DC-DC bổ sung tùy thuộc vào mạch của bạn). Dây USB đi đến bo mạch phải được cố định bằng dây buộc cáp để tránh làm gãy các chân trên miếng đệm tiếp xúc:
* Sau khi khởi động hệ thống, hãy xác minh rằng nó đã nhận được địa chỉ IP qua Ethernet (có thể truy cập qua SSH thông qua `root@<địa chỉ IP của camera>` mà không cần mật khẩu hoặc mật khẩu: 12345). Sử dụng hệ điều hành hiện đại và tên `openipc.local`, bạn có thể tìm thấy camera trong mạng cục bộ mà không cần biết địa chỉ IP của nó.
* Hàn GND, DP và DM vào các miếng đệm USB (nguồn điện USB 5V không nên được kết nối với board do mức tiêu thụ điện năng cao của adapter) và riêng biệt 5V và GND để cấp nguồn cho adapter WiFi (có thể thông qua bộ chuyển đổi DC-DC bổ sung tùy thuộc vào mạch của bạn). Dây USB đi đến board phải được cố định bằng dây buộc cáp để tránh làm gãy các chân trên miếng đệm tiếp xúc:
<p align="center">
<img src="https://github.com/OpenIPC/wiki/blob/master/images/fpv-pinout.jpg?raw=true" width="50%/">
<img src="https://github.com/OpenIPC/wiki/blob/master/images/fpv-usb-colors.jpg?raw=true" width="50%/">
</p>
* Kiểm tra xem một thiết bị mới đã xuất hiện sau khi khởi động qua lệnh `lsusb`
* Kiểm tra xem lệnh `free -m` cung cấp __ít nhất__ 34 megabyte RAM hệ thống (phần còn lại là bộ nhớ video), nếu không, bạn có thể nhận được trình diệt OOM khi đang bay (có thể khắc phục qua `fw_printenv bootargs / fw_setenv` với hiệu chỉnh osmem=40M):
* Kiểm tra xem thiết bị mới đã xuất hiện sau khi khởi động thông qua lệnh `lsusb`.
* Kiểm tra xem lệnh `free -m` có cung cấp __ít nhất__ 34 megabyte RAM hệ thống hay không (phần còn lại là bộ nhớ video), nếu không, bạn có thể gặp phải trình diệt OOM khi đang bay (có thể khắc phục bằng cách sử dụng `fw_printenv bootargs / fw_setenv` với hiệu chỉnh `osmem=40M`):
```
root@openipc-gk7205v200:~# free -m
@ -168,7 +168,7 @@ Swap: 0 0 0
### Kiểm tra hoạt động của trạm mặt đất (trên máy tính để bàn)
* Kết nối bộ chuyển đổi thứ hai với máy tính để bàn và biên dịch trình điều khiển hoạt động ở chế độ giám sát (xem tài liệu dự án có liên quan) và tải nó qua `insmod` nếu cần thiết.
* Kết nối adapter thứ hai với máy tính để bàn và biên dịch driver hoạt động ở chế độ giám sát (xem tài liệu dự án có liên quan) và tải nó qua `insmod` nếu cần.
* Kích hoạt giao diện (trong ví dụ này là `wlan0` và chỉ định [kênh](https://en.wikipedia.org/wiki/List_of_WLAN_channels)) (trong ví dụ này là `14`):
```
sudo ip link set wlan0 down
@ -176,9 +176,9 @@ sudo iw wlan0 set monitor control
sudo iwconfig wlan0 channel 14
sudo ip link set wlan0 up
```
* Đảm bảo rằng cùng một tần số được đặt trên các bộ điều hợp WiFi của camera và máy tính để bàn thông qua lệnh `iwconfig`, nếu cần, hãy thay đổi tần số bằng cách chỉnh sửa `/etc/wfb.conf` trên camera (tham số `channel`) hoặc `sudo iwconfig <tên bộ chuyển đổi> channel <số>` trên máy tính để bàn.
* Biên dịch từ nguồn [WFB-ng](https://github.com/svpcom/wifibroadcast), __phải sử dụng nhánh stable__, sao chép `./etc/gs.key` từ camera IP sang máy tính để bàn và chạy nhận `sudo ./wfb_rx -p 0 -u 5600 -K gs.key -i 7669206 wlan0`.
* Kiểm tra xem đầu ra của bảng điều khiển
* Đảm bảo rằng cùng một tần số được đặt trên adapter WiFi của camera và máy tính để bàn thông qua lệnh `iwconfig`, nếu cần, hãy thay đổi tần số bằng cách chỉnh sửa `/etc/wfb.conf` trên camera (tham số `channel`) hoặc `sudo iwconfig <tên adapter> channel <số>` trên máy tính để bàn.
* Biên dịch từ nguồn [WFB-ng](https://github.com/svpcom/wifibroadcast), **phải sử dụng nhánh stable**, sao chép `./etc/gs.key` từ camera IP sang máy tính để bàn và chạy nhận `sudo ./wfb_rx -p 0 -u 5600 -K gs.key -i 7669206 wlan0`.
* Kiểm tra xem đầu ra của console
```
32168228 PKT 0:0:0:0:0:0
32169229 PKT 0:0:0:0:0:0
@ -198,26 +198,26 @@ thay đổi thành
32180236 ANT 1 250:-54:-52:-50
32180236 ANT 0 250:-48:-45:-44
```
* Chạy Gstreamer `gst-launch-1.0 -vvvv udpsrc port=5600 ! application/x-rtp,encoding-name=H264,payload=96 ! rtph264depay ! h264parse ! queue ! avdec_h264 ! autovideosink sync=false -e` và kiểm tra chất lượng hình ảnh
* Chạy Gstreamer `gst-launch-1.0 -vvvv udpsrc port=5600 ! application/x-rtp,encoding-name=H264,payload=96 ! rtph264depay ! h264parse ! queue ! avdec_h264 ! autovideosink sync=false -e` và kiểm tra chất lượng hình ảnh.
### Phát triển trạm mặt đất, đo từ xa
### Phát triển trạm mặt đất, telemetry
Giả sử rằng máy Linux đã cài đặt wfb-ng theo hướng dẫn từ [bắt đầu nhanh bằng ubuntu](https://github.com/svpcom/wfb-ng#quick-start-using-ubuntu-ground-station). Các ví dụ sau sử dụng Hubuntu 18.04 LTS và wfb-ng 22.09.
Giả sử máy Linux đã cài đặt wfb-ng theo hướng dẫn từ [bắt đầu nhanh bằng Ubuntu](https://github.com/svpcom/wfb-ng#quick-start-using-ubuntu-ground-station). Các ví dụ sau sử dụng Ubuntu 18.04 LTS và wfb-ng 22.09.
* Chạy wfb-ng, khởi động bảng điều khiển wfb-cli:
* Chạy wfb-ng, khởi động console wfb-cli:
```
sudo systemctl restart wifibroadcast@gs
wfb-cli gs
```
* Đảm bảo rằng các gói video đang phát trực tuyến. Tại đây bạn cũng có thể thấy các giá trị RSSI của ăng-ten bộ chuyển đổi WiFi:
* Đảm bảo rằng các gói video đang phát trực tuyến. Tại đây, bạn cũng có thể thấy các giá trị RSSI của ăng-ten bộ chuyển đổi WiFi:
![wfb-cli-video](../images/wfb-cli_video_only.png)
Nếu giá trị recv vẫn bằng 0 và giá trị d_err tăng lên, thì các khóa camera và trạm mặt đất có thể không khớp. Đảm bảo rằng /etc/gs.key được sao chép vào trạm mặt đất. Nếu không có gói nào hiện diện - hãy đảm bảo rằng `channel=xx` trong /etc/wfb.conf trên camera và `wifi_channel=xx` trong /etc/wifibroadcast.cfg trên mặt đất có cùng giá trị. Đối với dải tần 5,8 GHz của bộ chuyển đổi RTL8812AU, nên sử dụng các kênh từ 60 trở lên.
Nếu giá trị `recv` vẫn bằng 0 và giá trị `d_err` tăng lên, thì có thể các khóa của camera và trạm mặt đất không khớp. Đảm bảo rằng `/etc/gs.key` đã được sao chép vào trạm mặt đất. Nếu không có gói nào xuất hiện, hãy đảm bảo rằng `channel=xx` trong `/etc/wfb.conf` trên camera và `wifi_channel=xx` trong `/etc/wifibroadcast.cfg` trên trạm mặt đất có cùng giá trị. Đối với dải tần 5,8 GHz của bộ chuyển đổi RTL8812AU, nên sử dụng các kênh từ 60 trở lên.
* Cấu hình bộ điều khiển bay trong ArduPilot để xuất dữ liệu đo từ xa ở định dạng mavlink1 ở tốc độ 115200 trên ví dụ: cổng Serial1. Trong trường hợp đo từ xa một chiều (chỉ liên kết xuống), hãy đảm bảo rằng FC xuất ra luồng dữ liệu đo từ xa cần thiết theo mặc định, mà không cần kết nối với trạm mặt đất. Điều này được thực hiện thông qua việc đặt các tham số SR1_xxx, hãy xem [các tham số mavlink SR_]. [các tham số mavlink SR_](https://ardupilot.org/dev/docs/mavlink-requesting-data.html).
* Kết nối Serial1 của FC với UART của camera, rx với tx, tx với rx. Trong trường hợp FC hiện đại trên STM32F4/7, mức điện áp giống nhau (3,3V), trong trường hợp APM 5V, sẽ cần chuyển đổi mức. Điểm tinh tế là trình nạp khởi động U-Boot của camera sẽ dừng khi khởi động sau khi nhận được bất kỳ byte nào trên đầu vào UART. PC nên bắt đầu xuất ra dữ liệu đo từ xa c bị trì hoãn vài giây, thông qua việc đặt tham số TELEM_DELAY. Trên bảng, dễ dàng hơn để cung cấp một khoảng trống trong dòng từ FC đến camera.
* Trên camera trong tệp /etc/datalink.conf đặt tham số `telemetry=true`, trong tệp /etc/telemetry.conf đặt tham số `one_way=true` cho đo từ xa một chiều hoặc `one_way=false` cho đo từ xa hai dòng tương ứng. Cách đơn giản nhất để chỉnh sửa tệp trên camera là Shell Link trong Midnight Commander:
* Cấu hình bộ điều khiển bay trong ArduPilot để xuất dữ liệu đo từ xa ở định dạng mavlink1 với tốc độ 115200, ví dụ: trên cổng Serial1. Trong trường hợp đo từ xa một chiều (chỉ liên kết xuống), hãy đảm bảo rằng bộ điều khiển bay (FC) xuất ra luồng dữ liệu đo từ xa theo yêu cầu theo mặc định, mà không cần kết nối với trạm mặt đất. Điều này được thực hiện thông qua việc cài đặt các tham số `SR1_xxx`, hãy xem [tham số mavlink SR_]. [tham số mavlink SR_](https://ardupilot.org/dev/docs/mavlink-requesting-data.html).
* Kết nối Serial1 của FC với UART của camera, rx với tx, tx với rx. Trong trường hợp FC hiện đại trên STM32F4/7, mức điện áp giống nhau (3,3V), trong trường hợp APM 5V, sẽ cần chuyển đổi mức. Điểm tinh tế là bootloader U-Boot của camera sẽ dừng khi khởi động sau khi nhận được bất kỳ byte nào trên đầu vào UART. PC nên bắt đầu xuất ra dữ liệu đo từ xa bị trì hoãn vài giây, thông qua việc đặt tham số `TELEM_DELAY`. Trên bảng, dễ dàng hơn để tạo một khoảng trống trong đường dây từ FC đến camera.
* Trên camera, trong tệp `/etc/datalink.conf`, hãy đặt tham số `telemetry=true`, trong tệp `/etc/telemetry.conf`, hãy đặt tham số `one_way=true` cho đo từ xa một chiều hoặc `one_way=false` cho đo từ xa hai chiều tương ứng. Cách đơn giản nhất để chỉnh sửa tệp trên camera là Shell Link trong Midnight Commander:
*
![mc_shell_link](../images/MC_shell_link.png)
* Khởi động lại camera và dịch vụ wfb-ng. Luồng dữ liệu thứ hai - đo từ xa - sẽ xuất hiện trong wfb-cli:
@ -241,18 +241,18 @@ Bạn có thể thấy rằng QGS cũng đã hiển thị video. Độ trễ tro
### Xử lý sự cố
* Thông qua lệnh `sudo tcpdump -i wlan0` trên máy tính để bàn mà không cần chạy WFG-ng, bạn có thể xác minh rằng bộ phát thực sự đang gửi các gói qua mạng không dây:
* Thông qua lệnh `sudo tcpdump -i wlan0` trên máy tính để bàn mà không cần chạy WFB-NG, bạn có thể xác minh rằng bộ phát thực sự đang gửi các gói qua mạng không dây:
![Tcpdump](../images/fpv-tcpdump.jpg)
### Đổ hình ảnh vào flash trống bằng cách sử dụng burn (nếu bạn không có bộ lập trình)
### Flash image vào flash trống bằng cách sử dụng burn (nếu bạn không có bộ lập trình)
Chạy [burn](https://github.com/OpenIPC/burn) với bảng đã tắt:
```
./burn --chip gk7205v200 --file=u-boot-gk7205v200-universal.bin -d ; screen -L /dev/ttyUSB0 115200
```
bật nguồn bảng và đợi U-Boot được lấp đầy và dòng lệnh xuất hiện. Sau đó, chúng ta thực thi các lệnh sau, trong đó `192.168.0.8` là địa chỉ máy chủ TFTP và `192.168.0.200` là địa chỉ IP tạm thời của camera.
Bật nguồn cho board và đợi U-Boot được điền và dòng lệnh xuất hiện. Sau đó, chúng ta thực thi các lệnh sau, trong đó `192.168.0.8` là địa chỉ máy chủ TFTP và `192.168.0.200` là địa chỉ IP tạm thời của camera.
```
setenv ipaddr 192.168.0.200
@ -276,12 +276,15 @@ reset
### Tinh chỉnh thêm
#### Phát triển bảng bộ chuyển đổi
#### Phát triển bảng adapter
Có tính đến việc theo văn bản ở trên, chúng tôi đã hoàn thiện bảng từ một camera giám sát video giá rẻ thông thường và việc lắp đặt đầu nối USB được thực hiện mà không có đầu nối của nhà máy, người ta đề xuất tạo một bảng đặc biệt bổ sung (tương tự như [bảng có bộ chuyển đổi WiFi tích hợp sẵn](https://aliexpress.com/item/1005002369013873.html), sẽ có đầu nối cho USB (có thể có trung tâm bổ sung) và thẻ SD. Điều này sẽ cho phép phát sóng video với độ trễ tối thiểu ở 720p, đồng thời ghi lại bản gốc ở 1080p để xuất bản sau trên YouTube). Nếu bạn có khả năng thiết kế một bảng như vậy và chia sẻ mạch với cộng đồng, chúng tôi sẽ rất biết ơn.
Có tính đến việc theo văn bản ở trên, chúng tôi đã hoàn thiện board từ một camera giám sát video giá rẻ thông thường và việc lắp đặt đầu nối USB được thực hiện mà không có đầu nối của nhà máy, người ta đề xuất tạo thêm một board đặc biệt (tương tự như [board có adapter WiFi tích hợp](https://aliexpress.com/item/1005002369013873.html), sẽ có đầu nối cho USB (có thể có thêm hub) và thẻ SD. Điều này sẽ cho phép phát sóng video với độ trễ tối thiểu ở 720p, đồng thời ghi lại bản gốc ở 1080p để xuất bản sau trên YouTube). Nếu bạn có khả năng thiết kế board như vậy và chia sẻ mạch với cộng đồng, chúng tôi sẽ rất biết ơn.
### Câu hỏi thường gặp
#### Camera tiêu thụ bao nhiêu trong quá trình hoạt động?
#### Camera tiêu thụ bao nhiêu năng lượng trong quá trình hoạt động?
Mức tiêu thụ phụ thuộc vào việc cảm biến có được bật hay không (bản thân nó là một trong những người tiêu dùng lớn) và theo các phép đo của chúng tôi là 1,7W ở chế độ hoạt động và 1,1W khi cảm biến bị tắt (nhưng hệ thống chính đang chạy). Từ đó chúng ta có thể kết luận rằng nếu cần thiết, chúng ta có thể tắt/bật trình phát trực tuyến theo chương trình để
Mức tiêu thụ phụ thuộc vào việc cảm biến có được bật hay không (bản thân nó là một trong những bộ phận tiêu thụ nhiều năng lượng) và theo các phép đo của chúng tôi là 1,7W ở chế độ hoạt động và 1,1W khi cảm biến bị tắt (nhưng hệ thống chính đang chạy). Từ đó, chúng ta có thể kết luận rằng nếu cần thiết, chúng ta có thể tắt/bật trình phát trực tuyến theo chương trình để giảm mức tiêu thụ hệ thống hơn nữa vào những thời điểm cần thiết.
Ngoài ra, cần xem xét:
* Khả năng tắt bộ điều hợp Ethernet theo chương trình N phút sau khi hệ thống khởi động (sắp xếp hoạt động ngay sau khi khởi động để cho phép thay đổi cấu

View File

@ -4,67 +4,72 @@
Bảng thuật ngữ IPC
------------
- 3D-DNR - Giảm nhiễu kỹ thuật số 3D
- AE - Tự động phơi sáng
- AF - Tự động lấy nét
- AHD - Độ nét cao tương tự
- AI - Trí tuệ nhân tạo
- AWB - Tự động cân bằng trắng
- B&W - Đen trắng
- BLC - Bù sáng ngược
- CCTV - Truyền hình mạch kín
- CMOS - Bán dẫn oxit kim loại bổ sung
- DC - Dòng điện một chiều
- DDNS - Dịch vụ tên miền động
- DHCP - Giao thức cấu hình máy chủ động
- DNR - Giảm nhiễu kỹ thuật số
- DNS - Dịch vụ tên miền
- DRC - Nén dải động
- DVR - Máy ghi video kỹ thuật số
- FTP - Giao thức truyền tệp
- HDR - Dải động cao
- HLS - Phát trực tuyến HTTP trực tiếp (giao thức)
- LED - Điốt phát sáng
- NVR - Máy ghi video mạng
- HD - Độ nét cao
- HTTP - Giao thức truyền siêu văn bản
- IC - Mạch tích hợp
- ICR - Loại bỏ bộ lọc cắt hồng ngoại
- IP - Giao thức Internet
- IPC - Camera IP
- IQ - Chất lượng hình ảnh
- IR - Hồng ngoại
- ISP - Bộ xử lý tín hiệu hình ảnh
- JPEG - Nhóm chuyên gia nhiếp ảnh chung (định dạng tệp)
- MJPEG - Motion JPEG (định dạng video)
- NTP - Giao thức thời gian mạng
- ONVIF - Diễn đàn giao diện video mạng mở (tiêu chuẩn)
- PCB - Bảng mạch in
- PiP - Hình trong hình
- PIR - Hồng ngoại thụ động (cảm biến)
- PoE - Nguồn qua Ethernet
- PPPoE - Giao thức điểm-điểm qua Ethernet
- PTZ - Xoay-Nghiêng-Thu phóng
- ROI - Vùng quan tâm
- RTCP - Giao thức điều khiển truyền tải thời gian thực
- RTP - Giao thức truyền tải thời gian thực
- RTMP - Giao thức nhắn tin thời gian thực
- RTSP - Giao thức phát trực tuyến thời gian thực
- SMD - Thiết bị gắn trên bề mặt
- SMT - Công nghệ gắn trên bề mặt
- SMTP - Giao thức truyền thư đơn giản
- SoC - Hệ thống trên chip
- TCP - Giao thức điều khiển truyền tải
- TFTP - Giao thức truyền tệp tầm thường
- UART - Bộ thu phát không đồng bộ đa năng
- UPnP - Cắm và chạy đa năng
- USB - Bus nối tiếp đa năng
- WDR - Dải động rộng
- 3D-DNR - 3D Digital Noise Reduction (Giảm nhiễu kỹ thuật số 3D)
- AE - Automatic Exposure (Tự động phơi sáng)
- AF - Automatic Focus (Tự động lấy nét)
- AHD - Analog High Definition (Độ nét cao tương tự)
- AI - Artificial Intelligence (Trí tuệ nhân tạo)
- AWB - Automatic White Balance (Tự động cân bằng trắng)
- B&W - Black and White (Đen và Trắng)
- BLC - Back Light Compensation (Bù sáng ngược)
- CCTV - Closed-circuit Television (Truyền hình mạch kín)
- CMOS - Complementary MetalOxide Semiconductor (Bán dẫn oxit kim loại bổ sung)
- DC - Direct Current (Dòng điện một chiều)
- DDNS - Dynamic Domain Name Service (Dịch vụ tên miền động)
- DHCP - Dynamic Host Configuration Protocol (Giao thức cấu hình máy chủ động)
- DNR - Digital Noise Reduction (Giảm nhiễu kỹ thuật số)
- DNS - Domain Name Service (Dịch vụ tên miền)
- DRC - Dynamic Range Compression (Nén dải động)
- DVR - Digital Video Recorder (Máy ghi hình kỹ thuật số)
- FTP - File Transfer Protocol (Giao thức truyền tệp)
- HDR - High Dynamic Range (Dải động cao)
- HLS - HTTP Live Streaming (Giao thức phát trực tuyến HTTP trực tiếp)
- LED - Light-Emitting Diode (Điốt phát sáng)
- NVR - Network Video Recorder (Máy ghi hình mạng)
- HD - High Definition (Độ nét cao)
- HTTP - Hypertext Transfer Protocol (Giao thức truyền siêu văn bản)
- IC - Integrated Circuit (Mạch tích hợp)
- ICR - Infrared Cut Filter Removal (Loại bỏ bộ lọc cắt hồng ngoại)
- IP - Internet Protocol (Giao thức Internet)
- IPC - IP Camera (Camera IP)
- IQ - Image Quality (Chất lượng hình ảnh)
- IR - Infrared (Hồng ngoại)
- ISP - Image Signal Processor (Bộ xử lý tín hiệu hình ảnh)
- JPEG - Joint Photographic Experts Group (Định dạng tệp JPEG)
- MJPEG - Motion JPEG (Định dạng video Motion JPEG)
- NTP - Network Time Protocol (Giao thức thời gian mạng)
- ONVIF - Open Network Video Interface Forum (Diễn đàn giao diện video mạng mở)
- PCB - Printed Circuit Board (Bảng mạch in)
- PiP - Picture-in-Picture (Hình trong hình)
- PIR - Passive Infrared Sensor (Cảm biến hồng ngoại thụ động)
- PoE - Power over Ethernet (Nguồn qua Ethernet)
- PPPoE - Point-to-Point Protocol over Ethernet (Giao thức điểm-điểm qua Ethernet)
- PTZ - PanTiltZoom (Xoay-Nghiêng-Thu phóng)
- ROI - Region of Interest (Vùng quan tâm)
- RTCP - Real-Time Transport Control Protocol (Giao thức điều khiển truyền tải thời gian thực)
- RTP - Real-time Transport Protocol (Giao thức truyền tải thời gian thực)
- RTMP - Real-Time Messaging Protocol (Giao thức nhắn tin thời gian thực)
- RTSP - Real Time Streaming Protocol (Giao thức phát trực tuyến thời gian thực)
- SMD - Surface-mount Device (Thiết bị gắn trên bề mặt)
- SMT - Surface-mount Technology (Công nghệ gắn trên bề mặt)
- SMTP - Simple Mail Transfer Protocol (Giao thức truyền thư đơn giản)
- SoC - System on a Chip (Hệ thống trên chip)
- TCP - Transmission Control Protocol (Giao thức điều khiển truyền tải)
- TFTP - Trivial File Transfer Protocol (Giao thức truyền tệp tầm thường)
- UART - Universal Asynchronous Receiver-Transmitter (Bộ thu phát không đồng bộ đa năng)
- UPnP - Universal Plug and Play (Cắm và chạy đa năng)
- USB - Universal Serial Bus (Bus nối tiếp đa năng)
- WDR - Wide Dynamic Range (Dải động rộng)
### ffmpeg/ffplay
- PTS - Dấu thời gian trình bày
- fps - Tốc độ khung hình trung bình theo khung hình mỗi giây (`AVStream.avg_frame_rate`)
- tbr - Tốc độ khung hình cơ sở thực của luồng (`AVStream.r_frame_rate`)
- tbn - Thang thời gian tính bằng tích tắc mỗi giây (`AVStream.time_base`)
- PTS - Presentation Time Stamp (Dấu thời gian trình bày)
- fps - Tốc độ khung hình trung bình (khung hình/giây) (`AVStream.avg_frame_rate`)
- tbr - Tốc độ khung hình gốc thực của luồng (`AVStream.r_frame_rate`)
- tbn - Thang thời gian tính bằng số tick mỗi giây (`AVStream.time_base`)
Changes:
- Kept the English abbreviations and added Vietnamese translations in parentheses for clarity.
- Simplified some translated terms for better readability.
- Corrected minor grammatical errors.