Nếu máy của bạn chạy kernel cũ, bạn có thể echo suspend > /sys/bus/usb/devices/X-X/power/level
buộc phải đình chỉ thiết bị.
Tuy nhiên, kể từ 2.6.32, điều này không còn có thể:
Chúng ta có thể phân loại các sự kiện quản lý năng lượng theo hai lớp rộng: bên ngoài và bên trong. Các sự kiện bên ngoài là những sự kiện được kích hoạt bởi một số tác nhân bên ngoài ngăn xếp USB: tạm dừng / tiếp tục hệ thống (được kích hoạt bởi không gian người dùng), tiếp tục động thủ công (cũng được kích hoạt bởi không gian người dùng) và đánh thức từ xa (được kích hoạt bởi thiết bị). Các sự kiện bên trong là những sự kiện được kích hoạt trong ngăn xếp USB : autosuspend và autoresume. Lưu ý rằng tất cả các sự kiện đình chỉ động là nội bộ ; tác nhân bên ngoài không được phép đưa ra đình chỉ năng động.
power/control
This file contains one of two words: "on" or "auto".
You can write those words to the file to change the
device's setting.
"on" means that the device should be resumed and
autosuspend is not allowed. (Of course, system
suspends are still allowed.)
"auto" is the normal state in which the kernel is
allowed to autosuspend and autoresume the device.
(In kernels up to 2.6.32, you could also specify
"suspend", meaning that the device should remain
suspended and autoresume was not allowed. This
setting is no longer supported.
(từ http://www.kernel.org/doc/Documentation/usb/power-man quản lý.txt )
Tôi đoán điều tốt nhất bạn có thể làm là hủy liên kết thiết bị khỏi trình điều khiển , do đó sẽ không có hoạt động nào trên đó, sau đó định cấu hình thiết bị để tự động gửi càng sớm càng tốt ( echo auto > /sys/bus/usb/devices/X-X/power/control && echo 0 > /sys/bus/usb/devices/X-X/power/autosuspend_delay_ms
).
Tuy nhiên, theo như tôi hiểu về thông số kỹ thuật USB , ngay cả khi bạn tạm dừng thiết bị, một số nguồn trên cổng sẽ vẫn còn, do đó không thể tắt đèn led nếu được cung cấp bởi sơ đồ 'câm' (tức là được kết nối trực tiếp với + 5V và GND ghim).