{"id":129,"date":"2016-02-08T16:57:59","date_gmt":"2016-02-08T13:57:59","guid":{"rendered":"http:\/\/rst10h.tmweb.ru\/domains\/magelab.ru\/?p=129"},"modified":"2020-08-23T18:38:28","modified_gmt":"2020-08-23T15:38:28","slug":"aqua-led-radio-control2-rpi","status":"publish","type":"post","link":"https:\/\/ancient.tsaryk.dev\/?p=129&lang=ru","title":{"rendered":"\u041f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0430 \u0434\u043b\u044f \u0430\u043a\u0432\u0430\u0440\u0438\u0443\u043c\u0430 \u0441 \u0440\u0430\u0434\u0438\u043e\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u0447\u0435\u0440\u0435\u0437 Raspberry pi (\u0427\u0430\u0441\u0442\u044c \u0432\u0442\u043e\u0440\u0430\u044f)"},"content":{"rendered":"\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e \u043f\u043e\u0432\u043e\u0434\u0443 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u0438. \u041f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u0441\u044f \u043e\u0434\u0438\u043d \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u044c <strong>NRF24L01+<\/strong> \u0438 <strong>raspberry pi.<\/strong> \u0423 \u043c\u0435\u043d\u044f \u043d\u0430 \u043c\u0430\u043b\u0438\u043d\u043a\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d <strong>Raspbian<\/strong>. \u0418\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e \u043f\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044e \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u044f <a href=\"http:\/\/hack.lenotta.com\/arduino-raspberry-pi-switching-light-with-nrf24l01\/\">\u0432\u0437\u044f\u043b \u0438\u0437 \u0441\u0435\u0442\u0438<\/a>. \u0415\u0441\u043b\u0438 \u043a\u043e\u0440\u043e\u0442\u043a\u043e \u0438 \u043f\u043e \u0440\u0443\u0441\u0441\u043a\u0438, \u0442\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u044c \u043a\u0430\u043a \u043d\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0435 (\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u0431\u044b\u043b\u043e \u043b\u0435\u043d\u044c \u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c, \u0432\u0437\u044f\u043b \u0441 <a href=\"http:\/\/hack.lenotta.com\/arduino-raspberry-pi-switching-light-with-nrf24l01\/\">\u0442\u043e\u0433\u043e \u0436\u0435 \u0441\u0430\u0439\u0442\u0430<\/a>):<\/p>\n\n\n\n<!--more-->\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><a href=\"http:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/raspischeme-1024x809-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/raspischeme-1024x809-1.png\" alt=\"\" class=\"wp-image-130\" width=\"512\" height=\"405\" srcset=\"https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/raspischeme-1024x809-1.png 1024w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/raspischeme-1024x809-1-300x237.png 300w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/raspischeme-1024x809-1-768x607.png 768w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><figcaption>\u0421\u0445\u0435\u043c\u0430 \u043f\u0440\u0438\u0435\u043c\u043d\u0438\u043a\u0430<\/figcaption><\/figure><\/div>\n\n\n\n<p>\u0412 \u043c\u043e\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0438 \u044d\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u043e\u0442 \u0442\u0430\u043a:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><a href=\"http:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_17_15_02_pro-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"169\" src=\"http:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_17_15_02_pro-300x169.jpg\" alt=\"\" class=\"wp-image-154\" srcset=\"https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_17_15_02_pro-300x169.jpg 300w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_17_15_02_pro-1024x575.jpg 1024w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_17_15_02_pro-768x431.jpg 768w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_17_15_02_pro-1536x863.jpg 1536w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_17_15_02_pro-2048x1150.jpg 2048w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><figcaption>\u041c\u0430\u043b\u0438\u043d\u043a\u0430 \u0441 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u043c \u043c\u043e\u0434\u0443\u043b\u0435\u043c NRF24L01+<\/figcaption><\/figure><\/div>\n\n\n\n<p>\u0420\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043a \u043c\u0430\u043b\u0438\u043d\u043a\u0435 \u043f\u043e \u0448\u0438\u043d\u0435 SPI, \u0437\u0430\u043f\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u0442 3.3V. \u0413\u043e\u0432\u043e\u0440\u044f\u0442, \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u0435\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0435\u0441\u043b\u0438 \u043d\u0430 VCC-GND \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u044f \u043f\u043e\u0434\u043f\u0430\u044f\u0442\u044c \u043a\u043e\u043d\u0434\u0435\u043d\u0441\u0430\u0442\u043e\u0440, \u043d\u043e \u044f \u043b\u0438\u0447\u043d\u043e \u0440\u0430\u0437\u043d\u0438\u0446\u044b \u043d\u0435 \u0437\u0430\u043c\u0435\u0442\u0438\u043b. \u0415\u0441\u043b\u0438 \u0432\u0441\u0451 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u043b\u0438 \u0432\u0435\u0440\u043d\u043e, \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0432 raspberry PI, \u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u0435\u043c:<\/p>\n\n\n<pre class=\"brush: bash; gutter: false; light: false; title: ; toolbar: true; notranslate\" title=\"\">\n# \n#\u0420\u0430\u0431\u043e\u0442\u0430\u044e \u043f\u043e\u0434 \u0440\u0443\u0442\u043e\u043c, \u0435\u0441\u043b\u0438 \u0437\u0430\u0448\u043b\u0438 \u043f\u043e\u0434 \u0434\u0440\u0443\u0433\u0438\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 SUDO\napt-get update\napt-get install python-dev\napt-get install python-rpi.gpio\n#\u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0440\u0443\u0447\u043a\u0430\u043c\u0438 \u0434\u0432\u0430 \u043c\u043e\u0434\u0443\u043b\u044f: i2c-bcm2708 i2c-dev\nnano \/etc\/modules\napt-get install python-smbus\napt-get install i2c-tools\n#\u0435\u0449\u0451 \u043d\u0443\u0436\u043d\u043e \u0443\u0431\u0440\u0430\u0442\u044c \u0438\u043b\u0438 \u0437\u0430\u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0438 \u0441 spi \u0438 i2c \u043c\u043e\u0434\u0443\u043b\u044f\u043c\u0438 \nnano \/etc\/modprobe.d\/raspi-blacklist.conf\n<\/pre>\n\n\n<p>\u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u0435\u043c \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b&nbsp;\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 <strong>librf24<\/strong> \u0434\u043b\u044f raspberry pi \u043e\u0442\u0441\u044e\u0434\u0430: <a href=\"https:\/\/github.com\/jonathongrigg\/RF24\/tree\/master\/raspberrypi\/librf24\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/github.com\/jonathongrigg\/RF24\/tree\/master\/raspberrypi\/librf24<\/a><\/p>\n\n\n\n<p>\u0412 <a href=\"http:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/Files\/librf24.zip\">\u044d\u0442\u043e\u043c \u0430\u0440\u0445\u0438\u0432\u0435 <\/a>\u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 (rfsend), \u043a\u043e\u0442\u043e\u0440\u0443\u044e&nbsp;\u043d\u0430 raspberry pi \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0431\u0435\u0437 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438 \u0432 \u0433\u043e\u0442\u043e\u0432\u043e\u043c \u0432\u0438\u0434\u0435.&nbsp;\u041d\u0443\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c&nbsp;<strong>chmod +x .\/rfsend<\/strong> , \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c. \u0421\u0430\u043c\u0443 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u043d\u0430\u0431\u0440\u043e\u0441\u0430\u043b \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0438\u0437 \u0442\u043e\u0439 \u0436\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 (\u043f\u043e\u0434 \u0441\u043f\u043e\u0439\u043b\u0435\u0440\u043e\u043c)<\/p>\n\n\n<pre class=\"brush: cpp; light: false; title: ; toolbar: true; notranslate\" title=\"\">\n\/\/rfsend.cpp\n#include &lt;stdio.h&gt;;\n\n#include &lt;stdlib.h&gt;;\n#include &lt;unistd.h&gt;;\n#include &lt;string.h&gt;;\n#include &lt;string&gt;;\n#include &lt;getopt.h&gt;;\n#include &lt;cstdlib&gt;;\n#include &lt;iostream&gt;;\n#include &quot;..\/RF24.h&quot;;\n\nusing namespace std;\nRF24 radio(&quot;\/dev\/spidev0.0&quot;,8000000 , 25);  \/\/spi device, speed and CSN,only CSN is NEEDED in RPI\nconst int role_pin = 7;\nconst uint64_t pipes[2] = { 0xF0F0F0F0E1LL, 0xf0f0f0f0d2LL };\nstatic unsigned char inBuffer[32];\nstatic unsigned char outBuffer[32];\nvoid setup(void){\n  \/\/\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u044f\n  printf(&quot;\\nPreparing interfacen&quot;);\n  radio.begin();\n  radio.setRetries( 15, 15);\n  radio.setChannel(0x4c);\n  radio.setPALevel(RF24_PA_MAX);\n  radio.setPALevel(RF24_PA_MAX);\n  radio.setDataRate(RF24_1MBPS);\n  radio.setAutoAck(1);\n  radio.openWritingPipe(pipes[0]);\n  radio.openReadingPipe(1,pipes[1]);\n  radio.startListening();\n  radio.printDetails();\n\n}\n\/\/ \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445\nchar SendCommand() {\n        \/\/ \u041e\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u043f\u0440\u0438\u0435\u043c, \u043d\u0430 \u0432\u0441\u044f\u043a\u0438\u0439 \u0441\u043b\u0443\u0447\u0430\u0439\n\tradio.stopListening();\n\n\t\/\/\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c \u0431\u0443\u0444\u0435\u0440\n\tbool ok = radio.write(outBuffer,32);\n\t\/\/\u0415\u0441\u043b\u0438 \u043e\u0448\u0438\u0431\u043a\u0430, \u0442\u043e \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c \u0447\u0438\u0441\u043b\u043e 255\n        if (!ok) return 255;\n\tradio.startListening();\n\tunsigned long startlist = __millis();\n\tbool timeout = false;\n\twhile (!radio.available() &amp;&amp; !timeout) {\n\t\t__msleep(10);\n\t\tif (__millis()-startlist &gt; 5000) timeout=true;\n\t\t}\n        \/\/\u0415\u0441\u043b\u0438 \u043d\u0435 \u043f\u0440\u0438\u0448\u0435\u043b \u043e\u0442\u0432\u0435\u0442, \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c 254\n\tif (timeout) return 254;\n\tradio.read(inBuffer,32);\n\treturn inBuffer[0];\t\n}\n\nint main( int argc, char ** argv){\n\n    setup();\n    \/\/char sb[32];\n    int par = 0;\n    for (int i=0;i&lt;32;i++) outBuffer[i] = 0;\n \/\/   \tsb[0] = 0;\n\tif (!strcmp(argv[1],&quot;-p&quot;)) outBuffer[0] = &#039;p&#039;;\n\tif (!strcmp(argv[1],&quot;-s&quot;)) outBuffer[0] = &#039;s&#039;;\n\tif (argv[2]!=NULL) par = atoi(argv[2]);\n\tprintf (&quot;par=%dn&quot;,par);\n\toutBuffer[1] = par;\n\tchar res = SendCommand();\n\t\/\/outBuffer[1] = 7;\n        \/\/\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u043e\u0448\u0438\u0431\u043e\u043a \u043d\u0435 \u0434\u0435\u043b\u0430\u043b, \u0442.\u043a. \u043b\u0435\u043d\u044c \n\tprintf(&quot;result: %c n&quot;,res);\n\tprintf(&quot;status: %d n&quot;,inBuffer[1]);\n    return 0;\n}\n<\/pre>\n\n\n<p>\u0427\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u043b\u0430\u0441\u044c \u0438\u0437 \u043b\u044e\u0431\u043e\u0433\u043e \u043c\u0435\u0441\u0442\u0430, \u044f \u0435\u0435 \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043b \u0432 \u043f\u0430\u043f\u043a\u0443 <strong>\/sbin\/<\/strong><\/p>\n\n\n\n<p>\u0414\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0438 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <strong>rfsend -p<\/strong><\/p>\n\n\n<pre class=\"brush: bash; gutter: false; light: false; title: ; toolbar: true; notranslate\" title=\"\">\nroot@raspberrypi:\/# rfsend -p\n\nPreparing interface\nSPI device       = \/dev\/spidev0.0\nSPI speed        = 8000000\nCE GPIO  = 25\nSTATUS           = 0x0e RX_DR=0 TX_DS=0 MAX_RT=0 RX_P_NO=7 TX_FULL=0\nRX_ADDR_P0-1     = 0xf0f0f0f0e1 0xf0f0f0f0d2\nRX_ADDR_P2-5     = 0xc3 0xc4 0xc5 0xc6\nTX_ADDR          = 0xf0f0f0f0e1\nRX_PW_P0-6       = 0x20 0x20 0x00 0x00 0x00 0x00\nEN_AA            = 0x3f\nEN_RXADDR        = 0x3f\nRF_CH            = 0x4c\nRF_SETUP         = 0x07\nCONFIG           = 0x0f\nDYNPD\/FEATURE    = 0x00 0x00\nData Rate        = 1MBPS\nModel            = nRF24L01+\nCRC Length       = 16 bits\nPA Power         = PA_MAX\npar=0\nresult: ^\nstatus: 15\nroot@raspberrypi:\/#\n<\/pre>\n\n\n<p>\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043a\u043e\u043d\u0444\u0438\u0433 \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u044f, \u0432\u043a\u043e\u043d\u0446\u0435 result &#8211; \u043e\u0442\u0432\u0435\u0442 \u043e\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u0430, status &#8211; \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043f\u043e\u0440\u0442\u0430. 15 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e 4 \u043f\u0435\u0440\u0432\u044b\u0445 \u0431\u0438\u0442\u0430 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u044b, \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432\u0441\u0451 \u0441\u0432\u0435\u0442\u0438\u0442\u0441\u044f.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><a href=\"http:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_11_51_pro.jpg\" rel=\"attachment wp-att-142\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"575\" src=\"http:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_11_51_pro-1-1024x575.jpg\" alt=\"\" class=\"wp-image-143\" srcset=\"https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_11_51_pro-1-1024x575.jpg 1024w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_11_51_pro-1-300x169.jpg 300w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_11_51_pro-1-768x431.jpg 768w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_11_51_pro-1-1536x863.jpg 1536w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_11_51_pro-1-2048x1150.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption>\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u0432\u0441\u0435 \u043b\u0435\u043d\u0442\u044b \u0432 \u0430\u043a\u0432\u0430\u0440\u0438\u0443\u043c\u0435<\/figcaption><\/figure><\/div>\n\n\n\n<p>\u0414\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u043e\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443 &#8220;<strong>rfsend -s n&#8221; <\/strong>\u0433\u0434\u0435 n &#8211; \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043f\u043e\u0440\u0442\u0430 (\u043e\u0442 0 \u0434\u043e 15)<\/p>\n\n\n\n<p>0 &#8211; \u0432\u0441\u0451 \u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u043e, 15 &#8211; \u0432\u0441\u0451 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043e. \u0421\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043a\u0430\u0436\u0434\u044b\u0439 \u043a\u0430\u043d\u0430\u043b \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u0431\u0438\u0442\u043d\u043e (\u0447\u0438\u0441\u043b\u0430 1,2,4,8&nbsp; \u0432 \u0434\u0435\u0441\u044f\u0442\u0438\u0447\u043d\u043e\u043c \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0435)<\/p>\n\n\n\n<p>\u0415\u0441\u043b\u0438 \u044f \u0445\u043e\u0447\u0443 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0437\u0435\u043b\u0435\u043d\u0443\u044e \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0443, \u043f\u0438\u0448\u0443 rfsend -s 2<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><a href=\"http:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/sdc10423green.jpg\" rel=\"attachment wp-att-140\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"http:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/sdc10423green-1024x768.jpg\" alt=\"\u0410\u043a\u0432\u0430\u0440\u0438\u0443\u043c \u0432 \u0437\u0435\u043b\u0435\u043d\u043e\u043c \u0441\u0432\u0435\u0442\u0435\" class=\"wp-image-140\" srcset=\"https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/sdc10423green-1024x768.jpg 1024w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/sdc10423green-300x225.jpg 300w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/sdc10423green-768x576.jpg 768w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/sdc10423green-1536x1152.jpg 1536w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/sdc10423green-2048x1536.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption>\u0410\u043a\u0432\u0430\u0440\u0438\u0443\u043c \u0432 \u0437\u0435\u043b\u0435\u043d\u043e\u043c \u0441\u0432\u0435\u0442\u0435<\/figcaption><\/figure><\/div>\n\n\n\n<p>\u0421\u0438\u043d\u044e\u044e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e rfsend -s 4<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><a href=\"http:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_15_21_pro.jpg\" rel=\"attachment wp-att-141\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"575\" src=\"http:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_15_21_pro-1024x575.jpg\" alt=\"\" class=\"wp-image-141\" srcset=\"https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_15_21_pro-1024x575.jpg 1024w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_15_21_pro-300x169.jpg 300w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_15_21_pro-768x431.jpg 768w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_15_21_pro-1536x863.jpg 1536w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_15_21_pro-2048x1150.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><\/div>\n\n\n\n<p>\u0415\u0441\u043b\u0438 \u043d\u0443\u0436\u043d\u043e \u043a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c &#8211; \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u043c 4 \u0438 2 &#8211; &#8220;<strong>rfsend -s 6<\/strong>&#8221; \u0434\u043b\u044f \u0441\u0438\u043d\u0435\u0439 \u0438 \u0437\u0435\u043b\u0435\u043d\u043e\u0439 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e.. \u041c\u0430\u043b\u043e \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u0431\u0435\u043b\u043e\u0433\u043e:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><a href=\"http:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_10_42_pro.jpg\" rel=\"attachment wp-att-139\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"575\" src=\"http:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_10_42_pro-1024x575.jpg\" alt=\"\" class=\"wp-image-139\" srcset=\"https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_10_42_pro-1024x575.jpg 1024w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_10_42_pro-300x169.jpg 300w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_10_42_pro-768x431.jpg 768w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_10_42_pro-1536x863.jpg 1536w, https:\/\/ancient.tsaryk.dev\/wp-content\/uploads\/2016\/02\/wp_20160208_16_10_42_pro-2048x1150.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption>\u0421\u0438\u043d\u0438\u0439 \u043f\u043b\u044e\u0441 \u0437\u0435\u043b\u0435\u043d\u044b\u0439<\/figcaption><\/figure><\/div>\n\n\n\n<p>\u041a\u043e\u0433\u0434\u0430 \u0432\u0441\u0451 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043b\u0438, \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0432 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u043d\u0443\u0436\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b:<\/p>\n\n\n<pre class=\"brush: bash; gutter: false; light: false; title: ; toolbar: true; notranslate\" title=\"\">\nroot@raspberrypi:\/# nano \/etc\/crontab\n  GNU nano 2.2.6                  \u0424\u0430\u0439\u043b: \/etc\/crontab\n\n# \/etc\/crontab: system-wide crontab\n# Unlike any other crontab you don&#039;t have to run the `crontab&#039;\n# command to install the new version when you edit this file\n# and files in \/etc\/cron.d. These files also have username fields,\n# that none of the other crontabs do.\n\nSHELL=\/bin\/sh\nPATH=\/usr\/local\/sbin:\/usr\/local\/bin:\/sbin:\/bin:\/usr\/sbin:\/usr\/bin\n\n# m h dom mon dow user  command\n17 *    * * *   root    cd \/ &amp;&amp; run-parts --report \/etc\/cron.hourly\n25 6    * * *   root    test -x \/usr\/sbin\/anacron || ( cd \/ &amp;&amp; run-parts --report \/etc\/cron.d$\n47 6    * * 7   root    test -x \/usr\/sbin\/anacron || ( cd \/ &amp;&amp; run-parts --report \/etc\/cron.w$\n52 6    1 * *   root    test -x \/usr\/sbin\/anacron || ( cd \/ &amp;&amp; run-parts --report \/etc\/cron.m$\n00 22   * * *   root    rfsend -s 6 # \u0412 22-00 \u0441\u0432\u0435\u0442 \u0431\u0443\u0434\u0435\u0442 \u0441\u0438\u043d\u0438\u0439+\u0437\u0435\u043b\u0435\u043d\u044b\u0439\n30 22   * * *   root    rfsend -s 4 # \u0412 22-30 \u0441\u0432\u0435\u0442 \u0441\u0442\u0430\u043d\u0435\u0442 \u0441\u0438\u043d\u0438\u043c\n00 23   * * *   root    rfsend -s 0 # \u0412 23-00 \u0412\u044b\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0443\n37 6    * * *   root    rfsend -s 6 # \u0412 06-37 \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0441\u0438\u043d\u0438\u0439+\u0437\u0435\u043b\u0435\u043d\u044b\u0439\n00 7    * * *   root    rfsend -s 15 # \u0412 7-00 \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0432\u0441\u044e \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0443\n\n#\n#\u041f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a cron, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u043b\u0438\u0441\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\nroot@raspberrypi:\/# \/etc\/init.d\/cron restart\n\n\n<\/pre>\n\n\n<p>\u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0441\u0451. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043f\u043e\u0437\u0436\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u044e \u043f\u0440\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0447\u0435\u0440\u0435\u0437 \u0432\u0435\u0431 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441.<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e \u043f\u043e\u0432\u043e\u0434\u0443 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u0438. \u041f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u0441\u044f \u043e\u0434\u0438\u043d \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u044c NRF24L01+ \u0438 raspberry pi. \u0423 \u043c\u0435\u043d\u044f \u043d\u0430 \u043c\u0430\u043b\u0438\u043d\u043a\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d Raspbian. \u0418\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e \u043f\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044e \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u044f \u0432\u0437\u044f\u043b \u0438\u0437 \u0441\u0435\u0442\u0438. \u0415\u0441\u043b\u0438 \u043a\u043e\u0440\u043e\u0442\u043a\u043e \u0438 \u043f\u043e \u0440\u0443\u0441\u0441\u043a\u0438, \u0442\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u044c \u043a\u0430\u043a \u043d\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0435 (\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u0431\u044b\u043b\u043e \u043b\u0435\u043d\u044c \u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c, \u0432\u0437\u044f\u043b \u0441 \u0442\u043e\u0433\u043e \u0436\u0435 \u0441\u0430\u0439\u0442\u0430): \u0421\u0445\u0435\u043c\u0430 \u043f\u0440\u0438\u0435\u043c\u043d\u0438\u043a\u0430 \u0412 \u043c\u043e\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0438 \u044d\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u043e\u0442 \u0442\u0430\u043a: \u041c\u0430\u043b\u0438\u043d\u043a\u0430 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":140,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9,4,10,6],"tags":[],"class_list":["post-129","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-avr","category-4","category-10","category-6"],"_links":{"self":[{"href":"https:\/\/ancient.tsaryk.dev\/index.php?rest_route=\/wp\/v2\/posts\/129","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ancient.tsaryk.dev\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ancient.tsaryk.dev\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ancient.tsaryk.dev\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ancient.tsaryk.dev\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=129"}],"version-history":[{"count":12,"href":"https:\/\/ancient.tsaryk.dev\/index.php?rest_route=\/wp\/v2\/posts\/129\/revisions"}],"predecessor-version":[{"id":297,"href":"https:\/\/ancient.tsaryk.dev\/index.php?rest_route=\/wp\/v2\/posts\/129\/revisions\/297"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ancient.tsaryk.dev\/index.php?rest_route=\/wp\/v2\/media\/140"}],"wp:attachment":[{"href":"https:\/\/ancient.tsaryk.dev\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=129"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ancient.tsaryk.dev\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=129"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ancient.tsaryk.dev\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=129"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}