什麼!司徒你又開了一個新帖~不是要研究草食系統嗎?難道,草食系統已經進入生命結束前必須完成的作品之中嗎?這...不好說~因為那些還沒有製作完成的東西,其實都是屬於元宇宙 (Metaverse) 的概念,元宇宙是一個美好的虛擬世界,大家應該好好沈浸在那樣的世界,你說是不是呢?
為何叫馬沙機呢?因為司徒想做一台碼農專用的上網機器,因此,縮寫就使用碼上機這幾個字眼,不過這幾個字不夠漂亮,司徒改取同音字馬殺雞,但是,為了能夠更優雅的使用文字描述這台機器,最後取名叫:馬沙機,是不是很棒的名字呢!
那這台機器的主要目的是什麼呢?其實就是司徒無聊時,可以拿來寫寫程式碼,雖然有點唬爛的感覺,不過只能暫時相信,所以這台機器就是為了這個簡單的目的而誕生,那這台機器要跑什麼系統呢?司徒設定這台機器可以跑 Debian 系統,如果有 GUI 圖形桌面則更好,沒有的話,至少可以跑 Console 介面,由於是跑 Debian 系統,那當然需要具備上網更新的功能,因此,這台機器也要具備網路連線的功能,司徒大約擬定簡要規格後,就開始找尋手邊可以使用的元件,這才發現,原來 Keyboard FeatherWing 已經放在冰箱好些日子,FeatherWing 長成如下樣子:
主要元件就是:2.6吋SPI屏、Q10鍵盤、PCB板子
司徒當初購買時,還有額外添購 RP2040 專用的轉板,如下圖片:
不過,司徒目前不打算使用 RP2040,於是,再度翻找冰箱,尋找可用的元件,這才發現,原來還有更古老的 MT7688 元件可以使用,那就是 HLK-RM08S
不過,司徒購買的是 RAM 8MB、Flash 4MB,以這樣的規格來看,司徒也不確定能不能跑 Debian GUI 圖形桌面,只能試試看才知道~
全部零件就是這些,可能有人好奇,為何有小紅點呢?這是因為5路方向鍵必須使用這顆小紅點,才能達到完美操控
背面
此帖目標如下:
1. 跑 Debian 系統 (基本要求是 Console Terminal)
2. 可以連上網路更新 Package
3. 可以編譯並且執行 Hello, world! 程式
P.S. 達標後,此貼就會結帖
雖然司徒可用的時間相當有限,不過,司徒還是喜歡搞一些比較有趣的東西,因此,基於行動緩慢的理由,此帖預計更新週期為一年,當然,邪惡的鍵盤俠可能想說,司徒一定是跑去搞小三才變得沒有時間,這...,不瞞各位,司徒確實在搞小三,小犬目前國小三年級,司徒花費比較多時間在小犬身上,因此,就讓此貼慢慢更新吧~哈~
离线
鍵盤是這台機器的靈魂元件,司徒對於打字手感特別在意,因此,看了下Q10鍵盤背面,發現凹凸不平,大約有0.1cm的落差
這個落差如下圖:
按下時,鍵盤往下凹,嚴重影響手感
司徒開始修補這個漏洞
module q10_back(){
cube([55, 15, 0.7]);
translate([(55 / 2) - 5, 22, 0]){
cube([10, 5, 0.7]);
}
translate([-2.5, 0, 0.7]){
cube([60, 28, 0.5]);
}
}
凸起的部份
司徒使用堪用的3D印表機打印
粗糙且漂亮的紋理
三秒膠上陣
相當平整
离线
离线
由於,下巴不夠美觀,司徒決定進行修補
module q10_front(){
difference(){
union(){
difference(){
cube([62, 12, 0.5]);
translate([31, 11, 0]){
resize([65, 10]){
cylinder(3, 1, 1);
}
}
}
translate([-2, 0, 0]){
cube([7.5, 12, 0.5]);
}
translate([56.5, 0, 0]){
cube([7.5, 12, 0.5]);
}
translate([47, 7, 0]){
difference(){
cube([10, 5, 0.5]);
translate([2, 4.5, 0]){
resize([15, 10]){
cylinder(1, 1, 1);
}
}
}
}
translate([5, 7, 0]){
difference(){
cube([10, 5, 0.5]);
translate([8, 4.5, 0]){
resize([15, 10]){
cylinder(1, 1, 1);
}
}
}
}
}
translate([5.5, 4.5, 0]){
difference(){
translate([-7.5, -4.5, 0]){
cube([10, 4, 1]);
}
resize([15, 10]){
cylinder(5, 1, 1);
}
}
}
translate([56.5, 4.5, 0]){
difference(){
translate([-2, -4.5, 0]){
cube([9.5, 4, 1]);
}
resize([15, 10]){
cylinder(5, 1, 1);
}
}
}
}
}
列印完成
果然顏值高一點點
离线