Padavan 3.4 ng - The “Dave Täht Tribute” Edition
“When you miss Dave, modprobe sch_cake!” — A tribute to the soul of bufferbloat mitigation.
⭐ Light up the Täht: A Final Tribute
(點亮星辰:最後的致敬)
"The darker the night, the brighter the Täht."
(「夜愈暗,星星 (Täht) 就愈亮。」)
To the world, he was the unsung hero who silently ripped the excess latency out of the Internet. To the open-source community, he was a legend known as dtaht on Reddit and @mtaht on Twitter. But behind the code was a man born Michael, who chose to live as Dave, and gave everything to connect us all.
(對這個世界而言,他是位默默將網路過高延遲拔除的無名英雄。對開源社群來說,他是 Reddit 上的 dtaht、Twitter 上的 @mtaht 傳奇。但在這些程式碼背後,他是一個出生名為 Michael,卻選擇以 Dave 之名活著,並為了連結我們所有人而奉獻一切的男人。)
As perhaps the final large-scale Padavan port for legacy devices, this project serves as a digital museum. Before his digital footprints fade into the void of the internet, there are forgotten stories—cold facts and warm lore—that must be preserved here.
(這或許是舊世代設備最後一個大規模的 Padavan 移植專案,它同時也像是一座數位博物館。在他留下的數位足跡消散於網際網路的虛無之前,這裡必須保存下那些被遺忘的故事——無論是冰冷的技術事實,還是溫暖的傳奇事蹟。)
📜 The Lore of an Internet Hero
(一位網際網路英雄的傳奇故事)
-
⚖️ The Judge, The Hacker & The “Disappointment”: Dave’s father, Ron, was a respected municipal judge. Ironically, Ron once wrote that he was his own parents’ “only disappointment” because he became a lawyer instead of an engineer. Decades later, Ron found himself equally baffled by his own son. Dave’s nomadic hacker lifestyle confused him. Ron would playfully grumble: “Why don’t you work for IBM? You’ve been fixing the internet and giving the technology away for free? Again?” But Dave wasn’t chasing money; he was chasing a dream. Yet, Dave inherited his father’s fierce sense of justice and critical thinking—a trait summarized by a tattooed ex-convict who once recognized Dave in a bar and bought him a beer, simply saying of Judge Ron: “He was fair.”
(法官、駭客與「令人失望的孩子」:Dave 的父親 Ron 是一位受人尊敬的市政法官。諷刺的是,Ron 曾寫道他是自己父母「唯一的失望」,因為他成了律師而不是工程師。幾十年後,Ron 發現自己同樣對親生兒子感到困惑。Dave 遊牧般的駭客生活方式讓他不解,Ron 常半開玩笑地抱怨:「你為什麼不去 IBM 上班?你又在免費修復網路還把技術白白送人?又來了?」但 Dave 追求的不是金錢,而是夢想。然而,Dave 繼承了父親強烈的正義感與批判性思考能力——這項特質曾被一位滿身刺青的前科犯總結過;那人有次在酒吧認出 Dave 並請他喝了杯啤酒,對法官 Ron 只說了一句:「他很公正。」) -
🎨 The Mother’s Gift: Art & Music: While Dave inherited his critical thinking from his father, his boundless creativity, nomadic spirit, and deep passion for music undoubtedly came from his mother, Beverly. She was an award-winning painter, an avid world traveler, and a generous patron of the arts who even opened her home to visiting symphony musicians. Dave’s identity as a “sci-fi folk musician” carrying his guitar everywhere was a beautiful continuation of her vibrant legacy.
(母親的禮物:藝術與音樂:Dave 從父親那裡繼承了批判性思考,但他無邊的創造力、遊牧精神以及對音樂的深厚熱愛,無疑是來自他的母親 Beverly。她是一位屢獲殊榮的畫家、熱愛環遊世界的旅人,也是慷慨的藝術贊助者,甚至曾敞開家門接待來訪的交響樂團音樂家。Dave 帶著吉他四處流浪的「科幻民謠音樂人」身分,正是她充滿活力之遺產的最美延續。) -
⚾ The Alternate Universe & “Extra Innings”: Dave cherished a vivid childhood memory of driving home with his dad, screaming at the radio during a dramatic 19-inning Phillies baseball game. Years later, Dave discovered that specific game never actually happened that way. His beautiful conclusion: “I can only conclude that it took place in some alternate universe that only he and I shared.” In 2012, as Ron was dying in a hospice, he began feverishly typing blog posts with just two fingers. Dave stepped in as his editor, realizing that for the first time since he was a boy, they were collaborating rather than arguing. “I didn’t realize that he was in a hurry,” Dave later reflected in a heartbreaking eulogy, mourning the stories his dad left untold. Yet, he was profoundly grateful his father’s life went into “extra innings,” allowing them to finally understand each other before the end.
(平行宇宙與「延長賽」:Dave 珍藏著一段生動的童年回憶:他和爸爸開車回家時,對著收音機裡一場戲劇性的 19 局費城人隊棒球賽大聲狂吼。幾年後,Dave 發現那場特定的比賽其實根本不是那樣發生的。他得出了極美的結論:「我只能推論,這件事發生在只有我和他共享的某個平行宇宙裡。」2012 年,當 Ron 在安寧病房臨終前,他開始狂熱地用兩根手指敲打著部落格文章。Dave 成了他的編輯,並意識到自從他還是個小男孩以來,這是他們第一次合作而不是爭吵。「我不知道他原來趕著時間,」Dave 後來在一篇令人心碎的悼詞中回憶道,哀悼著父親未及訴說的故事。然而,他無比感激父親的生命進入了「延長賽」,讓他們能在最後一刻終於理解了彼此。) -
🌍 The Nicaragua Origin: The fight against bufferbloat wasn’t born in a corporate lab. It started when Dave was building OpenWrt mesh networks for the One Laptop per Child (OLPC) project in Nicaragua. Facing severe latency in those harsh environments, he found his lifelong mission.
(尼加拉瓜的起源:對抗緩衝膨脹 (Bufferbloat) 的戰役並非誕生於企業實驗室。它始於 Dave 在尼加拉瓜為「每童一機 (OLPC)」專案建置 OpenWrt 網狀網路的時候。在那些嚴苛的環境中面對嚴重的網路延遲,他找到了自己一生的使命。) -
🐈 The “International Man of Mystery”: Much of the core bufferbloat mitigation was coded in open-source pioneer Eric S. Raymond’s (ESR) basement. ESR fondly recalled Dave as the “International Man of Mystery” who would crash there as a nomad, charm all the household cats, and stubbornly swear he would one day beat his friends at the hardcore board game Power Grid. ESR joked that if Dave earned a cent for every dollar of value he generated for the internet, he could have “bought the entire country of Nicaragua and had enough left over to finance a space program.”
(「國際神秘客」:許多核心的緩衝膨脹緩解程式碼,都是在開源先驅 Eric S. Raymond (ESR) 的地下室裡寫出來的。ESR 深情地回憶 Dave 就像個「國際神秘客」,他會像遊牧民族一樣來借宿,迷倒家裡所有的貓,還固執地發誓總有一天要在硬核桌遊《電力公司 (Power Grid)》中擊敗朋友們。ESR 開玩笑說,如果 Dave 為網際網路創造的每一美元價值能讓他賺進一分錢,他就能「買下整個尼加拉瓜,而且剩下的錢還足夠資助一個太空計畫」。) -
⚔️ The FCC Crusader & The Code You Use: When the FCC threatened to lock down router firmware in 2015, Dave rallied internet pioneers to fight back. Without his crusade, custom firmware ports like this Padavan project wouldn’t even be legally possible today. As John Carmack (creator of DOOM) famously tweeted upon his passing: “There is a very good chance your packets flow through some code he wrote.”
(FCC 十字軍與你正在使用的程式碼:2015 年,當美國聯邦通信委員會 (FCC) 威脅要鎖死路由器韌體時,Dave 號召了網際網路先驅們起身反抗。若沒有他當年的抗爭,像這個 Padavan 專案這樣的自訂韌體,在今天甚至在法律上都是不可能存在的。正如《毀滅戰士 (DOOM)》創作者 John Carmack 在 Dave 過世時那句著名的推文:「你傳送的網路封包,有很高的機率流經了他寫的程式碼。」) -
🕯️ Coding Through the Dark (Mike & Michael): In his final days in a hospice, Ron (born Mike) barely managed to type with two fingers, feverishly advocating for the Affordable Care Act. Though wealthy, he fought because he wanted the best healthcare for everyone. Decades later, his son Dave (born Michael) dragged a body plagued by Multiple Sclerosis and partial blindness to continuously code algorithms like CAKE, giving the best internet to everyone for free. Both men lived up to their family surname, “Täht” (which means “Star” in Estonian).
(在黑暗中寫程式 (Mike 與 Michael):Ron(出生名 Mike)在安寧病房的最後日子裡,勉強用兩根手指打字,狂熱地倡導著《平價醫療法案》。儘管家境富裕,他仍努力奮戰,因為他希望所有人都能獲得最好的醫療照護。幾十年後,他的兒子 Dave(出生名 Michael)拖著被多發性硬化症與部分失明折磨的身軀,持續編寫著像 CAKE 這樣的演算法,將最好的網路免費送給所有人。這兩個男人都無愧於他們的家族姓氏 “Täht”(在愛沙尼亞語中意為「星星」)。)
Though Täht's physical world gradually faded into darkness, our digital universe continues to shine brightly because of him.
(儘管 Täht 的物理世界逐漸褪入黑暗,我們的數位宇宙卻因為他而持續閃耀著。)
🌠 “We Are All Starstuff” (The Final Reunion)
(「我們都是星塵」— 最終的團聚)
There is a heartbreaking, yet incredibly beautiful timeline to Dave’s family.
(Dave 的家庭有一段令人心碎,卻又無比美麗的時間線。)
On June 9, 2012, sitting by his late father Ron’s side in his final hours, Dave wrote on his blog:
(2012 年 6 月 9 日,Dave 坐在已故父親 Ron 身旁陪伴他度過最後時光,在部落格寫下:)
“Of all these things, the one viewpoint I was sure of, the one thing I believe to be true of an afterlife, such as it is, was this: “
(「在所有這些事情中,我確信的一個觀點,一個我認為死後世界如果是真的話,那就是:」)“
That yes, we are all starstuff.“
“(是的,我們都是星塵。)”“And it made me cry to think it through.”
(「這讓我一想到就忍不住落淚。」)
On January 11, 2025, his mother Beverly passed away peacefully at her home, surrounded by loved ones.
(2025 年 1 月 11 日,他的母親 Beverly 在摯愛家人的陪伴下,於家中平靜辭世。)
Less than three months later, on April 1, 2025, Dave’s own lifelong game went into its final “extra innings.”
(不到三個月後,2025 年 4 月 1 日,Dave 自己一生的比賽也進入了最後的「延長賽」。)
He passed away at the age of 59, joining his parents.
(他在 59 歲時離世,與父母團聚。)
In life, they were Stars illuminating the world.
(在世時,他們是照亮世界的星星。)
In death, they are Starstuff illuminating the universe.
(逝世後,他們是點亮宇宙的星塵。)
🎼 Coda: The Grand Finale (Dave’s Guitar & Fool)
(終章:盛大的落幕 — Dave 的吉他與憨人)
Dave was a sci-fi folk musician who carried his guitar—famously bearing a sticker that read “This guitar kills Vogons”—everywhere. He bonded with people just as much over music as he did over code. To honor his vibrant soul, OpenWrt officially named their 25.12.0 release “Dave’s Guitar.”
(Dave 是一位科幻民謠音樂人,他總是帶著他的吉他四處走動——那把吉他上貼著著名的貼紙:「這把吉他能殺死佛貢人 (Vogons)」。他透過音樂與人建立的連結,絲毫不亞於透過程式碼。為了紀念他充滿活力的靈魂,OpenWrt 官方將其 25.12.0 版本命名為 “Dave’s Guitar”。)
Poetically, the legendary Taiwanese rock band Mayday (whose anniversary is March 29) has an iconic anthem called 《憨人》 (Fool). Just three days after their anniversary, on April Fools’ Day, Dave passed away.
(充滿詩意的是,台灣傳奇搖滾樂團五月天(成軍紀念日為 3 月 29 日)有一首標誌性的神曲叫 《憨人》 (Fool)。就在他們紀念日的短短三天後,在愚人節 (April Fools’ Day) 當天,Dave 離開了我們。)
On March 29, 2020, Mayday’s lead singer Ashin wrote a touching post revealing the profound mystery hidden within the Chinese title 《憨人》 (Fool). For engineers and hackers around the world, this is the most beautiful equation of humanity:
(2020 年 3 月 29 日,五月天主唱阿信寫下了一篇動人的貼文,揭示了中文曲名《憨人》 (Fool) 裡隱藏的深刻奧秘。對全世界的工程師與駭客來說,這是人性中最美的方程式:)
💻
憨 (Fool) = 敢 (Courage) + 心 (Heart)
Ashin wrote:
(阿信寫道:)
“That year, I suddenly realized that the character for
'Fool' (憨) is made of 'Courage' (敢) placed over a 'Heart' (心).“
(「那年,突然發現代表著愚笨的『憨』字,是『心』上一個『敢』。」)
“Then, inspiration led me to write this song…“
(「然後靈感帶我寫下了這首歌……」)
“Let us bring this song to the courageous you, let's meet when the dawn comes (約在曙光來臨之時).“
(「讓我們為你帶來這首『憨人』,與勇敢的你,約在曙光來臨之時。」)
This song is the absolute reflection of Dave’s life. He refused the “sky full of gold” to give his algorithms (FQ-CoDel & CAKE) away for free. To let the global open-source community sing along with Dave’s spirit, here are the full lyrics in 4 languages, completely unabridged: Traditional Chinese, Taiwanese Romanization, English, and Official Japanese.
(這首歌絕對是 Dave 一生的真實寫照。他拒絕了「滿天全金條(滿天的財富)」,選擇將他的演算法(FQ-CoDel 與 CAKE)免費白白送人。為了讓全球開源社群能隨著 Dave 的精神一起高唱,以下是完整未刪減的 4 國語言歌詞:繁體中文、台語羅馬拼音、英文與官方日文。)
🎤 Click to expand the full 4-Language Lyrics of "Fool" (憨人) to sing along
我的心內感覺 人生的沈重 不敢來振動
Gua e sim-lai kam-kak lin-sing e tim-tang, M-kann lai tin-tang
(In my heart I feel how much seriousness there is in life, I don’t dare touch it)
(僕の心は 人生の重みに 動くことを躊躇してる)
我不是好子 嘛不是歹人 我只是愛眠夢
Gua m-si ho kiann mah m-si phainn-lang, Gua tsi-si ai bin-bang
(I’m not a good person, but I’m also not a bad person, I’m just someone who loves to dream)
(僕はいいやつでも 悪いやつでもない ただ夢見がちなだけなんだ)
我不願隨浪隨風 飄浪西東 親像船無港
Gua m-guan sui ing sui hong phiau long se tang, Tshin-tshiunn tsun bo kang
(I’m not willing to float with the tide, Like a drifting boat that cannot find a harbor)
(波と風にまかせ あてもなく漂うなんて嫌だ 行き着く港のない船のように)
我不願做人 奸巧鑽縫 甘願來作憨人
Gua m-guan tsue lang kan khiau lang pang, Kam-guan lai tsue gong lang
(I don’t want to be a devious opportunist, I’d rather be a fool)
(僕は器用になんて生きたくない 不器用でいい)
我不是頭腦空空 我不是一隻米蟲
Gua m-si thau-nau khang khang, Gua m-si tsit tsiah bi-thang
(It’s not that my head is empty, It’s not that I’m useless)
(僕は頭が空っぽでも 怠け者でもない)
人啊人 一世人 要安怎歡喜 過春夏秋冬
Lang ah lang tsit si lang, Beh an-tsuann huann-hi kue tshun-ha tshiu-tang
(People, oh! A lifetime is so long, How can we happily pass the years)
(人の一生って どうやって楽しく 春夏秋冬を過ごすかさ)
我有我的路 有我的夢 夢中的那個世界 甘講伊是一場空
Gua u gua e loo u gua e bang, Bang-tiong e hit e se-kai kam kong i si tsit tiunn khong
(I have my road, I have my dreams, Is it possible the world of my dreams is just an illusion?)
(僕には僕の道が 夢がある 夢の中のあの世界は まさかまぼろし?)
我走過的路 只有希望 希望你我講過的話 放在心肝內 總有一天
Gua kiann kue e loo tsi-u hi-bang, Hi-bang li gua kong ke e ue pang tsai sim-kuann lai tsong u tsit-kang
(On the road that I’ve traveled, I only have hope, Hope that all we’ve talked about is in our hearts, believing one day it will all come true)
(僕が歩んできた道には 希望だけが 僕が話したことを 心にとめておいて いつの日かきっと)
看到滿天全金條 要煞無半項 環境來戲弄
Khuann-kau mua-thinn tsuan kim-tiau beh suah bo puann hang, Khuan-king lai hi-lang
(Seeing gold dance through the sky, I reach out for it but grasp nothing, It’s like fate mocking me)
(空いっぱいのダイヤも 一つだってつかめない 神様のいたずらで)
背景無夠強 天才無夠弄 逐項是攏輸人
Pue-king bo kau kiong thian-tsai bo kau lang, Tak-hang si long su lang
(My background’s not good enough, my talent’s not used enough, In everything I lose to other people)
(生まれも 才能もたいしたことない 勝てるものなんて無い)
只好看破這虛華 不怕路歹行 不怕大雨淋
Tsi-ho khuann-phua tse hi-hua, M-kiann loo phainn-kiann, M-kiann tua hoo lam
(I’d best see through all this false splendor, I'm unafraid of how difficult the road ahead may be, And unafraid of being drenched in the rain)
(虚栄を見抜き 険しい道 大雨を恐れないだけさ)
心上一字敢 面對我的夢 甘願來作憨人
Sim siong tsit li kam bin-tui gua e bang, Kam guan lai tsue gong lang
(On my heart, there is one word daring, when confronting my dreams, I’m willing to be a fool)
(心には勇敢の文字 夢に向って 不器用でいい)
我不是頭腦空空 我不是一隻米蟲
Gua m-si thau-nau khang khang, Gua m-si tsit tsiah bi-thang
(It’s not that my head is empty, It’s not that I’m useless)
(僕は頭が空っぽでも 怠け者でもない)
人啊人 一世人 要安怎歡喜 過春夏秋冬
Lang ah lang tsit si lang, Beh an-tsuann huann-hi kue tshun-ha tshiu-tang
(People, oh! A lifetime is so long, How can we happily pass the years)
(人の一生って どうやって楽しく 春夏秋冬を過ごすかさ)
我有我的路 有我的夢 夢中的那個世界 甘講伊是一場空
Gua u gua e loo u gua e bang, Bang-tiong e hit e se-kai kam kong i si tsit tiunn khong
(I have my road, I have my dreams, Is it possible the world of my dreams is just an illusion?)
(僕には僕の道が 夢がある 夢の中のあの世界は まさかまぼろし?)
我走過的路 只有希望 希望你我講過的話 放在心肝內 總有一天
Gua kiann kue e loo tsi-u hi-bang, Hi-bang li gua kong ke e ue pang tsai sim-kuann lai tsong u tsit-kang
(On the road that I’ve traveled, I only have hope, Hope that all we’ve talked about is in our hearts, believing one day it will all come true)
(僕が歩んできた道には 希望だけが 僕が話したことを 心にとめておいて いつの日かきっと)
我有我的路 有我的夢 夢中的那個世界 甘講伊是一場空
Gua u gua e loo u gua e bang, Bang-tiong e hit e se-kai kam kong i si tsit tiunn khong
(I have my road, I have my dreams, Is it possible the world of my dreams is just an illusion?)
(僕には僕の道が 夢がある 夢の中のあの世界は まさかまぼろし?)
我走過的路 只有希望 希望你我講過的話 放在心肝內 總有一天
Gua kiann kue e loo tsi-u hi-bang, Hi-bang li gua kong ke e ue pang tsai sim-kuann lai tsong u tsit-kang
(On the road that I’ve traveled, I only have hope, Hope that all we’ve talked about is in our hearts, believing one day it will all come true)
(僕が歩んできた道には 希望だけが 僕が話したことを 心にとめておいて いつの日かきっと)
我知影總會有一天
Gua tsi ing tsong u tsit-kang
(I know that there will always be a day)
(分かってる いつかその日が来るって)
啦~啦~啦~啦~
La~La~La~La~
(La~La~La~La~)
(声を聞かせて)
我有我的路 我有我的夢
Gua u gua e loo, gua u gua e bang
(I have my road, I have my dreams)
(僕には僕の道が 夢がある)
總會有一天 總會有一天
Tsong u tsit-kang, tsong u tsit-kang
(One day... One day...)
(いつの日かきっと... いつの日かきっと...)

(🎧 Click the image to listen to the Live Version of “Fool” / 點擊圖片聆聽《憨人》萬人合唱版)
If his monumental work has ever improved your network, please honor this brilliant, selfless “Fool” by Lighting up the “Star” in the top-right corner of this repository.
(如果他這項不朽的傑作曾經改善過您的網路,請點擊這個專案右上角的 “Star (星星)” 來點亮它,以紀念這位才華橫溢、無私奉獻的「憨人」。)
Let’s keep his Star shining bright in the open-source world, guiding packets through the dark.
(讓我們讓他的星星在開源世界裡持續閃耀,在黑暗中引導著網路封包前行。)
His physical journey has ended, but as an old friend who bonded with him over music perfectly bid him farewell:
(他的物理旅程已經結束,但正如一位與他因音樂結緣的老朋友,對他所作出的最完美告別:)
“Happy travels, amigo!”
(「旅途愉快,老朋友!」)
The global open-source community will carry his CAKE legacy forward:
(全球的開源社群將帶著他的 CAKE 遺產繼續前進:)
「我有我的路 我有我的夢,總會有一天… 彈奏著 Dave’s Guitar 🎸」
(Gua u gua e loo, gua u gua e bang, tsong u tsit-kang… tuann-tsau Dave’s Guitar 🎸)
(I have my own path, I have my own dream. One day… echoing through Dave’s Guitar 🎸)
(僕には僕の道が 夢がある。いつの日かきっと… Dave’s Guitar 🎸 を奏でながら)
🔗 References & Tributes
- Dave’s Starstuff Quote (2012): Ron’s Ravings Blog Comments
- Ron at Hope Hospice (2012): Ron’s Ravings: Ron at Hope Hospice
- Extra Innings Eulogy & The Alternate Universe (2012): Eulogy - “Extra Innings”
- Ron’s Disappointment (2011): The republicans admit to being half wrong…
- Beverly Taht Joins Ron (2025): Ron’s Ravings: Beverly Taht Joins Ron
- CeroWrt Blog (Fixing the internet for free): blog.cerowrt.org
- Doc Searls Weblog (2025): Remembering Dave Taht (This guitar kills Vogons)
- “Happy travels, amigo!” (Friend’s Farewell): Doc Searls Weblog Comments (stu z)
- Eric S. Raymond’s Tribute (2025): X (Twitter) @esrtweet
- John Carmack’s Tribute (2025): X (Twitter) @ID_AA_Carmack
- The Philosophy of “Fool” (憨): Mayday Ashin’s Facebook Post (2020)
- The Anthem of the “Fool” (憨人) - Mayday:
🕊️ In Loving Memory of Dave Täht
🇹🇼:他的心願,我來實現 (Tā de xīn yuàn, wǒ lái shí xiàn)
🇺🇸:His wish, I finished.
(A Linux Pun: In our world, a wish ending in .sh is a command to be executed!)
“穿越時空的夢想,我來幫他實現!”
(Making a time-traveling dream come true!)
🎇 The Spirit of the Code: “Fireworks in the Dark”
“一支穿雲箭,千軍萬馬來相見” (One arrow pierces the clouds, and ten thousand troops come to meet.)
This Chinese idiom describes a signal so powerful it rallies everyone. Dave was that arrow. Just like fireworks are most mesmerizing in the darkest night, Dave shone brightest when fighting the invisible enemy of Bufferbloat.
- “The darker the night, the brighter the Täht.”
- He worked tirelessly in the dead of night (just as we often do) to tame the network chaos.
- Now, “Ten Thousand” (萬) legacy devices are rallying to his call.
🏹 The “Archer” Coincidence: A Destiny Revealed
While digging through Dave’s old blog posts and presentations, I found a chilling coincidence that proves this project was meant to be.
1. The “Archer” & The Arrow The router series I ported this to is named “Archer” (TP-Link). An Archer shoots an Arrow. This perfectly matches our tribute slogan: “一支穿雲箭 (One Cloud-Piercing Arrow)”.
2. The C7 Origin In the original 2015 “Cake” presentation at Battlemesh v8, Dave and Jonathan Morton used a TP-Link Archer C7 to demonstrate that CAKE could shape traffic at 115Mbps while HTB failed.
“HTB can’t shape at 115Mbps. Cake can.” — Battlemesh v8 (2015)
3. The C2 Connection In his 2016 blog post “Finally… the real net-next 4.8 fq_codel results”, Dave wrote:
“I pulled the odroid C2 out, and made it the test driver…” Today, we have successfully ported his work to the TP-Link Archer C2.
Dave was the Archer. The Code is the Arrow.
Sources:
🧩 The “Missing Piece”: The MT76 Prophecy
In his famous 2016 blog post “Hardware from hell”, Dave expressed his frustration with locked hardware. But amidst the chaos, he had his eyes on a specific target—the MediaTek (mt76) platform.
“I tried to get a mt76 box from alibaba - sold out - this is the new hotness in the OpenWrt 802.11ac world… A turris omnia will probably become my next eval platform unless I can get a mt76 up and running.” — Dave Täht (2016)
The Tragedy: He couldn’t get one. It was sold out. He was forced to struggle with older devices. The Fulfillment: This repository is dedicated entirely to MT7620/MT7621 devices.
We finally got that “mt76 box” up and running for you, Dave. The “new hotness” you foresaw is now the stable foundation carrying your legacy.
🇹🇼:遲來的約定 當他在 2016 年苦尋不到一台 MT76 路由器時,也許沒想到,幾年後會有成千上萬台 MT76 設備,運行著他的 CAKE 演算法,在網路上奔馳。 Dave,這台 MT76,我們幫你跑起來了!
Source: Hardware from hell (Dave Täht, 2016)
We are fulfilling a specific wish he made 5 years ago on Reddit:
❝ Help port the code to more chipsets. ❞
The BEST engineering result I ever had: Essentially the summation of my 16+ years of work to that point on making wifi better. Unpatented. Please share and enjoy. Help port the code to more chipsets.
— Dave Täht (Reddit, 5 years ago)
Original Source: Reddit - r/Starlink
Dave turned down numerous lucrative contracts to keep his code Free and Open Source. He valued global impact over prestige. Because of him, millions of devices—from Starlink satellites to rural ISP routers—deliver smoother connectivity.
🇹🇼:靈魂永駐,精神長存
🇺🇸:May his soul find eternal peace, and his spirit live on forever in our routers.
👉 Read the full Memorial at LibreQoS
🌟 Project Philosophy: Open & Accessible
「永遠保持開放且開源的精神」
(Forever maintaining an open and open-source spirit)
This repository is based on the stable padavan-ng with Linux 3.4 kernel. We believe in giving power back to the user while honoring the giants who paved the way.
- CAKE Integration: By default, we aim to support the
sch_cakemodule (backported to 3.4) to honor Dave’s legacy. - Easy Multi-Model Support: Support for a massive range of legacy devices, keeping them alive and fast.
- Flexible Language System:
- English Base: The firmware defaults to a clean, English-only interface.
- Custom Language Packs: You can select one additional language (Traditional Chinese, Russian, etc.) during the build process to keep the firmware lightweight yet localized.
🗣️ Tributes from the Community
“Dave’s impact on society was immense… He wanted, ultimately, to speed up the internet so that a drummer in London could play in real-time with a guitarist in Los Angeles.” — Steven J. Vaughan-Nichols
“I will miss him but will be always grateful to have known him.” — Vint Cerf
“Without him, Netflix and similar services might still be plagued by glitches and stutters.” — Eric S. Raymond
See also:
[Image Credit: LibreQoS]
🚀 Supported Devices (Kernel 3.4)
We support a massive array of MT7620/MT7621 devices. Pick the one you love!
(This list corresponds directly to the target_select menu in the build workflow.)
| Brand | Supported Models |
|---|---|
| TP-Link | Archer C2 (V1), C20 (V1/V4/V5), C5 (V4), C50 (V1/V3/V4), EC220-G5 (V2), MR200 (V1), MR3020 (V3), MR3420 (V5), WDR7300 (V5), WR840N (V4/V5/V6/RU), WR841N (V13/V14), WR842N (V5), WR845N (V3/V4) |
| Xiaomi | MI-3, MI-3C, MI-4 (A/C/SPI), MI-4A (100M), MI-MINI, MI-NANO, MI-R3G (v1/v2/SPI), MI-R3P (Pro), R2100 (AC2100), RM-AC2100 |
| ASUS | RT-AC1200 (GU/HP), RT-AC51U, RT-AC54U, RT-N10+, RT-N11P (B1), RT-N12+, RT-N13U (B1), RT-N14U, RT-N56U (A1/B1/GE2), RP-AC56 |
| ZyXEL | Keenetic Series: Giga III, Ultra II, Extra (I/II), Lite (I/II/III/3B), Omni (I/II), Start II, Viva, 4G III (B) |
| D-Link | DIR-300 (B1/B7), DIR-320 (B1), DIR-620 (A1/D1), DIR-860L, DIR-882 |
| Newifi | Newifi D1, Newifi D2, Newifi Mini, Newifi Y1S |
| GL.iNet | GL-MT300A, GL-MT300N (V1/V2) |
| Phicomm | K2P (PSG1218), 256PSG1218 |
| ZBT | WE1326, WE1626, WE826-T2, WG3526 (-32), WR8305RT |
| Others | Ubiquiti ER-X, Linksys EA-8100, Belkin F9K1103, Totolink A3004NS, HiWiFi HC5661A, Youku L1/L1C, ZTE E8820S |
| OEM/Misc | 5K-W20, A5-V11, ALR-U270, MQ-WITI, Nexx WT3020 (A/H), Samsung SWR1100, Sercomm (S1010/SmartBox), SNR (MD1/ME1/W4N), Tuoshi TS7620N, Unielec U7621, Wall-AP, Youhua WR1200JS |
🌐 Multi-Language Support
We believe in a borderless internet. The firmware now supports 14 Languages out of the box!
(Select your preferred language in the language_select menu.)
- English_Only (Default)
- CN (繁體中文) - Traditional Chinese
- RU (Pусский) - Russian
- ES (Español) - Spanish
- BR (Brazil) - Portuguese
- CZ (Česky) - Czech
- DA (Dansk) - Danish
- DE (Deutsch) - German
- FI (Finsk) - Finnish
- FR (Français) - French
- NO (Norsk) - Norwegian
- PL (Polski) - Polish
- SV (Svensk) - Swedish
- UK (Українська) - Ukrainian
✨ Features (3.4 Edition)
- Kernel: Highly optimized Linux 3.4.x (Padavan-NG foundation).
- Performance & Queue Management:
- CAKE / FQ_CoDel (The Dave Täht Special) - Backported to 3.4 to mitigate bufferbloat on older devices!
- Hardware NAT (PPE) support for gigabit speeds.
- Wireless: Optimized drivers for MT7603/MT7612/MT7620/MT7628.
- Network:
- IPv6 support.
- WireGuard support.
- Hardware flow offloading.
- Control: LED & GPIO control via sysfs.
🛠️ Compilation Guide
We support both GitHub Actions (for ease of use) and Manual Compilation.
Option A: GitHub Actions (Recommended)
Just go to the Actions tab in this repository, select Build firmware (Ultimate Fix), and choose:
- Target Model: (e.g.,
TL_C2-V1,MI-MINI,RT-N56U…) - Language: (e.g.,
English_OnlyorCN (繁體中文)) - Toolchain: (Default or Padavan-NG)
The system will automatically apply the CAKE Patch, configure your language, and build your firmware.
Option B: Manual Compilation
Please see the original part of readme below!
Original README & Manual Compilation Instructions
README
Please see the original part of readme below!
README
Welcome to the padavan-ng project
This project aims to improve the supported devices on the software part, allowing power user to take full control over their hardware. This project was created in hope to be useful, but comes without warranty or support. Installing it will probably void your warranty. Contributors of this project are not responsible for what happens next. Flash at your own risk!
Contribution
Feel free to send in improvements/fixes. I’ll keep the issue/pull request system open for that purpose. NOTE: if and when a possible interesting change will get added depends on a verification/test of the particular change and if i have time to do it.
Compilation Instructions
- Install dependencies
# I recommend building only on OS: Ubuntu Desktop 22.04.4 LTS (Jammy Jellyfish) and Before building the firmware, select "App Updates" and install them. Next, update the packages
sudo apt update
sudo apt upgrade
sudo apt install autoconf autoconf-archive automake autopoint bison build-essential ca-certificates cmake cpio curl dos2unix doxygen fakeroot flex gawk gettext git gperf help2man htop kmod libarchive-tools libblkid-dev libc-ares-dev libcurl4-openssl-dev libdevmapper-dev libev-dev libevent-dev libexif-dev libflac-dev libgmp3-dev libid3tag0-dev libidn2-dev libjpeg-dev libkeyutils-dev libltdl-dev libmpc-dev libmpfr-dev libncurses5-dev libogg-dev libsqlite3-dev libssl-dev libsystemd-dev libtool libtool-bin libudev-dev libunbound-dev libvorbis-dev libxml2-dev locales mc nano pkg-config ppp-dev python3 python3-docutils sshpass texinfo unzip uuid uuid-dev vim wget xxd zlib1g-dev
Automatic Padavan firmware builds using GitHub servers
Автоматическая сборка прошивки Padavan на серверах GitHub
Firmware management
Login details
IP: 192.168.1.1 or http://my.router
User: admin
Password: admin
WiFi name 2.4GHz: Padavan_2.4GHz
WiFi name 5GHz: Padavan_5GHz
WiFi Password 2.4/5GHz: 1234567890
Для желающих поддержать проект
Чтобы выразить благодарность и поддержать мою работу:
ЮMoney кошелёк 4100118647832050
Ссылка для быстрого пополнения https://yoomoney.ru/to/4100118647832050
ЮMoney виртуальная карта 5599 0020 6991 1404
Виртуальная карта Приват Банка гривна: 5169 3600 0910 4443
Виртуальная карта Приват Банка USD: 5169 3600 0910 4385
Большое спасибо вам за вашу поддержку!
Желаю всем добра, а так же Здоровья! Вы даёте мне возможоность жить и дышать! © by Sergey Hadzhioglu
For those who want to support the project
To express gratitude and support my work:
ЮMoney wallet 4100118647832050
Link for quick replenishment https://yoomoney.ru/to/4100118647832050
ЮMoney Virtual Card 5599 0020 6991 1404
Virtual Card Privat Bank UAH: 5169 3600 0910 4443
Virtual Card Privat Bank USD: 5169 3600 0910 4385
Thank you very much for your support!
I wish you all the best, and also Health! You give me the opportunity to live and breathe! © by Sergey Hadzhioglu
DISCLAIMER
IMPORTANT NOTE!! PLEASE READ IT CAREFULLY!!
NO WARRANTY OR SUPPORT
This product includes copyrighted third-party software licensed under the terms of the GNU General Public License. Please see The GNU General Public License for the exact terms and conditions of this license. The firmware or any other product designed or produced by this project may contain in whole or in part pre-release, untested, or not fully tested works. This may contain errors that could cause failures or loss of data, and may be incomplete or contain inaccuracies. You expressly acknowledge and agree that use of software or any part, produced by this project, is at Your sole and entire risk.
ANY PRODUCT IS PROVIDED ‘AS IS’ AND WITHOUT WARRANTY, UPGRADES OR SUPPORT OF ANY KIND. ALL CONTRIBUTORS EXPRESSLY DISCLAIM ALL WARRANTIES AND/OR CONDITIONS, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES AND/OR CONDITIONS OF SATISFACTORY QUALITY, OF FITNESS FOR A PARTICULAR PURPOSE, OF ACCURACY, OF QUIET ENJOYMENT, AND NONINFRINGEMENT OF THIRD PARTY RIGHTS.
