Đặt sẵn cấu hình cho firmware OpenWrt từ khi build

Khi sử dụng firmware OpenWrt cho router wifi, thỉnh thoảng ta muốn có một bản firmware với một số cấu hình theo ý muốn ngay từ đầu, thay vì cài firmware xong mới vào trang admin để cấu hình. Ví dụ, mặc định trong OpenWrt, tính năng phát wifi bị tắt, hoặc user "root" không có password. Mỗi lần cài mới firmware là lại phải đăng nhập vào admin để kích hoạt wifi cũng như tạo password cho root.

Vậy làm cách nào để có sẵn một số cấu hình ngay từ đầu?

OpenWrt cho phép ghi đè một số file mặc định ngay từ khi build, thông qua đó ta có thể thay thế cấu hình gốc của OpenWrt bằng cấu hình của ta. Những file ta cần ghi đè, chỉ việc bỏ vào thư mục tên files trong thư mục build. File đặt trong thư mục này, cần được bảo lưu đúng đường dẫn như trong hệ thống thật. Ví dụ, để thay thế file /etc/passwd gốc thì ta cần có một file tại [OpenWrt source]/files/etc/passwd.

Làm thế nào để có nội dung đúng cho file thay thế?

Cơn bệnh tưởng blockchain trong nền nông nghiệp mới

Sự tăng giá của BitCoin khiến mọi người bắt đầu để ý tới công nghệ blockchain. Trong cơn say tiền điện tử, nhiều người bắt đầu hoang tưởng về quyền năng của blockchain. Một số kẻ cơ hội bắt đầu vơ lấy blockchain, gắn vào mọi thứ để lòe bịp thiên hạ.

Một trong những ứng dụng bị gắn mác blockchain vô tội vạ là chuỗi truy xuất nguồn gốc nông sản.

Dưới đây là đoạn trích tranh luận của mình về tính thiết thực của việc ứng dụng blockchain trong truy xuất nguồn gốc nông sản.

Hội thoại 1:

Make Tilix work with Nautilus 3.28

Since I installed Ubuntu 18.04, Tilix suddenly stops working with Nautilus:

  • No "Open Tilix Here" entry in right-click menu.
  • Shortcut key to open Tilix from Nautilus window doesn't work.

At first, I thought that Nautilus changed its API and broke its extensions. Fortunately, from this GitHub issue, it is probably that it is packaging issue, though the case mentioned in the link is for Fedora (while Ubuntu is Debian-based).

A need of an asyncio Python library for MiFlora sensor

The Mi Flora sensor is a small Bluetooth Low Energy device that monitors soil moisture, air temperature and water conductivity. It is useful for agriculture, and due to its low price, it can be easily reach by small farms. On the other hand, it worths for us to invest more software support for it.

My idea is to make a Python asyncio-based library to help access it.

Objective:

Nhu cầu về điện toán đám mây của một đơn vị ứng dụng IoT

Là một công ty cung cấp giải pháp tự động hóa ứng dụng IoT cho các trang trại, AgriConnect tự mình nghiên cứu, phát triển phần cứng, phần mềm để làm ra giải pháp đó (theo dõi và duy trì điều kiện môi trường sao cho phù hợp với cây trồng). AgriConnect không mua sản phẩm rồi bán lại, vì nhu cầu mỗi khách hàng rất khác nhau. Bằng cách tự mình làm chủ công nghệ, AgriConnect có thể nhanh chóng, linh động tùy biến sản phẩm của mình để đáp ứng vừa vặn nhu cầu của khách hàng.

Tuy nhiên, AgriConnect cũng không ôm đồm làm hết mọi thứ. Giống như xây nhà thì vẫn phải mua gạch, mua xi măng, đinh ốc, AgriConnect vẫn cần những thứ mà các đơn vị khác đã làm và cung cấp lại (như server, cảm biến, vv..). Nhiều công ty công nghệ lớn như Google, Amazon, IBM, Samsung làm riêng một mảng sản phẩm / dịch vụ IoT để cung cấp cho những đối tượng tương tự như AgriConnect. Dẫu vậy, với lối đi khác biệt của mình, AgriConnect nảy sinh những nhu cầu mà các công ty vừa kể không thể đáp ứng được.

Một số nhu cầu đó là:

  1. Bare metal ARM server. Chúng tôi cần dùng nó để biên dịch một số phần mềm thành binary chạy trên ARM. Ví dụ như, chúng tôi customize hệ điều hành cho BeagleBone, bỏ bớt những thành phần không cần thiết, cài sẵn một số phần mềm, cài sẵn một số cấu hình, tạo ra file image cuối cùng để nhanh chóng cài lên nhiều board.