অতীতে, ফার্মওয়্যার আপডেট হয় এম্বেডেড সিস্টেম একটি সমালোচনামূলক কাজ ছিল। তবে বেশিরভাগ আইওটি ডিভাইস এবং এম্বেড থাকা ডিভাইসগুলি বিকাশকারীদের দ্বারা দূরবর্তীভাবে ফার্মওয়্যার আপডেট করতে ইন্টারনেটের মাধ্যমে সংযুক্ত থাকে। ইন্টারনেটে সংযোগ করতে সক্ষম ডিভাইসগুলির নিজের আপডেট করার সুবিধা রয়েছে। সুতরাং এই ধরণের ফার্মওয়্যার প্রোগ্রামিং ইন ESP32 ওটিএ (ওভার-দ্য এয়ার) হিসাবে উল্লেখ করা হয়, যা এম্বেড থাকা ডিভাইসগুলিকে ন্যূনতম ব্যবহারকারীর হস্তক্ষেপের সাথে আপ টু ডেট রাখতে সহায়তা করে। অতিরিক্তভাবে, ওভার-দ্য এয়ার প্রচুর বৈশিষ্ট্য সরবরাহ করে এবং বিকাশকারীদের তাদের ডিভাইসগুলি আপডেট করার জন্য একটি ব্যয়বহুল কৌশল। এই নিবন্ধটি অনুসন্ধান করে ওটিএ ফার্মওয়্যার ESP32 উন্নয়ন বোর্ডের উপর আপডেট পদ্ধতি আপডেট করুন।
ইএসপি 32/ ইএসপি 32 ওটিএতে ওটিএ প্রোগ্রামিং কী?
ESP32 ওটিএ হ'ল কম্পিউটারে সংযোগ না করে ইন্টারনেটে ESP32 উন্নয়ন বোর্ড প্রক্রিয়াতে একটি নতুন প্রোগ্রাম আপলোড বা আপডেট করার ক্ষমতা। তদতিরিক্ত, এই প্রক্রিয়াটি রক্ষণাবেক্ষণের প্রতিটি ইএসপি মডিউল আপডেট করার জন্য প্রয়োজনীয় সময়কেও হ্রাস করতে পারে। সুতরাং, এটি ইন্টারনেট বা অন্যান্য ধরণের ওয়্যারলেস নেটওয়ার্কগুলিতে ওয়্যারলেস আপডেটের অনুমতি দেয়।
ESP32 উন্নয়ন বোর্ড এটি ব্যবহার করে ডাউনলোড করে ফার্মওয়্যার আপডেটে মনোযোগ দেয় প্রোটোকল এইচটিটিপিএস, এমকিউটিটি, বা এইচটিটিপি -র মতো। এর পরে, এটি ESP32 বোর্ডের মেমরির মধ্যে বরাদ্দকৃত পার্টিশনে এটি যাচাই করে এবং ফ্ল্যাশ করে। এম্বেড থাকা ডিভাইস বা আইওটি ডিভাইসের জন্য ওটিএ আপডেটগুলি উল্লেখযোগ্য, বিশেষত যখন ডিভাইসগুলি অ্যাক্সেস করা বা দূরবর্তী স্থানে থাকা কঠিন।
ESP32 ওটিএ কোর পার্টস
ESP32 ওটিএ শারীরিকভাবে ডিভাইসটি সংযুক্ত না করে ফার্মওয়্যার আপডেটের জন্য বিভিন্ন কী উপাদান ব্যবহার করে। সুতরাং, এই ওটিএর মূল অংশগুলি আপডেটগুলি প্রেরণ এবং গ্রহণে সহায়তা করে। এছাড়াও, অ্যাসিনসেলেগ্যান্টোটা (ওআর) এসপ্রেসিফ থেকে ইএসপি এইচটিটিপিএস ওটিএ লাইব্রেরি এবং ফ্রেমওয়ার্কগুলি বাস্তবায়ন পদ্ধতিটি সংক্ষিপ্ত করে।
ওটিএর ডেটা পার্টিশন
ESP32 বোর্ডের ফ্ল্যাশ মেমরির মধ্যে এই বিভাজনটি কেবল ওটিএর আপডেট হওয়া তথ্যগুলি সংরক্ষণ করে, যেমনটি স্লটটি সম্প্রতি লিখিত হয়েছিল তা ট্র্যাক করার জন্য ফার্মওয়্যার চিত্র এবং একটি কাউন্টার হিসাবে।
যোগাযোগ ব্যবস্থা
ওটিএ আপডেটগুলি মূলত ওয়্যারলেস যোগাযোগ প্রোটোকলের মতো নির্ভর করে ব্লুটুথ বা ওয়াইফাই, যেখানে ব্লুটুথ আরও স্থানীয়করণ এবং ছোট আপডেটের জন্য ব্যবহৃত হয় এবং ওয়াইফাই সাধারণত ব্যবহৃত হয়।

ক্লায়েন্ট-সার্ভার আর্কিটেকচার
একটি ক্লায়েন্ট, একটি মোবাইল অ্যাপ্লিকেশন বা পিসির মতো, আপডেটটি শুরু করে এবং ফার্মওয়্যারটি ESP32 সার্ভারে প্রেরণ করে।
গ্রন্থাগার এবং ফ্রেমওয়ার্ক
অ্যাসিনসেলেগ্যান্টোটা এবং ইএসপি এইচটিটিপিএস ওটিএ লাইব্রেরিগুলি ওটিএ পদ্ধতিটি পরিচালনা করতে এবং বিকাশকে সংক্ষিপ্ত করার জন্য প্রাক-বিল্ট কার্যকারিতা সরবরাহ করে।
বুটলোডার
এই বুটলোডার একটি সফল ওটিএ আপডেটের পরে সর্বশেষতম ফার্মওয়্যারে রূপান্তর পরিচালনা করে।
নিরাপদ ওটা
নিরাপদ ওটিএ আপডেটগুলি এর অখণ্ডতা এবং সত্যতা নিশ্চিত করতে ফার্মওয়্যার স্বাক্ষর চিত্র যাচাইকরণ জড়িত।
সংক্ষেপে, ইএসপি 32 ওটিএ আপডেটগুলিতে সফ্টওয়্যার (পার্টিশন, লাইব্রেরি এবং ফার্মওয়্যার) এবং যোগাযোগ প্রোটোকল (ওয়াই-ফাই বা ব্লুটুথ) এর সংমিশ্রণ জড়িত। সুতরাং, এটি শারীরিক অ্যাক্সেস ছাড়াই ডিভাইসের ফার্মওয়্যারটি নির্বিঘ্নে আপডেট করে।
কাজ
ESP32 ওটিএ প্রোগ্রামিং ESP32 এর ফার্মওয়্যার/সফ্টওয়্যারটিকে কোনও শারীরিক সংযোগ ছাড়াই কম্পিউটারে ওয়্যারলেস আপডেট করার অনুমতি দেয়। সুতরাং এটি ওয়াই-ফাইয়ের মতো নেটওয়ার্কের উপরে একটি নতুন ফার্মওয়্যার চিত্র প্রেরণ করে এবং এর পরে এটি ESP32 এর ফ্ল্যাশ মেমরিতে লেখার পরে করা যেতে পারে। সুতরাং, ESP32 উন্নয়ন বোর্ড রিবুট করে এবং সর্বশেষতম ফার্মওয়্যারটি চলছে।
ইএসপি 32 ওটিএ বাস্তবায়ন
ESP32 উন্নয়ন বোর্ডের জন্য ওভার-দ্য এয়ার আপডেটগুলি প্রয়োগ করতে, একটি বেসিক ওটিএ স্কেচ অবশ্যই আপলোড করতে হবে। এর পরে, একটি ওয়েব সার্ভার সর্বশেষতম ফার্মওয়্যার আপলোড করতে ব্যবহৃত হয়। সুতরাং ESP32 ওটিএ পদ্ধতির এই পুরো ইনস্টলেশনটিতে একটি ওয়াই-ফাই সংযোগ সেটআপ, গ্রন্থাগার ইনস্টলেশন জড়িত এবং এর পরে, একটি সংকলিত বাইনারি ফাইলটি ESP32 বোর্ডে আপলোড করা হয়।
ESP32 ওটিএ বাস্তবায়নের ধাপে ধাপে পদ্ধতি:
- প্রথমত, আরডুইনো আইডিইতে ESP32 বোর্ড প্যাকেজটি ইনস্টল করা দরকার।
- এর পরে, ESP32 এর নির্দিষ্ট এবং অন্যান্য প্রয়োজনীয় গ্রন্থাগারগুলি অন্তর্ভুক্ত করুন।
- বেসিক ওটিএ স্কেচটি অবশ্যই আপলোড করতে হবে, যা সাধারণত ওটিএ আপডেটের জন্য একটি ওয়েব সার্ভার থাকে।
- ব্রাউজারটি খুলুন এবং ESP32 এর ওয়েব সার্ভার আইপি ঠিকানাটির অনুমতি দিন।
- আপনি আপলোড করতে চান এমন ওয়েব সার্ভার ইন্টারফেসে .bin ফাইলটি চয়ন করুন।
- ওটিএ আপডেট শুরু করতে আপলোড বোতামটি ক্লিক করুন।
- এখন ESP32 আপনার ওয়াই-ফাই নেটওয়ার্কের সাথে সংযুক্ত।
- ওপেন আর্ড নতুন আপলোড করা ফার্মওয়্যারটির মাধ্যমে পুনরায় বুট করবে।
- ওটিএ পদ্ধতিটি সহজ করার জন্য আরডুইনুটার লাইব্রেরিটি অবশ্যই ESP32 কোরে ব্যবহার করা উচিত।
- আপনি লাইব্রেরি দ্বারা প্রদত্ত বেসিকোটা উদাহরণও নিয়োগ করতে পারেন বা নিজের ওটিএ অ্যাপ্লিকেশন তৈরি করতে পারেন।
- এখন, আরডুইনুটার লাইব্রেরি আপনাকে কেবল আপনার ESP32 এ সর্বশেষতম স্কেচ ওটিএ আপলোড করতে দেয়।
একটি ওয়েব সার্ভার ব্যবহার করুন
- ইএসপি 32 আরডুইনো লাইব্রেরিতে, ওটিএবিবুপডেটার উদাহরণ ফার্মওয়্যার আপলোড করার জন্য একটি ওয়েব ইন্টারফেস সরবরাহ করে।
- স্কেচটি একটি .bin ফাইল তৈরি করতে সংকলিত হয়েছে, এর পরে এটি ওয়েব সার্ভারের মাধ্যমে আপলোড করা যেতে পারে।
- এই কৌশলটি সহজ এবং আরও অ্যাক্সেসযোগ্য ওটিএ আপডেটের অনুমতি দেয়।
- তদতিরিক্ত, নিশ্চিত হয়ে নিন যে আপনার ESP32 বোর্ডের মধ্যে আপনার সর্বনিম্ন দুটি ওটিএ পার্টিশন রয়েছে।
- মূলত ওটিএ আপডেটের জন্য আরডুইনো আইওটি ক্লাউডের মতো অন্যান্য কৌশলগুলি ব্যবহার করুন।
- ওটিএ পদ্ধতিটি চলমান ফার্মওয়্যারটি স্থিতিশীল থাকে তা নিশ্চিত করে একটি ডেডিকেটেড ওটিএ পার্টিশনের মধ্যে বিদ্যমান ফার্মওয়্যারটিকে ওভাররাইট করে।
আরডুইনোর সাথে ইএসপি 32 ওটিএ ইন্টারফেসিং
ওয়াইফাই-সক্ষম মাইক্রোকন্ট্রোলারগুলির প্রধান বৈশিষ্ট্য (ESP32 & ESP8266 ) ওটিএ প্রোগ্রামিং। এই ডিভাইসগুলি তাদের ফার্মওয়্যারটি ওয়্যারলেসভাবে আপগ্রেড করে। ওটিএ ব্যবহার করে, একটি আপডেট একই নেটওয়ার্কে থাকা বিভিন্ন মাইক্রোকন্ট্রোলারগুলিতে প্রেরণ করা যেতে পারে। এই বৈশিষ্ট্যটি বেশ কয়েকটি মাইক্রোকন্ট্রোলার, সেট-টপ বাক্স, কম্পিউটার, সেল ফোন ইত্যাদি কিছু বৈশিষ্ট্য অন্তর্ভুক্ত করে বাগগুলি সমাধানের জন্য আপডেটগুলি প্রেরণ করতে ব্যবহৃত হয়
সাধারণত, ওটিএ আপডেটগুলি একটি মূল ভূমিকা পালন করে জিনিস ইন্টারনেট নতুন সেটিংস এবং সফ্টওয়্যার দিয়ে দূরবর্তীভাবে ইন্টারনেট-সংযুক্ত ডিভাইসগুলি আপডেট করতে। এখানে আমরা ওটিএ ওয়েব আপডেটের সাথে আরডুইনো আইডিইতে ইএসপি 32 বোর্ডের সাথে ওটিএ প্রোগ্রামিং ব্যবহার করতে যাচ্ছি।
আরডুইনো বোর্ডের সাথে ইএসপি 32 ওটিএ ইন্টারফেসিংয়ের জন্য প্রয়োজনীয় উপাদানগুলির মধ্যে রয়েছে ESP32 বোর্ড এবং আরডুইনো আইডিই।

ওটিএ কোড
ESP32 উন্নয়ন বোর্ডের জন্য ওটিএ কোডটি নীচে দেওয়া হয়েছে।
#অন্তর্ভুক্ত <ওয়াইফাই.এইচ>
#অন্তর্ভুক্ত <উইফ্লিয়েন্ট।
কনস্ট চর* হোস্ট = 'ESP32'; ssid = 'xxx'; পাসওয়ার্ড = 'xxxx';
ওয়েবসারভার সার্ভার (80);
/* লগইন পৃষ্ঠা*/
কনস্ট চর* লগইনডেক্স =
'<ফর্ম নাম = 'লগইনফর্ম'>'
'<টেবিল প্রস্থ = ’20%’ বিজ কালার = ’এ 09f9f’ সারিবদ্ধ = 'কেন্দ্র'> '
'
'<টিডি কলস্পান = 2>'
'<সেন্টার> <ফন্টের আকার = 4> ESP32 লগইন পৃষ্ঠা '
'
'
''
'
'
'
'
'
'
'<টিডি> ব্যবহারকারীর নাম: '
'<টিডি> <ইনপুট টাইপ = 'পাঠ্য' আকার = 25 নাম = 'ইউজারআইডি'>
'
'
'
'
'
'
'
'<টিডি> পাসওয়ার্ড: '
'<টিডি> <ইনপুট টাইপ =’ পাসওয়ার্ড ’আকার = 25 নাম =’ পিডব্লিউডি ’>
'
'
'
'
'
'
'
'<টিডি> <ইনপুট টাইপ =’ জমা দিন ’অনক্লিক =’ চেক (এই.ফর্ম) ’মান = 'লগইন'> '
'
'টেবিল>'
'ফর্ম>'
'<স্ক্রিপ্ট>'
'ফাংশন চেক (ফর্ম)'
'{'
'যদি (ফর্ম.ইউইআরআইডি.ভ্যালু ==’ অ্যাডমিন ’&& ফর্ম.পিডব্লিউডি.ভ্যালু ==’ অ্যাডমিন ’)'
'{'
'উইন্ডো.অপেন (‘/সার্ভারআইএনডিএক্স ’)'
'}'
'অন্য'
'{'
'সতর্কতা (‘ ত্রুটি পাসওয়ার্ড বা ব্যবহারকারীর নাম ’)/*ত্রুটি বার্তা প্রদর্শন করে*/'
'}'
'}'
'স্ক্রিপ্ট>';
/*
* সার্ভার সূচক পৃষ্ঠা
*/
কনস্ট চর* সার্ভারআইডেক্স =
'<স্ক্রিপ্ট এসআরসি =’ https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js’></script>”
'<ফর্ম পদ্ধতি =’ পোস্ট ’অ্যাকশন =’#’এনকাইটিপ =’ মাল্টিপার্ট/ফর্ম-ডেটা ’আইডি =’ আপলোড_ফর্ম ’>'
'<ইনপুট টাইপ = 'ফাইল' নাম = 'আপডেট'>'
'<ইনপুট টাইপ = 'জমা দিন' মান = 'আপডেট'>'
'ফর্ম>'
'<ডিভ আইডি =’ প্রিজ ’> অগ্রগতি: 0%
'<স্ক্রিপ্ট>'
“$ (‘ ফর্ম ’)। জমা দিন (ফাংশন (ই) {'
'E.Preventdefault ();'
'ফর্ম = $ ('#আপলোড_ফর্ম') [0];'
'এখানে ডেটা রয়েছে = নতুন ফর্মডাটা (ফর্ম);'
'$ .Ajax ({'
'ইউআরএল:‘/আপডেট ’,'
'প্রকার: 'পোস্ট','
'তারিখ: তারিখ,'
'কন্টেন্টটাইপ: মিথ্যা,'
'প্রসেসডাটা: মিথ্যা,'
'এক্সএইচআর: ফাংশন () {'
'Var xhr = নতুন উইন্ডো.এক্সএমএলএইচটিপিআরকিউস্ট ();'
'এক্সএইচআর। আপলোড.ডেন্টলিস্টেন ('অগ্রগতি', ফাংশন (সম্ভবত) {'
'যদি (evt.langent computeable) {'
'Var Pare = evt.evt.total;'
'$ (‘#প্রিজ ’)। এইচটিএমএল (‘ অগ্রগতি: ‘ + ম্যাথ.রাউন্ড (প্রতি*১০০) +‘%’);'
'}'
'}, মিথ্যা);'
'রিটার্ন এক্সএইচআর;'
'},'
'সাফল্য: ফাংশন (ডি, এস) {'
'কনসোল.লগ (‘ সাফল্য! ’)”
'},'
'ত্রুটি: ফাংশন (এ, বি, সি) {'
'}' '});' '});'
'স্ক্রিপ্ট>';
/*
* সেটআপ ফাংশন
*/
অকার্যকর সেটআপ (শূন্য) {
সিরিয়াল.বেগিন (115200);
// ওয়াইফাই নেটওয়ার্কের সাথে সংযুক্ত করুন
ওয়াইফাই.বেগিন (এসএসআইডি, পাসওয়ার্ড);
সিরিয়াল.প্রিন্টলন ('');
// সংযোগের জন্য অপেক্ষা করুন
যখন (wifi.status ()! = wl_connected) {
বিলম্ব (500);
সিরিয়াল.প্রিন্ট ('।');
}
সিরিয়াল.প্রিন্টলন ('');
সিরিয়াল.প্রিন্ট ('সংযুক্ত');
সিরিয়াল.প্রিন্টলন (এসএসআইডি);
সিরিয়াল.প্রিন্ট ('আইপি ঠিকানা:');
সিরিয়াল.প্রিন্টলন (ওয়াইফাই.লোক্যালিপ ());
/*হোস্ট নাম রেজোলিউশনের জন্য এমডিএনএস ব্যবহার করুন*/
যদি (! MDNS.BEGIN (হোস্ট)) {// C2E2F8F35BA56EDBBC296B8125C387D1182E239
সিরিয়াল.প্রিন্টলন ('এমডিএনএস প্রতিক্রিয়াশীল সেট আপ করার ত্রুটি!');
যখন (1) {
বিলম্ব (1000);
}
}
সিরিয়াল.প্রিন্টলন ('এমডিএনএস প্রতিক্রিয়াশীল শুরু হয়েছে');
/ *রিটার্ন সূচক পৃষ্ঠা যা সার্ভারআইডেক্সে সংরক্ষণ করা হয় */
সার্ভার.ওন ('/', http_get, [] () {
সার্ভার.ডেন্ডহেডার ('সংযোগ', 'ক্লোজ');
সার্ভার.সেন্ড (200, 'পাঠ্য/এইচটিএমএল', লগইনডেক্স);
});
সার্ভার.ওন ('/সার্ভারআইএনডিএক্স', http_get, [] () {
সার্ভার.ডেন্ডহেডার ('সংযোগ', 'ক্লোজ');
সার্ভার.সেন্ড (200, 'পাঠ্য/এইচটিএমএল', সার্ভার ইন্ডেক্স);
});
/ *হ্যান্ডলিং আপলোডিং ফার্মওয়্যার ফাইল */
সার্ভার.ওন ('/আপডেট', http_post, [] () {
সার্ভার.ডেন্ডহেডার ('সংযোগ', 'ক্লোজ');
সার্ভার.সেন্ড (200, 'পাঠ্য/সরল', (আপডেট.হ্যাসেরর ())? 'ব্যর্থ': 'ঠিক আছে');
Eps.restart ();
} {
Httpupload এবং আপলোড = সার্ভার.উপলোড ();
যদি (আপলোড.স্ট্যাটাস == আপলোড_ফাইলে_স্টার্ট) {
সিরিয়াল.প্রিন্টফ ('আপডেট: %s \ n', আপলোড.ফিলেনাম.সি_স্ট্র ());
যদি (! আপডেট.বিগিন (আপডেট_সাইজ_অননাউন)) {// সর্বাধিক উপলভ্য আকারের সাথে শুরু করুন
আপডেট.প্রিন্টারর (সিরিয়াল);
}
} অন্যথায় যদি (আপলোড.স্ট্যাটাস == আপলোড_ফাইলে_উইরাইট) {
/* ফ্ল্যাশিং ফার্মওয়্যার থেকে ইএসপি*/
যদি (আপডেট.উইরাইট (আপলোড. বুফ, আপলোড.কুরেন্টসাইজ)! = আপলোড.কুরেন্টসাইজ) {
আপডেট.প্রিন্টারর (সিরিয়াল);
}
} অন্যথায় যদি (আপলোড.স্ট্যাটাস == আপলোড_ফাইলে_েন্ড) {
যদি (আপডেট.এন্ড (সত্য)) {// বর্তমান অগ্রগতিতে আকার সেট করতে সত্য
সিরিয়াল.প্রিন্টফ ('আপডেট সাফল্য: %u \ nrebooting… \ n', আপলোড.টোটালাইজ);
} অন্য {
আপডেট.প্রিন্টারর (সিরিয়াল);
}}}
সার্ভার.বেগিন ();
}
অকার্যকর লুপ (শূন্য) {
সার্ভার.হ্যান্ডল্লিয়েন্ট ();
বিলম্ব (1);
}
ওটিএ প্রোগ্রামিং ওয়ার্কিং
ওটিএ প্রোগ্রামিং বৈশিষ্ট্যটি ব্যবহার করতে, সিরিয়াল পোর্টের মাধ্যমে একটি স্কেচ আপলোড করা দরকার। এই স্কেচটিতে একটি ওটিএ ওয়েব আপডেটার তৈরি করতে এইচটিএমএল কোড অন্তর্ভুক্ত রয়েছে। পরে, আপনি সহজেই ব্রাউজারের সাথে কোডটি আপলোড করতে পারেন। একবার সিরিয়াল পোর্টের মাধ্যমে কোডটি আপলোড হয়ে গেলে, একটি ওয়েব সার্ভার তৈরি করা হবে যেখানে আপনি ওয়েব ব্রাউজারের মাধ্যমে একটি নতুন স্কেচ নির্বাচন করতে এবং আপলোড করতে পারেন।
প্রাথমিক কোডটি আপলোড করতে ল্যাপটপের সাথে ESP32 বোর্ডটি সংযুক্ত করুন, তারপরে আরডুইনো আইডিইটি খুলুন এবং বোর্ডের ধরণটি ESP32 দেব কিট হিসাবে চয়ন করুন এবং সঠিক সিরিয়াল পোর্টটি চয়ন করুন।
মূল কোডের মধ্যে ওয়াই-ফাই এবং পাসওয়ার্ডের নাম পরিবর্তন করুন।
ওটিএ কোডটি অবশ্যই আপনার ESP32 বোর্ডে আপলোড করতে হবে। কোডটি সফলভাবে আপলোড হয়ে গেলে সিরিয়াল মনিটরটি খুলুন। এর পরে, সিরিয়াল মনিটরে 115200 এর বাউড রেট পরিবর্তন করতে হবে। ESP32 মডিউলটির উপরে রিসেট বোতামটি টিপুন এবং এটি অবশ্যই ESP32 বোর্ডের আইপি ঠিকানা মুদ্রণ করতে হবে।
ESP32 আইপি ঠিকানা পেস্ট করতে ডিফল্ট ব্রাউজারটি খুলুন। সুতরাং এটি অবশ্যই ওটিএর জন্য ওয়েব সার্ভার পৃষ্ঠাটি খুলতে হবে। এখানে ডিফল্টরূপে ব্যবহারকারীর নাম এবং পাসওয়ার্ড অ্যাডমিন। এখন, লগইন বিশদ লিখুন, লগইন পৃষ্ঠায় ক্লিক করুন এবং তারপরে কোডটি আপলোড করতে একটি নতুন ট্যাব খুলবে।
সুবিধা
ESP32 OTA এর সুবিধাগুলিতে নিম্নলিখিতগুলি অন্তর্ভুক্ত রয়েছে।
- এই কেন্দ্রীয় পদ্ধতির একটি একক আপডেটকে অনুরূপ নেটওয়ার্কে বিভিন্ন ESP32 এ ছড়িয়ে দেওয়ার অনুমতি দেয়।
- ওটিএ আইওটি মোতায়েনের জন্য এটি নিখুঁত করার জন্য উন্নয়ন বোর্ডে শারীরিক অ্যাক্সেস ব্যবহার না করে রিমোট ফার্মওয়্যারের আপগ্রেডের অনুমতি দেয়।
- ওটিএ আপডেট পদ্ধতিটি সহজ করে বিশেষত অ্যাক্সেসযোগ্য বা দূরবর্তী ডিভাইসের জন্য ESP32 বোর্ড আপডেট করার জন্য শারীরিক সংযোগের প্রয়োজনীয়তা সরিয়ে দেয়।
- আপডেটগুলি দূরবর্তীভাবে অর্জন করা যেতে পারে, যা সুরক্ষা এবং অপারেশনে ব্যয় করা সময়কে হ্রাস করে।
- একটি একক উত্স অনুরূপ নেটওয়ার্কে অসংখ্য ESP32s এ আপডেট প্রেরণ করে এবং বিশাল মোতায়েনের জন্য আপডেট পদ্ধতিটি প্রবাহিত করে।
- ওটিএ বৃহত আকারের প্রকল্পগুলির জন্য এটি খুব দক্ষ করে তোলে বিভিন্ন ডিভাইসে যুগপত আপডেটের অনুমতি দেয়।
- আপডেটগুলি অফ-পিক আওয়ারে পরিকল্পনা ও সম্পাদন করা যেতে পারে, যা ডিভাইসের ক্রিয়াকলাপে সমস্যা হ্রাস করে।
- ওটিএ আপডেটগুলির মধ্যে সুরক্ষা প্যাচগুলি এবং উন্নতিগুলি অন্তর্ভুক্ত যা দুর্বলতা থেকে রক্ষা করে।
- ওটিএ কার্যকারিতাটি আরডুইনোতা লাইব্রেরি সহ ESP32-ভিত্তিক প্রকল্পগুলিতে সংহত করা যেতে পারে।
- ওটিএ প্রোগ্রামিং আপনাকে কম্পিউটারের সাথে কোনও সংযোগ ছাড়াই ESP32 এ একটি নতুন প্রোগ্রাম আপডেট করতে দেয়।
অসুবিধাগুলি
দ্য ESP32 ওটিএর অসুবিধাগুলি নিম্নলিখিত অন্তর্ভুক্ত।
- ইএসপি 32 বোর্ডের কারখানার চিত্রটিতে ওটিএ ক্ষমতা নেই। সুতরাং, প্রথমে, আপনি ওটিএ আপডেটগুলি ব্যবহার করার আগে আপনাকে সিরিয়াল সংযোগের মাধ্যমে এই ফার্মওয়্যারটি আপলোড করতে হবে।
- এছাড়াও, কিছু পুরানো ইএসপি 32 মডেলের মেমরির সীমাবদ্ধতা রয়েছে, বিশেষত যেগুলি ফ্ল্যাশ মেমরির 1 এমবি রয়েছে।
- একটি ESP32 বোর্ডে প্রতিটি আপলোড করা স্কেচ অবশ্যই ওটিএ কার্যকারিতা অনুমতি দেওয়ার জন্য প্রয়োজনীয় কোড থাকতে হবে। এই কোড ছাড়াই ডিভাইসটি আর কোনও ওয়েব সার্ভারের মাধ্যমে ওটিএ আপডেটের জন্য উপলভ্য হবে না।
- অনেক আধুনিক ESP32 বোর্ডের পর্যাপ্ত মেমরি রয়েছে তবে ছোট বা পুরানো ESP32 মডেলগুলি ওটিএর মাধ্যমে সীমাবদ্ধতাগুলি পূরণ করতে পারে, বিশেষত যদি আপলোড করা স্কেচটি বিদ্যমান মেমরির সীমাটির কাছাকাছি থাকে।
- যদি ব্যবহারকারীরা কোনও পাসওয়ার্ড ছাড়াই কোড আপলোড করেন তবে ডিভাইসটি ভবিষ্যতের ওটিএ আপডেটের জন্য অ্যাক্সেসযোগ্য হয়ে উঠতে পারে, সম্ভবত সিরিয়ালের মাধ্যমে প্রয়োজনীয় ওটিএ স্কেচের পুনরায় আপলোডের প্রয়োজন হয়।
- ব্যবহারকারীরা সুরক্ষার জন্য একটি ব্যবহারকারীর নাম এবং একটি গোপন শব্দ যুক্ত করতে পারেন, তবে এই ব্যবস্থাটি যদি কেউ নির্দিষ্ট ইউআরএল সনাক্ত করে তবে অননুমোদিত অ্যাক্সেস থেকে ওটিএ আপলোড পৃষ্ঠাটি পুরোপুরি রক্ষা করতে পারে না।
- ওটিএ কোডের অনুপযুক্ত বাস্তবায়ন সম্ভাব্য সমস্যাগুলির দিকে নিয়ে যেতে পারে, কারণ এটি ভবিষ্যতের ওটিএ কার্যকারিতা অক্ষম করতে পারে।
অ্যাপ্লিকেশন
ESP32 ওটিএর অ্যাপ্লিকেশনগুলিতে নিম্নলিখিতগুলি অন্তর্ভুক্ত রয়েছে।
- ESP32 ওটিএ অ্যাপ্লিকেশনগুলি ডিভাইসের সাথে কোনও শারীরিক সংযোগ ছাড়াই ডিভাইসের ফার্মওয়্যারটিকে দূর থেকে আপডেট করার অনুমতি দেয়। সুতরাং এটি মূলত অ্যাক্সেসযোগ্য স্থানে ইনস্টল করা আইওটি ডিভাইসগুলির জন্য সহায়ক, ডাউনটাইম এবং রক্ষণাবেক্ষণ ব্যয় হ্রাস করে। ওটিএ সফ্টওয়্যার আপডেট, বাগ ফিক্সগুলি এবং বৈশিষ্ট্য বর্ধনগুলি দ্রুত এবং দক্ষতার সাথে মোতায়েন করার অনুমতি দেয়।
- ESP32 ওটিএ আপডেটগুলি বিভিন্ন অ্যাপ্লিকেশনগুলিতে প্রয়োজনীয়, মূলত এম্বেডেড সিস্টেম এবং আইওটি মোতায়েনগুলিতে ..
- এই আপডেটগুলি পুরো প্রক্রিয়াটি বন্ধ না করে শিল্প অটোমেশন সিস্টেমগুলির রক্ষণাবেক্ষণ এবং আপগ্রেড করার জন্য তাৎপর্যপূর্ণ।
- ওটিএ স্মার্ট হোম ডিভাইসগুলিকে সেরা পারফরম্যান্স এবং বৈশিষ্ট্য উন্নতি নিশ্চিত করে রিমোট ফার্মওয়্যার আপগ্রেডগুলি গ্রহণ করার অনুমতি দেয়।
- ওটিএ আপডেটগুলি রিমোট সেন্সরগুলির ফার্মওয়্যার এবং মনিটরিং সিস্টেমগুলি সঠিক এবং কার্যকরী থাকার বিষয়টি নিশ্চিত করে আপডেট করার জন্য তাৎপর্যপূর্ণ।
- ওটিএ আপডেট কোনও আইওটি অ্যাপ্লিকেশনটিতে ডিভাইসগুলি পরিচালনা এবং রাখার জন্য একটি উপযুক্ত পদ্ধতি সরবরাহ করে, যেখানেই দূরবর্তী অ্যাক্সেস অযৌক্তিক বা সীমাবদ্ধ।
- ব্যবহারকারীরা নিরাপদ এবং কার্যকরী থাকার বিষয়টি নিশ্চিত করার জন্য স্মার্ট লক, সুরক্ষা ক্যামেরা এবং সুরক্ষা সিস্টেমগুলি আপডেট করে।
- শিল্পগুলি অটোমেশন প্রক্রিয়াগুলিতে মেশিনগুলির সফ্টওয়্যার এবং সিস্টেমগুলি আপডেট করতে ESP32 ওটিএ নিয়োগ করে।
- প্রযুক্তিবিদরা আবহাওয়া স্টেশন, পরিবেশগত পর্যবেক্ষণ এবং দূরবর্তী অ্যাপ্লিকেশনগুলিতে ডিভাইসের সফ্টওয়্যার আপডেট করে।
- এই ওটিএ স্মার্ট ফার্ম সরঞ্জাম, সেচ ব্যবস্থা ইত্যাদি সফ্টওয়্যার আপডেট করে
- এটি লকস, সুরক্ষা ব্যবস্থা, স্মার্ট লাইট ইত্যাদির মতো হোম অটোমেশনে দূরবর্তীভাবে স্মার্ট হোম ডিভাইসগুলি পরিচালনা করে এবং আপডেট করে
উপসংহার:
এইভাবে, ESP32 OTA আপডেট সরবরাহ শারীরিক সংযোগগুলি সরিয়ে ইএসপি 32 ডিভাইসে ওয়্যারলেসভাবে ফার্মওয়্যার এবং অন্যান্য ফাইলগুলি আপডেট করার জন্য একটি সুবিধাজনক পদ্ধতি। সুতরাং এই পদ্ধতিটি মূলত দূরবর্তী মোতায়েনের জন্য সহায়ক এবং কোনও শারীরিক সংযোগ ছাড়াই বৈশিষ্ট্যগুলির বাগ ফিক্স এবং বৈশিষ্ট্যগুলির বর্ধনের অনুমতি দিয়ে রক্ষণাবেক্ষণ হ্রাস করে। ESP32 ওটিএ আপডেটটি ESP32 ডিভাইসগুলি দূরবর্তীভাবে বজায় রাখতে এবং আপডেট করার জন্য, রক্ষণাবেক্ষণকে সহজতর করতে এবং আপডেট প্রক্রিয়াটি সংক্ষিপ্ত করার জন্য একটি মূল্যবান কৌশল সরবরাহ করে। আপনার জন্য এখানে একটি প্রশ্ন: ESP32 বোর্ড কী?