Nói xin chào với mạch C.H.I.P Pro

Vừa rồi mình nhận được một board C.H.I.P Pro từ anh monsieurvechai. Hôm nay là chủ nhật nên mình quyết định lấy bé C.H.I.P Pro ra để thử nghiệm với board này. Chúc mọi người có những dự án sáng tạo và chuyên nghiệp với board này. Board này có thể sản xuất hàng loạt tự động như mấy con vi điều khiển để lắp vô mạch đó. Hôm nay mình sẽ hướng dẫn các bạn nạp hệ điều hành con này.

1. Thông tin cơ bản

Cấu hình của C.H.I.P Pro không khác mấy với so với C.H.I.P với 1Ghz, 256MB ram, 512MB Flash, Wifi và BLE. Tuy nhiên, C.H.I.P Pro còn có thể I2S Audio với 2 mic luôn đó nhé và có chỗ để gắn mạch sạc pin Lipo nữa. Sơ đồ chân pinout của C.H.I.P Pro cũng có sự thay đổi nhiều so với C.H.I.P.

Với sự thay dổi sơ đồ chân như thế này, các nhà phát triển có thể hàn con C.H.I.P như một loại linh kiện dán thông thường vào board mạch chủ tự động trong nhà máy. Điều này cho phép họ tiết kiệm chi phí rất nhiều ở đoạn làm mạch gắn header như ở Raspberry Pi. Ngoài ra, với cách làm thế này, bạn có thấy sự quen thuộc với board Arduino Pro mini hay không? Bạn có thể gắn lên testboard để test luôn mà không phải nối dây nối lượm thượm chỉ để test 01 con led.

Datasheet của C.H.I.P có thể tìm thấy tại đây. Tài liệu đọc thêm, các bạn có thể tìm hiểu tại đây.

2. Cài hệ điều hành

Bạn cần chuẩn bị:

  • 01 x C.H.I.P Pro
  • 01 x USB Micro
  • Một máy tính có trình duyệt Chrome hoặc Cốc Cốc

Các bạn vào địa chỉ web http://flash.getchip.com/pro

Khi mới vào lần đầu, bạn cần cài Chrome extension mà trang yêu cầu. Click vào Install The App thôi!

Như vầy là các bạn đã cài đặt xong các extension!

Hiện tại con CHIP Pro có 2 lựa chọn hệ điều hành dành cho bạn:

  • Debian: giống như Raspbian trên Raspberry Pi hay Armbian trên Orange Pi với bộ Apt thần thánh giúp bạn dễ cài gói nhưng không có GUI. Nói chung là dành cho Pro. Không chơi GUI như mình thì chọn cái này.
  • Buildroot: cái này thì mình không rõ nó như thế nào, để các bạn tự tìm hiểu nhé hehe.

Để tải hệ điều hành, các bạn click vào Download Images.

Chọn bản Pro

Các bạn download như hình thôi!

Tiếp tục, các bạn tải Driver để cài đặt trên máy tính Windows nhé. Sau đó các bạn khởi động lại máy tính nhé!

Các bạn chọn Flash ở trang CHIP Flasher để tiến hành Flash. Sau đó nhấn nút Start để bắt đầu.

Sau đó bạn nhấn giữ nút FEL button (gần cái cổng nguồn á), sau đó gắn USB Micro vào. Nếu đèn màu hồng sáng lên thì bạn có thể gỡ tay ra. Nếu nó báo lỗi là không nhận thiết bị thì bạn cứ tháo ra gắn lại thôi. Không được thì đổi dây nạp code (USB Micro) là ok. Phần tiếp theo thì bạn chọn bộ flash mà bạn muốn nạp vào là xong.

3. SSH vào C.H.I.P Pro

Để SSH vào C.H.I.P Pro, các bạn nối dây vào cổng RX, TX, GND ở vị trí 43, 44, 45 như hình trên bằng một con chip USB to TTL như CP210x hay PL2303. Tên đăng nhập để vào khi dùng debian như mình hướng dẫn là chip (cả username và password).

Debian trên C.H.I.P đã lược bỏ rất nhiều, bạn có thể không quen nhưng có gói apt thì như vậy là đủ rồi! Hãy thử khám phá nhé. Để tiện cho việc SSH, bạn cần đăng nhập vào mạng Wifi và có địa chỉ IP. Cùng tìm hiểu cách nối Wifi nhé.

Xem danh sách Access Point xung quanh

nmcli device wifi list

Kết nối vào mạng Wifi không có pass

sudo nmcli device wifi connect "YOUR_NETWORK_SSID" ifname wlan0

Nếu kết nối thành công thì sẽ trả về thông báo dạng sau:

Connection with UUID 'xxxxxxxx-yyyy-zzzz-xxxx-yyyyyyyyyyyy' created and activated on device 'wlan0'

Kết nối vào mạng Wifi có pass

sudo nmcli device wifi connect "YOUR_NETWORK_SSID" password "UR_NETWORK_PASSWORD" ifname wlan0

Nếu kết nối thành công thì sẽ trả về thông báo dạng sau:

Connection with UUID 'xxxxxxxx-yyyy-zzzz-xxxx-yyyyyyyyyyyy' created and activated on device 'wlan0'

Kết nối vào mạng Wifi có pass và bị ẩn

sudo nmcli device wifi connect "YOUR_NETWORK_SSID" password "UR_NETWORK_PASSWORD" ifname wlan0 hidden yes

Kiểm tra kết nối có thành công hay chưa

nmcli device status

Nếu hiện ra kết nối ở CONNECTION với DEVICE wlan0 thì bạn đã thành công.

Thử ping tới arduino.vn để xem kết nối có ổn định hay không?

Lấy địa chỉ IP để ssh

Các bạn gõ lệnh sau để xem địa chỉ IP

ip address

Ngắt kết nối Wifi

Các bạn chạy lệnh sau:

sudo nmcli dev disconnect wlan0

Quên một mạng Wifi đã kết nối

Chạy lệnh sau để hiện ra danh sách các mạng Wifi đã từng kết nối

nmcli c

Sau đó chạy lệnh sau để quên một mạng Wifi đã biết tên:

sudo nmcli connection delete id "YOUR_NETWORK"

4. Kết luận

Qua quá trình cài đặt mình thấy rằng board C.H.I.P cực kỳ rẻ và đơn giản cho một dự án cần dùng đến máy tính nhúng với giá bán tầm trung. Các bạn sẽ tiếp kiệm được chi phí không gian khá nhiều và việc từ prototype thành product sẽ giảm đi đoạn thiết kế chỗ gắn header! Board này có thể mua được với số lượng lớn và nếu mua trên 1000 cái thì sẽ được nạp sẵn chương trình của product luôn. Nói cung là mình thấy khi so với Orange Pi, nếu không dùng nhiều hiệu năng và dung lượng lưu trữ thì mình sẽ dùng C.H.I.P.

Những hình ảnh về dự án: 
Bài viết truyền cảm hứng: 
lên
9 thành viên đã đánh giá bài viết này hữu ích.
Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Cách sử dụng Arduino IDE lập trình mạch Intel Edison và mini breakout

Với phương pháp lập trình Intel Edison bằng Arduino IDE, đây có thể xem là phương pháp lập trình dễ nhất hiện này khi lập trình với Intel Edison. Tuy nhiên, cách này chỉ phù hợp với Intel Edison + Arduino breakout. Vậy với combo Intel Edison + mini breakout, cách tiếp cận của chúng ta là gì? Bài viết này sẽ giúp bạn giải đáp thắc mắc trên và đi sâu hoàn thiện các dự án vớ Intel Edison?

lên
12 thành viên đã đánh giá bài viết này hữu ích.

Vấn đề của số chấm động và số nguyên trong ngôn ngữ lập trình C++ trên board mạch Arduino

Có bao giờ bạn tự hỏi: "Dự án của mình làm tốt thế này, chạy ngon lành rành rành thế này, chắc không có bugs đâu?". Thực sự, nếu dự án của bạn không có phần xử lý số thực chấm động trong đó thì mình nghĩ phần code của bạn sẽ hoạt động ngon lành theo thời gian. Nhưng mà có số thực thì từ từ, chúng ta cần xét lại code. Trước đây, có một số bạn nhắn tin riêng hỏi mình về code với điểm chung là "code mình chạy ngon lành lúc đầu, sau đó bị lỗi, không rõ nguyên nhân". Loại trừ các phần code logic sai ra, thì hầu hết đều là do lỗi khi xử lý số chấm động mà không quan tâm đến nền tảng lập trình bên dưới! Mà cũng đúng, chúng ta rất dễ bị đánh lừa bởi chính đoạn code chúng ta viết. Vì nó có báo lỗi biên dịch đâu mà, kaka. Qua bài viết này, mình muốn phân tích và cùng các bạn rút kinh nghiệm về số chấm động float, cách hạn chế lỗi sai với số chấm động.

lên
22 thành viên đã đánh giá bài viết này hữu ích.