- 13.3-इंच E Ink मॉनिटर 300ppi पर प्रति सेकंड 60 बार refresh होता है, और 4 साल तक अपने controller, hardware और firmware पर काम करने के बाद यह एक वास्तविक product के रूप में सामने आया
- मौजूदा E Ink controllers में लगभग 100ms global update wait होने की वजह से speed और contrast के बीच समझौता करना पड़ता है, लेकिन per-pixel update तरीका बदले हुए pixels को तुरंत refresh करता है
- Per-pixel refresh में 13-इंच black-and-white display के लिए bandwidth की ज़रूरत 20MB/s से 540MB/s तक बढ़ जाती है, इसलिए DDR3 और DisplayPort की आवश्यकता होती है
- Grayscale को non-flashing तरीके से दिखाना संभव नहीं था, इसलिए Bayer dithering, blue noise, error diffusion और hybrid display mode का संयोजन इस्तेमाल किया गया
- अंतिम नतीजा एक high refresh rate E Ink मॉनिटर है, जिसमें touchscreen, front light, color options, कई display modes, और open source hardware, FPGA gateware, firmware शामिल हैं
शुरुआत: E Ink laptop से अपने controller तक
- 60fps E Ink मॉनिटर 300ppi पर काम करता है, और जबकि E Ink speed के लिए जाना जाने वाला display नहीं है, यह प्रति सेकंड 60 बार refresh होता है
- विकास की शुरुआत एक E Ink laptop से हुई थी, और उस समय E Ink को support करने वाले SoC e-reader के लिए design किए गए थे, इसलिए वे low power, धीमे processor और सीमित interfaces तक बंधे थे
- Laptop बनाने के लिए SoC और screen को अलग करना पड़ा, और उनके बीच FPGA-आधारित driver chip रखकर अपना E Ink controller बनाना जरूरी था
- शुरुआती laptop design में एक bar-shaped LCD था जो बड़े touch bar की तरह काम करता था, और मान लिया गया था कि कुछ कामों के लिए fast display चाहिए होगा जबकि E Ink धीमा रह सकता है
- 60fps शुरुआती मुख्य लक्ष्य नहीं था; बस इतना पर्याप्त था कि laptop के लिए display काफी तेज हो, और यदि 60fps न मिले तो 15fps भी ठीक लक्ष्य माना गया था
Pixel-level update से आई speed और quality
- पारंपरिक E Ink controllers global update timer का उपयोग करते हैं, इसलिए screen refresh के समय पिछला update खत्म होने तक इंतजार करना पड़ता है
- एक सामान्य update में लगभग 100ms लगते हैं, इसलिए सबसे खराब स्थिति में नई image को process होने से पहले ही 100ms इंतजार करना पड़ सकता है
- Timer को तेज चलाने पर frame rate बढ़ता है, लेकिन E Ink particles को प्रतिक्रिया देने का समय कम मिलने से image धुली हुई जैसी दिख सकती है
- पारंपरिक तरीका refresh rate और contrast के बीच समझौता पैदा करता है, और कुछ controllers 4 से 16 क्षेत्रों को स्वतंत्र रूप से refresh करके इसे थोड़ा कम करते हैं
- क्षेत्र-आधारित यह तरीका software से इन क्षेत्रों को सीधे manage कराने की मांग करता है, और फिर भी इसकी सीमाएँ बनी रहती हैं
- Per-pixel update तरीका हर pixel को एक स्वतंत्र update region की तरह मानता है, इसलिए जो pixel बदलता है वह बिना इंतजार किए तुरंत refresh होना शुरू कर देता है
- इस तरीके से high frame rate और high contrast दोनों एक साथ मिलते हैं, यानी पारंपरिक speed-quality tradeoff खत्म हो जाता है
- इसकी कमी memory bandwidth है; 13-इंच panel पर black-and-white image दिखाने में पारंपरिक controller को प्रति सेकंड 20MB चाहिए, जबकि इस तरीके को 540MB/s चाहिए
- इतनी अधिक bandwidth की वजह से साधारण SDRAM की जगह DDR3 चाहिए और USB की जगह DisplayPort चाहिए, जिससे लागत बढ़ती है
- किताब पढ़ने जैसे उपयोग के लिए यह व्यवस्था ज़रूरी नहीं है, लेकिन monitor उपयोग में यह बहुत बड़ा अंतर पैदा करती है
Display quality: dithering और hybrid grayscale
- Project का फोकस laptop से पहले एक अच्छा monitor बनाने की ओर बदल गया, और उसके बाद यह कई वर्षों तक खाली समय में चलता रहा
- E Ink पर non-flashing grayscale लागू नहीं किया जा सकता था, इसलिए dithering अनिवार्य था
- लागू किए गए dithering algorithms तीन थे: Bayer dithering, blue noise, और error diffusion
- Bayer dithering तेज है लेकिन उसमें साफ़ दिखाई देने वाले patterns बनते हैं, blue noise का look बेहतर होता है, और error diffusion सबसे अच्छी quality देता है लेकिन high resolution पर scale करना कठिन है
- Dithering काम तो करता है, लेकिन असली grayscale से आगे नहीं जा पाता; इसका अपवाद flashing grayscale था
- मौजूदा monitors या तो धीमा flashing mode लागू करते थे या grayscale को पूरी तरह छोड़ देते थे
- Hybrid तरीका image बदलने पर fast binary mode में जाता है और थोड़ी देर स्थिर रहने पर उसे फिर grayscale में render करता है
- यह तरीका reading के लिए अच्छा था, लेकिन दूसरे उपयोगों में कम उपयुक्त था; अपने controller की वजह से fixed preset modes में बंधे बिना उपयोग के हिसाब से optimization किया जा सकता था
Hardware iteration और product तक का सफर
- पहले prototype में full-size DisplayPort इस्तेमाल किया गया था, और बाद में इसे DisplayPort वाले USB Type-C में बदला गया
- Integrated power management IC बंद हो जाने के कारण उसे अलग-अलग DC-DC converters से बदलना पड़ा
- अप्रत्याशित latch-up events से screen की सुरक्षा के लिए board में full voltage और current monitoring जोड़ी गई
- हर बदलाव के लिए नया PCB revision चाहिए था, और हर revision से नई सीख मिली
- जब outsourcing vendor से पहला case design वापस आया, तो यह desk पर खुले PCB की बजाय एक वास्तविक product जैसा दिखने लगा
- इसे Hackaday Supercon, LatchUp, और Supply के Teardown event में demo किया गया, और लोगों ने चाहा कि यह product सचमुच बाजार में आए
- Technology काम कर रही थी, demand मौजूद थी, और design भी तैयार था, इसलिए अंतिम push के लिए नौकरी छोड़ दी गई
- योजना थी कि कुछ महीनों तक पूरी तरह ध्यान देकर design को polish किया जाए, manufacturing की जाए, और shipment शुरू किया जाए
पूरी redesign, supplier समस्याएँ, और अंतिम features
- Full-time काम शुरू करने के तुरंत बाद E Ink ने अधिक resolution, बेहतर specs और कम कीमत वाला नया panel घोषित कर दिया
- नया panel बेहतर product दे सकता था, लेकिन अधिक resolution की वजह से high-bandwidth decoder IC, high-bandwidth DDR memory, नया FPGA, और अधिक current वाली power supply की जरूरत पड़ गई
- यह बदलाव board के लगभग हर हिस्से को बदलने जैसा था, और इससे कम से कम आधे साल की देरी हुई
- अंतिम product में पहले board design करके उसके अनुसार case फिट करने की बजाय form factor पहले तय किया गया, जैसे chassis, सटीक dimensions और mounting points, और फिर board को उसके अनुसार बनाया गया
- इस नए तरीके से पूरा design अधिक optimized और consistent बना, लेकिन इसके लिए एक और बड़ा revision करना पड़ा
- पूरी तरह assembled prototype को Design Shenzhen में दिखाया गया, लेकिन random glitches, video dropouts, और reset failure की वजह से वह shipping के लिए बहुत अस्थिर था
- Video decoder chip supplier ने NDA और service agreement होने के बावजूद मदद करने से इनकार कर दिया, और शुरू से driver code भी उपलब्ध नहीं कराया
- Chip इस्तेमाल करने के लिए source code पाने हेतु अतिरिक्त भुगतान करना पड़ा, लेकिन code काम नहीं करता था, और काम करने वाले code के लिए और अधिक पैसे मांगे गए
- बाद में supplier बदल दिया गया, और नया supplier साथ काम करने में कहीं बेहतर निकला, लेकिन project की शुरुआत में वह chip उपलब्ध नहीं थी
- बाद में touchscreen support जोड़ते समय नया touch controller integration, driver लिखना, और calibration की जरूरत पड़ी
- Flicker-free front light, sharpness के लिए उपयोगी frame rate limiter, power connection न होने पर ऊर्जा बचाने वाला low power mode, और इन features को नियंत्रित करने वाला on-screen display जोड़ा गया
- हर feature एक वाक्य में सरल लगता है, लेकिन उसे ठीक से लागू करने में कई हफ्ते लगते थे, और deadline लगातार खिसकती रही
- Full-time होने के बाद नौकरी के समय से भी अधिक घंटे काम करना पड़ा, रात और weekend की सीमाएँ धुंधली हो गईं, और games व खाली समय कम हो गया
- खुद निर्णय लेने पर काम तुरंत आगे बढ़ता था, समस्या सुलझाने पर वह सचमुच सुलझी रहती थी, और features लागू करने के लिए किसी और को मनाने की जरूरत नहीं थी
- 4 साल बाद नतीजा 13.3-इंच, अधिकतम 60fps, बहुत कम latency, कई display modes, touchscreen, front light, और color options वाला monitor बना
- Hardware design, FPGA gateware, और firmware सभी open source के रूप में जारी किए गए हैं, इसलिए इसे खुद भी बनाया जा सकता है
1 टिप्पणियां
Lobste.rs की राय
इस साल FOSDEM में Alex से मिला और यह डेमो देखा, काफ़ी अच्छा लगा
अभी यह प्रोटोटाइप है और केस भी पूरा नहीं हुआ, इसलिए पूरी तरह आश्वस्त नहीं था, लेकिन संभावना काफ़ी बड़ी लगी, और अगली बार e-ink खरीदूँगा तो शायद modos का प्रोडक्ट ही लूँगा
मेरे पास पुरानी Crowd Supply कैंपेन के दौरान मिला डेवलपमेंट किट है, कुछ पूछना हो तो पूछ सकते हैं
तेज़ धूप में इसका कॉन्ट्रास्ट कैसा है, और क्या सॉफ्टवेयर की तरफ़ कभी कोई समस्या आई है, यह भी जानना चाहूँगा
यह सच में शानदार डिस्प्ले है। अगर यह लैपटॉप या टैबलेट में आए तो अच्छा होगा, लेकिन छोटे standalone external डिस्प्ले के रूप में इसका कितना उपयोग होगा, इस पर भरोसा नहीं है
“चलते-फिरते USB Type-C केबल एक से Flow को अधिकतम 40Hz पर चलाया जा सकता है, और डेस्क पर अतिरिक्त पावर जोड़कर पूरा 60Hz refresh rate इस्तेमाल किया जा सकता है” यह बात थोड़ी अजीब लगती है
मुझे पावर खपत के आंकड़े नहीं मिले, लेकिन एक USB-C केबल से तो पूरा high-end लैपटॉप भी पावर पा सकता है, तो क्या एक डिस्प्ले उससे ज़्यादा लेगा?
AC/DC input वाले desktop monitors 60W या 100W जैसी PD output दे सकते हैं, लेकिन मेरा लैपटॉप PD output नहीं देता
मेरे पास एक कैमरा है जो सिर्फ़ PD से चार्ज होता है; वह USB-C से लैपटॉप में ठीक से कनेक्ट हो जाता है, लेकिन उसे 25W या 30W चाहिए, इसलिए लैपटॉप उसे चार्ज नहीं कर पाता
हालांकि, हमारे घर के दूसरे portable monitors सिर्फ़ लैपटॉप USB-C से ही चल जाते हैं। e-ink को cells clear करने के लिए 5V से ऊँचा voltage चाहिए होता है, इसलिए 60Hz पर उस boost के कारण पावर खपत बहुत बढ़ सकती है
इस पर भरोसा करना थोड़ा मुश्किल है। मेरी समझ में low frame rate मूल रूप से सॉफ्टवेयर सीमा है, हार्डवेयर सीमा नहीं, तो फिर यह अब तक ज़्यादा व्यापक क्यों नहीं हुआ?
ग्राहकों को जिसकी ज़रूरत नहीं, ऐसा महँगा controller लगाने की वजह भी कम है, और e-ink को ज़्यादा आक्रामक ढंग से चलाने पर उसकी उम्र कम हो जाती है, जिससे value proposition बदल जाता है
e-ink डिस्प्ले पेटेंट लागत और मुश्किल mechanical design की वजह से पहले से ही महँगे होते हैं। Toyota Corolla को 150 मील प्रति घंटा की रफ़्तार से दौड़ाना संभव तो है, लेकिन उसके लिए आराम के लिए लगे अंदरूनी हिस्से बदलने पड़ेंगे, कुछ safety features हटाने पड़ेंगे, और moving parts शायद एक चक्कर में ही टूट जाएँ—कुछ वैसा ही मामला है
आख़िरकार “सारा हार्डवेयर एक algorithm है, इसलिए शुरुआत software से होती है” यह बात सही है, लेकिन e-ink के मामले में controller market अभी तक DVI या VGA controllers जैसे दशकों से परिपक्व बाज़ार की बराबरी नहीं कर पाया है
Alex का काम open source है, इसलिए मुझे लगता है कि जल्द या देर से किसी बिंदु पर इसे बड़े पैमाने पर दोहराया जा सकेगा
high refresh rate और high contrast वाले reflective screen की माँग स्पष्ट रूप से है। लेकिन फिर ज़्यादातर approaches “सामान्य e-paper को किसी तरह इस्तेमाल या mod कर लो” जैसी ही क्यों हैं, यह सोचने वाली बात है
निर्माता Sharp की Memory Display लाइन जैसी तकनीक के आधार पर 6 इंच से बड़े reflective LCD panels क्यों नहीं बनाते?
और हाँ, अच्छा होता अगर electronics industry खरीदे जा सकने वाले electrowetting displays भी बनाती