সুচিপত্র:

রেট্রো-সিএম 3: একটি শক্তিশালী রেট্রোপি হ্যান্ডেল করা গেম কনসোল: 8 টি ধাপ (ছবি সহ)
রেট্রো-সিএম 3: একটি শক্তিশালী রেট্রোপি হ্যান্ডেল করা গেম কনসোল: 8 টি ধাপ (ছবি সহ)

ভিডিও: রেট্রো-সিএম 3: একটি শক্তিশালী রেট্রোপি হ্যান্ডেল করা গেম কনসোল: 8 টি ধাপ (ছবি সহ)

ভিডিও: রেট্রো-সিএম 3: একটি শক্তিশালী রেট্রোপি হ্যান্ডেল করা গেম কনসোল: 8 টি ধাপ (ছবি সহ)
ভিডিও: 24 Hours in Lisbon Portugal 🇵🇹 2024, নভেম্বর
Anonim
Retro-CM3: একটি শক্তিশালী RetroPie হ্যান্ডেল করা গেম কনসোল
Retro-CM3: একটি শক্তিশালী RetroPie হ্যান্ডেল করা গেম কনসোল
Retro-CM3: একটি শক্তিশালী RetroPie হ্যান্ডেল করা গেম কনসোল
Retro-CM3: একটি শক্তিশালী RetroPie হ্যান্ডেল করা গেম কনসোল
Retro-CM3: একটি শক্তিশালী RetroPie হ্যান্ডেল করা গেম কনসোল
Retro-CM3: একটি শক্তিশালী RetroPie হ্যান্ডেল করা গেম কনসোল

এই নির্দেশযোগ্যটি অ্যাডাফ্রুট এর পিআইজিআরআরএল জিরো, ওয়ার্মির আসল গেমবয় জিরো বিল্ড এবং গ্রেটস্কটল্যাবের হ্যান্ডল্ড গেম কনসোল দ্বারা অনুপ্রাণিত। যারা রেট্রোপি ভিত্তিক গেম কনসোল তাদের মূল হিসাবে রাস্পবেরি পাই জিরো (W) ব্যবহার করে। কিন্তু, আমি বেশ কিছু পাই জিরো কনসোল তৈরি করার পরে, দুটি প্রধান সমস্যা পাওয়া গেছে।

1) রাস্পবেরি পাই জিরো (ডব্লিউ) এর শুধুমাত্র একক কোর কর্টেক্স-এ 7 এবং 512 এমবি র্যাম রয়েছে, যা এনইএস/এসএনইএস/জিবি ধরণের জিনিসগুলির জন্য ঠিক আছে। যাইহোক, যখন আমি PS/N64 Emus চালানোর চেষ্টা করেছি, অভিজ্ঞতাটি বেশ অগ্রহণযোগ্য ছিল। এমনকি কিছু GBA গেমও সহজে চলতে পারে না (কিছু অডিও ল্যাগ, কিছু NEOGEO গেমের মধ্যে যেমন মেটাল স্লাগের মতো জটিল দৃশ্যগুলি মোকাবেলা করার সময়); ফ্রেম বাফার ড্রাইভারের সাহায্যে এসপিআই ডিসপ্লের জন্য সিপিইউ লাগবে যা গেমের অভিজ্ঞতাকে আরও খারাপ করবে এবং এফপিএসও এসপিআই ঘড়ির গতি দ্বারা সীমাবদ্ধ। এবং টিভি-আউট এর ডিসপ্লে কোয়ালিটি যথেষ্ট ভালো নয়।

এই নির্দেশে, আমরা একটি চূড়ান্ত রেট্রোপি গেম কনসোল তৈরি করতে রাস্পবেরিপি কম্পিউট মডিউল 3 এবং একটি ডিপিআই ইন্টারফেস এলসিডি ব্যবহার করব। এটি সমস্ত এমুলেটরগুলিকে মসৃণভাবে চালাতে এবং একটি উচ্চ রেজোলিউশন এবং উচ্চ ফ্রেম রেট সরবরাহ করতে সক্ষম হওয়া উচিত।

গেম কনসোলের চূড়ান্ত আকার 2000mAh ব্যাটারি সহ 152x64x18mm। একটি কাস্টম PCB, সমস্ত উপাদান, একটি 16GB TF কার্ড এবং একটি RaspberryPi কম্পিউট মডিউল 3 লাইট সহ মোট বিল্ড খরচ প্রায় 65 ডলার। যেহেতু আমার কাছে ইতিমধ্যেই একটি 3D প্রিন্টার আছে, কেসটির জন্য আমার খরচ মাত্র 64 গ্রাম PLA ফিলামেন্ট।

চল শুরু করি.

দ্রষ্টব্য: যেহেতু ইংরেজি আমার প্রথম ভাষা নয়, যদি আপনি কোন ভুল খুঁজে পান বা কিছু পরিষ্কার না হয়, দয়া করে দয়া করে আমাকে জানান।

ইন্সট্রাকটেবল ডট কম এ এটি আমার প্রথম পোস্ট এবং আমি সত্যিই আপনার কাছ থেকে সব ধরনের পরামর্শ প্রয়োজন।

ধাপ 1: উপকরণ

উপকরণ
উপকরণ
উপকরণ
উপকরণ
উপকরণ
উপকরণ
উপকরণ
উপকরণ

গেম কনসোল তৈরি করতে আপনার প্রয়োজনীয় উপাদানগুলি এখানে। কিছু অংশ আপনার অঞ্চলে উপলব্ধ নাও হতে পারে, কিছু বিকল্প অংশ চেষ্টা করুন।

1) রাস্পবেরিপি কম্পিউট মডিউল 3 লাইট। আপনি যে রাস্পবেরিপি 3 বি পেয়েছেন সেখান থেকে এটি কিনুন বা ইবেতে চেষ্টা করুন।

2) RGB/DPI ইন্টারফেস সহ 3.2 ইঞ্চি LCD। নিশ্চিত করুন যে আপনি একটি RGB/DPI ইন্টারফেস LCD মডিউল পেয়েছেন কারণ এই কনসোলটি তৈরি করা আবশ্যক। আমি একটি স্থানীয় ই-শপ থেকে আমার এলসিডি পেয়েছি এবং একই মডিউল আলিবাবাতে পাওয়া যাবে। আপনি যদি একটি বিকল্প এলসিডি মডিউল কিনে থাকেন, তাহলে আপনাকে বিস্তারিত প্যারামিটার এবং প্রারম্ভিক কোড পাঠানোর জন্য প্রদানকারীকে জিজ্ঞাসা করুন। একই দোকান থেকে সংশ্লিষ্ট সংযোজকগুলি কেনাও একটি বুদ্ধিমান পছন্দ কারণ এখানে বিভিন্ন ধরণের সংযোগকারী রয়েছে।

3) ALPS SKPDACD010। 1.75 মিমি ভ্রমণের সাথে কৌশল সুইচ। আপনার স্থানীয় ইলেকট্রনিক উপাদান দোকানে এটি অনুসন্ধান করুন।

4) অন্য কিছু কী। START/SELECT/VOL+/VOL- বোতামের জন্য আপনি পেতে পারেন এমন অন্য কোন কৌশল কী ব্যবহার করুন।

5) স্পিকার। কোন 8 ওহম, 0.5-1.5 ওয়াট স্পিকার।

6) ব্যাটারি। আমি 34*52*5.0mm 1S 1000mAh Li-ion ব্যাটারি x2 বেছে নিয়েছি।

7) কিছু আইসি STM32F103C8T6, IP5306, TDA2822, NC7WZ16, SY8113, PT4103 এবং ইত্যাদি

8) কিছু সংযোগকারী USB- মাইক্রো মহিলা, PJ-237 (ফোন জ্যাক), TF- কার্ড জ্যাক, DDR2 SODIMM এবং ইত্যাদি

9) কিছু প্যাসিভ উপাদান। প্রতিরোধক, ক্যাপাসিটার এবং ইন্ডাক্টর।

10) একটি কাস্টম PCB। পরিকল্পিত এবং PCB ফাইল শেষে প্রদান করা হয়। যদি আপনি কোন বিকল্প অংশ ব্যবহার করেন তবে এটিতে পরিবর্তন করতে ভুলবেন না।

11) একটি 3D প্রিন্টার। নিশ্চিত করুন যে এটি 152*66*10 মিমি আকার পর্যন্ত অংশগুলি মুদ্রণ করতে সক্ষম।

12) পর্যাপ্ত পিএলএ ফিলামেন্ট।

ধাপ 2: গণনা মডিউল 3

গণনা মডিউল 3
গণনা মডিউল 3
গণনা মডিউল 3
গণনা মডিউল 3

রাস্পবেরি পাই কম্পিউট মডিউল 3 কিছু সুদ গ্যাজেট প্রোটোটাইপ করার জন্য একটি খুব শক্তিশালী কোর বোর্ড। বিস্তারিত পরিচয় পাওয়া যাবে এখানে। এবং কিছু দরকারী তথ্য এখানে পাওয়া যাবে।

মডিউলটি একটি DDR2 SODIMM টাইপ সংযোগকারী ব্যবহার করে, যা ব্যবহার করা কিছুটা কঠিন। উপরন্তু BCM2837 কোর BANK1 এবং BANK0 এর সকল GPIO পিন সীসা আউট।

গণনা মডিউল ব্যবহার শুরু করতে, আমাদের বিভিন্ন ভোল্টেজ প্রদান করতে হবে: 1.8V, 3.3V, 2.5V এবং 5.0V। তাদের মধ্যে, 1.8V এবং 3.3V কিছু পেরিফেরালগুলিকে শক্তি দিতে ব্যবহৃত হয় যার প্রতিটিতে প্রায় 350mA প্রয়োজন। 2.5V পাওয়ার লাইন টিভি-আউট DAC চালায় এবং এটি 3.3V এর সাথে আবদ্ধ হতে পারে কারণ আমাদের টিভি-আউট বৈশিষ্ট্যটির প্রয়োজন নেই। 5.0V VBAT পিনের সাথে সংযুক্ত হওয়া উচিত এবং এটি কোরকে ক্ষমতা দেয়। VBAT ইনপুট 2.5V থেকে 5.0V পর্যন্ত ভোল্টেজ পরিসীমা গ্রহণ করে এবং শুধু নিশ্চিত করুন যে বিদ্যুৎ সরবরাহ 3.5W পর্যন্ত আউটপুট করতে পারে। VCCIO পিন (GPIO_XX-XX_VREF) 3.3V এর সাথে সংযুক্ত হতে পারে যেহেতু আমরা 3.3V CMOS স্তর ব্যবহার করি। SDX_VREF পিনটিও 3.3V এর সাথে সংযুক্ত থাকতে হবে।

সমস্ত HDMI, DSI, CAM পিন এখানে ব্যবহার করা হয় না, শুধু সেগুলো ভাসিয়ে রাখুন। EMMC_DISABLE_N পিনকে 3.3V এ বেঁধে রাখতে ভুলবেন না কারণ আমরা USB বুট ফিচারের পরিবর্তে হার্ড ড্রাইভ হিসেবে TF কার্ড ব্যবহার করব।

তারপরে SDX_XXX পিনগুলিকে TF কার্ড স্লটে সংশ্লিষ্ট পিনের সাথে সংযুক্ত করুন এবং কোন পুল-আপ বা পুল-ডাউন প্রতিরোধকের প্রয়োজন নেই। এই ধাপে, আমরা রাস্পবেরি পাই কম্পিউট মডিউল 3. বুট করার জন্য প্রস্তুত। হ্রাসের ক্রমে বিদ্যুৎ সরবরাহ চালু করুন: 5V, 3.3V এবং তারপর 1.8V, সিস্টেমটি বুট করতে সক্ষম হওয়া উচিত কিন্তু কোনও আউটপুট নেই ডিভাইস, এটা ঠিক কাজ করে কিনা আমরা জানি না। সুতরাং, পরবর্তী ধাপে এটি পরীক্ষা করার জন্য আমাদের একটি ডিসপ্লে যুক্ত করতে হবে।

কিন্তু আমরা এগিয়ে যাওয়ার আগে, আমাদের প্রথমে Pi কে বলতে হবে প্রতিটি GPIO এর কাজ কি। এখানে আমি কিছু ফাইল প্রদান করি, একটি নতুন ফ্ল্যাশ করা TF কার্ডের বুট ফোল্ডারে "dt-blob.bin", "bcm2710-rpi-cm3.dtb" এবং "config.txt" রাখুন। /বুট /ওভারলে ফোল্ডারে "dcdpi.dtbo" রাখুন। Dt-blob.bin প্রতিটি GPIO- এর ডিফল্ট ফাংশন নির্ধারণ করে। আমি GPIO14/15 কে স্বাভাবিক GPIO তে পরিবর্তন করি এবং UART0 ফাংশনটি GPIO32/33 এ স্থানান্তর করি কারণ LCD মডিউলের সাথে ইন্টারফেসের জন্য আমাদের GPIO14/15 প্রয়োজন। আমি পাইকে GPIO40/41 কে pwm ফাংশন হিসাবে ব্যবহার করতে এবং তাদের ডান এবং বাম অডিও আউটপুট হিসাবে তৈরি করতে বলি। Dcdpi.dtbo একটি ডিভাইস-ট্রি ওভারলে ফাইল এবং এটি Pi কে বলে যে আমরা GPIO0-25 কে DPI ফাংশন হিসাবে ব্যবহার করব। পরিশেষে, আমরা আমাদের দেওয়া ওভারলে ফাইল লোড করার জন্য Pi কে সচেতন করতে "dtoverly = dcdpi" লিখি।

এই মুহুর্তে, রাস্পবেরি পাই পুরোপুরি বুঝতে পেরেছে যে প্রতিটি জিপিআইওর জন্য কোন ফাংশনটি ব্যবহার করা উচিত এবং আমরা এগিয়ে যাওয়ার জন্য প্রস্তুত।

ধাপ 3: LCD মডিউল ইন্টারফেসিং

LCD মডিউল ইন্টারফেসিং
LCD মডিউল ইন্টারফেসিং
LCD মডিউল ইন্টারফেসিং
LCD মডিউল ইন্টারফেসিং
LCD মডিউল ইন্টারফেসিং
LCD মডিউল ইন্টারফেসিং

যেহেতু এই কনসোলে বিভিন্ন DPI/RGB ইন্টারফেস LCD মডিউল ব্যবহার করা যেতে পারে, এখানে আমরা উদাহরণ হিসেবে আমার নিজের বিল্ডে ব্যবহৃত মডিউলটি গ্রহণ করি। এবং যদি আপনি অন্য একটি বেছে নেন, আপনার মডিউলের পিন সংজ্ঞাটি পরীক্ষা করুন এবং উদাহরণে দেখানো পিনের নাম অনুসারে কেবল সংযোগগুলি তৈরি করুন।

এলসিডি মডিউলে দুটি ইন্টারফেস রয়েছে: একটি এসপিআই এবং একটি ডিপিআই। LCD ড্রাইভার IC এর প্রাথমিক সেটিংস কনফিগার করতে SPI ব্যবহার করা হয় এবং আমরা সেগুলি যে কোন অব্যবহৃত GPIO এর সাথে সংযুক্ত করতে পারি। শুধুমাত্র রিসেট, CS, MOSI (SDA/SDI) এবং SCLK (SCL) পিন সংযুক্ত করুন, MISO (SDO) পিন ব্যবহার করা হয় না। এলসিডি ড্রাইভারকে আরম্ভ করার জন্য, এখানে আমরা GPIO গুলি চালানোর জন্য BCM2835 C লাইব্রেরি ব্যবহার করি এবং মডিউল সরবরাহকারী কর্তৃক প্রদত্ত একটি নির্দিষ্ট সূচনা ক্রম আউটপুট করে। সোর্স ফাইল পরে এই নির্দেশযোগ্য পাওয়া যাবে।

বিসিএম 2835 সি লাইব্রেরিটি অন্য রাস্পবেরি পাই 3 এ ইনস্টল করুন এখানে নির্দেশাবলী অনুসারে। তারপর সোর্স ফাইল কম্পাইল করার জন্য "gcc -o lcd_init lcd_init.c -lbcm2835" কমান্ডটি ব্যবহার করুন। তারপরে "প্রস্থান 0" এর আগে /etc/rc.local ফাইলে একটি নতুন লাইন যুক্ত করুন: "/home/pi/lcd_init" (ধরে নিন আপনি সংকলিত আবেদনটি/home/pi ফোল্ডারের অধীনে রেখেছেন)। এটি জোর দেওয়া উচিত যে সোর্স ফাইলটি শুধুমাত্র আমার ব্যবহৃত নির্দিষ্ট মডিউল এবং একটি ভিন্ন LCD মডিউলের জন্য ব্যবহার করা হয়, কেবল সরবরাহকারীকে একটি সূচীকৃত ক্রমের জন্য জিজ্ঞাসা করুন এবং সেই অনুযায়ী সোর্স ফাইলটি সংশোধন করুন। এই প্রক্রিয়াটি বেশ চতুর কারণ এই মুহুর্তে স্ক্রিন থেকে কিছুই দেখা যায় না, এজন্যই আমি দৃ strongly়ভাবে পরামর্শ দিচ্ছি যে আপনি এটি একটি RPI-CMIO বোর্ডে করুন কারণ এটি সমস্ত GPIO গুলিকে বের করে দেয় যাতে আপনি এটি uart বা wlan দিয়ে ডিবাগ করতে পারেন।

নিচের অংশটি সহজ, এখানে অনুযায়ী LCD মডিউলের বাম পিনগুলি সংযুক্ত করুন। আপনি কি ধরনের এলসিডি মডিউল পেয়েছেন তার উপর নির্ভর করে, বিজ্ঞতার সাথে আরজিবি মোড বেছে নিন। আমার জন্য, এখানে আমি DPI_OUTPUT_FORMAT_18BIT_666_CFG2 (মোড 6) বেছে নিয়েছি। আপনার পছন্দ অনুযায়ী "dpi_output_format = 0x078206" লাইন পরিবর্তন করুন। এবং যদি আপনার এলসিডি মডিউল একটি ভিন্ন রেজোলিউশন ব্যবহার করে, তাহলে "hdmi_timings = 480 0 41 60 20 800 800 5 5 10 10 0 0 0 60 60 32000000" ফাইলটি দেখুন।

যদি সমস্ত সেটিংস সঠিক হয়, আপনার Pi এর পরবর্তী বুট-এ, আপনার 30-40 সেকেন্ডের পরে স্ক্রিনে ডিসপ্লে দেখা উচিত (পাওয়ার থেকে সিস্টেম আপনার SPI প্রারম্ভিক স্ক্রিপ্ট লোড করে)।

ধাপ 4: কী প্যাড এবং অডিও

কী প্যাড এবং অডিও
কী প্যাড এবং অডিও
কী প্যাড এবং অডিও
কী প্যাড এবং অডিও

আমরা শেষ দুই ধাপে কোর এবং আউটপুট দিয়ে করেছি। এখন আসি ইনপুট অংশে।

একটি গেম কনসোলের জন্য কী এবং বোতাম প্রয়োজন। এখানে আমাদের 10 ALPS SKPDACD010 সুইচ দরকার আপ/ডাউন/ডান/বাম, এলআর এবং এ/বি/এক্স/ওয়াই বোতাম হিসাবে। এবং স্বাভাবিক 6x6 সারফেস মাউন্ট কীগুলি অন্যান্য বোতাম যেমন স্টার্ট/সিলেক্ট এবং ভলিউম আপ/ডাউন এর জন্য ব্যবহৃত হয়।

রাস্পবেরি পাই দিয়ে বোতামগুলি ইন্টারফেস করার দুটি উপায় রয়েছে। একটি উপায় হল Pi- তে GPIO গুলির সাথে বোতামগুলিকে সরাসরি সংযুক্ত করা এবং আরেকটি উপায় হল একটি MCU এবং USB HID প্রোটোকলের মাধ্যমে Pi- এর সাথে ইন্টারফেসের সাথে বোতামগুলিকে সংযুক্ত করা। এখানে আমি দ্বিতীয়টি বেছে নিয়েছি, কারণ যেভাবেই হোক সিকোয়েন্স অন পাওয়ার মোকাবেলা করার জন্য আমাদের একটি MCU প্রয়োজন এবং Pi কে মানুষের স্পর্শ থেকে দূরে রাখা নিরাপদ।

সুতরাং, STM32F103C8T6 এর সাথে কীগুলি সংযুক্ত করুন এবং তারপরে MCU কে USB এর সাথে Pi এর সাথে সংযুক্ত করুন। এই ধাপের শেষে MCU প্রোগ্রামের একটি উদাহরণ পাওয়া যাবে। Hw_config.c- এ পিনের সংজ্ঞা পরিবর্তন করুন এবং এখানে পাওয়া MCU- এর USB লাইব্রেরির সাথে কম্পাইল করুন। অথবা আপনি কেবলমাত্র হেক্স ফাইলটি সরাসরি এমসিইউতে ডাউনলোড করতে পারেন যতক্ষণ আপনি এই নির্দেশের শেষে পরিকল্পিতভাবে একই পিনের সংজ্ঞাগুলি ভাগ করেন।

অডিও আউটপুটগুলির জন্য, রাস্পবেরি পাই 3 বি এর অফিসিয়াল স্কিম্যাটিক পিডব্লিউএম তরঙ্গ ফিল্টার করার একটি ভাল উপায় দেয় এবং একই সার্কিটটি এখানে পুরোপুরি কাজ করা উচিত। একটি জিনিস যা উল্লেখ করা উচিত তা হল যে অডিও আউটপুট শব্দ কম করার জন্য config.txt এর শেষে "audio_pwm_mode = 2" লাইন যুক্ত করতে মনে রাখবেন।

স্পিকার চালানোর জন্য, একটি স্পিকার ড্রাইভার প্রয়োজন। এখানে আমি TDA2822 বেছে নিয়েছি এবং সার্কিট হল অফিসিয়াল BTL সার্কিট। লক্ষ্য করুন যে ফোন জ্যাক PJ-327 এর ডান আউটপুটে একটি স্বয়ংক্রিয় বিচ্ছিন্ন পিন রয়েছে। যখন কোন হেডফোন প্লাগ ইন করা হয় না, পিন 3 ডান চ্যানেলের সাথে সংযুক্ত থাকে। এবং হেডফোন প্লাগ ইন করার সাথে সাথে এই পিনটি ডান চ্যানেল থেকে বিচ্ছিন্ন হয়ে যায়। এই পিনটি স্পিকার ইনপুট পিন হিসাবে ব্যবহার করা যেতে পারে এবং হেডফোন প্লাগ ইন করার সময় স্পিকার নিuteশব্দ হয়ে যাবে।

ধাপ 5: শক্তি

ক্ষমতা
ক্ষমতা
ক্ষমতা
ক্ষমতা
ক্ষমতা
ক্ষমতা

আসুন পাওয়ার বিভাগে ফিরে আসি এবং বিস্তারিত পাওয়ার ডিজাইন চেক করি।

এখানে 3 টি পাওয়ার বিভাগ রয়েছে: MCU সরবরাহ, চার্জার/বুস্টার এবং DC-DC Bucks।

MCU সাপ্লাই অন্য সকল পাওয়ার সাপ্লাই থেকে বিভক্ত কারণ আমাদের প্রি-পাওয়ারআপ সিকোয়েন্স করার জন্য এটির প্রয়োজন। পাওয়ার বোতামটি ধাক্কা দেওয়ার সাথে সাথে, পিএমওএস এলডিওর এন পিনটিকে ব্যাটারির সাথে সংযুক্ত করবে যাতে এলডিও সক্ষম হয়। এমসিইউ তখন চালিত হয় (বোতামটি এখনও চাপা থাকে)। MCU এর বুট আপের সময়, এটি পরীক্ষা করবে যে পাওয়ার বোতামটি যথেষ্ট সময় ধরে চাপানো হয়েছে কিনা। প্রায় 2 সেকেন্ড পরে, যদি এমসিইউ পাওয়ার বোতামটি এখনও টিপতে থাকে তবে এটি পিএমওএস চালু রাখতে "PWR_CTL" পিনটি টেনে আনবে। এই মুহুর্তে, MCU MCU বিদ্যুৎ সরবরাহের নিয়ন্ত্রণ নেয়।

যখন পাওয়ার বোতামটি আবার 2 সেকেন্ডের জন্য চাপানো হয়, তখন MCU পাওয়ার ডাউন সিকোয়েন্স চালাবে। পাওয়ার ডাউন সিকোয়েন্স শেষে, MCU "PWR_CTL" পিন ছেড়ে দেবে যাতে PMOS বন্ধ হয়ে যায় এবং MCU সরবরাহ বন্ধ হয়ে যায়।

চার্জার/বুস্টার অংশটি IC IP5306 ব্যবহার করে। এই আইসি হল 2.4A চার্জ এবং 2.1A ডিসচার্জ অত্যন্ত সমন্বিত সমাজ পাওয়ার ব্যাংক ব্যবহারের জন্য এবং এটি আমাদের প্রয়োজনের জন্য পুরোপুরি উপযুক্ত। আইসি ব্যাটারি চার্জ করতে সক্ষম, একটি 5V আউটপুট প্রদান করতে এবং একই সাথে 4 টি LEDs সহ ব্যাটারির মাত্রা দেখাতে সক্ষম।

ডিসি-ডিসি বাক অংশ দুটি SY8113 উচ্চ দক্ষতা 3A বক ব্যবহার করে। আউটপুট ভোল্টেজ 2 প্রতিরোধক দ্বারা প্রোগ্রাম করা যেতে পারে। পাওয়ার সিকোয়েন্স নিশ্চিত করার জন্য, প্রথমে বুস্টার সক্ষম করার জন্য আমাদের MCU প্রয়োজন। KEY_IP সংকেত IP5306 এর KEY পিনে একটি কী প্রেস অনুকরণ করবে এবং অভ্যন্তরীণ 5V বুস্টার সক্ষম করবে। এর পরে, MCU RASP_EN পিন উঁচু করে 3.3V বক সক্ষম করবে। এবং 3.3V প্রদানের পরে, 1.8V বকের EN পিনটি উচ্চ টানা হয় এবং 1.8V আউটপুট সক্ষম করে।

ব্যাটারির জন্য, কনসোলের জন্য দুটি 1000mAh লি-আয়ন ব্যাটারই যথেষ্ট। এই ধরনের ব্যাটারির স্বাভাবিক আকার প্রায় 50*34*5 মিমি।

ধাপ 6: সিস্টেম সেট আপ

সিস্টেম সেট আপ করা হচ্ছে
সিস্টেম সেট আপ করা হচ্ছে

এই ধাপে, আমরা সব সেটআপ একসাথে রাখব।

প্রথমে, আপনাকে একটি নতুন TF কার্ডে RetroPie ইমেজ ডাউনলোড এবং ফ্ল্যাশ করতে হবে। টিউটোরিয়াল এবং ডাউনলোড এখানে পাওয়া যাবে। Raspberrypi 2/3 সংস্করণ ডাউনলোড করুন। ছবিটি ফ্ল্যাশ করার পর আপনি 2 টি পার্টিশন দেখতে পাবেন: FAT16 ফরম্যাটের একটি "বুট" পার্টিশন এবং EXT4 ফরম্যাটের একটি "Retropie" পার্টিশন।

যখন আপনি সম্পন্ন করেছেন, তা তাত্ক্ষণিকভাবে রাস্পবেরি পাইতে ertোকাবেন না কারণ আমাদের রমের জন্য একটি FAT32 পার্টিশন যোগ করতে হবে। EXT4 পার্টিশনকে প্রায় 5-6GB এ সামঞ্জস্য করার জন্য DiskGenius এর মত পার্টিশন টুল ব্যবহার করুন এবং আপনার TF কার্ডে থাকা সমস্ত ফাঁকা জায়গা নিয়ে একটি নতুন FAT32 পার্টিশন তৈরি করুন। আমার আপলোড করা ছবি দেখুন।

নিশ্চিত করুন যে আপনার সিস্টেম টিএফ কার্ড রিডারকে ইউএসবি-এইচডিডি ডিভাইস হিসেবে চিহ্নিত করতে সক্ষম এবং আপনি আপনার এক্সপ্লোরারে part টি পার্টিশন দেখতে পাবেন। তাদের মধ্যে দুটি অ্যাক্সেসযোগ্য এবং উইন্ডোজ আপনাকে বামটি ফর্ম্যাট করতে বলবে। এটা ফরম্যাট করবেন না !!

প্রথমে "বুট" পার্টিশনটি খুলুন এবং পিন কনফিগারেশন সেটআপ করতে ধাপ 2 অনুসরণ করুন। অথবা আপনি কেবল এই ধাপের অধীনে boot.zip আনজিপ করতে পারেন, এবং আপনার বুট পার্টিশনে সমস্ত ফাইল এবং ফোল্ডার কপি করুন। বুট পার্টিশনে সংকলিত lcd_init স্ক্রিপ্টটি অনুলিপি করতে ভুলবেন না।

এখানে আমরা প্রথম বুট করার জন্য প্রস্তুত, কিন্তু কোন ডিসপ্লে না থাকায় আমি দৃ strongly়ভাবে সুপারিশ করছি যে আপনি একটি ইউএসবি wlan ডিভাইসের সাথে একটি RPI-CMIO বোর্ড ব্যবহার করুন। তারপরে আপনি wpa_supplicant ফাইলটি কনফিগার করতে পারেন এবং এই ধাপে ssh সক্ষম করতে পারেন। যাইহোক, যদি আপনি একটি পেতে চান না, GPIO32/33 একটি UART টার্মিনাল হিসাবে ব্যবহার করা যেতে পারে। TX (GPIO32) এবং RX (GPIO33) পিনটি একটি ইউএসবি-টু-ইউয়ার্ট বোর্ডের সাথে সংযুক্ত করুন এবং 115200 এর বড রেটের সাথে টার্মিনালে প্রবেশ করুন। যেভাবেই হোক, আপনাকে আপনার Pi এ একটি টার্মিনাল অ্যাক্সেস পেতে হবে।

প্রথম বুটে, ফাইল সিস্টেম প্রসারিত করার চেষ্টা করার সময় সিস্টেম আটকে যাবে। এটি উপেক্ষা করুন, স্টার্ট টিপুন (ইউএসবি এইচআইডি কীবোর্ডের কী প্রবেশ করান) এবং পুনরায় বুট করুন। টার্মিনালে, ব্যবহারকারী "পাই" এর হোম ফোল্ডারে lcd_init স্ক্রিপ্টটি অনুলিপি করুন এবং অটো স্টার্ট সেট করতে ধাপ 3 অনুসরণ করুন। আরেকটি রিবুট করার পরে, আপনার স্ক্রিনটি দেখতে হবে এবং কিছু দেখাতে হবে।

এই মুহুর্তে, আপনার গেম কনসোল খেলার জন্য প্রস্তুত। যাইহোক, আপনার TF কার্ডে রম এবং BIOS লোড করার জন্য, আপনাকে প্রতিবার একটি টার্মিনালে অ্যাক্সেস প্রয়োজন। এটি সহজ করার জন্য, আমি আপনাকে FAT32 পার্টিশন সেটআপ করার পরামর্শ দিচ্ছি।

প্রথমে RetroPie ফোল্ডারটি /home /pi এর অধীনে RetroPie-bck তে ব্যাকআপ করুন: "cp -r RetroPie RetroPie-bck"। তারপরে একটি নতুন লাইন যোগ করুন "পাই"। রিবুট করার পরে, আপনি দেখতে পাবেন RetroPie ফোল্ডারের বিষয়বস্তু সব শেষ হয়ে গেছে (যদি তা না হয়, আবার রিবুট করুন) এবং কিছু ত্রুটি স্ক্রিনে দেখা যায়। RetroPie-bck এর সমস্ত ফাইল RetroPie এ কপি করে আবার রিবুট করুন। ত্রুটিগুলি অদৃশ্য হওয়া উচিত এবং আপনি স্ক্রিনে নির্দেশ অনুসরণ করে ইনপুট ডিভাইসটি কনফিগার করতে পারেন।

আপনি যদি রম বা BIOS যোগ করতে চান, তাহলে বন্ধ হয়ে গেলে TF কার্ডটি আনপ্লাগ করুন এবং এটি আপনার কম্পিউটারে সংযুক্ত করুন। তৃতীয় পার্টিশনটি খুলুন (ফর্ম্যাট টিপটি উপেক্ষা করার জন্য মনে রাখবেন !!!) এবং সংশ্লিষ্ট ফোল্ডারগুলিতে ফাইলগুলি অনুলিপি করুন।

ধাপ 7: 3D মুদ্রিত কেস এবং বোতাম

থ্রিডি প্রিন্টেড কেস এবং বাটন
থ্রিডি প্রিন্টেড কেস এবং বাটন
থ্রিডি প্রিন্টেড কেস এবং বাটন
থ্রিডি প্রিন্টেড কেস এবং বাটন
থ্রিডি প্রিন্টেড কেস এবং বাটন
থ্রিডি প্রিন্টেড কেস এবং বাটন

আমি গেম কনসোলের জন্য গেমবয় মাইক্রো স্টাইলের কেস ডিজাইন করেছি।

শুধু ছাপা

4x ABXY. STL

2x LR. STL (সমর্থন যোগ করতে হবে)

1x CROSS. STL

1x TOP. STL

1x BOTTOM. STL

আমি পিএলএ ব্যবহার করে 20% ভরাট, 0.2 মিমি স্তর দিয়ে এটি মুদ্রণ করি এবং এটি যথেষ্ট শক্তিশালী।

যেহেতু কেসটি শক্ত, প্রিন্টের আগে কিছু টেস্ট কিউব দিয়ে প্রিন্টারের নির্ভুলতা পরীক্ষা করুন।

এবং তিনটি 5 মিমি লম্বা φ3 মিমি স্ক্রু এবং চার 10 মিমি লম্বা φ3 মিমি স্ক্রুগুলিকে একসাথে একত্রিত করতে হবে।

ধাপ 8: সব একসাথে এবং সমস্যা শুটিং

অল টুগেদার এবং ঝামেলা শুটিং
অল টুগেদার এবং ঝামেলা শুটিং
অল টুগেদার এবং ঝামেলা শুটিং
অল টুগেদার এবং ঝামেলা শুটিং
অল টুগেদার এবং ঝামেলা শুটিং
অল টুগেদার এবং ঝামেলা শুটিং
অল টুগেদার এবং ঝামেলা শুটিং
অল টুগেদার এবং ঝামেলা শুটিং

যেহেতু সার্কিটটি জটিল ধরণের, এটি পিসিবির কিছু কাজ করা একটি ভাল পছন্দ। এই ধাপের শেষে সম্পূর্ণ পরিকল্পিত এবং আমার নিজস্ব PCB সংস্করণ আপলোড করা হয়েছে। আপনি যদি আমার PCB ভার্সন ব্যবহার করতে চান, দয়া করে Top_Solder লেয়ারে আমার লোগো অপসারণ করবেন না। আপনার নিজস্ব কাস্টমাইজেশন তৈরি করা এবং আপনার নিজের PCB ফাইলটি স্থানীয় প্রস্তুতকারকের হাতে তুলে দেওয়া ভাল কারণ আমি আমার PCB- তে যে সমস্ত যন্ত্রাংশ ব্যবহার করি তা কেনা সত্যিই কঠিন।

পিসিবির সমস্ত উপাদান সোল্ডার এবং পরীক্ষা করার পরে, প্রথম কাজটি হ'ল এমসিইউতে হেক্স ফাইল ডাউনলোড করা। এর পরে, পিসিবিতে এলসিডি মডিউলটি আটকে দিন। এলসিডি মডিউলটি পিসিবি থেকে 3 মিমি উপরে হওয়া উচিত। এটিকে আটকে রাখার জন্য কিছু মোটা ডাবল সাইড টেপ ব্যবহার করুন। তারপর FPC কে সংযোগকারীতে সংযুক্ত করুন এবং CM3L এবং TF কার্ডটি সন্নিবেশ করান। এখন ব্যাটারি বিক্রি করবেন না, একটি ইউএসবি পাওয়ার সোর্স প্লাগ ইন করুন এবং এটি বুট করুন!

সমস্ত বোতাম এবং ডিসপ্লে চেক করুন। BAT+ এবং GND এর মধ্যে ভোল্টেজ পরিমাপ করুন, ভোল্টেজটি 4.2V এর কাছাকাছি কিনা তা পরীক্ষা করুন। যদি ভোল্টেজ ঠিক থাকে, ইউএসবি কেবলটি আনপ্লাগ করুন এবং ব্যাটারিটি চালু করুন। পাওয়ার বাটন ব্যবহার করে দেখুন।

TOP ক্ষেত্রে CROSS এবং ABXY বোতামটি রাখুন এবং পিসিবি কেসে রাখুন। ক্ষেত্রে PCB ঠিক করতে 3 টি স্ক্রু ব্যবহার করুন। সমস্ত SKPDACD010 বোতামের পিছনে কিছু মোটা ডাবল সাইড টেপ যোগ করুন এবং এটিতে ব্যাটারি আটকে দিন। SKPDACD010 এর পিনগুলি ব্যাটারির ক্ষতি করতে এড়াতে মোটা টেপ ব্যবহার করুন। তারপর স্পিকারটিকে BOTTOM কেসে আটকে দিন। এটি বন্ধ করার আগে, আপনার সমস্ত বোতামগুলি চেষ্টা করে দেখতে হবে, সেগুলি কাজ করে কিনা তা পরীক্ষা করুন এবং সঠিকভাবে বাউন্স করুন। তারপর 4 টি স্ক্রু দিয়ে কেসটি বন্ধ করুন।

উপভোগ করুন।

কিছু সমস্যা শুটিং টিপস:

1) স্কিম্যাটিক এবং PCB- তে LCD মডিউলের পিন সংযোগ ট্রিপল চেক করুন।

2) দৈর্ঘ্যের সীমাবদ্ধতার সাথে এলসিডি সিগন্যাল তারগুলি রুট করুন।

3) যখন আপনি পাওয়ার সেকশন সম্পর্কে নিশ্চিত না হন, প্রতিটি সেকশনের সোল্ডার এবং পরীক্ষা করুন পাওয়ার সিকোয়েন্স অনুসরণ করুন। প্রথমে 5V এবং তারপর 3.3V এবং 1.8V। সমস্ত পাওয়ার সেকশন পরীক্ষা করার পরে, অন্যান্য উপাদানগুলিকে সোল্ডার করুন।

4) যদি ডিসপ্লে ঘন ঘন ঝাপসা হয়ে যায়, তাহলে dpi_output_format সেট করে PCLK সিগন্যালের পোলারিটি উল্টানোর চেষ্টা করুন।

5) যদি ডিসপ্লে অনেকটা বন্ধ থাকে, তাহলে HSYNC বা VSYNC সিগন্যালের পোলারিটি উল্টানোর চেষ্টা করুন।

6) ডিসপ্লেটি যদি কেন্দ্র থেকে সামান্য বন্ধ থাকে, তাহলে ওভারস্ক্যান সেটিংস সামঞ্জস্য করার চেষ্টা করুন।

7) ডিসপ্লে কালো হলে, সিস্টেমটি rc.local স্ক্রিপ্ট পর্যন্ত বুট করার জন্য অপেক্ষা করার চেষ্টা করুন। আপনার যদি শুরু থেকেই ডিসপ্লের প্রয়োজন হয়, তাহলে SPI ইন্টারফেসটি MCU- এ লাগানোর চেষ্টা করুন এবং LCD মডিউল চালু করতে MCU ব্যবহার করুন।

8) যদি ডিসপ্লে সব সময় কালো থাকে, তাহলে আবার শুরু করার ক্রমটি পরীক্ষা করুন।

9) নির্দ্বিধায় এখানে বা ইমেইলের মাধ্যমে কোন প্রশ্ন জিজ্ঞাসা করুন: [email protected]

প্রস্তাবিত: