PDAce   PDAce   PDAce
 
סקירות ומדריכים
חפש
 
דף הבית
סקירות ומדריכים
השוואת מכשירים
מילון מונחים
תוכנות מומלצות
קישורים לאתרים נבחרים
הוראות שימוש באתר
מי אנחנו
טאגליינס
 
החיים מבעד ל-PDA
PDAce - Stories נהיגה על הטויוטה פריוס (מכונית חשמלית)
יצא לי לנהוג היום על הטיוטה פריוס ואני חש צורך לספר לכם איך עברה עלי הנסיעה...

 
 
טאגליינס

חופש הדיבור

 
מאת: לב מ.
נא להכיר: ה-OpenMoko - מחשב כף יד משולב טלפון NEO1973 מבית FIC
קדמת המכשיר     אחורי המכשיר אם הכותרת נשמעת קצת בומבסטית אני מתנצל, פשוט לא יכולתי להתאפק. מי שמכיר את הסיסמה של ארגון התכנה החופשית (FSF) יבין את משחק המילים ומי שלא – ההסבר בהמשך!

שימו לב שזו אינה סקירת מכשיר רגילה, שכן מדובר בטלפון שטרם יצא לשוק, ועדיין אינו נמכר לקהל הרחב. המכשיר עליו אני עומד לספר לכם, ניתן לרכישה מאתר החברה ולא משום מקום אחר, עם הדגשה שהוא נועד למפתחים בלבד.
לכן איני מתכוון לפרט את יתרונותיו וחסרונותיו של המכשיר או להעניק לו ציון או המלצה. במקום זה אפרט את נתוניו, אספר על המערכת, היכולות והחוויה הראשונית לאחר הרכישה.

מפרט טכני

מעבד: Samsung S3C2410AL במהירות 266MHz
זיכרון: 128MB SDRAM
         64MB NAND Flash
מסך: (מגע) 480x640 VGA בגודל "2.8
טלפון: (TRI BAND GSM (900 / 1800 / 1900
תקשורת נתונים: GPRS
קשריות: Bluetooth 2.0, USB + Host
ניווט: Hammerhead PMB 2520 AGPS (כולל חיבור לאנטנה חיצונית)
הרחבה: כרטיס microSD (מסוגל לקרוא SDHC)
רמקולים סטראופוניים בצידי המכשיר.
מידות: 120.7x62x18.5 mm
משקל: 184 גרם.
מערכת הפעלה: Linux OpenMoko

מה מיוחד במכשיר?

כפי שניתן להווכח מפירוט החומרה, המכשיר אינו בקצה העליון של הטכנולוגיה, על אף שיש בו כמה פיצ'רים נחמדים, שמצויים במעט מאוד מכשירים אחרים, כמו הUSB HOST למשל. גם המראה שלו אינו ייחודי דיו כדי להעלות אותו מדרגה מעל לכולם.
מה שהופך את המכשיר הקטן הזה למהפכני באמת היא העובדה, שזה הטלפון ה"משוחרר" הראשון. המכשיר פתוח מהמסד עד הטפחות – החל מה Bootloader והדרייברים ועד לתכנות שרצות עליו כגון יומן ומשחקים – הכל מבוסס על קוד פתוח וזמין להורדה תחת רישיון GPL. למעשה ניתן להוריד את קוד המקור של כל המערכת ולהדר (compile) אותה על המחשב הביתי.
אבל יוצרי המכשיר לא עצרו כאן! גם החומרה שלו פתוחה, כלומר כל הרכיבים ואופן עבודתם מתועדים, ואלה שבכל זאת חייבים להיות סגורים (בגלל חוקים או חוזים עסקיים) – כמו רכיב ה-GSM, מתפקדים כקופסה שחורה ומתקשרים עם שאר המערכת בפרוטוקולים סטנדרטיים מתועדים ופתוחים.
אחת האפשרויות שהחופש הזה פותח בפנינו, היא היכולת להתאים למכשיר מערכת הפעלה אחרת בקלות יחסית. למעשה כבר קיימת הפצת Linux חלופית בשם Qtopia שניתן לצרוב עליו. גם עליה אספר בהמשך.

וכאן המקום להסביר את הכותרת של המאמר. באנגלית יש למילה FREE שני פרושים: חינם אין כסף, וחופשי – משוחרר. כדי להמחיש את ההבדל ולהסביר שתכנה חופשית היא הרבה יותר מתכנה שניתנת בחינם, ניסח ארגון התכנה החופשית את המשפט הבא:
"Free like freedom of speech and not like free beer” או בעברית - “חופשי כמו חופש הדיבור ולא כמו בירה חינם".

המשפט תקף במקרה זה, משום שהטלפון הזה אינו מחולק בחינם, ומחיר מערכת הפעלה במכשירים הפועלים על מערכות קנייניות כגון Windows Mobile או Symbian אינו מהווה מרכיב גדול במחיר הסופי של המכשיר. הכסף אינו הגורם העיקרי כאן (על אף שבטווח הרחוק יש גם יתרונות כספיים למכשיר פתוח), אלא מה ניתן לעשות עם המכשיר, הן בתור מפתחים והן בתור משתמשים רגילים.

דוגמה אחת לכך, היא יצירת תכנות המחייבות גישה ישירה לחומרה כמו משיבון מובנה.
עד לא מזמן, אם היה ברשותכם מכשיר מבוסס Windows Mobile ורציתם להתקין עליו תכנת משיבון כדי להימנע משימוש בתא קולי שלכם או לקבל יותר אופציות כגון תיבות מרובות –לא הייתה לכם כל אפשרות. וזאת משום שגישה לשמע בזמן שיחה הייתה חסומה ברמת המערכת. מצב זה אינו אפשרי במכשיר הנ"ל.
מצב נוסף שאינו אפשרי במכשיר זה הוא "נעילת SIM”, כלומר הגבלה של המכשיר לרשת סלולר מסויימת.
הערה: "נעילת SIM" - כך מוכרות חברות הסלולר (גם בישראל וגם בעולם) את המכשירים, כדי להקשות על הלקוחות לעבור לחברה מתחרה בתום תכנית המנוי.

קבלת המכשיר

כפי שכבר ציינתי, נכון למועד כתיבת מאמר זה, ניתן לרכוש את המכשיר דרך האתר של החברה בלבד, והוא נשלח ב-UPS. מה שעשוי להיראות מעט מוזר הוא, שהקופסה שלו לבנה לחלוטין ללא שום סימן מסחרי, לוגו או כיתוב.

תוכן החבילה



המכשיר עצמו, סוללה בקיבולת 1200mAh, סטילוס משולב עט מצביע לייזר ופנס LED (בקופסת מתכת מהודרת משלו עם סט סוללות נוסף), כרטיס זיכרון microSD בנפח 512MB מבית SanDisk, אזניות משולבות דיבורית, רצועה ופאוץ לנשיאת המכשיר, וכמובן כבל USB סטנדרטי.

נרתיק נשיאה (הפאוץ)

ניתן להזמין גם ערכה "מתקדמת" הכוללת כרטיס זיכרון, סוללה וכבל USB נוספים, מברג Torex 6 לפירוק המכשיר וגם לוח Debug - לוח מיוחד המאפשר גישה לקרביים של המכשיר, בייחוד לאותם מהנדסים חובבים (או אפילו מקצועיים) שפשוט חייבים לדעת איך זה עובד מבפנים. בין היתר, לוח זה מספק חיבור JTAG אשר מאפשר שחזור מכשיר מכל מצב, גם אם הBootloader נהרס, כלומר, מצב בו מכשיר אחר כבר היה הופך למשקולת נייר יקרה.
ושוב – בין אם עניינכם הוא פיתוח תכנה ובין אם התעסקות בחומרה - עם המכשיר הזה תקבלו את כל הכלים!
האם שכחתי משהו? לא. בניגוד לטלפונים אחרים לא מצורפים לערכה דיסק כלשהו או חוברת הפעלה. הסיבה היא שאין צורך בהם (לפחות לא בשלב הזה).
את כל ההוראות מאופן שימוש ועד למדריך כתיבת תכנה ניתן למצוא ב-Wiki הפרויקט.

פתיחת החבילה

בעוד שיצרני המכשיר התכוונו לאפשר לכל המעוניין לפרק אותו לחלוטין, אני הגעתי רק עד למצב של הכנסת SIM, כרטיס זיכרון וסוללה. כאן מתגלה הפגם הרציני היחיד שמצאתי בתכנון שלו: כרטיס הזיכרון ממוקם לא רק מתחת לסוללה, אלא מתחת לSIM עצמו.


Error!

מערכת הפעלה

משתמש מן השורה שזה עתה רכש פלאפון מתקדם ופתאום גילה שהמכשיר לא "עולה" עד הסוף כשרק יצא מהקופסה, ייבהל בוודאי וידרוש את כספו חזרה. וזה בדיוק מה שקרה עם המכשיר הזה. אבל אני הייתי מוכן לכך תודות לאזהרה באתר של החברה.
הבעיה: המערכת לא נצרבה בשלמותה.
הפתרון: קל ופשוט – מורידים את הגרסה האחרונה של ה-ROM (או כל אחת מתריסר הגרסאות האחרות הזמינות באתר הפרויקט) ואת כלי הצריבה שגם הוא תכנה בקוד פתוח, ותוך קצת פחות מ-15 דקות המכשיר מוכן לעבודה.

באשר לעניין ה"חופשי": בניגוד למכשירים אחרים בהם המשתמש תלוי ביצרן המכשיר או אפילו בחברת סלולר דרכה הוא נרכש כדי שתספק לו עדכון, כאן העדכונים מגיעים ישירות מיצרן מערכת הפעלה או אפילו מקהילת המפתחים עמה הוא עובד. בנוסף על כך, תמיד ניתן לחזור לגרסה הישנה במידה והעדכון גרם לתקלות לא רצויות או הסיר פיצ'רים כלשהם.

צריבת מערכת ההפעלה מתבצעת ב-3 חלקים ותמיד ממצב Bootloader.
החלק הראשון הוא ה-Bootloader עצמו. בד"כ לא מתעסקים אתו (באופן אישי לא צרבתי אותו אף פעם, על אף שעד כה הספקתי להחליף את שאר המערכת לפחות 5 פעמים). הצורך לצרוב את ה-Bootloader בנפרד ורק במקרים נדירים (שוב, טרם נתקלתי במצב כזה), מפחית משמעותית את הסיכוי להפוך את המכשיר ללבנה (לאלה מכם שאינם בקיאים בסלנג ה"צורבים הכפייתיים” – להשביתו באופן סופני).
החלק השני הוא ה-Kernel – הליבה של המערכת. הוא יושב במחיצה נפרדת משאר המערכת, וכך מתאפשר עדכונו ללא איבוד מידע במכשיר! גודל הKernel- הוא 1MB בלבד וצריבתו נמשכת פחות מדקה.
החלק השלישי והאחרון הוא מערכת הקבצים, הכוללת את החלק הגרפי של מערכת הפעלה והתכנות הנלוות. חלק זה יכול להיות בין 30 ל 40 מגה וצריבתו נמשכת בערך 13 דקות.

פרויקט ה-OpenMoko מחזיק FTP, שבו מאוחסנות גרסאות של מערכת ההפעלה בשלבים שונים של פיתוח. ניתן לבחור כל אחת מהן, לצרוב, לבדוק ולהמשיך הלאה.
בנוסף למערכת OpenMoko למענה פותח ה- Neo (המכשיר המדובר), קיימת גרסה של Linux שנקראת Qtopia. היא פותחה ע"י חברה מסחרית (בעלת אותו שם), שיש לה נטייה להפוך חלק ממוצריה לקוד פתוח בעקבות לחץ מצד משתמשים. על אף שגרסה זו נועדה במקור לטלפון שונה לחלוטין, בזכות היותה קוד פתוח וגם עקב פתיחות מכשיר הNeo עצמו, מפתחים מהקהילה פיתחו גרסה מותאמת עבורו.
ניתן להוריד ולצרוב אותה בדיוק באותה דרך בה צורבים את המערכת המקורית וגם לחזור לOpenMoko ללא כל מאמץ נוסף.

יכולתו המעניינת ביותר של המכשיר הזה היא "Dual boot” - הוא יכול להריץ OpenMoko מהזיכרון הראשי (Flash) ובמקביל את Qtopia מהכרטיס. בעליית המכשיר המשתמש יכול לבחור עם איזו מערכת לעבוד.

דבר נוסף שהפתיע אותי לטובה – בניסיון הראשון לעבור מOpenMoko לQtopia הורדתי בטעות קבצים לא נכונים. מבלי לקרוא את ההוראות עד הסוף, שיניתי שם לאחד מהם כדי שיתאים למה שהכרתי וצרבתי Kernel ומערכת קבצים.
כאשר ניסיתי להפעיל את המכשיר התברר לי, שמשצרבתי לא היתה כלל מערכת הפעלה לטלפון זה. למעשה המכשיר נתקע במסך הראשון (Splash) ולא המשיך הלאה. חזרתי למצב Bootloader, צרבתי מחדש OpenMoko והמכשיר חזר לתפקד כאילו לא קרה דבר.
מהיכרותי עם עולם מכשירים מבוססי Windows Mobile, ניסיון דומה עם אחד מהם היה עלול להסתיים באסון (או לפחות בחיפושים רבים אחרי דרך תיקון או הוצאות מעבדה).

חיבור המכשיר למחשב

כפי שכבר צויין במפרט הטכני, יש למכשיר חיבור Mini USB סטנדרטי. בנוסף לטעינה, משמש החיבור לתקשורת עם מחשב ה-PC בשני מצבים:
ראשון – מצב Bootloader, שממנו ניתן לצרוב מערכת הפעלה באמצעות הכלי המתאים וגם לתת פקודות ל-Bootloader עצמו דרך כלי שורת פקודה, שהינו כלי סטנדרטי לתקשורת עם מכשירי Embedded.
המצב השני והחשוב יותר, הוא מצב Ethernet Gadget. כאשר ה-Kernel עולה, המכשיר מזדהה ככרטיס רשת ולמעשה יוצר חיבור רשת נוסף ב-PC. כעת ניתן לגשת למכשיר כאילו היה מחשב מרוחק שמריץ Linux. הוא תומך בפקודות כגון SSH (ביצוע פקודות ב-Terminal על מחשב מרוחק), SCP (העתקת קובץ למחשב מרוחק) ועוד. כמובן שניתן לראות ולבצע פעולות על הקבצים שבמכשיר גם בעזרת סייר הקבצים הגרפי.
עם זאת, תקשורת זו היא דו-כיוונית! גם המכשיר רואה את ה-PC עליו הוא מחובר כמחשב אחר ברשת, ולמעשה ניתן להשתלט על המחשב מתוך הטלפון, לצפות בקבצים ולהעתיקם ולהריץ פקודות על ה-PC מתוך תכנת ה-Terminal המותקנת על המכשיר.
בקיצור – מרגע החיבור, מתפקדים הטלפון והמחשב כמו שני מחשבים המחוברים ביניהם ברשת קווית לכל דבר. אין צורך להתקין תכנה מיוחדת על ה-PC כגון ActiveSync, הנדרשת ע"י מכשירים מבוססי Windows Mobile, דבר שהוא נח מאוד אם המחשב אליו מתחברים אינו המחשב הביתי שלכם.
אפשרות נוספת שמאפשרת צורת חיבור זו, היא שקיפות – כל תכנה קיימת שיודעת לעבוד מול מחשב מרוחק, תוכל לעבוד מול טלפון זה ללא צורך בהתאמה מיוחדת.
חיבור זה פותח אפשרות ליצור יישומים, הקשורים ספציפית בפעולות בין טלפון ל-PC באופן חד-צדדי, ובכך לחסוך התקנות מיותרות על ה- PC לצורך עבודה שוטפת מול מכשיר זה או מכשירים עתידיים.
לדוגמה, ניתן ליצור תכנת סנכרון שתפעל מהטלפון בלבד ולא תדרוש התקנת רכיב בצד ה-PC. התכנה תקבל שם משתמש וסיסמה עבור המחשב או מחשבים אחדים מולם צריך להסתנכרן, ועם החיבור תאופשר גישה לנתונים כגון יומן, אנשי קשר ודוא"ל.

שימושים נוספים לחיבור המכשיר למחשב ה-PC



ב-Wiki הפרוייקט קיים הסבר מפורט כיצד לייצא נתוני GPS מהמכשיר למחשב ה-PC בזמן אמת, כך שהטלפון יכול בעצם להפוך למקלט GPS עכברי עבור מחשב נייד או נייח. טרם ניסיתי הליך זה, כך שלא אוכל לפרט.
על פי המפרט הטכני כניסת הUSB מתפקדת גם כUSB Host אך לא לחלוטין לפי התקן - החיבור אינו מספק 5V של חשמל. מבדיקה שערכתי מול כונן קשיח חיצוני ומכשיר Pocket PC המזדהה כDOK לא נוצר בNEO זיהוי של התקן USB. יתכן שהבעיה נובעת מחוסר דרייברים או מכך שרוב ההתקנים יסרבו לתפקד מול יציאה שאינה מספקת חשמל גם אם יש להם מקור כח חיצוני.
ייתכן שניתן להתגבר על בעיות אלה, אך הדבר דורש יצירת קבל מיוחד (שיפצל את הUSB לנתונים וחשמל) וידע רחב יותר לגבי דרייברים של Linux.

שימוש יום יומי

רוב התכנות אליהן אנו רגילים במכשירי טלפון חכמים, כבר שולבו עם במערכת טלפון זה: חייגן, אנשי קשר, יומן, נגן מוזיקה, דפדפן אינטרנט, קורא RSS, מחשבון, משחקים ועוד. לצערי מצאתי כי נכון לעכשיו חסר סייר קבצים גרפי וניתן לבצע פעולות על קבצים מתוך המכשיר רק באמצעות שורת פקודה (Terminal).
מנהל המשימות, המאפשר מעבר וסגירת תכניות נגיש יחסית - ניתן להגיע אליו תוך שני קליקים כמעט מכל מסך.
דבר נוסף שחסר כאן, הם כלים גרפיים לקביעת הגדרות המכשיר, אך היות וגרסת מערכת ההפעלה אינה סופית בשלב זה, ניתן לצפות שהם יתווספו בהמשך.
כמו בכל הפצת Linux המכבדת את עצמה, נמצא במכשיר מנהל חבילות בעל ממשק גרפי.

למי שלא מכיר, במערכת Linux הן רכיבי המערכת עצמה והן תכנות צד ג', מותקנות לרוב דרך "חבילות". מנהל החבילות מתחבר דרך האינטרנט למאגר של ההפצה, בו נמצאות גרסאות של תכנות רבות שכבר הותאמו להתקנה על ההפצה הספציפית, ודרכו ניתן להתקין או להסיר כל תכנה שרוצים. ברוב מנהלי החבילות קיימת גם אופציית חיפוש. למשל: אתם רוצים תכנה לעריכת תמונות? תקלידו "image editor” בתיבת חיפוש והוא ימצא לכם את כל התכנות הזמינות בנושא זה (לכל חבילה מצורף תיאור של התכנה שהיא מכילה).
בנוסף, מנהל החבילות מנהל גם את הגרסאות של התכנות המותקנות דרכו, לכן ניתן לקבל אוטומטית עדכונים גם למערכת וגם לתכנות צד שלישי. ולא רק תיקונים – גם גרסאות חדשות לחלוטין יותקנו אוטומטית אם תבחרו בכך.


מחוסר זמן לא התעמקתי בשימוש בתכנות המותקנות, לכן אצרף לכאן אוסף של צילומי מסך.

שעון

רשימת התוכנות

חייגן

פגישה חדשה

פאזל

סגירת תוכנות

פתיחת נעילת מכשיר 1

פתיחת נעילת מכשיר 2

ניהול צריכת חשמל


שימו לב לתמונה עם הפינגווין. כאן ניתן לראות את תכנת נעילת המסך בפעולה. זו תכנה קטנה ונחמדה שפותחה ע"י אחד מחברי הקהילה, והנהלת הפרוייקט בחרה לצרף אותה באופן רשמי למערכת. התכנה מופעלת ע"י בחירת "Lock Display” בPower Menu . ניתן להכנס לתפריט באמצעות לחיצה על כפתור ה-Power. מטרת התכנה היא למנוע הפעלה לא רצויה של המכשיר ע"י מסך מגע בזמן שהמכשיר נמצא בתיק או בכיס, ובעצם היא חוסמת כל פעולה עד לביצוע תנועה ספציפית – גרירת סמל כלשהו למטרה.
לכך ישנו פינגווין (הסמל של Linux), שהולך על הכביש. ברגע שהסטילוס עוזב אותו הוא חוזר לנקודת ההתחלה. על מנת לפתוח את נעילת המכשיר יש לגרור את הפינגווין מתחתית המסך לחלקו העליון היכן שממוקם הסמל של OpenMoko (בדמות שמש). התכנה תתעלם מכל תזוזה חלקית או סתם לחיצות על המסך.
פיצ'ר חמוד של התכנה הוא האפשרות להחליף לחלוטין את המראה שלה ע"י החלפת קבצי תמונה (העתקה פשוטה), שגם הם כמובן בפורמט פתוח - פורמט PNG. יחד עם התכנה ניתן להוריד מספר ערכות נושא כמו דבורה שעפה לפרח, חלק מפזל שיש להשלים ועוד.

בחרתי להדגיש דווקא תכנה זו, משום שהיא מדגימה את כוחו של הקוד הפתוח ליצירת מוצרים שמתפתחים בזמן אמת, ומתאימים את עצמם לדרישות המשתמשים מבלי לנפח יתר על המידה את המערכת.

שפת הקודש

התפתיתי מאוד להתחיל מחלק זה, כי בשבילי הוא היווה את ההפתעה הגדולה ביותר במכשיר החדש, אבל החלטתי לשמור את הדובדבן שעל הקצפת לסוף.
כל מי שאי פעם רכש פלאפון, נגן מוזיקה או מכשיר "חכם" אחר בחו"ל, יודע שבניגוד למחשב השולחני או הנייד,הוספת תמיכה בעברית אינה פשוטה כלל, ולעיתים בלתי אפשרית לחלוטין.
בעיה זו כואבת במיוחד לחובבי מכשירים מסוג Pocket PC וSmartphone, אשר מבוססים על מערכת הפעלה Windows Mobile מבית Microsoft. משום מה, בחרה ענקית התכנה שלא לכלול בגרסה הניידת של מערכת ההפעלה שלה תמיכה בעברית. הפתרונות היחידים שקיימים למכשירים אלה, גם לדגמים הבודדים הזמינים דרך חברות הסלולר, הם תכנות צד שלישי שפותחו ע"י חברות שונות.
פתרונות אלה אינם מושלמים ולעולם לא יגיעו לרמה של תמיכה עברית מובנית כמו שיש במערכות הפעלה ל-PC. גם אם ישקיעו חברות אלה רבות בפיתוח, ניסיון להוסיף פונקציית מערכת בסיסית חסרה דרך תכנה חיצונית, הוא כמו לנסות לנהוג ברכב מהמושב האחורי – זה אפשרי (עם מאמץ לא קטן) אבל ממש לא מומלץ!

כדי להבין את הבעיה יש להכיר את 3 הרכיבים הדרושים לתמיכה בכל שפה:
  1. תצוגה - כדי להציג טקסט בשפות לטיניות (אנגלית, גרמנית וכו') מספיק פונט, קובץ המכיל תיאור של אותיות השפה, כדי שהמערכת תוכל להציג אותן על המסך. כשמדובר בשפה העברית זה לא מספיק. יש צורך ב מנגנון משוכלל שידע לסדר את הטקסט מימין לשמאל, כשהוא מתחשב בסימני פיסוק, מספרים וטקסט אנגלי, שמעורב באותו משפט יחד עם טקסט עברי. מנגנון זה חייב להוות חלק בלתי נפרד מפונקציות מערכת המטפלות בטקסט, אחרת ייווצרו בשלב מסויים התנגשויות בקוד ותקלות (באגים) בתכנה.
  2. קלט - יש צורך במקלדת ספציפית לכל שפה, כדי שניתן יהיה להזין מידע למכשיר בשפה המבוקשת. במכשירים בעלי מסך מגע וללא מקלדת חומרה, המקלדת היא מקלדת ווירטואלית, שהיא בעצם תכנה קטנה שאינה חייבת להיות חלק מהמערכת. כמובן שגם כאן חשוב המנגנון שהזכרתי בסעיף 1. טקסט קיים, כמו שמות של תכניות, ניתן לסדר מראש כדי שגם ללא היפוך יראה נכון. למשל כותבים "םולש" במקום "שלום", והמלה מופיעה על המסך בצורתה הנכונה. באתרי אינטרנט מעטים משתמשים עדיין בסגנון עבודה זה, והוא נקרא "עברית ויזואלית". לעומת זאת, בזמן הקלדה לא ניתן לצפות מהמשתמש לכתוב הפוך, ולכן כאן מנגנון היפוך ברמת המערכת חשוב ביותר. חשיבות נוספת יש לכך שהסמן "ידע" לזוז בכיוון ובמקום הנכונים כדי שלא יהיה צורך לנחש היכן תופיע האות הבאה.
  3. ממשק - בעוד שרכיב זה אינו חובה וחלק מהמשתמשים משתדלים להימנע ממנו, אף חברה המכבדת את עצמה, לא תשווק טלפון או מוצר חכם דומה, אם כל התפריטים והטקסט בתכנות אינם בשפה המקומית. יש גם לזכור שלא כל המשתמשים במכשירים אלה יודעים אנגלית ברמה טובה, ואין סיבה שהאנגלית תהיה אחד מתנאי השימוש.

בעוד שהכנסת פונטים ותרגום ממשק הן פעולות שאינן דורשות ידע בתכנות, וקיים ידע מספיק כדי ליישם אותן עבור מערכות הפעלה שונות לטלפונים חכמים שקיימות היום, ההיפוך אותו הזכרתי, הוא הבעייתי ביותר, אם לא נכלל מראש במערכת עצמה.

וכאן ההפתעה הגדולה ביותר הטמונה במכשיר זה: לא רק שהמערכת כוללת מראש פונט מתאים ויכולה להציג תווים עבריים, אלא שאותו מגנון יקר של היפוך נכלל בה, והיא אף יודעת להצמיד ברשימות טקסט עברי לימין.

רשימת קבצי MP3 בעברית

פרטי קובץ MP3 בעברית

דפדפן בעברית 1

דפדפן בעברית 2



התמונות הנ"ל מובאות מנגן מדיה, המסוגל להציג הן שמות קבצים עבריים והן מידע מתוך קובץ MP3 עצמו בעברית בזמן השמעת השיר.
מעניין שחברה קטנה מטייוואן חשבה במושגים עולמיים, ויישמה מלכתחילה יישום קטן אבל חשוב, בעוד שחברת ענק עולמית (מיקרוסופט) התעלמה ממנו לאורך שנים ובמשך 6 גרסאות של מערכת הפעלה (Windows Mobile).

פיתוח תכנה

במבט ראשון, נושא זה יעניין רק אנשי מחשבים עם ידע בתכנות ו"פריקים" של ממש לענייני גאדג'טים. אבל בפועל נודעת לו חשיבות רבה דווקא למשתמש הרגיל, שמימיו לא כתב תכנה וגם לא מתכוון לעשות זאת.
זה לא סוד שהצלחתו של מחשב כף יד, טלפון חכם או כל מוצר דומה, תלויה במידה רבה בכמות הישומים הזמינים, ועוד יותר טוב אם קיים מבחר של תכנות המחולקות חינם, על מנת שאותו משתמש יוכל להיווכח ביכולות המכשיר טרם שהוא משקיע במוצרים נלווים.

לא לחינם Google מציעה היום פרסים בשווי של 10 מליון דולר (כן 10,000,000$) למי שיפתח את התכנה הנחשקת ביותר למערכתה הפעלה החדשה שלהםוזאת עוד לפני שיצא מכשיר שמריץ אותה!

מערכת ההפעלה OpenMoko בהיותה הפצת Linux תקנית לכל דבר, מקיימת שני כללים חשובים, המבטיחים שבמהרה יצטבר מאגר ענק של תכנות שיכסו כל תחום ושימוש אפשריים למכשיר (ואולי גם יציעו כמה שימושים חדשים שאפילו היצרן עדיין לא חשב עליהם):

  1. כלי הפיתוח, הדרושים לכתיבת תכנות למערכת זו, פתוחים וניתנים חינם, וזמינים לכל אחד בכל מקום דרך הורדה פשוטה מהאינטרנט. רישיון ה-GPL שלהם יבטיח שהם ימשיכו להיות זמינים וחופשיים.
  2. ממשק התכנות של המערכת והמבנה הכללי שלה, זהים כמעת לחלוטין להפצות Linux למחשב השולחני. פירוש הדבר, שכל מי שלמד פיתוח תכנות לסביבת Linux, יוכל לפתח תכנות עבור מכשירים שמריצים OpenMoko כמעט באופן מיידי, מבלי שיהיה צורך ללמוד מערכת חדשה.

מעט פרטים טכניים


כדי לקמפל קוד ל-Neo יש צורך בgcc cross compiler אשר מאפשר לקמפל קוד לארכיטקטורת ARM על מערכת x86. כאמור, זהו כלי חופשי בקוד פתוח.
ה-OpenMoko מריצה Kernel בגרסה 2.6.22.5 והמערכת הגרפית כוללת את Matchbox (מנהל חלונות קל) ספריות X11 סטנדרטיות וממשק מבוסס +GTK.

למעשה, על אף שקיים אמולטור שמדמה את המכשיר על PC, לפי ה-Wiki ניתן לבחון את התכנות שלו ישירות על המחשב השולחני ע"י קימפול הקוד למעבד x86.

סיכום

מתברר, שהחלק הזה במאמר הוא הקשה ביותר לכתיבה. לו הייתה זו סקירה רגילה, הייתי מתמצת בפשטות את היתרונות והחסרונות של המכשיר ואולי אפילו נותן לו ציון. אבל כדי לעשות זאת צריך להשוות אותו למכשירים אחרים בשוק, וכפי שכבר ציינתי בתחילת המאמר, המכשיר נועד לפיתוח ומחקר. למיטב ידיעתי זוהי הפעם הראשונה בו מכשיר שנוצר למטרה זו זמין ללקוחות פרטיים.

לפני שניגשתי לסכם, בדקתי שוב את אתר הפרוייקט וגיליתי שהם פרסמו קבצי CAD למכשיר, על מנת לאפשר למי שירצה לעצב את המארז שלו מחדש, לבצע זאת ביתר קלות. בפרסום הם כתבו "If you can’t open it, you don’t own it” או בעברית "אם אינך יכול לפרק אותו, אתה לא באמת הבעלים שלו".
מכשיר ה-Neo 1973 יחד עם מערכת הפעלה OpenMoko, מייצגים את הסנונית הראשונה בתעשיית הטלפונים של דרך חשיבה חדשה, שכבר תופסת תאוצה במקומות אחרים: למכור יותר ע"י מתן שליטה ללקוח במוצר שהוא רוכש, במקום להכריח אותו לשלם יותר בעזרת הגבלות טכנולוגיות.
תעשיית המוזיקה כבר הבינה את הרמז וויתרה על ה-DRM (מערכת הגנה המונעת ניגון קבצי מוזיקה במכשיר שונה מזה עבורם נרכש). חברות תכנה רבות וגדולות כמו RedHat ו-Cannonical (מפיצת Ubuntu) בנו את עצמן על מוצרים בקוד פתוח ובדרך גם תרמו לקהילה.
וכמובן איך אפשר שלא להזכיר את Google. לא רק שהיא הצליחה לעשות הון משירותים חינמיים כמו חיפוש, דוא"ל, וידאו ועוד, כיום היא נכנסת גם לתחום הסלולר עם מערכת הפעלה חדשה בשם Android, שאמורה בסופו של דבר להיות זמינה כקוד פתוח, ולצורך כך הם יצרו את “התאחדות הטלפון הפתוח” אשר כוללת שמות גדולים כמו Motorola, LG, Samsung HTC, Nvidia ועוד. את רשימת החברים המלא ניתן למצוא כאן.

ישנם דברים נוספים רבים שאפשר לומר על יתרונות הקוד הפתוח בפרט, ויישום פתיחות וסטנדרטים לתעשייה הטכנולוגית בכלל, אך לא זה המקום לכך. למי שמעוניין להבין את המשמעות האמתית של הקוד הפתוח ולהכיר את היתרונות והחסרונות של שיטת פיתוח זו מול השיטה של "קוד סגור", אני ממליץ לקרוא את הספר "הקתדרלה והבזאר".

מכשיר ה-Neo1973 עצמו הוא כלי פיתוח וניסוי מצויין גם למפתחים הפרטיים, הנותן להם גישה באותה רמה שהייתה זמינה עד היום רק במעבדות יצרניות הטלפון, ומערכת OpenMoko היא פלטפורמה גמישה ונוחה ליצרניות הרוצות לתכנן ולנסות חומרה חדשה.
וביחד הם הצעצוע האולטימטיבי לחובבי הגדג'טים בייחוד ל”Hard Core” שביניהם, שפשוט חייבים לדעת איך כל דבר סביבם עובד.

המשתמשים הרגילים יאלצו לחכות ל-2009 (אותו זמן שגם טלפונים מבוססי Android אמורים לצאת לשוק), על מנת לרכוש את ה- FreeRunner - הגרסה הבאה של הטלפון, המיועדת להם ואמורה לכלול גם Wi Fi, מצלמה, מעבד מהיר, מאיץ גרפי ועוד.
יהיה מעניין.


לב מ. במקצועו הוא מפתח תוכנה למכשירי Embedded מבוססי Windows CE ו-Windows Mobile

 
11-Mar-2008