[{"data":1,"prerenderedAt":150},["ShallowReactive",2],{"$fwuenr1OZcDw8TjcC-BzsU1lhSGBFolBhwdGCSmwMXKw":3,"$fFxa0Q1WhPHFxMgW3Bnx4NkE9eNmKbKQfsKdPqkgiqgU":4,"$fJRPcZ2W8p5HFkohycYq3R-Vl_6xf7-kge3cbQAhDplY":33,"mdc--ewxocc-key":84,"mdc--83zq7v-key":127},null,{"id":5,"room":6,"start":9,"end":10,"language":11,"track":12,"speakers":16,"zh":24,"en":28,"tags":29,"uri":31,"trackColor":32,"co_write":3,"qa":3,"slide":3,"record":3},"9KULK9",{"en":7,"zh-hant":8},"TR412-1","","2026-08-08T14:40:00+08:00","2026-08-08T15:10:00+08:00","中文",{"id":13,"name":14},515,{"en":15,"zh-hant":15},"Open-EP (E-Paper) Community",[17],{"id":18,"avatar":19,"zh":20,"en":23},"3WYPUV","https:\u002F\u002Fpretalx.coscup.org\u002Fmedia\u002Favatars\u002F3WYPUV_gVKahcC.webp",{"name":21,"bio":22},"蔡丞銳","大家好，我是Triangle，目前是一名熱愛硬體的 Maker。平時喜歡把玩各種感測器與顯示模組，致力於尋找軟硬體整合的最佳解法。\r\n\r\n這次的專案源自我被市面上極度碎片化的電子紙驅動「雷」過無數次的血淚史。秉持著「看不慣就自己造輪子」的開源精神，我決定動手整合出一套跨型號的通用 API，並深入研究底層波形榨出了灰階功能。我深信開源的價值在於為社群填坑、降低開發門檻，希望這次的分享能幫助大家不再受電子紙型號所苦，輕鬆把精力花在打造更酷炫的專案上！\r\n[GitHub](https:\u002F\u002Fgithub.com\u002FmeteorTriangle)",{"name":21,"bio":22},{"title":25,"describe":26,"type":27},"解密 E-paper 驅動：跨型號硬體抽象層設計與灰階 Waveform 實作","電子紙（E-paper）憑藉著超低功耗與護眼特性，在物聯網設備與自造者專案中大受歡迎。然而，開發者往往面臨一個巨大的痛點：「驅動程式極度碎片化」。市面上常見的電子紙模組（如 Waveshare 系列），即使尺寸相同，內部控制晶片與初始化指令也可能完全不同，導致開發者經常需要重複造輪子，難以將程式碼跨型號移植。\r\n\r\n本議程將分享如何打造一套跨型號的電子紙通用 API。透過建立完善的硬體抽象層（HAL），開發者只需撰寫一次程式碼，即可無縫適配多款不同型號的電子紙模組，大幅降低開發與維護成本。\r\n\r\n此外，本議程的另一大技術亮點是「灰階功能的逆向與實作」。許多平價電子紙模組在官方預設下僅支援純黑白顯示，我們將深入探討電子紙的刷新原理，解析如何透過控制硬體波形（Waveform LUT）或演算法，突破硬體原廠限制，在通用 API 的架構下成功榨出平滑的灰階顯示效果。\r\n\r\n這套解決方案目前已實作於 [ESP32 \u002F Arduino \u002F stm32 \u002F Rpi \u002F Rpi pico] 平台，並以 [ C ] 開源。無論你是深受電子紙驅動折磨的 Maker，還是對底層波形控制感興趣的開發者，都能在這場議程中獲得實用的解法與啟發。","Talk",{"title":25,"describe":26,"type":27},[30],"Intermediate","https:\u002F\u002Fcoscup.org\u002F2026\u002Fsession\u002F9KULK9","#4ecdc4",[34,40,46,51,55,59,63,68,74,79],{"id":35,"imageVertical":36,"imageHorizontal":37,"link":38,"weight":39},"QNAP-news","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=1-HQ9oQMOngtqM3yL-1DBHRhzWbuyxgfE&&sz=w4000","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=1aVhw014dwVLuxbNadE314lnl992FcjS_&&sz=w4000","https:\u002F\u002Fwww.qnap.com\u002Fgo\u002Fsolution\u002Fvirtualization",2,{"id":41,"imageVertical":42,"imageHorizontal":43,"link":44,"weight":45},"Cathay-news","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=10ndsUHILq9m_boaoilHTERyTXCsCBlSX&&sz=w4000","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=11_VlhFrCYcNOHML4z0jm6AmyL7MxNTfl&&sz=w4000","https:\u002F\u002Fwww.cathayholdings.com\u002Fholdings\u002Fbrand\u002Ffintech",6,{"id":47,"imageVertical":48,"imageHorizontal":49,"link":50,"weight":45},"esunbank-news","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=1aNURMNN83oIZHAtBzm2rUZODKVBO29dt&&sz=w4000","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=17OA0eu-N510ePhhDuiSuBV_4mdlU5gfi&&sz=w4000","https:\u002F\u002Fwww.esunbank.com\u002Fzh-tw\u002Fpersonal",{"id":8,"imageVertical":52,"imageHorizontal":53,"link":54,"weight":45},"https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=1_NsnJt2O238fO_dLl19RR4SNbyRErIJY&&sz=w4000","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=1Q989E0GWazdVSPcGvZLMYzsNSh4cV2-g&&sz=w4000","https:\u002F\u002Fwww.mysql.com\u002F",{"id":8,"imageVertical":56,"imageHorizontal":57,"link":58,"weight":45},"https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=1d4-1ZBMs6GqYcYytlYrSVZhs8Jgye5l3&&sz=w4000","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=1Ea4CNZ-14siicP3xYm78l3AF41iAb9Om&&sz=w4000","https:\u002F\u002Fberry-ai.com",{"id":8,"imageVertical":60,"imageHorizontal":61,"link":62,"weight":45},"https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=1A9Q35aOO4LDtI1-MVbIlLoGBmWn2VwZg&&sz=w4000","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=13Oz8Eq6MXXspGEqwi5QGbwYyDNeU1idK&&sz=w4000","https:\u002F\u002Fnitra.com\u002F",{"id":64,"imageVertical":65,"imageHorizontal":66,"link":67,"weight":39},"kktix-news","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=11md6cNzKBG-OF_e_9G5ZCLujoyck96as&&sz=w4000","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=1ec5tuBMqbKDfPakOPWZF93Q55JI7DOOl&&sz=w4000","https:\u002F\u002Fkktix.com\u002F",{"id":69,"imageVertical":70,"imageHorizontal":71,"link":72,"weight":73},"gamesofa-news","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=1HkRfiNOhKrH2zTaOHjTkDnAmoDPqV5_c&&sz=w4000","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=1IVAroDzzryU5AIY4qMMVztg4hu-FXaIM&&sz=w4000","https:\u002F\u002Fwww.gamesofa.com",3,{"id":75,"imageVertical":76,"imageHorizontal":77,"link":78,"weight":39},"onlyoffice-news","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=1H7dguSsKUH9aS9vxK-RhI519LEQjaak-&&sz=w4000","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=1IchePy7nwLT4TXnLYLf8o6HS4TKOOjFd&&sz=w4000","https:\u002F\u002Fwww.onlyoffice.com\u002F",{"id":80,"imageVertical":81,"imageHorizontal":82,"link":83,"weight":39},"SUN-SQUARE-news","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=19TU_W9JBLzrRYVSQPG4cbbckhWLy0JaS&&sz=w4000","https:\u002F\u002Fdrive.google.com\u002Fthumbnail?id=1-2rlsJngO4Qiu0SElyXhMYmsjmGokHu_&&sz=w4000","https:\u002F\u002Fsunsquare.tech\u002F",{"data":85,"body":86},{},{"type":87,"children":88},"root",[89,97,102,107],{"type":90,"tag":91,"props":92,"children":93},"element","p",{},[94],{"type":95,"value":96},"text","電子紙（E-paper）憑藉著超低功耗與護眼特性，在物聯網設備與自造者專案中大受歡迎。然而，開發者往往面臨一個巨大的痛點：「驅動程式極度碎片化」。市面上常見的電子紙模組（如 Waveshare 系列），即使尺寸相同，內部控制晶片與初始化指令也可能完全不同，導致開發者經常需要重複造輪子，難以將程式碼跨型號移植。",{"type":90,"tag":91,"props":98,"children":99},{},[100],{"type":95,"value":101},"本議程將分享如何打造一套跨型號的電子紙通用 API。透過建立完善的硬體抽象層（HAL），開發者只需撰寫一次程式碼，即可無縫適配多款不同型號的電子紙模組，大幅降低開發與維護成本。",{"type":90,"tag":91,"props":103,"children":104},{},[105],{"type":95,"value":106},"此外，本議程的另一大技術亮點是「灰階功能的逆向與實作」。許多平價電子紙模組在官方預設下僅支援純黑白顯示，我們將深入探討電子紙的刷新原理，解析如何透過控制硬體波形（Waveform LUT）或演算法，突破硬體原廠限制，在通用 API 的架構下成功榨出平滑的灰階顯示效果。",{"type":90,"tag":91,"props":108,"children":109},{},[110,112,118,120,125],{"type":95,"value":111},"這套解決方案目前已實作於 ",{"type":90,"tag":113,"props":114,"children":115},"span",{},[116],{"type":95,"value":117},"ESP32 \u002F Arduino \u002F stm32 \u002F Rpi \u002F Rpi pico",{"type":95,"value":119}," 平台，並以 ",{"type":90,"tag":113,"props":121,"children":122},{},[123],{"type":95,"value":124}," C",{"type":95,"value":126}," 開源。無論你是深受電子紙驅動折磨的 Maker，還是對底層波形控制感興趣的開發者，都能在這場議程中獲得實用的解法與啟發。",{"data":128,"body":129},{},{"type":87,"children":130},[131,136],{"type":90,"tag":91,"props":132,"children":133},{},[134],{"type":95,"value":135},"大家好，我是Triangle，目前是一名熱愛硬體的 Maker。平時喜歡把玩各種感測器與顯示模組，致力於尋找軟硬體整合的最佳解法。",{"type":90,"tag":91,"props":137,"children":138},{},[139,141],{"type":95,"value":140},"這次的專案源自我被市面上極度碎片化的電子紙驅動「雷」過無數次的血淚史。秉持著「看不慣就自己造輪子」的開源精神，我決定動手整合出一套跨型號的通用 API，並深入研究底層波形榨出了灰階功能。我深信開源的價值在於為社群填坑、降低開發門檻，希望這次的分享能幫助大家不再受電子紙型號所苦，輕鬆把精力花在打造更酷炫的專案上！\n",{"type":90,"tag":142,"props":143,"children":147},"a",{"href":144,"rel":145},"https:\u002F\u002Fgithub.com\u002FmeteorTriangle",[146],"nofollow",[148],{"type":95,"value":149},"GitHub",1784991539512]