सेल फोन माइक्रोकंट्रोलर के रूप में


19

मेरे पास कुछ सेल फोन हैं जो उनमें से एक हैं, उनमें से एक यह है: http://www.gsmarena.com/sony_ericsson_elm-3057.php


फ्लैश मेमोरी को खाली करना और इसे एक बूटलोडर से बदलना और फिर arinoino स्केच अपलोड करना संभव है या pic32 रेखाचित्र (C # / C ++)।

मुझे यह विचार मिला क्योंकि यह हार्डवेयर परियोजनाओं के विकास के लिए एक बहुत ही सस्ता मंच है। (आप एक स्क्रीन, बटन, ऑडियो मैं / हे, इंटरनेट, आदि मिलता है, आप मिल सब कुछ एक के लिए बहुत सस्ती कीमत आप अलग से प्रत्येक भाग को खरीद कर क्या मिलता है की तुलना में।)

क्या फ्लैश मेमोरी को मिटाना और एक बूट-लोडर को एक एम्बेडेड कंप्यूटर के रूप में उपयोग करने के लिए फोन में स्थापित करना संभव है?


3
डाउन वोट क्यों, यह एक उत्कृष्ट प्रश्न है।
रॉकेटमेग्नेट

इसे वास्तव में साफ करने की जरूरत है। (मैंने वोट-डाउन नहीं किया, लेकिन एक लंबित संपादन संपादित करें जो वास्तव में पूछे जाने वाले प्रश्न को
स्पष्ट करता है

आपको रॉकबॉक्स प्रोजेक्ट में रुचि हो सकती है, जो एमपी 3 खिलाड़ियों के साथ कुछ ऐसा ही कर रहा है। इसमें शामिल लोग आपको बता सकते हैं कि मालिकाना हार्डवेयर के बारे में जानकारी प्राप्त करना कितना कठिन है।
ज्यां पिंडार

@CyberMen मुझे यकीन नहीं है कि आप "फोन में फ्लैश मेमोरी को
फॉर्मेट

@varesa मुझसे मत पूछो, ओपी से पूछो। अपने निपुण अंग्रेजी कौशल का उपयोग करें।
साइबरमेन

जवाबों:


1

लागत कभी एक समस्या नहीं है। कई उत्साही आसानी से हैक करने योग्य उच्च अंत उपकरणों के लिए मध्यम मूल्य का भुगतान करने के लिए तैयार होंगे। समस्या यह है कि एआरएम एक बंद मंच है। आमतौर पर SoC के बहुत सिलिकॉन (चिप पर सिस्टम) पर एक निजी रोम नाम का भाग होता है। यह पुन: उपयोग को अवरुद्ध करता है।

ROM का यह हिस्सा किसी क्रम में बूटलोडर चुनने के लिए ज़िम्मेदार है: सीरियल, बाहरी नंद, सीरियल ROM, SDCard, बाहरी USB पर Z-Modem। प्रत्येक डिवाइस के लिए ऑर्डर अलग-अलग और खराब रूप से प्रलेखित है, आपको आमतौर पर वैकल्पिक लोडर में शाखा लगाने के लिए कुछ बटन रखने चाहिए। अधिकांश समय प्लेटफ़ॉर्म स्वामी के डिजिटल हस्ताक्षर के लिए बूटलोडर की छवि। तो कोई नसीब नहीं।

एक बंद परियोजना के लिए यादृच्छिक उपकरण चुनना ठीक है। लेकिन संभवतः आप प्रसिद्ध डिवाइस में लिनक्स, एंड्रॉइड आदि के लिए प्रकाशित योजनाबद्ध और उपलब्ध स्रोत कोड के साथ अधिक रुचि रखेंगे।

इसलिए मेरा सुझाव सक्रिय उपयोगकर्ता के समुदायों से घिरे उपकरणों को देखने के लिए है : रास्पबेरी पाई, बीगलबोन, बीगलबोर्ड, कुछ सैमसंग मूल्यांकन प्लेटफ़ॉर्म (पांडाबोर्ड)?

TI AM35XX के साथ मेरा व्यक्तिगत अनुभव सब कुछ की जटिलता के साथ निराशा के साथ समाप्त हुआ। Angstrom नामक दुनिया के सबसे छोटे लिनक्स में 3GB वितरण छवि है। चिप्स के लिए डॉक्स 4000-5000 पृष्ठ हैं। यह एक शौक की तरह महसूस नहीं किया और सुखद नहीं था।

इंटेल एटम SoC के लोकप्रिय होने के बाद स्थिति बदल सकती है। मैं बड़े पैमाने पर उपयोगकर्ता के हित की उम्मीद करता हूं और स्क्रीन के साथ सबसे छोटे संभव एटम की दिशा में भीड़ का पालन करेगा। आशा है कि कोई व्यक्ति क्रेडिट कार्ड और GPIO के आकार के साथ एक पैनल माउंट करने योग्य टुकड़ा पूरा करेगा। यह मजेदार होगा।


2
दरअसल, TI AM35XX कमाल का है - इस प्लेटफॉर्म पर सबसे छोटा लिनक्स 3MB के तहत अच्छी तरह से फिट बैठता है। मैं व्यक्तिगत रूप से इन (और AM33XX) का उपयोग पूरी चीजों के गुच्छा के लिए कर रहा हूं, एक बार जब आप क्रॉसकंपिलेशन की परेशानी से गुजरते हैं, तो आपके पास हार्डवेयर का एक अच्छी तरह से समर्थित, अच्छी तरह से प्रलेखित टुकड़ा होता है। हां, यह जटिल है, और TRM (5000 पृष्ठ) एक बहुत बड़ी ईंट है, लेकिन यह एक संदर्भ दस्तावेज के रूप में है, न कि एक लोरी के रूप में (आप इसे जैसे भी सेवा कर सकते हैं)
qdot

+1। हां, मैं सहमत हूं कि टीआई एआरएम संभवतः सबसे अच्छा एक मिल सकता है। मेरा मतलब केवल एक शौक के रूप में मेरे व्यक्तिगत अनुभव था। अगर किसी टीम में एआरएम के साथ कुश्ती करना मेरा दिन का काम था, तो यह और अधिक मजेदार होगा।

ठीक है, मैं सामान्य रूप से, कम शक्ति वाले एक से अधिक मशीन के साथ कुश्ती करूंगा। यह स्पष्ट रूप से कोई Arduino नहीं है, लेकिन यह लिनक्स है, एक बार जब आप इस पर कर्नेल बूटिंग प्राप्त करते हैं, तो यह वहाँ से बाहर किसी अन्य क्रॉसदेव प्लेटफॉर्म से अलग नहीं है। कुछ उपयोगकर्ताभूमि बनाएँ (या अपनी खुद की init का निर्माण करें और वहां से चलाएं), और आप घर हैं :)
qdot

5

युग से पहले, कुछ ऐसा ही करने की परियोजना थी (रिवर्स इंजीनियरिंग एक सस्ता और बहुत लोकप्रिय फोन परिवार)।

http://nokix.pasjagsm.pl/help/blacksphere/sub_050main.htm

और हाँ, एंड्रॉइड विकल्प शायद सबसे आसान है .. या विंडोज मोबाइल, यह यथोचित रूप से खुला है।


रुको, क्या WP के लिए निम्न स्तर का सामान भी खुला है?
वार्सा

WP या WM? विंडोज फोन, अर्थात संस्करण 7 और इसके बाद का संस्करण, कुछ ऐसा है जिसका मुझे सीमित अनुभव है, लेकिन मुझे लगता है कि यह अभी भी देशी सी बायनेरिज़ को चला सकता है। संस्करण 6, जो पुराने लेकिन बेहद शक्तिशाली पीडीए-फोन का थोक बनाता है, बेहद खुला है - यह देशी सी कोड चलाता है, इसे एमएसवीसी और जीसीसी के साथ संकलित किया जा सकता है, इसमें लगभग कोई सुरक्षा नहीं है .. आप शाब्दिक रूप से लॉन्च कर सकते हैं एक नियमित अनुप्रयोग के रूप में बूटलोडर, और यह लिनक्स कर्नेल के लिए कूदता है :)
टाइप करें

मेरे HTC टच प्रो के साथ इस बात को बहुत पहले आजमाया जा चुका है, मैं यह कह सकता हूं कि हां, आप एक लिनक्स कर्नेल (या एक कस्टम एंड्रॉइड बिल्ड) में कूद सकते हैं। यह कहना नहीं है कि सभी हार्डवेयर से बात करना उतना ही आसान या संभव है। (दुख की बात है, जैसा कि मैं जुनून के साथ WM6 से नफरत करता था, लेकिन कोई रास्ता नहीं था कि मैं किसी अन्य ओएस के साथ कार्यक्षमता का समान स्तर बनाए रख सकता था)
एलेक्सिओस

क्‍यूडेट, क्‍यों न आप हमें इस बारे में अधिक बताएं कि विंडोज फोन 6/7 स्टोर से खरीदा गया है और इसे स्‍वयं के कोड को नियंत्रित करने के लिए इसे स्‍वचालित पोर्ट के माध्‍यम से 5 सर्वोस कहते हैं।
हैरी स्वेन्सन

1
@qdot आप इस बारे में कुछ जानकारी ला सकते हैं ताकि लिंक सिर्फ एक संदर्भ हो, अभी यह सड़ने को जोड़ने के लिए अतिसंवेदनशील है।
कोर्तुक

3

मुझे इस पर कोई अनुभव नहीं है, लेकिन मुझे नहीं लगता कि यह आसान होगा (यदि संभव हो तो)। मुझे लगता है कि आप इसे C ++ या C # में प्रोग्रामिंग करना भूल सकते हैं, और ASM + C. में यह arduino स्केच या PIC32 कोड या किसी भी चीज़ के साथ संगत नहीं होगा, जो विशिष्ट CPU के लिए नहीं बनाया गया है। कई नए फोन में ARM कोर जैसा कुछ होता है।

मैं वास्तव में नहीं जानता कि आप डिवाइस को कैसे प्रोग्राम करेंगे, लेकिन मुझे लगता है कि यह संभव है, क्योंकि वे आम तौर पर फर्मवेयर को अपडेट कर सकते हैं यदि आप इसे सेवा के लिए भेजते हैं।

इसके अलावा, आपको अपने स्वयं के ड्राइवरों को सभी हार्डवेयर (डिस्प्ले, डब्ल्यूएलएएन, सेंसर, आदि ...) के लिए कोड करना होगा, जो कि हार्डवेयर पर अधिक जानकारी के बिना वास्तव में कठिन होगा, जो फोन निर्माता संभवतः आपको जारी नहीं करेगा। ।

मुझे लगता है कि सबसे आसान तरीका पुराने एंड्रॉइड-फोन जैसा कुछ होगा, क्योंकि आप ड्राइवरों के साथ स्रोत कोड और सभी निम्न-स्तरीय सामान मुफ्त में प्राप्त कर सकते हैं। आप उपयोगकर्ता को दिखाई देने वाले UI और अन्य घटकों को दूर या उपयोग कर सकते हैं। लेकिन यह संभवत: वह नहीं है जो आप चाहते हैं, जब तक कि आपके पास कुछ पुराने एंड्रॉइड फोन न हों।

इसके अलावा, अगर किसी अन्य OS को चलाने के लिए फोन को "हैक" किया गया है, विशेष रूप से एंड्रॉइड जैसे ओपन-सोर्स वाले, तो आप पोर्ट के साथ खेलने के लिए स्रोत प्राप्त करने में सक्षम हो सकते हैं।


क्या फ्लैश मेमोरी से सबकुछ पढ़ना और फ्लैश मेमोरी को वहां से पढ़ना / संशोधित करना संभव नहीं होगा?
हैरी स्वेन्सन

@HarrySvensson वैसे आपको या तो सीधे मेमोरी को संशोधित करना होगा, या किसी प्रकार के प्रोग्रामिंग पोर्ट / हेडर का उपयोग करना होगा जो फ़र्मवेयर को अपग्रेड करने के लिए हो सकता है। संभव है, लेकिन आसान नहीं है।
वार्सा

2
रैंडम डाउन-वोट क्यों?
वार्सा

@HarrySvensson, यह मानते हुए कि आपके पास फ्लैश मेमोरी को डंप करने के लिए उपकरण थे (सुरक्षित बूट-लोडर जैसी विभिन्न चीजों को रखने के लिए कई फ़्लैश चिप्स हो सकते हैं और क्या नहीं, कुछ को शायद मालिकाना उपकरण की आवश्यकता होती है), क्या आप सभी को डिकोड करने में सहज होंगे हाथ से? यह सब एक अच्छा फ़ाइल सिस्टम प्रारूप में होने की उम्मीद न करें, जिसे आप अपने कंप्यूटर पर अंगूठे ड्राइव की तरह माउंट कर सकते हैं। आप बहुत सारे स्वामित्व और पहचानने योग्य सामान देख सकते हैं या केवल कच्चे असेंबली कोड को रोक सकते हैं जहां कुछ प्रोग्राम कोड हो सकता है।
जॉन एल

2

यह सब करना अपने आप में सबसे मुश्किल होगा। आपके पास रॉकबॉक्स परियोजना द्वारा समर्थित उपकरणों में से एक के साथ बहुत आसान समय होगा , जो एमपी 3 खिलाड़ियों के लिए खुला स्रोत फर्मवेयर है। इनमें से कुछ उपकरण सस्ते हैं और आपके द्वारा उल्लिखित कई फायदे प्रदान करते हैं, और उन्हें अपने फर्मवेयर को USB के माध्यम से उन्नत करने के लिए डिज़ाइन किया गया है। आपके पास एक सक्रिय समुदाय की मदद होगी जो पहले से ही कंपाइलर्स, बूटलोडर्स, आदि के साथ बुनियादी मुद्दों के बारे में पता लगा चुके हैं और साथ ही साथ शुरू करने के लिए कुछ स्रोत कोड भी।

रॉकबॉक्स की एक अच्छी विशेषता यह है कि यह उपकरणों को दोहरे बूट पर सेट करता है, इसलिए वे अभी भी अपने मूल उद्देश्य के लिए उपयोग कर सकते हैं जब आप नए फर्मवेयर का उपयोग नहीं कर रहे हैं।


0

नहीं।

इस फोन के लिए सार्वजनिक प्रलेखन (जैसे आपके द्वारा जुड़े पृष्ठ पर) प्रोसेसर प्रकार को भी सूचीबद्ध नहीं करता है। अगर ऐसा हुआ भी, तो आपको इसके लिए कोड लिखने में सक्षम होने के लिए योजनाबद्ध (सभी आईसी के भाग संख्या सहित) की आवश्यकता होगी। यह सोनी / एरिक्सन के लिए स्वामित्व होगा, इसलिए आप इसे प्राप्त नहीं करेंगे)। किसी अन्य सेल फोन के लिए भी।

संभावित मामले में आपको प्रोसेसर, फ्लैश मेमोरी आदि के लिए सभी दस्तावेज मिल गए, आपके समय के कई हफ्तों के खर्च के बाद एक Arduino संगत बूटलोडर लिखना संभव हो सकता है। बेशक इसके लिए जरूरी होगा कि आपको फोन के लिए विकास का माहौल मिले, जिसकी संभावना सैकड़ों डॉलर नहीं बल्कि सैकड़ों होगी।

यहां तक कि अगर आप एक Arduino संगत बूटलोडर लिखने के लिए सक्षम थे, यह होगा असंभव दोहराने असंभव को अपलोड करने और क्योंकि 1) Arduino के लिए संकलक एक Arduino संगत माइक्रोकंट्रोलर (Atmega, PIC32 आदि) के लिए कोड उत्सर्जन किया जा रहा है Arduino नमूने को चलाने के लिए , और फोन निश्चित रूप से उन में से जाने का उपयोग नहीं करने जा रहा है - ज्यादातर संभावना है कि यह एआरएम का कुछ संस्करण होगा); और 2) I / O पोर्ट सेल फोन पर उन्हीं स्थानों (पोर्ट्स) पर स्थित नहीं होने जा रहे हैं, जितने वे Arduino पर हैं।

ध्यान दें कि कुछ ओपन-सोर्स सेल फोन हैं , लेकिन आप उन लोगों के लिए Arduino सॉफ़्टवेयर चलाने में सक्षम नहीं होंगे, जैसा कि मैंने ऊपर बताया है (प्रोसेसर और हार्डवेयर असंगतता)। कुछ अन्य उत्तरों ने एंड्रॉइड का सुझाव दिया है, लेकिन ध्यान दें कि यह मालिकाना ड्राइवरों के कारण ओपन-सोर्स फोन की सूची में नहीं है। और एक बार फिर सवाल यह है कि क्या आप उन पर Arduino कोड चला सकते हैं, और उत्तर निश्चित रूप से नहीं है।

तो यह की तरह से सस्ता सिर्फ गोली काटने और एक Arduino बोर्ड और बाह्य उपकरणों के लिए।


0

विभिन्न "रोज़" हार्डवेयर को माइक्रोकंट्रोलर प्लेटफार्मों में बदलने के लिए क्या करना है? स्प्राइट के मोदक प्रेरणा का एक उत्कृष्ट स्रोत है। यह उपकरणों को "खोलने" और उन पर नियंत्रण हासिल करने के लिए आवश्यक प्रक्रिया का एक अच्छा विवरण देता है । TL; DR: आप लिनक्स को SD कार्ड और हार्ड ड्राइव पर चला सकते हैं। नहीं, हार्ड ड्राइव का उपयोग नहीं । पर काफी शक्तिशाली सीपीयू ड्राइव के नियंत्रक है कि पर - एक हार्ड ड्राइव।


Linksys WRT54G रूटर , हैक करने के लिए एक लोकप्रिय उपकरण था, क्योंकि यह खुला स्रोत सॉफ्टवेयर का इस्तेमाल किया तो Linksys स्रोत कोड जारी करने के लिए बाध्य किया गया था। आपने ईथरनेट पोर्ट्स और वाई-फाई के साथ लिनक्स में चलने वाले कस्टमाइज़ेबल प्लेटफ़ॉर्म के साथ समाप्त किया।
tcrosley
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.