[Intel Galileo] Cài đặt Linux Yocto (iot-devkit) lên Intel Galileo

Để hỗ trợ cho nền tảng Galileo của mình, Intel đã cho ra mắt bộ Intel IoT Developer Kit (iot-devkit) bao gồm cả haware (các linh kiện giống như trên nền tảng Arduino) và software (OS, IDE, các tool phát triển,...). Trong bài viết này, mình sẽ hướng dẫn các bạn cài Linux Yocto - là một hệ điều hành thuộc nhánh Software trong iot-devkit.

Bản Linux này sử dụng được cho cả board Intel Galileo Gen1 và Gen2

Bản Linux Yocto này có gì ?

  • NodeJS - Một nền tảng giúp bạn xây dựng các ứng dụng web. Nó giống như PHP-Apache hay PHP-nginx
  • mrra - Bộ thư viện giúp bạn sử dụng các giao tiếp như UART, I2C, SPI,... của Galileo hay đơn giản hơn là lập trình các chân GPIO như Digital Read/Write, Analog Read/Write, PWM,... mraa có hỗ trợ API cho C/C++, NodeJS và Python.
  • opkg - Là một ứng dụng command-line tương tự như apt-get, apptitute, pacman, yum... cho phép người dùng quản lí các package (software) như cài đặt, cập nhật, xoá, nâng cấp hệ thống,...
  • connman - Là một ứng dụng command-line cho phép người dùng quản lí các kết nối Internet. Bạn sẽ không thể tìm thấy file /etc/network/interfaces trong bản Linux Yocto này.
  • python, gcc, perl, ... - Các compiler cho những ngôn ngữ lập trình thông dụng.
  • Không bị lỗi segfault rất khó chịu như trên bản galileo-debian.
  • ... etc (mình vẫn chưa tìm hiểu hết :D)

Cài đặt Linux Yocto

1. Chuẩn bị

  • 1 thẻ nhớ Micro-SD 4GB Class 4.
  • Đầu đọc thẻ nhớ.

Mình đề nghị sử dụng thẻ 8GB Class10 hoặc hơn để tăng tốc độ đọc ghi dữ liệu, giảm thời gian chạy của một số tác vụ như cập nhật hệ thống, cài đặt/xoá các package (software). Dung lượng thẻ nhớ tối đa mà Intel Galileo có thể nhận là 32GB.

2. Tải file image của hệ điều hành

Link: https://software.intel.com/sites/landingpage/iotdk/board-boot-image.html (Direct link)

Dung lượng file là 232.89MB.

Các bạn có thể tải các phiên bản cũ hơn tại http://iotdk.intel.com/images/. Có một số package trên các phiên bản cũ không tương thích với phiên bản mới hoặc không được hỗ trợ mặc định mà người dùng phải tự cài lấy. Ví dụ như pyserial, apache, zip,...

 Khi tải xong, các bạn sẽ được một file là iot-devkit-1.5-i586-galileo.bz2 (iot-devkit phiên bản 1.5 dành cho Intel Galileo).

Giải nén file này, các bạn sẽ được một file tên là iot-devkit-1.5-i586-galileo (file này không có đuôi) dung lượng 1.32GB. 

3. Tải phần mềm hỗ trợ ghi dữ liệu

Tải Win32 Disk Imager tại http://sourceforge.net/projects/win32diskimager/ (Direct link bản Portable).

Để chạy phần mềm, giải nén file vừa tải về và chạy file Win32DiskImager.exe. Bạn cũng có thể chạy ngay trong file nén bằng cách double-click vào file này.

Các phần mềm khác cũng có tính năng tương đương như HDD Raw Copy, Rawrite32, ... hoặc lệnh dd nếu dùng Linux.

4. Format thẻ nhớ

Format về định dạng bất kì như NTFS, FAT32,... nếu trước đó bạn có lưu dữ liệu trên thẻ.

5. Ghi file image đã tải về lên thẻ.

Chạy Win32 Disk Imager, chọn Image File là file image 1.32GB đã giải nén ở bước 2 và chọn Device là thẻ nhớ đã chuẩn bị của mình.

Chú ý chọn Device để ghi dữ liệu chính xác. Vì đây là hành động ghi đè dữ liệu mới lên thẻ nhớ nên nếu bạn ghi nhầm dữ liệu sang USB của mình, cơ may phục hồi gần như bằng 0.

Bấm nút Write để bắt đầu ghi dữ liệu. Với thẻ nhớ Class 10, tốc độ ghi trung bình là 10MB/s. Quá trình ghi dữ liệu sẽ kết thúc trong khoảng 5 phút.

6. Chạy Linux Yocto trên board Galileo.

Bạn chỉ cần cắm thẻ nhớ vào board và cấp nguồn cho nó. Galileo sẽ tự động khởi động hệ điều hành vừa được cài đặt trên thẻ nhớ.

Tài khoản đăng nhập mặc định là root, password mặc định không được cài đặt.

lên
6 thành viên đã đánh giá bài viết này hữu ích.
Chuyên mục: 
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ả

KeySweeper - Keylogger trên nền tảng Arduino cho bàn phím không dây

Đây là một bài báo được mình dịch lại từ The Hacker News đăng vào ngày 13/01/2015. Mình dịch bài này là để các bạn thấy được một điều rằng ứng dụng Arduino không phải chỉ dừng ở việc điều khiển đèn LED nhấp nháy, điều khiển động cơ hay hiển thị/truyền phát thông tin đơn thuần,... nó còn làm được những thứ to lớn hơn thế.

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

Bài 6: Sử dụng Terminal trên Intel Galileo

Điều làm nên sự độc đáo của Intel Galileo đó có cả một hệ điều hành Linux chạy ngầm trong hệ thống, trong khi Galileo lại có thể hoạt động như một mạch Arduino thông thường. Bạn có thể tương tác với hệ điều hành này thông qua Terminal, chạy các câu lệnh qua giao diện dòng lệnh kiểu như MS-DOS. So sánh với việc tải các chương trình Arduino lên bo mạch, việc giap tiếp qua giao diện dòng lệnh là một công việc đòi hỏi nhiều kiến thức và kĩ năng hơn, tuy nhiên nó lại là một nơi tốt để bạn khởi đầu và có thể nhanh chóng tiến bộ hơn.

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