thảo luận Keenetic cho vAP-32X6V1

  • Người tạo chủ đề Người tạo chủ đề dichton
  • Ngày bắt đầu Ngày bắt đầu
Nếu dùng chrome thì ấn Ctrl+Shift+N để vào Incognito mode thì mới truy cập được http không có s (vì mode thường có cache sẵn nên tự thêm s)
Hay quá bác ơi, vào dc rồi, many thanks ạ. Làm mất cả buổi chiều cứ loay hoay.
20260724_184839.webp
 
Bác giải nén file để KeenBOOT_NX31.bin, bl2-mt7981-bga-ddr3-ram.bin chung thư mục với mtk_uartboot.exe


mtk_uartboot -s COM3 --payload bl2-mt7981-bga-ddr3-ram.bin --aarch64 --fip KeenBOOT_NX31.bin && putty.exe -serial COM3 -sercfg 115200,8,n,1,N

Đợi Putty nó nhảy lên bấm phím di chuyển xuống chọn mục start web fail safe rồi làm như hướng dẫn của post đầu vào web chọn cái có chữ full flash cái file NX32U_2811_full.bin này

R làm lại flash cái KeenBOOT_NX31.bin, flash Firmware mới nhất của chủ post
Cái full flash cho file NX32U_2811_full.bin này nằm ở chỗ nào bác ơi?
 
Nạp mỗi fw reboot lại vẫn tạch bác ạ.Xem tệp đính kèm 3728253
Dùng mtk_uart boot lại keenboot vào failsafe up bl2 mới + keenboot rồi fw

mtk_uartboot -s COM* --payload bl2-mt7981-bga-ddr3-ram.bin --aarch64 --fip (tên file keenboot) && putty.exe -serial COM* -sercfg 115200,8,n,1,N
Thay COM* theo cổng trên máy bác
 

Tệp đính kèm

Tôi đã qua được NAND, giờ hiện đang dính mt7986_eth quét không thấy mt7531, chia sẻ để mọi người cùng nghiên cứu:
1. Kéo keenetic-sdk từ github về (GitHub - keenetic/keenetic-sdk: KeeneticOS build system (https://github.com/keenetic/keenetic-sdk)).
2. Tải firmware keen chính chủ: https://osvault.keenetic.net/KN-3811/4.03/KN-3811_stable_4.3.3_4.03.C.3.0-3.bin, dùng scripts unpack.sh giải nén firmware
3. Gõ lệnh "make prepare" để kéo linux kernel về source
4. Giải nén add_dosilicon_nr3053.zip, copy các file vào source linux tại đường dẫn: "keenetic-sdk/build_dir/target-aarch64-linux-musl_musl/linux-mt7981_KN-3811/linux-4.9"
  • Các file core.c, dosilicon.c và Makefile, copy vào ./linux-4.9/drivers/mtd/nand/spi
  • File spinand.h copy vào ./linux-4.9/include/linux/mtd
5. Giải nén mtd_patch.zip, copy 2 file ndmpart.c và ndmpart.h vào thư mục ./linux-4.9/drivers/mtd
6. Đổi tên, copy KN-3811.dts vào keenetic-sdk/target/linux/mt7981/dts
7. Build firmware bằng lệnh make
8. Flash uboot. Lưu ý: kiểm tra kỹ các phân vùng mtd trên thiết bị hiện tại đúng kích thước 1MB (BL2), env (1MB), factory (2MB), fip (2MB) và firmware (ubi) bắt đầu từ 0x600000 hay chưa, nếu chưa thì ko flash kẻo brick.
9. Tải tftpd64 (Tftpd32: an opensource free firewall friendly dhcp, syslog sntp and tftp server/service for windows, tftp client (https://pjo2.github.io/tftpd64/)), bỏ file firmware vừa build được vào chung thư mục, chạy tftpd64.exe, chọn đúng giao diện hiển thị địa chỉ IP của PC (192.168.1.254)
10. Cắm uart, khi giao diện uboot vừa lên thì nhấm Ctrl + C để ngắt, gõ "setenv ipaddr 192.168.1.1" => "setenv serverip 192.168.1.254" => "tftpboot 0x46000000 <tên_firmware_đã_build>" => "mtd erase ubi" => "mtd write ubi 0x46000000" => "bootm 0x46000000#config@1"

P/s: tôi đang ở immortalwrt mod qua keen, nên mtd layout sẽ là BL2-> env -> factory -> fip -> ubi, bác nào đang ở firmware gốc của NR3053 (openwrt) thì nên qua immortalwrt trước nhé.

Mình thì chưa có thiết bị để thử.

Nhưng dùng : KN-3811_stable_5.0.8_5.00.C.8.0-1.bin , thì bên thằng Keenetic-sdk ko báo lỗi tunnel khi unpack.

Làm theo hướng dẫn trên của thím ( cái khúc thím nói mt7531 fix chưa thấy, thím mần sao á ).

Còn với KN-3811_stable_5.0.8_5.00.C.8.0-1.bin thì trong foresee.c , thím khai SPINAND_PP_WRITE_LOAD_FIRST , nhưng trong spinand.h thì ko có declare.
Mình mần lụi trong spinand.h ,
Mã:
#define SPINAND_HAS_QE_BIT      BIT(0)
#define SPINAND_HAS_CR_FEAT_BIT     BIT(1)
#define SPINAND_PP_WRITE_LOAD_FIRST BIT(4)

/**
 * struct spinand_info - Structure used to describe SPI NAND chips
...

Nó ra vầy : /Keenbuild/keenetic-sdk/build_dir/target-aarch64-linux-musl_musl/linux-mt7981_KN-3811/tmp/20260726_0054_Firmware-KN-3811-5.00.C.12.1-1.bin


vui vui ghê, còn chạy được hay khong thì mình không biết.
 
Mình thì chưa có thiết bị để thử.

Nhưng dùng : KN-3811_stable_5.0.8_5.00.C.8.0-1.bin , thì bên thằng Keenetic-sdk ko báo lỗi tunnel khi unpack.

Làm theo hướng dẫn trên của thím ( cái khúc thím nói mt7531 fix chưa thấy, thím mần sao á ).

Còn với KN-3811_stable_5.0.8_5.00.C.8.0-1.bin thì trong foresee.c , thím khai SPINAND_PP_WRITE_LOAD_FIRST , nhưng trong spinand.h thì ko có declare.
Mình mần lụi trong spinand.h ,
Mã:
#define SPINAND_HAS_QE_BIT      BIT(0)
#define SPINAND_HAS_CR_FEAT_BIT     BIT(1)
#define SPINAND_PP_WRITE_LOAD_FIRST BIT(4)

/**
 * struct spinand_info - Structure used to describe SPI NAND chips
...

Nó ra vầy : /Keenbuild/keenetic-sdk/build_dir/target-aarch64-linux-musl_musl/linux-mt7981_KN-3811/tmp/20260726_0054_Firmware-KN-3811-5.00.C.12.1-1.bin


vui vui ghê, còn chạy được hay khong thì mình không biết.
mt7986_eth mặc định unpack từ firmware chính chủ ko nhận đc chip mt7531 trên nr3053, phải sử dụng mt7986_eth và phr đã được patch thì mới work
nand thì add thêm dosilicon support cho kernel, lưu ý đúng mã chip

via theNEXTvoz for iPhone
 
tôi có viết ở post trước rồi đó bác, thêm cái dùng mt7986_eth và phr patched thay cho cái được unpack từ firmware chính chủ ở trong build_dir/target-aarch64-linux-musl_musl/root-mt7981/lib/modules/ rồi "make install" lại

via theNEXTvoz for iPhone
còn muốn dùng keenkit để gen service data thì file ndmpart.c tìm bỏ thuộc tính read_only chỗ phân vùng "U-Config"

via theNEXTvoz for iPhone
 
Chi tiết hơn tí đi fen, add file driver vào như nào? Còn file dts fix port, đèn đóm như nào... :shame:
thằng keen no ko như openwrt hay mấy os tương tự, ko chỉnh port, phân vùng, đèn, nút trong dts mà toàn hardcode. Như cái đèn, nút, mổ xẻ firmware của mấy bác bán router cài sẵn keen thì có 01 một module được viết riêng để fix, mà để dùng nó phải chỉnh sửa trong kernel

via theNEXTvoz for iPhone
 
Sửa lần cuối:
thằng keen no ko như openwrt hay mấy os tương tự, ko chỉnh port, phân vùng, đèn, nút trong dts mà toàn hardcode. Như cái đèn, nút, mổ xẻ firmware của mấy bác bán router cài sẵn keen thì có 01 một module được viết riêng để fix, mà để dùng nó phải chỉnh sửa trong kernel

via theNEXTvoz for iPhone
Phức tạp phết nhỉ.:amazed:
 
Vừa up 2 con 32x6 sập cả 2, hôm nay như vậy là đủ rồi :D
  • Con đầu tiên mã GV up NX31_5.1.1 xong lên rồi, reboot cái đen luôn. Lội mấy chục page thì là do up thiếu bl2.
  • Con thứ 2 mã KV up AX3000T, up thêm BL2 ở #1 thì báo file không đúng, up BL2 của bác ở #966 thì được nhưng reboot phát đen luôn.

Chờ UART ship về vọc tiếp vậy :D
 

Thống kê chủ đề

Ngày tạo
dichton,
Người trả lời cuối
Z600,
Trả lời
1.215
Lượt xem
105.715
Quay lại
Lên đầu trang