අපේ මුළුතැනේ තිරය, "WallScreen" ලෙස හඳුන්වන, රෙසිපි, කාර්ය ලැයිස්තු, දිනදර්ශනය වැනි දේවල් පෙන්වන smart‑home උපාංගයක්. එක් දවසක, එයට OTA (over‑the‑air) රූපවාහිනියක් එක් කරන්න කියලා මම තීරණය කළා.
Raspberry Pi 5 එකක්, $30 ක USB TV ටියුනරයක් (MyGica A681) සහ ලිනක්ස් කර්නල් එකක් තිබුණා. Windows පද්ධතියේ පලත් අයුරින් ටියුනරය plug‑in කරලා සොෆ්ට්වෙයා ස්ථාපනය කළාම වැඩ කරලා. ඒත් ඒක Raspberry Pi හි Linux වල plug‑in කළාම, පද්ධතිය "ඇති" කියලා පෙනුවත්, කිසිදු තොරතුරක් නොදෙනවා.
මෙම ගැටළුවේ මූලික හේතුව, Linux තුළ ඒ ටියුනරයේ චිප් එකට අදාල ඩ්රයිවර් නොමැති වීමයි. නිෂ්පාදකයාගේ ඩ්රයිවර් පරිගණක (x86) සඳහා pre‑built binary එකක් පමණයි, එමඟින් Raspberry Pi (ARM) භාවිතා කරන චිප් එකට අනුකූල නොවේ. ඒ නිසා, මටම ඩ්රයිවර් එක ලියන්න සිදු වුණා.
USB TV ටියුනරය එකක් නොව, බහු චිප් එකකින් සමන්විතයි. එකක් USB සන්නිවේදනය, එකක් චැනල් ටියුන කිරීම, තෙවැනි එකක් සඟරාව (signal) දත්ත ලෙස පරිවර්තනය කිරීමේ කාර්යයන් කරයි. ටියුන කිරීම සහ දත්ත පරිවර්තනය සඳහා ලිනක්ස් TV ප්රජාවේ පූර්ව‑ලේඛන කේත භාවිතා කළා, ඒත් "translator layer" – Linux හට මෙවලම පරීක්ෂා කර, විධානයන් යැවීමේ කේතය – අඩු විය. ඒක මම පූර්ණයෙන්ම පටන් සිට ලියලා.
පළමුව ලෝකය පෙන්වා දුන්නා වගේ, ටියුනරය "ලොක්" වී ඇතැයි පෙන්වාදෙයි, නමුත් වීඩියෝ නැත. මේ ගැටළුවට හේතුව, මට default video mode වෙනස් කර තිබීම. එය නැවත default වෙත පත් කළ විට, සජීවී රූපවාහිනිය පටන් ගත්තා. මෙයින් මට ලැබුණු පාඩම, සම්භාව්ය default සැකසුමක් තිබේ නම්, ඒ වෙනස් කිරීමේදී පළමුව සාධකය පරීක්ෂා කිරීමයි.
ශ්රී ලංකාවට ඇති වැදගත්කම
- සිසුන් – Linux driver ලිවීමේ පියවර පියවර ක්රියාවලිය ඉගෙන ගනිමින්, open‑source ප්රජාවේ දායකත්වය අත්විඳිය හැක.
- ඩෙවලොපර් – ARM‑based SBC (single board computer) සඳහා hardware compatibility ගැටළු විසඳීමේ නව කුසලතා ලබා ගත හැක.
- ව්යාපාර – Raspberry Pi සහ USB ටියුනරය භාවිතා කරමින් අඩු පිරිවැයෙන් දේවල් පෙන්වීමට, digital signage, කාර්යාල තිර, හෝ streaming නොකළ පාරිභෝගික සේවා සැපයීමට අවස්ථාව ලැබේ.
අවසන් වශයෙන්, Linux පද්ධතියේ පාරිභෝගික hardware එකට driver එකක් ලියන අත්දැකීම, තාක්ෂණික ප්රශ්න විසඳීමට නව මඟක් විවර කරයි. ඔබත් Raspberry Pi එකක් සමඟ නිදහස් රූපවාහිනියක් බලන්න කැමති නම්, මේ අත්දැකීම ඔබට උපකාරී වේ.