PDA

View Full Version : Offtopic: Upgrading WL-500g Premium, WL-500W and WL-700gE RAM to 128 MB


Oleg
10-02-2008, 15:17
As most of you asked to publish this I've finally finished this guide...

The goal of this mod is to increase built in memory up to 128MB to be able run more services on the router without the expense of accessing slow swap, etc. Beware, that this mod requiresvery strong soldering skills! And usual disclaimer: do it on your own risk to brick the router completely.

What do you need to perform a mod?


Good soldering skills at first (the board is Pb Free!) and equipment
One 22Ohm (33 Ohm is also ok) resistor to enable A12 address line (not needed for WL-700gE, as it has it already)
Two TSOP packaged DDR333 or DDR400 SDRAM chips organized as 32Mx16

The easiest way to get chips (and perhaps cheap) is to remove them from the PC2700/PC3200 DIMM or SO-DIMM: at the moment we've checked the following parts:

Hynix HYMD532646CP6J-D43 PC3200 DIMM: it has Hynix HY5DU121622CTP-D43 chips
Samsung M470L6524BT0-CB3 PC2700 SO-DIMM: it has Samsung K4H511638B-TCB3 chips
Samsung M470L6524DU0-CB3 PC2700 SO-DIMM: it has Samsung K4H511638D-UCB3 chips
Transcend TS32MSD64V3M PC2700 SO-DIMM: it has Elpida D5116AFTA-5B-E chips

Please note, that Hynix is least preferred. Also, avoid using Infineon chips.
The problem is that PCB is not ideally traced and has some noise UDQS line coming to U4, resulting in memory errors (see below).

Doing it


Start with flashing latest firmware which is known to support 128MB of RAM. My firmware starting with 1.9.2.7-7g are known to work ok, as they've required patches. But I recomend flashing latest anyway.
Telnet/ssh to your router and type

nvram set sdram_init=0x000b
nvram set sdram_config=0x0032
nvram commit
halt
This would turn U4 chip off and prevent my firmware from auto enabling it. The router would be halted too, so you could safely remove power from it.

Disassemble your router now
Remove shieldings from the back of PCB (it's self-adhesive) and from the top
Solder 22 Ohm resistor on the free pads labeled R43. Skip this step if you have WL-700gE. Check image below:
http://oleg.wl500g.info/wl500gp/IMG_5609_.jpg (http://oleg.wl500g.info/wl500gp/IMG_5609.JPG)

Replace original U3 chip with your new memory chip. Be sure to remove PB free solder completely from the PCB pads before soldering your new chip!
Power your device on. It should now start normally and report 32MB of RAM (use free to check this).
If it does not: check your soldering work again. Don't even think of pin-9 trick or whatever! FYI: all routers starts
after replacing U3 chip.
Test RAM using memtest (see below). If it fails, then double check your soldering and try again.
Given, that your router works with U3 replaced, continue with replacing U4, now it should look like this:
http://oleg.wl500g.info/wl500gp/IMG_5590_.jpg (http://oleg.wl500g.info/wl500gp/IMG_5590.JPG)

Replaced? Ok, turn it once again and check, that it still work. If it does not check U4 soldering: perhaps you short-cuted something... Now type the following in the telnet/ssh to enable U4 and 128MB of RAM:

nvram set sdram_init=0x0011
nvram set sdram_config=0x0062
nvram commit
reboot

It should now reboot. If it does, than you're lucky man (Elpida and Samsung chips are reported to be very lucky)
if it does not (Hynix never boots this way) then proceed this way: check your U4 soldering work once again. Try
to power on your device. If everything looks good then you've to try adding 3-7 pF capacitor between U4 pin 51
(UDQS) and ground:

http://wl500g.dyndns.org/wl500gp/IMG_3999_.JPG (http://wl500g.dyndns.org/wl500gp/IMG_3999.JPG).
If it does not boot - check your soldering work once again. If it still does not work - I've no idea then. Don't blame me, this is ASUS PCB fault.
Test RAM using memtest (see below). Leave it running for a long time to be absolutely sure it works fine. If it does not, then perhaps you should solder a capacitor as described above. Once it's error free, you could tell
memory controller to re-tune some internal timings:

nvram set sdram_ncdl=0
nvram commit
reboot


Activating 128MB with known good memory
You need this everytime you perform a reset to defaults...

nvram set sdram_init=0x0011
nvram set sdram_ncdl=0
nvram commit
reboot

Testing device memory
Type these lines to start testing:

cd /tmp
wget http://oleg.wl500g.info/bin/memtest
chmod +x memtest
./memtest 16m

Note, that memtest at most could only pin half of device memory. Replace 16m with 64m for 128MB of RAM.

Pictures
WL-700gE with Samsung chips and 8MB flash
http://oleg.wl500g.info/wl500gp/IMG_4384_.JPG (http://oleg.wl500g.info/wl500gp/IMG_4384.JPG)
WL-500gP with Samsung and Hynix chips at the same time
Samsung chip does not need caps on this PCB...

http://oleg.wl500g.info/wl500gp/IMG_4005_.JPG (http://oleg.wl500g.info/wl500gp/IMG_4005.JPG)

Oleg
10-02-2008, 15:20
Also, filed here: http://oleg.wl500g.info/wl500gp_ram.html

Russian page with more pics: http://wl500g.info/showthread.php?t=7048
Russian discussion with more pics: http://wl500g.info/showthread.php?t=7523

newbiefan
10-02-2008, 15:24
MANY THANKS!!

Simple perfect and outstanding - as usual!

Oleg
10-02-2008, 15:40
Good luck in upgrading your unit. For the first unit it took for about a two weeks to complete the mod: the problem was a hynix (and we have not figured yet that cap at UDQS could solve a problem) and PB free PCB. But finally, all routers are working fine. Try to find Elpida or Samsung chips. I beleive Transcend should be available in european stores too.

trucki
10-02-2008, 17:09
@Oleg
Thanks for the tutorial.

Do you think I could solder the new ram chips on top of the original chips?
That would allow me to select between the old and the new chips by resoldering the CS Pin.

Trucki

Oleg
10-02-2008, 18:12
Most likely no: DDR chips are very sensitive to tracing and pin capacitance. You know, they're running at 133 Mhz...

trucki
15-02-2008, 06:18
OK, no on top soldering.

Do you know if I can install the latest x-wrt (http://www.x-wrt.org) with 128MB Ram upgrade?

THX!
Trucki

Oleg
15-02-2008, 08:52
I've no idea.

breizh76
16-02-2008, 22:42
Thanks for this great tuto.

Unfortunaltly for me, I failed to desolder the U3 chip (some pads has been destroyed).

Before throwing my asus (RIP :( ), is there a solution for it to boot / work only with the U4 chip?

Your advices are welcome! :o

trucki
17-02-2008, 07:17
Hi,

my mod is working. I used Samsung ICs. Here (http://www.wl500g.info/showpost.php?p=83390&postcount=30) you can find some photos.

@breizh76
Maybe you can solder a small cable to the broken pads / pins. Can you post some Photos?

Trucki

breizh76
17-02-2008, 18:57
Good job trucki, you had the good method :D

As for my Asus, I'm giving up, I don't think I could do anything now.
I have played an d I loose, I knew the rules :rolleyes:

trucki
23-02-2008, 10:02
Hi,

I tried to install X-Wrt. With 32MB it works.

With 128MB Ram it doesn't start. I enabled 128MB Ram with
nvram set sdram_init=0x0011
nvram set sdram_config=0x0062
nvram commit
reboot

CFE_Output_X-Wrt_128MB:

CFE version 1.0.37 for BCM947XX (32bit,SP,LE)
init started:
Build Date: ¥| 10¤ë 12 22:21:19 CST 2006 (root@localhost.localdomain)
BusyB
Copyright (C) 2000,2001,2002,2003 Broadcom Corporation.

et0: Broadcom BCM47xx 10/100 Mbps Ethernet Controller 3.90.7.0
rndis0: Broadcom USB RNDIS Network Adapter (P-t-P)
CPU type 0x29006: 264MHz
Total memory: 134217728 KBytes

Total memory used by CFE: 0x80800000 - 0x8089AF40 (634688)
Initialized Data: 0x808313D0 - 0x80833790 (9152)
BSS Area: 0x80833790 - 0x80834F40 (6064)
Local Heap: 0x80834F40 - 0x80898F40 (409600)
Stack Area: 0x80898F40 - 0x8089AF40 (8192)
Text (code) segment: 0x80800000 - 0x808313D0 (201680)
Boot area (physical): 0x0089B000 - 0x008DB000
Relocation Factor: I:00000000 - D:00000000

Device eth0: hwaddr 00-1B-FC-57-AB-6E, ipaddr 192.168.178.1, mask 255.255.255.0

gateway not set, nameserver not set
Null Rescue Flag.
Loader:raw Filesys:raw Dev:flash0.os File: Options:(null)
Loading: .. 3704 bytes read
Entry at 0x80001000
Closing network.
Starting program at 0x80001000


Any ideas?

Thx
Trucki

Oleg
23-02-2008, 10:25
It should be patched to detect 128MB correctly. Does it based on OpenWRT? If so, I've submited this patch to Kaloz for about a year ago.

trucki
23-02-2008, 13:36
Hi Oleg,

yes, X-wrt is an Openwrt Image with webif2 Interface.
How can I include this patch? Where can I find more information about it?

Thx
Trucki

Oleg
23-02-2008, 13:43
Hi Oleg,

yes, X-wrt is an Openwrt Image with webif2 Interface.
How can I include this patch? Where can I find more information about it?

Thx
Trucki
The patch itself is here (this link should be known to Kaloz):

http://oleg.wl500g.info/wl500gp/kernel-mvista-mem.patch

mitek
15-03-2008, 16:11
Oleg,

When disabled U4, changed U3 to MICRON MT46V32M16-6T and boot I can see 64MB (so it seams one chip is working). When changed U4 and enabled both (0x0011, 0x0062, 0x0000) I still see 64MB. Do you know where could be the problem (adding capacitor does not change anything).

BTW: do you know when default settings are used (in CFE "printdefault"). There are 0x0009, 0x0062, 0x0000) (sdram_init, sdram_config, sdram_ncdl) - in rescue mode?

Oleg
15-03-2008, 16:29
have you used pin 9 trick at some point?

mitek
15-03-2008, 17:24
no, I didn't use use pin 9 trick. My router was working properly and decided to expand ram. So I followed procedure you described but at the end I see only 64MB. Do you think I need another sdram_config?

----

correction - I have used pin9 trick few months ago (before trying the ram expansion).

Oleg
15-03-2008, 19:43
erase /dev/mtd/3
erase /dev/mtd/4

this would wipe pin9 effect and reset to defaults.

mitek
15-03-2008, 20:35
Thanks a lot.
It helped and now I see whole 128MB.
I'll run memtest for a night and see if everything is working fine.

mitek
16-03-2008, 16:38
After all night tests I can confirm that MT46V32M16-6T memory is working fine after upgrade.
I mounted it with capacitor 2.2pF, but I think it should work also without it.
Now I have ASUS WL500gp with 128MB RAM.

Big thanks to Oleg for his help with nvram clear after pin9 trick.

BTW: At the moment only Oleg's firmware is working with 128MB. Both Kamikaze 7.09 and X-Wrt have no patch implemented yet.

trucki
18-03-2008, 06:48
Here you can find the 128MB patch for Openwrt / X-Wrt.
http://forum.openwrt.org/viewtopic.php?id=14560

Trucki

mitek
18-03-2008, 21:33
Here you can find the 128MB patch for Openwrt / X-Wrt.
http://forum.openwrt.org/viewtopic.php?id=14560

Trucki

Yes. I know about this patch and had used it in own compiled Kamikaze.
I just wanted to mention about it for people that trying to make hardware upgrade but complain about lack of 128MB support in other firmwares.

particleman
20-03-2008, 04:12
I have performed this upgrade twice on WL-500W routers both have worked flawlessly even without soldering a capacitor on U4. I have run memtests and have run the routers stabley for weeks. The RAM modules I used were NANYA NT5DS32M16BS-5T

Also the 128MB patch is implemented in DD-WRT v24 rc7 builds 9285 and newer. So that is now another option for 128MB upgraders, the lastest builds also have USB support.

hggomes
21-03-2008, 08:18
I have performed this upgrade twice on WL-500W routers both have worked flawlessly even without soldering a capacitor on U4. I have run memtests and have run the routers stabley for weeks. The RAM modules I used were NANYA NT5DS32M16BS-5T

Also the 128MB patch is implemented in DD-WRT v24 rc7 builds 9285 and newer. So that is now another option for 128MB upgraders, the lastest builds also have USB support.

Hi, i can't understand how you upgraded to 128MB with 2x32MB (NANYA NT5DS32M16BS-5T), i've buy a Kingston 512MB DDR 333 notebook memory double side (4chips of each side) (64Mx8) with NANYA NT5DS64M8BS-5T chips, is that ok to upgrade to 128mb?

Oleg said: Needed: Two TSOP packaged DDR333 or DDR400 SDRAM chips organized as 32Mx16, i can't understand how you can upgrade to 128MB with 32Mx16 chips, isn´t 64Mx8?

After all night tests I can confirm that MT46V32M16-6T memory is working fine after upgrade.
I mounted it with capacitor 2.2pF, but I think it should work also without it.
Now I have ASUS WL500gp with 128MB RAM..

How with 32MBx2 chips?

particleman
21-03-2008, 16:58
I bought a Kingston 512MB DDR400 SO-DIMM with 4 chips on each side, so 512/8=64

I have no idea why the Nanya code reads as it does

Hi, i can't understand how you upgraded to 128MB with 2x32MB (NANYA NT5DS32M16BS-5T), i've buy a Kingston 512MB DDR 333 notebook memory double side (4chips of each side) (64Mx8) with NANYA NT5DS64M8BS-5T chips, is that ok to upgrade to 128mb?

Oleg said: Needed: Two TSOP packaged DDR333 or DDR400 SDRAM chips organized as 32Mx16, i can't understand how you can upgrade to 128MB with 32Mx16 chips, isn´t 64Mx8?



How with 32MBx2 chips?

hggomes
21-03-2008, 17:40
I bought a Kingston 512MB DDR400 SO-DIMM with 4 chips on each side, so 512/8=64

I have no idea why the Nanya code reads as it does

Should i upgrade with NT5DS64M8BS-5T 64Mx8? Is the same as yours right? (64Mx8)

Oleg
21-03-2008, 17:44
You CAN'T use 64Mx8 chips. You need 16bit wide chips.

hggomes
21-03-2008, 17:52
You CAN'T use 64Mx8 chips. You need 16bit wide chips.

Is there any 64MB chips with 32Mx16 organization?

Oleg
21-03-2008, 18:09
Have you read first post and success stories?

Oyabun
21-03-2008, 20:23
Just finished upgrade today.
Used Samsung Chips K4H511638B-TCB3. It started up allright, ran memory test without any problem. At the same time I have installed pins for the Jtag serial, corrected R17 value on the Wireless board.
It runs flawless now - I'm very statisfied with the results.

Thank you again Oleg.

particleman
22-03-2008, 04:23
Ahhhh... I get what those Nanya codes mean now, NT5DS32M16BS means that my chips are in a 32Mbit x 16bit wide organization, 32x16=512bits/8=64Mbytes. Your chips are NT5DS64M8BS which is 64Mbitx8=512bit/8=64Mbytes and aren't organized in a compatible fashion for these routers. I guess I lucked out because I missed that important piece of information that the chips had to be 32x16 when I bought my DIMMs, but got lucky and bought a DIMM organized 32x16.

Is there any 64MB chips with 32Mx16 organization?

hggomes
22-03-2008, 23:56
Thanks, i will see if i can find one ;)

trucki
25-03-2008, 06:22
The latest build of white russian X-wrt now supports the Wl500gp with 128MB, too.
http://downloads.x-wrt.org/xwrt/firmware_images/whiterussian/0.9/latest-daily-build/default/

hggomes
25-03-2008, 13:33
I found it. NT5DS32M16BS-5T ;)

Ahhhh... I get what those Nanya codes mean now, NT5DS32M16BS means that my chips are in a 32Mbit x 16bit wide organization, 32x16=512bits/8=64Mbytes. Your chips are NT5DS64M8BS which is 64Mbitx8=512bit/8=64Mbytes and aren't organized in a compatible fashion for these routers. I guess I lucked out because I missed that important piece of information that the chips had to be 32x16 when I bought my DIMMs, but got lucky and bought a DIMM organized 32x16.

Have you follow the exact steps in the Oleg's tuturial? I mean the nvram memory commands...

Inertial
25-03-2008, 18:33
Big thanks to Oleg and all the contributors!


I’ve been looking around for a small form factor computer to use as the main computer of a mobile robot, when it occurred to me that routers are actually becoming some very good examples of physically small computers.

Linux is my OS of choice for such projects, so I was very happy to learn about the wl500gP + Oleg's firmware combo.

Spec's-wise the wl500gP it's nearly all-ready out of the box, but then again, one can never have enough memory!

Then I landed on that 128M memory upgrade post by Oleg, and this is the story:

Components:

After a week long search some NANYA NT5DS32M16BS-5T were located. So why not give it a try? There was no confirmation for these back then, though according to the datasheet they were pin compatible and organised as 32x16. But when I was about to acquire them, I got a call from a second-hand store, about some SO-DIMM with Samsung K4H511638C-UCB3 gathering dust on their shelves, so that was it! These were confirmed by trucki and way cheaper too.
(Thanks to particleman we now have a confirmation for NANYA NT5DS32M16BS-5T)

33 Ohm smd 0402 resistors were kindly donated from an old dvd player, (one for A12 line, one more to replace an accidentally desoldered and lost one)


Method:

- Used a hot-air gun (the paint-stripping gender) to preheat the pcb and then desolder the (fluxed) memory chips, while protecting the rest of the pcb with multiple layers of aluminium foil as a heat screen, both from the SO-DIMM and the wl500gP.
- Applied no-clean flux on the pads, then removed the solder from the pcb pads with desoldering braid (wick).
- Cleaned around with some alcohol and some cotton buds.
- Positioned the chip, then kept it in place with some scotch tape (it *really* helps).
- Used a fine tip, low wattage soldering iron with tiny amounts of solder applied on the tip.
- soldered pins under optical aid.
- cleaned around some more.
- Scanned and hi-res macro-photographed the result from various angles to visually inspect on screen.
- checked for sort / open circuits with a multi-meter.
- reworked a few stubborn pins. :p

And voila! It didn't work :confused: no power led on :eek: disappointment :(

At the time it was already very late at night, so I slept over it, many nights, and when I found the time, armed with multimeters, optical aids, pencil and paper for an improvised schematic, datasheets, previous pic's of the tracks under the chips and quite some patience I checked again every single track and pin on the first chip (U3). Pins 18 (Vdd) and 4 (DQ1) were found to be loose, giving false positives when pressed on their pads with the multi-meter probe. They were resoldered while I pressed down on them with a pointed tool and voila, router finally up and running! :) U4 was not much of an issue and soon I had all 128M of ram activated! :D:D:D

At first strong vibration would freeze the router (more loose pins) but then the soldering iron came again in to play, and everything worked just fine!

The router went through twelve runs of memtest and all is fine! Router is happy, I am happy, big Thanks Oleg!


Here is a reference list compiled from this forum with all chips known to work so far for wl500gP:


Chip: By: On memory module: Type: Form: By: Confirmed by: Note:

HY5DU121622CTP-D43 HYNIX HYMD532646CP6J-D43 PC3200 DIMM HYNIX Oleg 1
K4H511638B-TCB3 SAMSUNG M470L6524BT0-CB3 PC2700 SO-DIMM SAMSUNG Oleg .
K4H511638D-UCB3 SAMSUNG M470L6524DU0-CB3 PC2700 SO-DIMM SAMSUNG Oleg .
D5116AFTA-5B-E ELPIDA TS32MSD64V3M PC2700 SO-DIMM TRANSCEND Oleg .
K4H511638F-TCB3 SAMSUNG newbiefan .
K4H511638D-UCB3 SAMSUNG newbiefan .
K4H511638C-UCB3 SAMSUNG KVR333X64SC25/512 PC2700 SO-DIMM KINGSTON trucki .
MT46V32M16-6T MICRON mitek 1
NT5DS32M16BS-5T NANYA particleman .
K4H511638B-TCB3 SAMSUNG oyabun .
K4H511638C-UCB3 SAMSUNG M470L6524CUO-CB3 PC2700 SO-DIMM SAMSUNG inertial .
HY5DU121622CTP-D43 HYNIX NotebookKiller 1
Note 1: Capacitor between pin 51 and ground / Clock lines employed.
Note 2: Infineon chips are reported as not collaborating with wl500gP pcb.

Be warned that the pcb pads are really easy to damage, static electricity could fry the chips, thermal shock could destroy them as well as the pcb and other components, flux/solder fumes are usually toxic, etc.
Before attempting such a mod it would be useful to search for "SMD desoldering" on the net, since there are many informative how-to's and even videos on the subject, get familiar with the "reflow thermal curve" and "ESD damage", practice desoldering and soldering on some scrap pcb's first and make sure you won't miss your router too much if things go wrong.

Admittedly, coming from an H/W background I have quite extensive soldering/desoldering experience but I still believe it's possible to perform the mod when having some soldering experience and rehearsing the steps on some scrap first.

@breizh76:
I am pretty sure your asus is recoverable, have a look at what these people from http://www.circuitmedic.com (http://www.circuitmedic.com/guides/guides.shtml) are doing.
Agreed it requires lots of tools and even more skill, but still it is possible!
Got four partially lifted pads myself, when desoldering U3 but finally everything works fine.
Had a 60G HD too with many cut and lifted tracks 'few years ago, but managed to functionally restore it (visual aesthetic aspect though... ouch!)
If you don't feel confident, you could find some hardware-tech / mobile-phone repair-tech guy that could do it, or even I could try and have a go at it, if you post me your unit.

@All:
Could any one direct me to some wl500gP schematics, if such thing is available? I’d like to try some extensive wl500gP hard-hacking :)


Inertial

Oyabun
03-04-2008, 12:17
@All:
Could any one direct me to some wl500gP schematics, if such thing is available? I’d like to try some extensive wl500gP hard-hacking :)
Inertial

Unfortunately I haven't seen anything like that so far. I'd be interested too.
What kind of hard hacking are you thinking about?

NotebookKiller
03-04-2008, 12:43
Hello. I made 128m upgrade with Hynix HY5DU121622CTP-D43 chips. I really don't understand, why do people solder capacitor to UDQS? On original modules it is between clocks - normal and inverted. In Asus there's no such a capacitor. I added it (marked red on photo) by scratching solder mask on clock lines and soldering to them. Device started normally and passed the all-night memtest torture without any errors. Capacitor was taken from the same module as chips.

hggomes
07-04-2008, 03:00
If anyone have one to sell with 128mb working without problems, or if anyone wants to profit with mod i'll buy it for double the price.

Inertial
07-04-2008, 20:35
Hello!


Originally Posted by Oyabun
What kind of hard hacking are you thinking about?


Most of my inspiration came by looking at these pieces of information: (attached below)

* BCM4704 Block Diagram

* BCM4704 System Diagram

Well besides the gpio pins, I2C bus, SPI bus, SD card, etc type hacks, (directly off wl500gp pcb tracks), the most promising thing, may be the ability of BCM4704 processor to handle three mini-PCI 2.3 peripherals.

From Broadcom's BCM4704 Product Brief:
The PCI 2.3 host interface allows enumeration of three external PCI peripherals (more with external arbiter)


Another way to explore would be the EBI (Expansion Bus Interface) route. Signals for this bus are presented to the flash memory chip (SPANSION S29GL064M), of course stealing them from the chip's pads seems extremely hard, but it might still be an option for just a couple of lines. And since extremely hard is still possible ;) , one could even try an IDE connection if all necessary signals are found to be present and the firmware side of things in understood as well (that already sounds pretty complex to me).

Other interesting things are the modem and audio codec’s as well as the two-port USB 1.1 host. Interesting these are, however, only if their respective signal/data lines are present somewhere on the pcb, since un-burying them from under the BGA :eek: seems highly unlikely, to stay optimistic. :cool:

Software-wise, access to the MAC (Multiply Accumulate) unit on-chip would be very useful to people who wish to hook up some sensors on the wl500gp and then use it to perform some DSP (digital signal processing) on the collected data.

Also software-wise, access to the IPSec Core and related hard-wired functions available in the BCM4704 (IPSec 3DES, SSL MAC, TLS HMAC, SSL/TLS DES/3DES, MD5/SHA-1 HASH, IPSec AES), would be very useful for some types of network applications.

All of the above require, inside knowledge of the processor core, usually found in a Programmer's Guide type document and in datasheets, for the software part, whereas for the hardware part, processor datasheets and router schematics would be needed. Without any of these documents in sight, it's gonna be pretty hard to attempt most of these modifications.

That's why I believe mini-PCI peripheral expansion is the most viable approach, given the available documentation.

PCI's, let's sum it up, we have: One for the PCI-to-USB bridge (VIA VT6212L), one more for the actual mini-PCI connector harbouring the wi-fi card, that's two, leaving room for (hopefully) one more! Plus all the signals for the PCI bus should be presented to the mini-PCI connector. That's only a guess however, I haven't actually checked to verify that, but still. The specifications for PCI and mini-PCI bus are at hand, so it will be a matter of (spare) time to verify it.

After verifying that all necessary signals are present and that the firmware (as is or modified) could handle such an addition, it might be possible to try and solder one more mini-PCI card connector on the existing pcb pads.

Many mini-PCI cards are available which could be used to offer additional functionality, provided the suitable driver exists, that is.

* mini-PCI to IDE and/or SATA controllers + Compact Flash (CF) Socket, (no USB bottleneck)
* mini-PCI to (a multitude of) serial ports extension cards
* mini-PCI GPS receiver module with extra serial ports
* mini-PCI 801.11a/b/g 400mW card
* more examples welcomed

A simple idea would be to add an extra dual band wi-fi card, transforming the router to a link, or even backbone node for wireless metropolitan networks. A GPS card would suit locative (location-aware) applications. The extra serial ports would be good for robotics or home automation and a direct mini-PCI to IDE/SATA/CF card would allow for file transfers at full speed, overcoming the USB bottleneck. I could go on daydreaming about possibilities for long... :)

Take a wl500gP, hook up some temp, humidity, pressure, wind-speed, rainfall, etc sensors over USB or serial ports and you get a remote, networked, weather-station. Or add some motors and motor drivers assortments, vision, GPS, batteries, sensors (speed, distance, temp, inertial, rotational, magnetic, etc) a few microcontrolers, quite some code, and voila: you have a networked mobile robot...

For the moment my preferred (and much more realistic) approach is to interface microcontrollers to the RS-232 and USB ports of the router. I'm planning to work with some PIC18F4550 with USB connection while some other PIC boards with rs-232 are already available and have plenty of things interfaced to them. Now I only need to set up a cross compiler for the wl500gP and write some code to get them to communicate with the router (and, hopefully, one day, attempt even native compilation). Some more code writting/porting will be needed to have the router perform some processing on the data collected through the uC's and plan some actions to execute on the devices interfaced to them in response, all while sending part of the data over lan/wi-fi. The birth of a simple robotics platform, indeed.

Following the various posts about the RS-232 console connection, and parper's post "Additional USB ports and Internal HD!", I performed the corresponding mod's, and now I have a very happy wl500gP with Oleg's firmware, 128MB ram, four onboard USB 2.0 ports and two RS-232 signal level serial ports. :D

I will post methods and findings soon!

Ideas, comments, suggestions are welcomed :)

Greetings to all and thanks for all the info's you are sharing,


inertial



Below are some very inspiring BCM4704 Diagrams from Broadcom's Product Brief, a picture of wl500gP's case following modification to house the extra two USB connectors, and a couple of pictures of the actual post mod pcb.

Oyabun
08-04-2008, 13:16
Hello!



Most of my inspiration came by looking at these pieces of information: (attached below)

* BCM4704 Block Diagram

* BCM4704 System Diagram

Well besides the gpio pins, I2C bus, SPI bus, SD card, etc type hacks, (directly off wl500gp pcb tracks), the most promising thing, may be the ability of BCM4704 processor to handle three mini-PCI 2.3 peripherals.


Great!

Count me in. I have bit limited time now, as I'm in a middle of a NAS building project based on the StormSemi Gemini SL3516. Adding mini PCI slot would be great. I have already found miniPCI Sata controller with flash support. It would be an interesting project to build a small embendded server based on the new ssd disks. Also the networked weather station sounds like a great idea. If it would support mesh architecture and and seismology (vibration sensors) coupled with a solar panel and some batteries it could make up for a great science platform for earthquake forecasting.
At the moment I'm working on a more mundane project though. I have a flat what I rent out what happens to be in a very lucky spot of the city so I can get 10M/10M cable net connected on it. Even though I live only four streets away, this option is not available here, so I'm building a torrent seed server for the other flat. I will be able to log in and start downloads remote, and when the download finished it will syncronise automatically to my home nas trough sftp. I'd like to connect a security camera tooking to an area what not interferes with their life (eg. entrance), but helps if something happens with the flat. Also would like to connect smoke sensors to send alarm trough the net. I would like to have everything in one neat package (so HDD inside the case, proper cooling etc) to avoid accidental disconnects, ect.
Meanwhile the tenant will be able to use some part of the bandwidth trough wireless - with a QOS service - for a reduced fee. For this I'll most probably use my current 500gP and buy a new 500W for our home.

ps.: In the meantime I just finished a second transplant to 128 Mb on a friend's asus. Flawless, started right away and stable.

ps2: Do you think that the factory power supply is enough to power all your installed ports? I had unexpected reboots even when tried to connect the USB HDD and a flash disk at the same time.

ps3:Probably we should start a new one about HW hacking instead of hijacking this 128Mb upgrade topic.

Garluk
18-04-2008, 12:38
Is this howto good for upgrading WL.-500GP v2 RAM to 128MB?

Oyabun
18-04-2008, 14:22
This info is intended to help uprading ram in BCM47xx based routers.
The v2 version is based on a BCM5354 all-in-one chip what is theoretically able to handle 128MB ram, but so far I haven't seen any picture taken of a v2 board, so I cannot tell how it had been realised.
You can find a brief introduction on 5354 here (http://www.broadcom.com/collateral/pb/5354-PB01-R.pdf)

Serge_K
18-04-2008, 15:32
This info is intended to help uprading ram in BCM47xx based routers.
The v2 version is based on a BCM5354 all-in-one chip what is theoretically able to handle 128MB ram, but so far I haven't seen any picture taken of a v2 board, so I cannot tell how it had been realised.
You can find a brief introduction on 5354 here (http://www.broadcom.com/collateral/pb/5354-PB01-R.pdf)
You can find pictures here:
https://fjallfoss.fcc.gov/prod/oet/forms/blobs/retrieve.cgi?attachment_id=791558&native_or_pdf=pdf

Garluk
18-04-2008, 18:59
I have a WL-500GP v2 on my hand.
I have disassembled it and I have found the RAM. There are only one chip: the Hynix HY5DU561622ETP

Oyabun
25-04-2008, 10:54
I have a WL-500GP v2 on my hand.
I have disassembled it and I have found the RAM. There are only one chip: the Hynix HY5DU561622ETP

So if you google for this chip, you can find, that it is a 16Mx16 chip, resulting in 32MB. As single. Theoretically it means, that this router (because of the one-chip design) could not be upgraded to 128, but 64MB.
As it should be the actual case, as on the reference pictures linked by Serge (thanks :)) the chip on board is a Samsung K4H511638D what is used by many of us, giving 64MB/chip capacity.
So if you are interested in upgrading your router to 64MB the steps are the folowing:
- Check router board for missing resistors (if any), as on the previous boards A12 address line has not been implemented -it might be the case in the new version also.
- Cross check memory addressing parameters with Oleg, how to enable 64Mb on a single chip for v2 routers.
- Acquire a single Samsung K4H511638D or equivalent chip with 32Mx16 capacity (look above Inertial's post about compatible chips)
- Do the phisical upgrade (or better to ask someone with good soldering skills and a rework station to do is for you)
- Check it with Oleg's memtest
- Enable 64 MB
- Recheck
- Enjoy

Hope it helps.
BR.
Tamas

status report: A friend of mine just finished upgrading the router sucessfully to 128MB, and also added connectors for the two additional USB ports with neat routing and proper coupling. I have finished installation of an external diversity antenna (instead of the PCB one) and installed 2x 5dB antennaes. :-) No dropped connection since, 54 Mbit/s maintained everywhere, fastest Wlan as ever with this router. :-)

Inertial
27-04-2008, 22:36
ps3:Probably we should start a new one about HW hacking instead of hijacking this 128Mb upgrade topic.

Appologies for disappearing for so long, and especially to Oyabun. A software development project, with tight deadlines, tons of mathematical modeling and mobile platform optimization, landed on my head. I was on it day and night since nearly my last post. I mannaged, though, to succesfully upgrade to 128MB yet another wl500gP, while having a short break :D Well I will follow Oyabun's advice and start a new thread under the "WL-500gP Pics & Specs" section. This choice is justified, in the sense that hardware hacks actually affect the specs, and even improve them i would suggest ;)

It will be entitled: "Exploring WL500gP hardware expansion / interfacing possibilities (http://wl500g.info/showthread.php?t=14170)", hope it sounds promising...

See you there...

Inertial

Garluk
01-05-2008, 13:53
So if you google for this chip, you can find, that it is a 16Mx16 chip, resulting in 32MB. As single. Theoretically it means, that this router (because of the one-chip design) could not be upgraded to 128, but 64MB.
As it should be the actual case, as on the reference pictures linked by Serge (thanks :)) the chip on board is a Samsung K4H511638D what is used by many of us, giving 64MB/chip capacity.
So if you are interested in upgrading your router to 64MB the steps are the folowing:
- Check router board for missing resistors (if any), as on the previous boards A12 address line has not been implemented -it might be the case in the new version also.
- Cross check memory addressing parameters with Oleg, how to enable 64Mb on a single chip for v2 routers.
- Acquire a single Samsung K4H511638D or equivalent chip with 32Mx16 capacity (look above Inertial's post about compatible chips)
- Do the phisical upgrade (or better to ask someone with good soldering skills and a rework station to do is for you)
- Check it with Oleg's memtest
- Enable 64 MB
- Recheck
- Enjoy

Hope it helps.
BR.
Tamas

status report: A friend of mine just finished upgrading the router sucessfully to 128MB, and also added connectors for the two additional USB ports with neat routing and proper coupling. I have finished installation of an external diversity antenna (instead of the PCB one) and installed 2x 5dB antennaes. :-) No dropped connection since, 54 Mbit/s maintained everywhere, fastest Wlan as ever with this router. :-)

Your's friend have upgraded a v1 o v2 WL-500gP router?

Oyabun
09-05-2008, 10:11
Your's friend have upgraded a v1 o v2 WL-500gP router?
Sorry. Of course v1.

hggomes
13-05-2008, 01:46
It is possible to test all the 128MB RAM, cause doing ./memtest 128MB only tests 64-67MB. I've tryed "free" and i've got 124MB free without any services running, it should test at least 124MB. This way i will never know if the other module of 64MB it's OK or not. Any ideas?

shinji257
27-05-2008, 21:31
Just curious but is there anyone here that can do this upgrade for me? I have no experience on SMD chips. I will probably get another unit for this upgrade so that my current one isn't affected and I will continue to have 2 "stock" units.

vuk
05-06-2008, 13:52
I wonder if there is anyway to solder some TSOP slot first in place of U3 and U4 the sort of those seen on many OLD 4Mb PCI video cards, just to allow easily exchange the RAM on WL500. Anyone tried ?

Inertial
06-06-2008, 00:27
Dear Vuk,

I am planning to use some Meritec TSOP-48 sockets for the flash chip, not sure if i'll do so *on* the board of the router, there are clearence issues. Meritec doesn't do TSOP-66, (since they are not used for flash chips, i think)

Thought of hacking some piece of something to do what you describe, but this would be difficult, in reality. Anyway, that's what came to my mind:

-> Either to make a fixture to press the chip pins directly on solder-wicked, cleaned, and kinda, DIY, atmospheric-pressure "hot-air-kind-of-leveled" pads :)

-> Or use these very nice elastic 1D-conductive strips, the ones employed to transfer the current to glass substrate LCD dot-matrix screens (grey conductive something, sandwiched in pink elastic). I have some of this somewhere, have to test resistance and most of all, the pitch of these conductors, to avoid shorting everything. Then a way to hold and press everything in place will have to be devised.

Proceeding in these ways ofcourse would make it very hard to tell if the problem comes from the chip under test OR the fixture :p

The sockets you mention are a great idea, i will give it a try for sure if i manage to find any and report the results back here.

The second best thing that comes to my mind is to use 3M's z-plane conductive tape, but i can't afford it - far too expensive.

Looking through quite some of the boxes that comprise my old hardware collection (others call it junk :rolleyes: ), nothing like 66-tsop sockets was found...

So please, could you direct us to some photos of the video cards in question. Or at least to some model names/numbers and manufacturer's names.


Inertial

vuk
06-06-2008, 10:12
Well, actualy i remembered and old ATI pci 4Mb card i had once (1998 perhaps), but I never counted the pins in the TSOP socket. Anyway, i am sure there are 66 pin versions for that.
Another ideea came to me was the same as yours, to replace the EEPROM with a larger one, say... 128Mb from a flash disk and put it in a TSOP socket. Because I found a similar HYNIX chip inside a flash disk of mine.
Still don`t know how to copy the entire code inside to make it boot again.
Whatever, that would allow to store a richer operating system inside on a larger storage space and to use external usb laptop hdd just for user space, accounts and downloads, etc.
QUESTION: wl500 is a multilayer or plain dual layer PCB ? :D

Freelancer
16-07-2008, 20:32
Hi, guys

I have tears in my eye, I was able to upgrade to 128Mb.
First of all I could not get the correct Samsung chips.
For this I bought two chips from Trucki.
Secondly I did not had the "hand skill" for soldering.
For this I turned for everybody. My neighbor worked in a place where they had professional soldering gear, but there I as a stranger could not enter, so initially I asked around everywhere who can do it, I wanted to see and to be able to try it and if wrong re solder it. Could not find nobody. Oyabun volunteered, but he was busy in private life. So finally I gave my router to my neighbor to do it in a blind way and if turns out good than turns out good.
And it turned out good. :-)
It is so good. :-):-):-)
Next thing I will be asking around how to set up the development environment and trying to port the DC++ client. :-)

oleo
17-07-2008, 08:33
Install amule instead of porting dc+. Quick description for optware is at http://trac.nslu2-linux.org/optware/wiki

pop k
27-07-2008, 13:34
Is that possible to upgrade ram of ASUS 520gU to 128MB?
It has the same cpu but is different frequency.

pop k.

vuk
02-09-2008, 12:23
Is there anyone of u who has an extra pair of chips for sale, or knows a reliable source tu buy those ? I mean the chips described by Oleg in http://wl500g.info/showthread.php?t=12962

Thank you!

moszinet
30-09-2008, 14:07
I've managed to buy one of these laptop memory modules on ebay.co.uk ...

vuk
06-10-2008, 13:43
I doubt someone will ship to Romania :)

birch01
18-11-2008, 12:49
I have a few K4H511638B-TCB3 left if anyone needs.