{"id":31101,"date":"2019-10-31T21:39:28","date_gmt":"2019-10-31T18:39:28","guid":{"rendered":"https:\/\/prohoster.info\/blog\/pishem-ota-zagruzchik-dlya-atmega128rfa1-v-sostave-ustrojstva-smart-response-xe\/"},"modified":"2019-10-31T21:39:28","modified_gmt":"2019-10-31T18:39:28","slug":"pishem-ota-zagruzchik-dlya-atmega128rfa1-v-sostave-ustrojstva-smart-response-xe","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/pishem-ota-zagruzchik-dlya-atmega128rfa1-v-sostave-ustrojstva-smart-response-xe","title":{"rendered":"P\u00ed\u0161eme OTA bootloader pre ATmega128RFA1 (ako s\u00fa\u010das\u0165 zariadenia Smart Response XE)","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"P\u00ed\u0161eme OTA bootloader pre ATmega128RFA1 (ako s\u00fa\u010das\u0165 zariadenia Smart Response XE)\" src=\"\/wp-content\/uploads\/2019\/04\/c3c47048a601bcd0a79b44535de2f36f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nV\u0161etko sa za\u010dalo zak\u00fapen\u00edm zauj\u00edmav\u00e9ho zariadenia na sekund\u00e1rnom trhu \u2014 Smart Response XE (<noindex><a rel=\"nofollow\" href=\"http:\/\/downloads.smarttech.com\/media\/sitecore\/en\/support\/product\/smartresponse\/smartresponsexe\/specsheets\/specsresponsexev18mar13.pdf\">kr\u00e1tky popis<\/a><\/noindex>). Je ur\u010den\u00e9 pre \u0161koly: ka\u017ed\u00fd \u017eiak v triede dostane zariadenie, podobn\u00e9 elektronickej z\u00e1pisnej kni\u017eke alebo preklada\u010du z dev\u00e4\u0165desiatych rokov, u\u010dite\u013e polo\u017e\u00ed ot\u00e1zku a \u017eiaci na kl\u00e1vesniciach zariaden\u00ed zadaj\u00fa odpovede, ktor\u00e9 prich\u00e1dzaj\u00fa prostredn\u00edctvom r\u00e1diov\u00e9ho kan\u00e1la (802.15.4) do prij\u00edma\u010da pripojen\u00e9ho k u\u010dite\u013esk\u00e9mu PC.<\/p>\n<p>Podpora t\u00fdchto zariaden\u00ed bola zru\u0161en\u00e1 pred nieko\u013ek\u00fdmi rokmi a to, \u010do \u0161koly nakupovali za 100-200 dol\u00e1rov za kus, sa teraz objavuje na eBay za 10 dol\u00e1rov a menej. 'Hardv\u00e9r' je ve\u013emi vhodn\u00fd na geekovsk\u00e9 experimenty:<\/p>\n<ul>\n<li>kl\u00e1vesnica s 60 kl\u00e1vesmi<\/li>\n<li>displej s rozl\u00ed\u0161en\u00edm 384&#215;136, 2 bity na pixel \u2013 podobne ako BK, CGA, ale 4 nie farby, ale odtiene jasu<\/li>\n<li>mikrokontrol\u00e9r ATmega128RFA1 (128 kB flash pam\u00e4te, 4 kB EEPROM, 16 kB RAM, prij\u00edma\u010d-vysiela\u010d \u0161tandardu 802.15.4)<\/li>\n<li>extern\u00e1 (vo vz\u0165ahu k mikrokontrol\u00e9ru, nie cel\u00e9mu zariadeniu) flash pam\u00e4\u0165 s kapacitou 1 megabit (128 kilobajtov) s rozhran\u00edm SPI<\/li>\n<li>oddelenie pre 4 AAA \u010dl\u00e1nky.<\/li>\n<\/ul>\n<p>\nZ n\u00e1zvu mikrocontrollera je jasn\u00e9, \u017ee patr\u00ed do rodiny AVR, tak\u017ee urobi\u0165 zariadenie kompatibiln\u00e9 s Arduinom je \u00faloha viac ne\u017e trivi\u00e1lna&#8230;<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Z novinky na <noindex><a rel=\"nofollow\" href=\"https:\/\/hackaday.com\/2018\/07\/22\/classroom-gadget-turned-arduino-compatible\/\">Hackaday<\/a><\/noindex> autor zistil, \u017ee to <noindex><a rel=\"nofollow\" href=\"https:\/\/community.arduboy.com\/t\/smart-response-xe-re-purposed-into-arduboy\/6094\/\">u\u017e urobili<\/a><\/noindex> (zd\u00e1 sa, \u017ee odkaz, kde pripoji\u0165), a z\u00edskal mo\u017enos\u0165 sp\u00fa\u0161\u0165a\u0165 hry pre Arduboy:<\/p>\n<p><center><div class=\"youtube-placeholder\" data-id=\"6VqPGFtIT8Q\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/6VqPGFtIT8Q\/hqdefault.jpg\" alt=\"Prehrajte video\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><br \/>\n Ale autora viac zauj\u00edma mo\u017enos\u0165 nie si zahra\u0165 na zariaden\u00ed, ale presk\u00fama\u0165:<\/p>\n<ul>\n<li>flash pam\u00e4\u0165 s s\u00e9riov\u00fdm rozhran\u00edm SPI<\/li>\n<li>bootloadery pre AVR<\/li>\n<li>\u0161tandard 802.15.4<\/li>\n<\/ul>\n<p>\nAutor za\u010dal p\u00edsan\u00edm <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/bitbank2\/SmartResponseXE\">kni\u017enice<\/a><\/noindex> (GPL v3), umo\u017e\u0148uj\u00facej inicializova\u0165 displej, zobrazova\u0165 text a obd\u013a\u017eniky, ako aj pristupova\u0165 k flash pam\u00e4ti s rozhran\u00edm SPI. Potom za\u010dal rozm\u00fd\u0161\u013ea\u0165 nad my\u0161lienkami praktick\u00e9ho vyu\u017eitia zariadenia: prenosn\u00fd termin\u00e1l kompatibiln\u00fd s VT-100, multiplayerov\u00e9 hry. Po prestavan\u00ed troch zariaden\u00ed sa rozhodol \"nau\u010di\u0165\" ich prij\u00edma\u0165 sketche \"vzduchom\". \u010co by bolo nielen zauj\u00edmav\u00e9, ale aj ve\u013emi pohodln\u00e9: skrinku zariadenia je \u0165a\u017ek\u00e9 otv\u00e1ra\u0165 zaka\u017ed\u00fdm a pod krytom bat\u00e9riov\u00e9ho oddelenia s\u00fa len otvory umo\u017e\u0148uj\u00face pripoji\u0165 JTAG program\u00e1tor k doske.<\/p>\n<p><img decoding=\"async\" alt=\"P\u00ed\u0161eme OTA bootloader pre ATmega128RFA1 (ako s\u00fa\u010das\u0165 zariadenia Smart Response XE)\" src=\"\/wp-content\/uploads\/2019\/04\/eb928013737c34e50e6a49e7d41d5bd7.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTo load the Arduino bootloader, this is enough, but not for the sketch \u2014 the serial port is not exposed; you still have to open the casing. Additionally, the TX0 and RX0 lines of the first serial port are combined with the lines used to poll the keyboard matrix, specifically those used to query the function keys on the sides of the display. But what can be done \u2014 the author constructed the following:<\/p>\n<p><img decoding=\"async\" alt=\"P\u00ed\u0161eme OTA bootloader pre ATmega128RFA1 (ako s\u00fa\u010das\u0165 zariadenia Smart Response XE)\" src=\"\/wp-content\/uploads\/2019\/04\/8989f4057806b83ff2eb11b6f1ed2d57.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nHe connected the JTAG lines there, and now it's no longer necessary to open the battery compartment. To enable sketch uploads, he also connected both serial ports to this same connector, adding a switch, since it is otherwise physically impossible to turn off the device with the batteries installed.<\/p>\n<p>It took quite a while to work with a soldering iron, a utility knife, and a glue gun. In general, uploading sketches 'over the air' is significantly more convenient; we urgently need to invent something for this.<\/p>\n<p>The Arduino IDE uses the program <noindex><a rel=\"nofollow\" href=\"http:\/\/www.ladyada.net\/learn\/avr\/avrdude.html\">avrdude<\/a><\/noindex>. It communicates with the microcontroller using the protocol <noindex><a rel=\"nofollow\" href=\"http:\/\/www.tuxgraphics.org\/common\/src2\/article05101\/stk500_spec_AVR068.pdf\">STK500<\/a><\/noindex>, which allows files to be transferred in both directions. It is poorly compatible with channels where variable delays, distortion, and data loss may occur. If something goes wrong or crackles in the serial channel, you can go crazy trying to find the cause. Once, the author struggled for half a day before realizing that the issue was a bad cable, as well as a temperamental CP2102 interface converter. Even a microcontroller with a built-in interface converter, like the ATmega32u4, can sometimes act up. Every Arduino user has noticed that errors during sketch uploads are not that rare. Sometimes writing goes smoothly, but during a verification read, an error is discovered. This does not mean there was an error during writing \u2014 the failure occurred during reading. Now imagine that when working 'over the air', the same will happen, but much more often.<\/p>\n<p>After trying various ways to overcome this problem, the author came up with the following. The device has a 128-kilobyte flash memory with an SPI interface \u2014 receiving data over wires (let's remember that the author already has one device with a connector on the side), using this memory as a buffer, and sending data to another device over the radio channel. A shout-out from Cybiko.<\/p>\n<p>Po nap\u00edsan\u00ed k\u00f3du pre pr\u00e1cu s r\u00e1diov\u00fdm kan\u00e1lom, ako aj p\u00edsma, sa bootloader pred\u013a\u017eil na viac ako 4 kilobajty. Preto sa hodnota HFUSE musela zmeni\u0165 z 0xDA na 0xD8. Teraz m\u00f4\u017ee by\u0165 bootloader dlh\u00fd a\u017e 8 kilobajtov, pri\u010dom po\u010diato\u010dn\u00e1 adresa sa stala 0x1E000. To je uveden\u00e9 v Makefile, ale malo by sa to zoh\u013eadni\u0165 aj pri nahr\u00e1van\u00ed. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.arduino.cc\/en\/Hacking\/Bootloader?from=Tutorial.Bootloader\">bootloadera<\/a><\/noindex> s pomocou avrdude.<\/p>\n<p>Vysiela\u010d a prij\u00edma\u010d \u0161tandardu 802.15.4 v ATmega128RFA1 je p\u00f4vodne navrhnut\u00fd na pr\u00e1cu pod\u013ea protokolu <noindex><a rel=\"nofollow\" href=\"https:\/\/www.zigbee.org\/what-is-zigbee\/\">ZigBee<\/a><\/noindex>, ktor\u00fd je dos\u0165 zlo\u017eit\u00fd, preto sa autor rozhodol namiesto toho jednoducho pren\u00e1\u0161a\u0165 pakety. To je hardv\u00e9rovo implementovan\u00e9 v ATmega128RFA1, tak\u017ee k\u00f3d bude potrebn\u00fd len m\u00e1lo. Na zjednodu\u0161enie sa autor rozhodol pou\u017ei\u0165 pevn\u00fd kan\u00e1l, bez mo\u017enosti jeho manu\u00e1lneho v\u00fdberu. \u0160tandard 802.15.4 podporuje 16 kan\u00e1lov s \u010d\u00edslami od 11 do 26. Tieto kan\u00e1ly s\u00fa dos\u0165 preplnen\u00e9, niektor\u00e9 tie\u017e prekr\u00fdvaj\u00fa kan\u00e1ly WiFi (\u010dervenou s\u00fa zn\u00e1zornen\u00e9 kan\u00e1ly ZigBee, modrou, zelenou a \u017eltou \u2014 WiFi).<\/p>\n<p><img decoding=\"async\" alt=\"P\u00ed\u0161eme OTA bootloader pre ATmega128RFA1 (ako s\u00fa\u010das\u0165 zariadenia Smart Response XE)\" src=\"\/wp-content\/uploads\/2019\/04\/650166fdb8e1d0361d015e4c2e85d7f1.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nUk\u00e1zalo sa, \u017ee najmenej ovplyvnen\u00e9 ru\u0161en\u00edm od WiFi s\u00fa kan\u00e1ly 15 a 26. Druh\u00fd z nich autor vybral. Disklaimer: prekladate\u013e nevie, \u010di je povolen\u00e9 takto zjednodu\u0161ova\u0165 ZigBee. Mo\u017eno by sa malo e\u0161te tro\u0161ku naprogramova\u0165 a implementova\u0165 ho \u00faplne?<\/p>\n<p>Na prvom z zariaden\u00ed je potrebn\u00e9 implementova\u0165 kone\u010dn\u00fd automat, ktor\u00fd pren\u00e1\u0161a \u00fadaje pod\u013ea protokolu STK500. V\u00e4\u010d\u0161ina pren\u00e1\u0161an\u00fdch a prij\u00edman\u00fdch spr\u00e1v je samostatn\u00e1, ale niektor\u00e9 s\u00faviazane s t\u00fdmi, ktor\u00e9 pre\u0161li kan\u00e1lom sk\u00f4r. Opis dial\u00f3gu je uveden\u00fd. <noindex><a rel=\"nofollow\" href=\"http:\/\/baldwisdom.com\/bootloading\/\">tu<\/a><\/noindex>.<\/p>\n<p>D\u00f4le\u017eitou s\u00fa\u010das\u0165ou tohto dial\u00f3gu je prenos paketov ur\u010den\u00fdch na z\u00e1pis do flash pam\u00e4te cie\u013eov\u00e9ho zariadenia. U jednoduch\u00fdch mikrokontrol\u00e9rov rodiny AVR je ve\u013ekos\u0165 str\u00e1nky 128 bajtov, ale u ATmega128RFA1 je to 256. A u flash pam\u00e4te, ktor\u00e1 sa prip\u00e1ja prostredn\u00edctvom protokolu SPI, je to rovnak\u00e9. Program v prvom zariaden\u00ed pri nahr\u00e1van\u00ed sketcha ho okam\u017eite nepreposiela do druh\u00e9ho zariadenia, ale najprv ho zapisuje do tejto pam\u00e4te. Ke\u010f Arduino IDE kontroluje spr\u00e1vnos\u0165 z\u00e1pisu, po\u0161l\u00fa mu to, \u010do sa tam zap\u00edsalo. Teraz je potrebn\u00e9 prenies\u0165 z\u00edskan\u00e9 \u00fadaje cez r\u00e1diov\u00fd kan\u00e1l do druh\u00e9ho zariadenia. Pri tom prechod z pr\u00edjmu na prenos a naopak nast\u00e1va pomerne \u010dasto. Protokol STK500 je nedbal\u00fd oh\u013eadom oneskoren\u00ed, ale netoleruje stratu \u00fadajov (zvl\u00e1\u0161tne, ve\u010f vy\u0161\u0161ie je nap\u00edsan\u00e9, \u017ee oneskorenia pri prenose \u00fadajov maj\u00fa tie\u017e vplyv). A straty pri bezdr\u00f4tovom prenose s\u00fa nevyhnutn\u00e9. V ATmega128RFA1 je zabudovan\u00e1 hardv\u00e9rov\u00e1 implement\u00e1cia opakovan\u00fdch po\u017eiadaviek pri pochybnostiach o spr\u00e1vnosti prenosu, ale autor sa rozhodol, \u017ee to realizuje programovo s\u00e1m. Vyvinul protokol, pri ktorom jedn\u00fdm smerom prech\u00e1dza ove\u013ea viac \u00fadajov ako opa\u010dne.<\/p>\n<p>Nie je dokonal\u00fd, ale v\u0161etko funguje. 256-bajtov\u00e1 str\u00e1nka je rozdelen\u00e1 na \u0161tyri segmenty, z ktor\u00fdch ka\u017ed\u00fd je pren\u00e1\u0161an\u00fd cez r\u00e1diov\u00fd kan\u00e1l vo forme paketu. Paket obsahuje a\u017e 125 bajtov \u00fadajov plus jeden bajt \u2014 d\u013a\u017eka a dva \u2014 CRC. Tak\u017ee fragmenty s ve\u013ekos\u0165ou 64 bajtov spolu s \u010d\u00edslami str\u00e1n a segmentov (od 0 do 3) s\u00fa tam umiestnen\u00e9. V prij\u00edmaj\u00facom zariaden\u00ed je predpokladan\u00e1 premenn\u00e1, ktor\u00e1 umo\u017e\u0148uje sledova\u0165, ko\u013eko segmentov bolo prijat\u00fdch, a ke\u010f pr\u00eddu v\u0161etky \u0161tyri, na odosielaj\u00face zariadenie ide potvrdenie, \u017ee cel\u00e1 str\u00e1nka bola prijat\u00e1. Ak nie je potvrdenie (CRC sa nezhoduje) \u2014 posielame cel\u00fa str\u00e1nku znovu. R\u00fdchlos\u0165 pri tom je dokonca vy\u0161\u0161ia ako pri prenose cez k\u00e1bel. Pozrite:<\/p>\n<p><center><div class=\"youtube-placeholder\" data-id=\"d-ObUCnRmQU\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/d-ObUCnRmQU\/hqdefault.jpg\" alt=\"Prehrajte video\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><br \/>\nAle vlastne by sa mal predpoklada\u0165 pohodln\u00fd sp\u00f4sob pripojenia k zariadeniam k\u00e1bla na nahr\u00e1vanie sketchoch aj cez tento sp\u00f4sob. Napr\u00edklad umiestni\u0165 dovn\u00fatra tak\u00fd prevodn\u00edk rozhran\u00ed CP2102, ako na obr\u00e1zku, a prilepi\u0165 ho na dosku tak, aby odol\u00e1val sile pri pripojen\u00ed a odpojen\u00ed k\u00e1bla Micro USB.<\/p>\n<p><img decoding=\"async\" alt=\"P\u00ed\u0161eme OTA bootloader pre ATmega128RFA1 (ako s\u00fa\u010das\u0165 zariadenia Smart Response XE)\" src=\"\/wp-content\/uploads\/2019\/04\/e03563fcd985467abb236475cbbf9e3f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nObsahuje tie\u017e 3,3-voltov\u00fd regul\u00e1tor (a ako ho aplikova\u0165 v zariaden\u00ed s 6-voltov\u00fdm nap\u00e1jan\u00edm \u2014 ak tam existuje tak\u00fdto regul\u00e1tor, je mo\u017en\u00e9 prida\u0165 dva di\u00f3dy, aby sa automaticky vybralo, z ktor\u00e9ho sa zariadenie nap\u00e1ja). Z dosky rozhrania je potrebn\u00e9 odstr\u00e1ni\u0165 v\u0161etky tri sveteln\u00e9 di\u00f3dy, inak bud\u00fa dodato\u010dne za\u0165a\u017eova\u0165 bat\u00e9rie pri prev\u00e1dzke z nich, a tie\u017e bud\u00fa zasahova\u0165 do ankety kl\u00e1vesnice a pr\u00e1ce s flash pam\u00e4\u0165ou s rozhran\u00edm SPI.<\/p>\n<p>Prenasledovanie cie\u013ea sa uk\u00e1zalo by\u0165 dokonca zauj\u00edmavej\u0161ie ako jeho dosiahnutie (a netreba ten vtip o autobuse). Autor sa dozvedel ve\u013ea nov\u00e9ho o bootloaderoch pre AVR, flash pam\u00e4\u0165ach s rozhran\u00edm SPI, protokole STK500 a \u0161tandarde 802.15.4.<\/p>\n<p>Cel\u00fd zvy\u0161ok k\u00f3du na doplnenie k vy\u0161\u0161ie op\u00edsanej kni\u017enici \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/bitbank2\/SMART_bootloader\">tu<\/a><\/noindex>, a ten je tie\u017e pod GPL v3. Autorov Twitter \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/twitter.com\/fast_code_r_us\">tu<\/a><\/noindex>.<br \/>\n<br \/>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/447026\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0441\u0451 \u043d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0441 \u043f\u0440\u0438\u043e\u0431\u0440\u0435\u0442\u0435\u043d\u0438\u044f \u0430\u0432\u0442\u043e\u0440\u043e\u043c \u043d\u0430 \u0432\u0442\u043e\u0440\u0438\u0447\u043d\u043e\u043c \u0440\u044b\u043d\u043a\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u2014 Smart Response XE (\u043a\u0440\u0430\u0442\u043a\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435). \u041f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043e \u043e\u043d\u043e \u0434\u043b\u044f \u0448\u043a\u043e\u043b: \u043a\u0430\u0436\u0434\u044b\u0439 \u0443\u0447\u0435\u043d\u0438\u043a \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043f\u043e \u0434\u0435\u0432\u0430\u0439\u0441\u0443, \u043f\u043e\u0445\u043e\u0436\u0435\u043c\u0443 \u043d\u0430 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u043d\u0443\u044e \u043a\u043d\u0438\u0436\u043a\u0443 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a \u0434\u0435\u0432\u044f\u043d\u043e\u0441\u0442\u044b\u0445, \u0443\u0447\u0438\u0442\u0435\u043b\u044c \u0437\u0430\u0434\u0430\u0451\u0442 \u0432\u043e\u043f\u0440\u043e\u0441, \u0438 \u0443\u0447\u0435\u043d\u0438\u043a\u0438 \u043d\u0430\u0431\u0438\u0440\u0430\u044e\u0442 \u043d\u0430 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u043e\u0442\u0432\u0435\u0442\u044b, \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u044e\u0449\u0438\u0435 \u043f\u043e \u0440\u0430\u0434\u0438\u043e\u043a\u0430\u043d\u0430\u043b\u0443 (802.15.4) \u0432 \u043f\u0440\u0438\u0451\u043c\u043d\u0438\u043a, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u044b\u0439 \u043a \u0443\u0447\u0438\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u043c\u0443 \u041f\u041a. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":23069,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-31101","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0441\u0451 \u043d\u0430\u0447\u0430\u043b\u043e\u0441\u044c.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/pishem-ota-zagruzchik-dlya-atmega128rfa1-v-sostave-ustrojstva-smart-response-xe\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"sk_SK\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041f\u0438\u0448\u0435\u043c OTA-\u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a \u0434\u043b\u044f ATmega128RFA1 (\u0432 \u0441\u043e\u0441\u0442\u0430\u0432\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 Smart Response XE) | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0441\u0451 \u043d\u0430\u0447\u0430\u043b\u043e\u0441\u044c.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/pishem-ota-zagruzchik-dlya-atmega128rfa1-v-sostave-ustrojstva-smart-response-xe\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:39:28+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:39:28+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47P\u00ed\u0161eme OTA bootloader pre ATmega128RFA1 (v s\u00fa\u010dasti zariadenia Smart Response XE) | ProHoster","description":"V\u0161etko sa za\u010dalo.","canonical_url":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/pishem-ota-zagruzchik-dlya-atmega128rfa1-v-sostave-ustrojstva-smart-response-xe","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sk_SK","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041f\u0438\u0448\u0435\u043c OTA-\u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a \u0434\u043b\u044f ATmega128RFA1 (\u0432 \u0441\u043e\u0441\u0442\u0430\u0432\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 Smart Response XE) | ProHoster","og:description":"\u0412\u0441\u0451 \u043d\u0430\u0447\u0430\u043b\u043e\u0441\u044c.","og:url":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/pishem-ota-zagruzchik-dlya-atmega128rfa1-v-sostave-ustrojstva-smart-response-xe","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:39:28+00:00","article:modified_time":"2019-10-31T18:39:28+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"31101","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 04:31:21","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:22:35","updated":"2026-01-21 04:31:21","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/31101","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/comments?post=31101"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/31101\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media\/23069"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media?parent=31101"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/categories?post=31101"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/tags?post=31101"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}