{"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\/hr\/blog\/administrirovanie\/pishem-ota-zagruzchik-dlya-atmega128rfa1-v-sostave-ustrojstva-smart-response-xe","title":{"rendered":"Pi\u0161emo OTA u\u010ditava\u010d za ATmega128RFA1 (u sklopu ure\u0111aja Smart Response XE)","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Pi\u0161emo OTA u\u010ditava\u010d za ATmega128RFA1 (u sklopu ure\u0111aja Smart Response XE)\" src=\"\/wp-content\/uploads\/2019\/04\/c3c47048a601bcd0a79b44535de2f36f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSve je po\u010delo kupnjom zanimljivog ure\u0111aja na sekundarnom tr\u017ei\u0161tu \u2014 Smart Response XE (<noindex><a rel=\"nofollow\" href=\"http:\/\/downloads.smarttech.com\/media\/sitecore\/en\/support\/product\/smartresponse\/smartresponsexe\/specsheets\/specsresponsexev18mar13.pdf\">kratak opis<\/a><\/noindex>). Namijenjen je \u0161kolama: svaki u\u010denik u razredu dobiva ure\u0111aj sli\u010dan elektroni\u010dkoj bilje\u017enici ili prevoditelju iz devedesetih, u\u010ditelj postavlja pitanje, a u\u010denici unose odgovore na tipkovnicama ure\u0111aja, koji se putem radio veze (802.15.4) \u0161alju na prijemnik povezan s u\u010diteljskim ra\u010dunalom.<\/p>\n<p>Podr\u0161ka za te ure\u0111aje prekinuta je prije nekoliko godina, a ono \u0161to su \u0161kole kupovale po 100-200 dolara za komad sada se na eBayu prodaje za 10 i manje. \u201eHardver\u201c je izuzetno prikladan za geekovske eksperimente:<\/p>\n<ul>\n<li>tipkovnica sa 60 tipki<\/li>\n<li>ekran s razlu\u010divosti 384&#215;136, 2 bita po pikselu \u2014 sli\u010dno BK, CGA, ali 4 ne boje, ve\u0107 nijanse svjetline<\/li>\n<li>mikrokontroler ATmega128RFA1 (128 kB flash memorije, 4 kB EEPROM-a, 16 kB RAM-a, prijemnik i oda\u0161ilja\u010d standarda 802.15.4)<\/li>\n<li>vanjska (u odnosu na mikrokontroler, a ne cijeli ure\u0111aj) flash memorija kapaciteta 1 megabit (128 kilobajta) s SPI su\u010deljem<\/li>\n<li>odjeljak za 4 AAA baterije.<\/li>\n<\/ul>\n<p>\nIz naziva mikrokontrolera jasno je da pripada porodici AVR, a to zna\u010di da je izrada ure\u0111aja kompatibilnog s Arduinom vi\u0161e nego trivijalan zadatak&#8230;<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Iz vijesti na <noindex><a rel=\"nofollow\" href=\"https:\/\/hackaday.com\/2018\/07\/22\/classroom-gadget-turned-arduino-compatible\/\">Hackaday<\/a><\/noindex> autor je saznao da je to <noindex><a rel=\"nofollow\" href=\"https:\/\/community.arduboy.com\/t\/smart-response-xe-re-purposed-into-arduboy\/6094\/\">ve\u0107 u\u010dinjeno<\/a><\/noindex> (na toj istoj poveznici opisano je kako povezati), stje\u010du\u0107i mogu\u0107nost pokretanja igara za 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=\"Pogledajte 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 No autora vi\u0161e zanima mogu\u0107nost ne igranja na ure\u0111aju, ve\u0107 istra\u017eivanje:<\/p>\n<ul>\n<li>flash memorija s serijskim SPI su\u010deljem<\/li>\n<li>bootloaderi za AVR<\/li>\n<li>standard 802.15.4<\/li>\n<\/ul>\n<p>\nAutor je zapo\u010deo pisanjem <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/bitbank2\/SmartResponseXE\">biblioteka<\/a><\/noindex> (GPL v3), koja omogu\u0107ava inicijalizaciju prikaza, ispisivanje teksta i pravokutnika, te pristup flash memoriji s SPI su\u010deljem. Zatim je po\u010deo smi\u0161ljati ideje za prakti\u010dnu upotrebu ure\u0111aja: d\u017eepni VT-100-kompatibilan terminal, vi\u0161ekorisni\u010dke igre. Prepraviv\u0161i tri ure\u0111aja, odlu\u010dio je \"nau\u010diti\" ih primati skice \"zrakom\". \u0160to bi bilo ne samo zanimljivo, nego i vrlo prakti\u010dno: ku\u0107i\u0161te ure\u0111aja svaki put te\u0161ko je otvoriti, a ispod poklopca odjeljka za baterije nalaze se samo otvori koji omogu\u0107uju povezivanje JTAG programatora s plo\u010dom.<\/p>\n<p><img decoding=\"async\" alt=\"Pi\u0161emo OTA u\u010ditava\u010d za ATmega128RFA1 (u sklopu ure\u0111aja Smart Response XE)\" src=\"\/wp-content\/uploads\/2019\/04\/eb928013737c34e50e6a49e7d41d5bd7.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTo je dovoljno za u\u010ditavanje Arduino bootloadera, ali ne i skice \u2014 serijski port nije dostupan, pa bez otvaranja ku\u0107i\u0161ta ne\u0107e i\u0107i. Tako\u0111er, TX0 i RX0 prve serijske linije su spojeni s linijama upitne matrice tipkovnice, to\u010dno s linijama koje provjeravaju funkcijske tipke s obje strane zaslona. No, \u0161to je tu je \u2014 autor je stvorio sljede\u0107e:<\/p>\n<p><img decoding=\"async\" alt=\"Pi\u0161emo OTA u\u010ditava\u010d za ATmega128RFA1 (u sklopu ure\u0111aja Smart Response XE)\" src=\"\/wp-content\/uploads\/2019\/04\/8989f4057806b83ff2eb11b6f1ed2d57.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nOvdje je isklju\u010dio JTAG linije, i sada nije nu\u017eno otvoriti odjeljak za baterije. A kako bi mogao u\u010ditavati i skice, povezao je i oba serijska porta na ovu istu vezu, dodaju\u0107i i prekida\u010d, jer nije mogu\u0107e fizi\u010dki isklju\u010diti ure\u0111aj kada su baterije instalirane.<\/p>\n<p>Bilo je potrebno prili\u010dno dugo raditi s lemilicom, slu\u017ebenim no\u017eem i pi\u0161toljem za ljepilo. Ukratko, u\u010ditavanje skica 'zrakom' je znatno prakti\u010dnije, ne\u0161to se hitno mora izmisliti za to.<\/p>\n<p>Arduino IDE za u\u010ditavanje skica koristi program <noindex><a rel=\"nofollow\" href=\"http:\/\/www.ladyada.net\/learn\/avr\/avrdude.html\">avrdude<\/a><\/noindex>. Komunicira s mikroprocesorom putem protokola <noindex><a rel=\"nofollow\" href=\"http:\/\/www.tuxgraphics.org\/common\/src2\/article05101\/stk500_spec_AVR068.pdf\">STK500<\/a><\/noindex>, koji omogu\u0107uje prijenos datoteka u oba smjera. Lo\u0161e se uklapa s kanalima gdje su mogu\u0107e promjenjive ka\u0161njenja, izobli\u010denja i gubitak podataka. Ako u serijskom kanalu ne\u0161to \u0161kripi ili \u0161umovi, mo\u017ee\u0161 poludjeti poku\u0161avaju\u0107i prona\u0107i uzrok. Jednom je autor proveo pola dana, dok nije shvatio da je problem u lo\u0161em kabelu, kao i u nepredvidljivom su\u010delju za pretvorbu CP2102. \u010cak i mikroprocesor s integriranim su\u010deljem za pretvorbu, poput ATmega32u4, ponekad mo\u017ee 'izgubiti razum'. Svaki korisnik Arduina primijetio je da gre\u0161ke pri u\u010ditavanju skica nisu tako rijetke. Ponekad zapis prolazi normalno, ali prilikom provjere o\u010ditavanja otkrije se gre\u0161ka. To ne zna\u010di da je gre\u0161ka bila pri zapisivanju \u2014 do\u0161lo je do kvara prilikom \u010ditanja. A sada zamislite da \u0107e se isto to doga\u0111ati kada radite 'zrakom', ali mnogo \u010de\u0161\u0107e.<\/p>\n<p>Isprobav\u0161i razli\u010dite na\u010dine rje\u0161avanja ovog problema, autor je smislio sljede\u0107e. Ure\u0111aj ima 128-kilobajtnu FLASH memoriju s SPI su\u010deljem \u2014 primamo podatke kroz \u017eice (sjetimo se da je jedan ure\u0111aj s priklju\u010dkom sa strane ve\u0107 kod autora), koristimo ovu memoriju kao me\u0111uspremnik i \u0161aljemo podatke na drugo ure\u0111aj putem radio kanala. To je pozdrav od Cybiko.<\/p>\n<p>Nakon pisanja koda za rad s radio kanalom, kao i fonta, bootloader je postao du\u017ei od 4 kilobajta. Stoga je vrijednost HFUSE morala biti promijenjena s 0xDA na 0xD8. Sada bootloader mo\u017ee imati du\u017einu do 8 kilobajta, a po\u010detna adresa je postavljena na 0x1E000. To je odra\u017eeno u Makefile, ali treba to uzeti u obzir i pri u\u010ditavanju. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.arduino.cc\/en\/Hacking\/Bootloader?from=Tutorial.Bootloader\">bootloadera<\/a><\/noindex> pomo\u0107u avrdude.<\/p>\n<p>Transiver standarda 802.15.4 u ATmega128RFA1 prvotno je namijenjen za rad s protokolom <noindex><a rel=\"nofollow\" href=\"https:\/\/www.zigbee.org\/what-is-zigbee\/\">ZigBee<\/a><\/noindex>, koji je prili\u010dno slo\u017een, stoga je autor odlu\u010dio umjesto toga jednostavno slati pakete. To je u ATmega128RFA1 implementirano hardverski, tako da \u0107e trebati malo koda. Tako\u0111er, radi pojednostavljenja, autor je odlu\u010dio koristiti fiksni kanal, ne dopu\u0161taju\u0107i \u010dak ni ru\u010dni odabir. Standard 802.15.4 podr\u017eava 16 kanala s brojevima od 11 do 26. Oni su prili\u010dno zasi\u0107eni, neki tako\u0111er preklapaju WiFi kanale (crvenom ozna\u010deni ZigBee kanali, plavim, zelenim i \u017eutim \u2014 WiFi).<\/p>\n<p><img decoding=\"async\" alt=\"Pi\u0161emo OTA u\u010ditava\u010d za ATmega128RFA1 (u sklopu ure\u0111aja Smart Response XE)\" src=\"\/wp-content\/uploads\/2019\/04\/650166fdb8e1d0361d015e4c2e85d7f1.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nIspostavilo se da su kanali 15 i 26 najmanje podlo\u017eni smetnjama od WiFi. Drugi od njih autor je izabrao. Odricanje od odgovornosti: prevoditelj ne zna je li dopu\u0161teno ovako pojednostaviti ZigBee. Mo\u017eda bi trebalo jo\u0161 malo programirati i potpuno ga implementirati?<\/p>\n<p>Na prvom od ure\u0111aja potrebno je implementirati kona\u010dni automat koji \u0161alje podatke putem protokola STK500. Uglavnom, poruke koje se \u0161alju i primaju su samodostatne, ali neke su vezane uz one koje su ranije pro\u0161le kroz kanal. Opis dijaloga je prikazan. <noindex><a rel=\"nofollow\" href=\"http:\/\/baldwisdom.com\/bootloading\/\">ovdje<\/a><\/noindex>.<\/p>\n<p>Va\u017ean dio ovog dijaloga je prijenos paketa namijenjenih za upis u flash memoriju odredi\u0161nog ure\u0111aja. Kod jednostavnih mikrokontrolera iz AVR porodice veli\u010dina stranice iznosi 128 bajtova, dok je za ATmega128RFA1 256. A za tu flash memoriju koja se povezije putem SPI protokola, ona je ista. Program u prvom ure\u0111aju pri slanju sketcha ga ne \u0161alje odmah u drugi, ve\u0107 ga zapisuje u tu memoriju. Kada Arduino IDE provjeri ispravnost upisa, \u0161alje ono \u0161to je zabilje\u017eeno. Sada je potrebno prenijeti primljene podatke putem radijskog kanala u drugi ure\u0111aj. Pri tome, prebacivanje s primanja na slanje i obrnuto doga\u0111a se prili\u010dno \u010desto. STK500 protokol je neosjetljiv na ka\u0161njenja, ali ne trpi gubitak podataka (\u010dudno, a ranije je re\u010deno da ka\u0161njenja u prijenosu podataka tako\u0111er utje\u010du). A gubici pri be\u017ei\u010dnom prijenosu su neizbje\u017eni. U ATmega128RFA1 ugra\u0111ena je hardverska implementacija ponovljenih zahtjeva kada je u pitanju sumnja u ispravnost prijenosa, ali autor je odlu\u010dio implementirati isto programski sam. Razvio je protokol pri \u010demu u jednom smjeru prolazi znatno vi\u0161e podataka nego u drugom.<\/p>\n<p>Nije savr\u0161en, ali sve radi. Stranica od 256 bajtova se dijeli na \u010detiri segmenta, pri \u010demu se svaki prenosi putem radijskog kanala kao paket. Paket mo\u017ee sadr\u017eavati do 125 bajtova podataka plus jedan bajt \u2014 du\u017einu i dva \u2014 CRC. Tako da se fragmenti du\u017eine 64 bajta zajedno s brojevima stranica i segmenata (od 0 do 3) smje\u0161taju. U primaju\u0107em ure\u0111aju postoji varijabla koja omogu\u0107ava pra\u0107enje koliko je segmenata primljeno, a kada stignu svi \u010detiri, na ure\u0111aj koji \u0161alje dolazi potvrda da je cijela stranica primljena. Nema potvrde (CRC se ne poklapa) \u2014 ponovo \u0161aljemo cijelu stranicu. Brzina pri tome ispada \u010dak i ve\u0107a nego prilikom prijenosa putem kabela. Pogledajte:<\/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=\"Pogledajte video\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><br \/>\nAli zapravo, trebalo bi predvidjeti prakti\u010dan na\u010din za povezivanje ure\u0111aja putem kabela za slanje sketcheva. Na primjer, smjestiti unutar takvog pretvara\u010da su\u010delja na CP2102, kao na fotografiji, i pri\u010dvrstiti ga na plo\u010du tako da izdr\u017ei napor pri povezivanju i isklju\u010divanju Micro USB kabela.<\/p>\n<p><img decoding=\"async\" alt=\"Pi\u0161emo OTA u\u010ditava\u010d za ATmega128RFA1 (u sklopu ure\u0111aja Smart Response XE)\" src=\"\/wp-content\/uploads\/2019\/04\/e03563fcd985467abb236475cbbf9e3f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTako\u0111er, ima 3,3-voltnu stabilizaciju (i kako je primijeniti u ure\u0111aju s 6-voltnim napajanjem \u2014 ako postoji sli\u010dna stabilizacija, mo\u017ee se dodati dva dioda kako bi se automatski biralo od kojeg \u0107e se napajati ure\u0111aj). Sa plo\u010de pretvara\u010da su potrebna uklanjanja tri LED dioda, ina\u010de \u0107e dodatno optere\u0107ivati baterije kada se radi s njima, kao i ometati upit tipkovnice i rad s flash memorijom putem SPI su\u010delja.<\/p>\n<p>Progon cilja ispalo je \u010dak zanimljivije od njegovog dostizanja (i ne trebate onaj vic o autobusu). Autor je saznao mnogo novog o bootloaderima za AVR, flash memoriji s SPI su\u010deljem, STK500 protokolu i 802.15.4 standardu.<\/p>\n<p>Sav ostali kod uz navedenu biblioteku \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/bitbank2\/SMART_bootloader\">ovdje<\/a><\/noindex>, tako\u0111er je pod GPL v3. Autorov Twitter \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/twitter.com\/fast_code_r_us\">ovdje<\/a><\/noindex>.<br \/>\n<br \/>Izvor: <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.4 - 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\/hr\/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.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"hr_HR\" \/>\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\/hr\/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\udd47Pi\u0161emo OTA bootloader za ATmega128RFA1 (unutar ure\u0111aja Smart Response XE) | ProHoster","description":"Sve je po\u010delo.","canonical_url":"https:\/\/prohoster.info\/hr\/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":"hr_HR","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\/hr\/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\/hr\/wp-json\/wp\/v2\/posts\/31101","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/comments?post=31101"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/31101\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media\/23069"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media?parent=31101"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/categories?post=31101"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/tags?post=31101"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}