Добрый день! Пытаюсь связать arduino и raspberry. Тестирование между двумя arduino проходит нормально, а вот arduino и raspberry нет( для arduino использую RF24 https://github.com/maniacbug/RF24 для raspberry пакет для node.js https://github.com/natevw/node-nrf Вывод arduino Код (Text): RF24/examples/GettingStarted/ ROLE: Pong back *** PRESS 'T' to begin transmitting to the other node STATUS = 0x0e RX_DR=0 TX_DS=0 MAX_RT=0 RX_P_NO=7 TX_FULL=0 RX_ADDR_P0-1 = 0xf0f0f0f0e1 0xf0f0f0f0d2 RX_ADDR_P2-5 = 0xc3 0xc4 0xc5 0xc6 TX_ADDR = 0xf0f0f0f0e1 RX_PW_P0-6 = 0x20 0x20 0x00 0x00 0x00 0x00 EN_AA = 0x00 EN_RXADDR = 0x03 RF_CH = 0x4c RF_SETUP = 0x07 CONFIG = 0x0f DYNPD/FEATURE = 0x00 0x06 Data Rate = 1MBPS Model = nRF24L01+ CRC Length = 16 bits PA Power = PA_HIGH *** CHANGING TO TRANSMIT ROLE -- PRESS 'R' TO SWITCH BACK Now sending 69321...ok...Failed, response timed out. Now sending 70524...ok...Got response 70525, round-trip delay: 77 Now sending 71603...ok...Failed, response timed out. Now sending 72807...ok...Failed, response timed out. Now sending 74009...ok...Failed, response timed out. Now sending 75211...ok...Failed, response timed out. Now sending 76413...ok...Failed, response timed out. Now sending 77616...ok...Failed, response timed out. Now sending 78819...ok...Failed, response timed out. Now sending 80021...ok...Failed, response timed out. Now sending 81223...ok...Failed, response timed out. Now sending 82425...ok...Failed, response timed out. Now sending 83628...ok...Failed, response timed out. вывод raspberry Код (Text): root@raspberrypi:/# /usr/local/bin/node /srv/www/SmartCat/node/test.js SPI device: /dev/spidev0.0 CE GPIO: 24 IRQ GPIO: 25 STATUS: 0xe RX_DR=0 TX_DS=0 MAX_RT=0 RX_P_NO=7 TX_FULL=0 PONG back RX_ADDR_P0–1: 0xf0f0f0f0e1 0xf0f0f0f0d2 RX_ADDR_P2–5: 0xc3 0xc4 0xc5 0xc6 TX_ADDR: 0xf0f0f0f0e1 RX_PW_P0–5: 0x0 0x0 0x0 0x0 0x0 0x0 EN_AA: 0x3f EN_RXADDR: 0x03 RF_CH: 0x4c RF_SETUP: 0x07 CONFIG: 0x0f DYNPD/FEATURE: 0x03 0x07 Data Rate: 1Mbps Model: nRF24L01+ CRC Length: 16 bits PA Power: PA_MAX Got data, will respond 16777216 Error sending reply. [Error: Packet timeout, transmit queue flushed.] Пробегает всего 1 пакет.
1) Код для Arduino: Код (Text): void setup() { Serial.begin(9600); } void loop() { for (byte n = 0; n < 255; n++) { Serial.write(n); delay(50); } } 2) Код для Raspberry: Сначала надо написать Код (Text): sudo apt-get install python-serial python3-serial Затем основа: Код (Text): import serial port = "/dev/ttyACM0" serialFromArduino = serial.Serial(port,9600) serialFromArduino.flushInput() while True: if (serialFromArduino.inWaiting() > 0): input = serialFromArduino.read(1) print(ord(input)) Этот код перебрасывает с Дуни на Raspberry 1 байт. Попробуй, а потом скажешь работает или нет. Можно еще установить последовательный порт через аргумент.