Optiboot उपलब्ध सबसे छोटे बूटलोडर के बारे में है।
लेकिन, एक अधिक विकसित और मजबूत stk500v2 संचार प्रोटोकॉल के साथ avrdude और AVR बूटलोडर के बीच एक अधिक शक्तिशाली (हार्डवेयर परीक्षण, रैम और फ्लैश सामग्री की जाँच, आदि के लिए इनबिल्ट कंसोल के साथ) बूटलोडर है।
मैंने इसे ATmega2560 और ATmega1284p पर उपयोग किया है। यह 3 बाइट और 2 बाइट प्रोग्राम काउंटर MCU दोनों के लिए काम करता है।
मैं Sourceforge पर एक STK500v2 बूटलोडर संस्करण है ।
यह बूटलोडर पीटर फ्लेरी STK500v2 बूटलोडर पर आधारित है, जिसे मार्क स्पोरल ने अपडेट किया है। मैंने इसे गोल्डिलॉक्स (एक ATmega1284p) बोर्ड के साथ समर्थन करने के लिए संपादन किया है।
मुख्य विशेषता यह है कि Arduino पर फ़्लैश छवि अपलोड करने के लिए STK500v2 प्रोटोकॉल का उपयोग करें । यह प्रोटोकॉल अधिक मजबूत है और avr109 प्रोटोकॉल की तुलना में बेहतर त्रुटि क्षमता देता है। एक तरफ के रूप में avr109 प्रोटोकॉल को Arduino दुनिया में "Arduino" कहा जाता है, क्योंकि यह DTR (बोर्ड को रीसेट करने और अपने आप बूटलोडर में प्रवेश करने के लिए) टॉगल करता है, और STK500v2 प्रोटोकॉल को Arduino दुनिया में "वायरिंग" कहा जाता है, उसी के कारण कारण।
फ़्ल्यूरी / स्प्राउल STK500v2 बूटलोडर को ATmega2560 के साथ काम करने के लिए डिज़ाइन किया गया है, जिसमें 3 बाइट प्रोग्राम रजिस्टर है, क्योंकि बड़ा फ़्लैश आकार है। लेकिन, यह सामान्य 2 बाइट बोर्ड (वास्तव में बाकी सब) का भी समर्थन करता है।
फ्लैश के बहुत से बोर्ड (जैसे गोल्डिलॉक्स 1284 पी) के लिए, एक हार्डवेयर मॉनिटर है जिसका उपयोग फ्लैश, एसआरएएम और हार्डवेयर को क्वेरी करने के लिए किया जा सकता है; आप अतिरिक्त कोड के बिना कनेक्शन की जांच कर सकते हैं, और फ्लैश और ईप्रॉम की वास्तविक सामग्री की जांच कर सकते हैं। क्योंकि 1284p 2 USART का समर्थन करता है , इसलिए मैंने USART1 पर डिबगिंग करने की क्षमता जोड़ी , ताकि USART0 के माध्यम से अपलोड प्रक्रिया में गड़बड़ी न हो।