Page 1 of 5 123 ... LastLast
Results 1 to 15 of 61

Thread: Building the custom firmware

  1. #1
    Join Date
    Dec 2003
    Location
    Russian Federation
    Posts
    8,356

    Building the custom firmware

    Info on how I've build the firmware.

    First read the http://www.seattlewireless.net/index.cgi/LinksysWrt54g it contains the info about one of the Broadcom based Linksys router. Most of the things applies to wl-500g. But wl-500g is the best one.

    For building the firmware you will need the linux box. I'm using RH8 for the purpose. Second, you will need the tools availbale from the linksys site. See the seattlewireless for the details. I've used WRT54G 1.42.3 supplies sources.

    I've sent the 1.6.5.4.tar.gz file to the forum@chupa.nl. Hope Antiloop will post it.

    The first thing you will need to do is to install broadcom tools. The next one is to extract files from the Asus 1.6.5.3 firmware. The simplest way for this is using the extract script I've supplied:

    dd if=wg01060503_WL500g_en.trx of=1.6.5.3.vmlinuz skip=28 ibs=1 count=705256
    dd if=wg01060503_WL500g_en.trx of=1.6.5.3.cramfs skip=705284 ibs=1
    dd if=wg01060503_WL500g_en.trx of=1.6.5.3.trailer skip=3769092 ibs=1

    This will produce 3 files, containing compressed linux kenel, rootfs & asus firmware trailer.

    The next thing you will need to to is to extract rootfs from the 1.6.5.3.cramfs file. You may want tou use uncramfs available on the net, or just mount this file using something like this
    mount -o loop 1.6.5.3.cramfs /mnt/cramfs
    and then just copy the files to the build dir.

    The next thing is customizing the firmware. I've examined it and found 2 busybox executables - /bin/busybox & /sbin/busybox. The second are just used by insmod, so I've decided to alter it. I've used used busybox-1.0pre5 (www.busybox.net) for the purpose, but have patched, to make insmod & passwd --stdin working (the patch named 1.6.5.3-busybox.diff, it's also contains the config I've used). You will need to make the busybox, and install it over the extracted rootfs using
    make PREFIX=/path/to/roofs install

    The next thing to do is the altering of the init scripts of the wl500g. The patch is named 1.6.5.3-patch.diff.

    Finally you will need to pack the firmware using the trx tool from broadcom. I've supplied the pack script for the purpose:

    mkcramfs cramfs pack.cramfs
    cat pack.cramfs 1.6.5.3.trailer > pack-trailer.cramfs
    ./trx -o pack.trx 1.6.5.3.vmlinuz pack-trailer.cramfs

    At this point you've got the pack.trx file which can be uploaded to wl500g. For other details see http://wl500g.info/showthread.php?s=&threadid=65

    Regards,
    Oleg.
    Last edited by Oleg; 29-12-2003 at 16:37.

  2. #2
    Join Date
    Dec 2003
    Location
    Czech Republic
    Posts
    270

    Question WL-500b firmware update?

    Oleg, would it be hard for you to make an update for WL-500b as well please? Unfortunately I don't have any Linux box at the moment so I can't make it myself. I think it could be interesting for some other WL-500b users too. Anyway, thanks a lot for this detailed HOW-TO - very nice work!
    Last edited by Technik; 29-12-2003 at 17:09.

  3. #3
    Join Date
    Dec 2003
    Location
    Russian Federation
    Posts
    8,356
    Ok, I've done it and sent to Antiloop. But it's untested.

    The firmwares are looks identical. All binaries except the upnp are the same, the only difference is g to b change and the nvram settings. So, probably it's possible to load the wl500g firmware to the wl500b using the Firmware restoration tool. All except g band should work.

    Regards,
    Oleg.

  4. #4
    Join Date
    Dec 2003
    Location
    Czech Republic
    Posts
    270

    Thumbs up Thanks a lot, Oleg.

    I thought there should not be a big difference between B and G version but I did not compare files.
    What I would like to manage in future (as soon as I install and configure a Linux box) is the OV-511 webcam driver update. Although the WL-500b web configurator is indicating the OV-511 driver version is 2.10, it seems there's just 1.61 driver version in fact. I hope the webcam driver update could help to get my Creative Labs WebCam III camera working properly in security monitor mode. I think I could use the drivers from this site: http://alpha.dyndns.org/ov511/download.html

  5. #5
    Join Date
    Dec 2003
    Location
    Russian Federation
    Posts
    8,356
    I think everything is possible. You will need the kernel sources to build the modules - use the ones from linksys site (WRT54 kernel looks ok, btw it contains number of things related to Linksys hardware, while the WAP54 & WRT55 are more like Broadcom reference design). BTW I've successufully compiled number of modules for the existing kernel using the WRT54 1.42.3 sources.

  6. #6
    Join Date
    Nov 2003
    Location
    Eindhoven
    Posts
    2,407

    Re: WL-500b firmware update?

    Originally posted by Technik
    Oleg, would it be hard for you to make an update for WL-500b as well please? Unfortunately I don't have any Linux box at the moment so I can't make it myself. I think it could be interesting for some other WL-500b users too. Anyway, thanks a lot for this detailed HOW-TO - very nice work!
    here you go: http://files.wl500g.info/asus/wl500b..._en_patch1.trx

  7. #7
    Join Date
    Nov 2003
    Location
    Eindhoven
    Posts
    2,407

  8. #8
    Join Date
    Dec 2003
    Location
    Czech Republic
    Posts
    270

    Smile

    Thanks a lot, Antiloop, I got it.

    Happy New Year to everybody!

  9. #9
    Join Date
    Dec 2003
    Location
    Czech Republic
    Posts
    270

    WL-500b patch

    Oleg, I successfully updated my WL-500b with your patched firmware. The router seems to be working fine but the telnetd does not start automatically. When I run it manually, the daemon is running then but Telnet logon is not possible still - the reason seems to be that passwd and group files are not initialized during the router boot. I did not test to create some BootCmd record yet. Could you please tell me what should I check and what to do to make the telnetd working properly?

  10. #10

    Re: Building the custom firmware

    Originally posted by Oleg
    Info on how I've build the firmware.

    First read the http://www.seattlewireless.net/index.cgi/LinksysWrt54g it contains the info about one of the Broadcom based Linksys router. Most of the things applies to wl-500g. But wl-500g is the best one.

    For building the firmware you will need the linux box. I'm using RH8 for the purpose. Second, you will need the tools availbale from the linksys site. See the seattlewireless for the details. I've used WRT54G 1.42.3 supplies sources.

    I've sent the 1.6.5.4.tar.gz file to the forum@chupa.nl. Hope Antiloop will post it.

    The first thing you will need to do is to install broadcom tools. The next one is to extract files from the Asus 1.6.5.3 firmware. The simplest way for this is using the extract script I've supplied:

    dd if=wg01060503_WL500g_en.trx of=1.6.5.3.vmlinuz skip=28 ibs=1 count=705256
    dd if=wg01060503_WL500g_en.trx of=1.6.5.3.cramfs skip=705284 ibs=1
    dd if=wg01060503_WL500g_en.trx of=1.6.5.3.trailer skip=3769092 ibs=1

    This will produce 3 files, containing compressed linux kenel, rootfs & asus firmware trailer.

    The next thing you will need to to is to extract rootfs from the 1.6.5.3.cramfs file. You may want tou use uncramfs available on the net, or just mount this file using something like this
    mount -o loop 1.6.5.3.cramfs /mnt/cramfs
    and then just copy the files to the build dir.

    The next thing is customizing the firmware. I've examined it and found 2 busybox executables - /bin/busybox & /sbin/busybox. The second are just used by insmod, so I've decided to alter it. I've used used busybox-1.0pre5 (www.busybox.net) for the purpose, but have patched, to make insmod & passwd --stdin working (the patch named 1.6.5.3-busybox.diff, it's also contains the config I've used). You will need to make the busybox, and install it over the extracted rootfs using
    make PREFIX=/path/to/roofs install

    The next thing to do is the altering of the init scripts of the wl500g. The patch is named 1.6.5.3-patch.diff.

    Finally you will need to pack the firmware using the trx tool from broadcom. I've supplied the pack script for the purpose:

    mkcramfs cramfs pack.cramfs
    cat pack.cramfs 1.6.5.3.trailer > pack-trailer.cramfs
    ./trx -o pack.trx 1.6.5.3.vmlinuz pack-trailer.cramfs

    At this point you've got the pack.trx file which can be uploaded to wl500g. For other details see http://wl500g.info/showthread.php?s=&threadid=65

    Regards,
    Oleg.
    Hi,

    i examined the kernel config of the linksys sources and discovered, that the don't enable the usb support by default. Also the prt port ist not enabled.
    Did you create you own kernel config ? If yes, can you post it here ?

    Rgds

    Michael

  11. #11
    Join Date
    Dec 2003
    Location
    Russian Federation
    Posts
    8,356

    Re: WL-500b patch

    Originally posted by Technik
    Oleg, I successfully updated my WL-500b with your patched firmware. The router seems to be working fine but the telnetd does not start automatically. When I run it manually, the daemon is running then but Telnet logon is not possible still - the reason seems to be that passwd and group files are not initialized during the router boot. I did not test to create some BootCmd record yet. Could you please tell me what should I check and what to do to make the telnetd working properly?
    Ok, I've figured out the problem with wl500b firmware - I've not set the x bit on the rc.nvram & rc.telnetd scripts. I will do this and resend the firmware to Antiloop. Sorry for that.

  12. #12
    Join Date
    Dec 2003
    Location
    Russian Federation
    Posts
    8,356

    Re: Re: Building the custom firmware

    Originally posted by zomk3
    Hi,

    i examined the kernel config of the linksys sources and discovered, that the don't enable the usb support by default. Also the prt port ist not enabled.
    Did you create you own kernel config ? If yes, can you post it here ?

    Rgds

    Michael
    Michael, I've not rebuild kernel, I've used the kernel & the modules supplied by ASUS. WRT54G kernel & modules can't be used directly - they have different ethernet interfaces, led drivers and possibly more. The closest kernel should be from the wap54 & wrt55. Asus also has the modules, which we can't recompile using the Linksys sources - the things related to parallel port (parport_splink), splink_led (it's pretty simple). And the main problem is the debugging of the newely build kernel.

    BTW, I'm was able to build some modules to use with existing kernel using the wrt54g config (I've added the ext2, loop, nfs and the friends). I'm was able to mount nfs share.

  13. #13
    Join Date
    Dec 2003
    Location
    Czech Republic
    Posts
    270

    Re: Re: WL-500b patch

    Originally posted by Oleg
    Ok, I've figured out the problem with wl500b firmware - I've not set the x bit on the rc.nvram & rc.telnetd scripts. I will do this and resend the firmware to Antiloop. Sorry for that.
    No problem, Oleg, thanks a lot for the update in advance!

  14. #14
    Join Date
    Dec 2003
    Location
    Russian Federation
    Posts
    8,356
    ok, have posted the updated firmware to Antiloop. The file with this new firmware for wl500b is 3796992 bytes in size (4096 bytes larger than the previous).

  15. #15
    Join Date
    Nov 2003
    Location
    Eindhoven
    Posts
    2,407

Page 1 of 5 123 ... LastLast

Similar Threads

  1. Custom Firmware v1.1.2.8
    By JOCKYW2001 in forum WL-HDD Firmware Releases
    Replies: 42
    Last Post: 29-04-2005, 16:35
  2. Building Firmware 1.1.28
    By ankn99 in forum WL-HDD Q&A
    Replies: 2
    Last Post: 10-01-2005, 17:21
  3. New custom firmware - 1.7.5.6-1
    By Oleg in forum WL-500g Custom Development
    Replies: 26
    Last Post: 30-04-2004, 08:05

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •