Gần đây tôi đã thực hiện một chút công việc tự động hóa nhà DIY (RF; 433 MHz) trên nhiều thiết bị khác nhau - hoạt động tốt cho tất cả ngoại trừ một thiết bị. Về cơ bản, nó là một robot hồ bơi với một số điều khiển từ xa thực sự nhảm nhí.
Tôi đã thu thập một số dữ liệu bằng BladeRF SDR và GNU Radio. Cột "3 khác" về cơ bản là hành động, trong khi "1 khác" dường như là một số nối tiếp và "2 khác" định nghĩa robot nếu bạn có nhiều người sử dụng tôi đoán (một số người bạn của tôi có cùng giá trị khác ở đó). Tôi không chắc mục đích của bộ đếm là gì nhưng tôi sẽ đoán nó để robot biết khi nào phạm vi quá rộng (thiếu một số thông tin?). Tôi đã thu hẹp các byte và ý nghĩa của chúng, tuy nhiên tôi thất bại trong việc tính toán CRC (tổng kiểm tra) chính xác cho dữ liệu.
TUỔI - VUI LÒNG XEM CẬP NHẬT DƯỚI ĐÂY !!
Đây là một số dữ liệu mẫu:
<other1 > <other2> <other3> <count > <crc >
10110100 00111110 10001111 11001000 00000001 11110111 01011110
10110100 00111110 10001111 11001000 00000001 11111000 01010011
10110100 00111110 10001111 11001000 00000001 11111001 01010100
10110100 00111110 10001111 11001000 00000001 11111010 01010001
10110100 00111110 10001111 11001000 00000001 11111011 01010010
10110100 00111110 10001111 11001000 00000001 11111100 01010111
10110100 00111110 10001111 11001000 00000001 11111101 01011000
10110100 00111110 10001111 11001000 00000001 11111110 01010101
10110100 00111110 10001111 11001000 00000001 11111111 01010110
10110100 00111110 10001111 11001000 00000001 00000000 01100111
10110100 00111110 10001111 11001000 00000001 00000001 01101000
10110100 00111110 10001111 11001000 00000001 00000010 01100101
10110100 00111110 10001111 11001000 00000001 00000011 01100110
10110100 00111110 10001111 11001000 00000001 00000101 01100100
10110100 00111110 10001111 11001000 00000001 00000111 01100010
added data:
10110100 00111110 10001111 11001000 00000010 00000110 01100100
10110100 00111110 10001111 11101010 00000010 01100101 10011010
10110100 00111110 10001111 11101010 00000001 01100100 10011100
10110100 00111110 10001111 11101010 00000001 01100011 10011101
10110100 00111110 10001111 11101010 00000001 01100110 10011010
Có một số lượng cho mỗi yêu cầu phải được thay đổi và một số lệnh được gửi, ví dụ: cột "3 khác" có thể đọc 00000010 thay vì 00000001.
Sẽ rất hữu ích nếu ai đó có thể cho tôi một số gợi ý về nơi để xem xét. Tôi đã thử các kỹ thuật khác nhau như XOR trên các byte hoặc tính toán modulo, v.v. - Tôi thậm chí đã thử các công cụ vũ lực thuật toán CRC khác nhau - thật không may là chưa thành công.
EDIT: Tôi đã đưa dữ liệu vào excel và thêm một số chức năng (về cơ bản, nó so sánh mỗi 4 bit với các dữ liệu ở trên - lần truyền cuối cùng). Tôi đã làm điều đó khi tôi nhận ra CRC vẫn giữ nguyên một lần. Đây là trường hợp khi cả hành động và số đếm được tăng lên 1. Xin hãy xem:
CẬP NHẬT:
Tôi đã tìm thấy một số thông số kỹ thuật chi tiết khác. từ cùng một nhà cung cấp trên mạng sau khi tìm kiếm trong nhiều giờ và nó xuất hiện vì vậy CRC thực sự là một sự tương đương. Tôi cũng tinh chỉnh sơ đồ thu sóng vô tuyến gnu của mình và thu thập một số dữ liệu mới. Vui lòng bỏ qua dữ liệu trên và xem tại đây:
other 1> other 2 > other 3> other 4 > parity
10110100 001111101000111111101010 00000001 011110101001 0101
10110100 001111101000111111101010 00000001 011110111001 0110
10110100 001111101000111111101010 00000001 011111001001 0011
10110100 001111101000111111101010 00000001 011111011001 0100
10110100 001111101000111111101010 00000010 011111101001 0100
10110100 001111101000111111101010 00000010 011111111001 0011
10110100 001111101000111111101010 00000010 100000001001 0011
10110100 001111101000111111101010 00000010 100000011001 0100
10110100 001111101000111111101010 00000001 100000101001 0100
10110100 001111101000111111101010 00000001 100000111001 0011
10110100 001111101000111111101010 00000001 100001001001 0110
10110100 001111101000111111101010 00000001 100001011001 0101
10110100 001111101000111111101010 00000010 100001101001 0101
10110100 001111101000111111101010 00000010 100001111001 0110
10110100 001111101000111111101010 00000010 100010001001 1011
10110100 001111101000111111101010 00000010 100010011001 1100
10110100 001111101000111111101010 00000001 100010101001 1100
10110100 001111101000111111101010 00000001 100010111001 1011
10110100 001111101000111111101010 00000001 100011001001 1110
10110100 001111101000111111101010 00000001 100011011001 1101
Và đây là một lần nữa như excel ưa thích:
Có ai biết làm thế nào để tính chẵn lẻ đó? Tôi đã thử chia dữ liệu, v.v. và sử dụng các tính toán chẵn lẻ thông thường nhưng không may là chưa thành công.