Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Linux Sensor Stack

Demo gateway Linux nhận dữ liệu cảm biến từ FIFO simulator, ghi xuống kernel character device, rồi trả dữ liệu mới nhất qua TCP endpoint.

Linux Sensor Stack running demo

Thành phần

simulator/sensor_simulator.c   ghi packet cảm biến vào /tmp/sensor_fifo
gateway/gateway_daemon.c       đọc FIFO, cập nhật /dev/my_sensor, phục vụ TCP
kernel/my_sensor_driver.c      character driver hỗ trợ read, write, ioctl, sysfs
sensorctl/sensorctl.c          CLI đọc ioctl/sysfs và cập nhật ngưỡng nhiệt độ
systemd/sensor-gateway.service service unit cho gateway daemon

Build

Cài compiler và kernel headers đúng với kernel đang chạy:

sudo apt install build-essential linux-headers-$(uname -r)

Build các tool user-space:

make all

Build và load kernel module:

make kernel
sudo insmod kernel/my_sensor_driver.ko

Chạy

Chạy simulator:

./simulator/sensor_simulator

Chạy gateway:

./gateway/gateway_daemon

Đọc dữ liệu bằng CLI:

./sensorctl/sensorctl get
./sensorctl/sensorctl set-threshold 38
./sensorctl/sensorctl sysfs

Gọi TCP endpoint:

echo get | nc localhost 8888

Đọc trực tiếp từ driver:

cat /dev/my_sensor

Service

make install
sudo systemctl start sensor-gateway
sudo systemctl status sensor-gateway
journalctl -u sensor-gateway -f

Dọn dẹp

make clean
sudo rmmod my_sensor_driver

About

Linux Embedded Sensor Stack - Character Device Driver, ioctl/sysfs, pthread Producer-Consumer, TCP Epoll Server | C | Linux Kernel 6.x

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages