2013-08-13 42 views
6

Tôi đang làm việc trên phần mềm của thiết bị sẽ được kết nối với máy tính bằng cách sử dụng Bluetooth ở chế độ mô phỏng cổng nối tiếp.Có thư trả lời cho AT + GCAP & co. để nói "Tôi không phải là một modem, hãy biến mất"?

Trong khi thử nghiệm, tôi phát hiện ra rằng trình quản lý modem trên Linux "hữu ích" cố phát hiện nó như một modem, gửi lệnh AT+GCAP; cho điều này, hiện tại thiết bị của tôi trả lời với một cái gì đó như INVALIDCMD AT+GCAP. Đó là phản hồi chính xác cho giao thức của tôi, nhưng rõ ràng không phải là trả lời AT, vì vậy modem-manager không hài lòng và thử lại với AT+GCAP và các công cụ liên quan đến modem khác.

Bây giờ, tôi tìm thấy một số cách giải quyết cho modem-manager (xem here và do đó here, đặc biệt là udev rule method), nhưng:

  • họ không vô cùng mạnh mẽ (tôi phải thực hiện một quy tắc tùy chỉnh udev rằng có thể bị hỏng nếu chúng tôi thay đổi mô-đun Bluetooth);
  • Tôi lo ngại rằng không chỉ trình quản lý modem, nhưng các tính năng phần mềm/HĐH tương tự (ví dụ: trên Windows hoặc OS X) có thể gây ra những phiền toái tương tự.

Ngoài ra, có toàn quyền kiểm soát các chương trình cơ sở, tôi thể thêm một trường hợp đặc biệt cho AT+GCAP và các công cụ tương tự; do đó, đến câu hỏi của tôi:

Có câu trả lời tiêu chuẩn/an toàn cho AT+GCAP và các truy vấn dò tìm modem tương tự khác để nói "Tôi không phải là modem, không dùng nữa và để tôi yên?"

+0

Phản hồi phù hợp với lệnh modem nếu bạn không phải là modem là * không có gì *. Nó sẽ bỏ cuộc sau khi thử một vài lần. "ERROR" là câu trả lời cho lệnh AT mà bạn không triển khai. –

+0

@ HansPassant: vì vậy, nếu tôi chỉ bỏ qua mọi thứ bắt đầu bằng 'AT + 'tôi nên an toàn? Có những thông điệp kiểm tra modem khác mà tôi cần biết không? –

+0

Bạn nên bỏ qua mọi thứ bắt đầu bằng AT, một số trong số chúng không có + –

Trả lời

2

(làm cho một câu trả lời ra khỏi những ý kiến)

Để chỉ ra tôi không hiểu bất kỳ lệnh AT ở tất cả (aka Tôi không phải là một modem) câu trả lời đúng cho bất kỳ nhận AT lệnh nên im lặng.


Để chỉ ra Tôi không hiểu đặc biệt này AT lệnh câu trả lời đúng nên ERROR.

Mọi thứ giữa sẽ kích hoạt hành vi được xác định thực hiện của đối tượng gửi lệnh AT. Một số có thể sẽ từ bỏ ngay lập tức trong khi modem-manager dường như được đặt trên thử lại gửi lệnh cho đến khi nó nhận được phản hồi "thích hợp".