Differences
This shows you the differences between the selected revision and the current version of the page.
dns-321 2013/01/27 06:03 | dns-321 2017/09/06 18:38 current | ||
---|---|---|---|
Line 16: | Line 16: | ||
===== Pictures ===== | ===== Pictures ===== | ||
{{hardware:dns321-flashchip.jpg?w=120&h=90|Flash}} {{hardware:dns321-processor.jpg?w=120&h=90|CPU}} {{hardware:dns321-ram.jpg?w=120&h=90|RAM Module}} | {{hardware:dns321-flashchip.jpg?w=120&h=90|Flash}} {{hardware:dns321-processor.jpg?w=120&h=90|CPU}} {{hardware:dns321-ram.jpg?w=120&h=90|RAM Module}} | ||
+ | |||
+ | |||
===== Serial Console ===== | ===== Serial Console ===== | ||
{{ hardware:dns321-serial.jpg?w=120&h=90|Flash}} | {{ hardware:dns321-serial.jpg?w=120&h=90|Flash}} | ||
- | A serial port is available for advanced troubleshooting and flash recovery. A simple cable can be made using a nokia ca-42 cable as discribed [[http://buffalo.nas-central.org/wiki/Use_a_Nokia_Serial_Cable_on_an_ARM9_Linkstation|here]]. The cables can be purchased on eBay quite cheap. Other options for building a serial cable are available [[http://dns323.kood.org/hardware%3Aserial|here]]. | + | A serial port is available for advanced troubleshooting and flash recovery. A simple cable can be made using a nokia ca-42 cable as described [[http://buffalo.nas-central.org/wiki/Use_a_Nokia_Serial_Cable_on_an_ARM9_Linkstation|here]]. The cables can be purchased on eBay quite cheap. Other options for building a serial cable are available [[http://dns323.kood.org/hardware%3Aserial|here]]. |
Pinout: | Pinout: | ||
Line 27: | Line 29: | ||
Serial breakout code: 5784468 \\ | Serial breakout code: 5784468 \\ | ||
U-boot autoboot stop: <Space> + <1>\\ | U-boot autoboot stop: <Space> + <1>\\ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ==== Recovery via serial ==== | ||
+ | |||
+ | Some info was taken from [[http://www.cyrius.com/debian/orion/d-link/dns-323/recovery.html|here]]: | ||
+ | |||
+ | The following is done with Ubuntu 12.04 | ||
+ | |||
+ | 1. Install the splitdns323fw package. | ||
+ | $ sudo apt-get install dns323-firmware-tools | ||
+ | |||
+ | 2. Then download the 1.03 FW package from D-Link: | ||
+ | ftp://ftp.dlink.com/Multimedia/dns321/Firmware/ | ||
+ | |||
+ | 3. Unzip it. Then split the firmware (in the directory you unzipped it): | ||
+ | $ splitdns323fw -k 103kernel -i 103initrd -d 103defaults dns321_fw_103 | ||
+ | |||
+ | 4. If kermit is not installed do it now: | ||
+ | $ sudo apt-get install ckermit | ||
+ | |||
+ | 5. Setup your kermit config file, save the following as a .kermrc file in your home folder (note: the line "set line" will need to be set to your serial port): | ||
+ | $ gedit ~/.kermrc | ||
+ | |||
+ | set line /dev/ttyACM0 | ||
+ | set speed 115200 | ||
+ | set carrier-watch off | ||
+ | set flow-control none | ||
+ | set handshake none | ||
+ | set prefixing all | ||
+ | set streaming off | ||
+ | set parity none | ||
+ | |||
+ | 6. Run kermit, start this initally with the dns-321 box already running and your cable connected: | ||
+ | $sudo kermit | ||
+ | |||
+ | 7. Once inside kermit hit the <c> key to get to the console. Hit <enter> a couple times. | ||
+ | !!if you are running stock firmware type 5784468 and hit <enter>!! | ||
+ | |||
+ | 8. You should now be at a # prompt: | ||
+ | # | ||
+ | |||
+ | 9. Now enter the reboot command. Be prepared to do the next step quickly as you will only have 3 or so seconds to complete it.. | ||
+ | # reboot | ||
+ | |||
+ | 10. You will now see something similar to this | ||
+ | USB 0: host mode | ||
+ | USB 1: host mode | ||
+ | Net: egiga0 [PRIME] | ||
+ | Hit any key to stop autoboot: | ||
+ | press <space> + <1> this will exit the autoboot sequence. | ||
+ | |||
+ | 11. At this point you should be at a boot prompt similar to the following: | ||
+ | Marvell>> | ||
+ | |||
+ | 12. Now you can enter a multitude of commands here (? shows all commands available). For recovery purposes we only need three commands, see #13, #15 and #17. | ||
+ | |||
+ | 13. Flash the kernel image via uboot: | ||
+ | |||
+ | Marvell>> loadb k | ||
+ | |||
+ | you will get this in response: | ||
+ | |||
+ | ## Ready for binary (kermit) download to 0x00400000 at 115200 bps.. | ||
+ | |||
+ | at this point you will need to hit | ||
+ | |||
+ | <ctrl>+<\> then <c> | ||
+ | |||
+ | then you will need to upload the kernel file | ||
+ | send 103kernel | ||
+ | |||
+ | you should now see a screen showing transfer status. Once it completes (it will take a good 5 minutes or so) move on to #14 . | ||
+ | |||
+ | 14. Verify that the kernel was sent successfully: | ||
+ | hit <c> to go to the console and make sure the image in 13 was accepted ok. You should see | ||
+ | Kernel Size = 1554936 | ||
+ | Copy to Flash... done | ||
+ | note: Size might be different! | ||
+ | |||
+ | 15. Flash the ramdisk image via uboot: | ||
+ | |||
+ | Marvell>> loadb r | ||
+ | |||
+ | you will get this in response: | ||
+ | |||
+ | ## Ready for binary (kermit) download to 0x00400000 at 115200 bps.. | ||
+ | |||
+ | at this point you will need to hit | ||
+ | |||
+ | <ctrl>+<\> then <c> | ||
+ | |||
+ | then you will need to upload the ramdisk file | ||
+ | send 103initrd | ||
+ | |||
+ | you should now see a screen showing transfer status. Once it completes (it will take a good 15 minutes or so) move on to #16 . | ||
+ | |||
+ | 16. Verify that the ramdisk was sent successfully: | ||
+ | hit <c> to go to the console and make sure the image in 15 was accepted ok. You should see: | ||
+ | |||
+ | Ramdisk Size = 8935844 | ||
+ | Copy to Flash... done | ||
+ | note: Size might be different! | ||
+ | |||
+ | 17. Congrats your now back to stock! To start booting you new flash image type: | ||
+ | |||
+ | Marvell>> boot | ||
===== Alternative Firmware ===== | ===== Alternative Firmware ===== |