A little warning: this description is based on my personal knowledge
of my HP48GX, so something may be different if you have a 48G.
Standar disclaimer:
THIS INFORMATION IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESSED
OR IMPLIED WARRANTIES.
What you need:
- one hp48g(x) upgraded to 256k
- one 512k low power static ram
- one inverter: you can use a real inverter, eg. 74HC04, or you
can use a NOR (74HC02) or a NAND (74HC00).
About the upgraded g(x): If you have a gx working, probably it's better if you try to expand the memcard pcb to work with a 512k chip; I opened my gx to repair the ON key, so I upgraded this way.
If you have a G, you have to add the HC00 and the HC174, plus
two resistor:
I don't know exactly how to do this, since I already have all
components. See hpug384k.txt for more details.
About 512k static ram:
I used a Hitachi HM628512LFP-7, which is a low-power SMD part.
If you can find a part named ..LFP-7SL it should be even better,
because it's a "lower" low-power part :-)
If you upgraded your G using the PCB and the normal DIP SRAM,
so you'll need a DIP version, which should be HM628512LP-7 or
LP-7SL. This is the chip I used, but you can use a SONY or MITSUBISHI
or whatever you can get, since it only needs to be a 512kx8 low
power static ram.
About the inverter:
the inverter is needed because the 512k chip has only one negative
logic CS (chip select), which is active low; the hp48, instead,
sends on the port CE (card enable ?) with positive logic, active
high, so you need this inverter.
I used an 74HC02 smd because I found it on the electronic board
of a dead hard disk, but you can use any of the parts listed above,
or even something other. I used only one port of the HC02, the
unused inputs are tied to ground.
Where to take the power for this IC?
You have to power it the same way Rams are powered, taking VCC
from the positive terminal of the electrolitic capacitor. The
inverter needs to be powered to output a "high" signal on the
CS pin of the RAM, thus putting it in low-power standby mode.
If you power it taking, e.g., VCC from the HC00 on the 48, than
the inverter will be off when you take off the batteries. The
result is the following: the inverter is not powered, so it will
output a 0v level, which on the CS of the RAM means "hey, you,
wake up!".. The ram wakes up and drains a lot of current from
the capacitor, leaving you about 1 or 2 second to change the batteries
:-)
Instead, if you power the inverter with the capacitor, ram goes
in low power mode and you should have some time before you lose
your memory.
Whatever inverter you choose, you have to be careful about this:
the output with the input at 0v must be 1. It's ok if you use
an pure inverter (HC04) or a NOR (HC02) with two inputs tied together.
A NAND (HC00) will even work, but you have to put one of the input
at Vcc (the vcc of the HC00) to be safe.
BEWARE: probably this is not an optimum setup, but it seems to work reasonably well. In particular, I don't know exactly how much the backup capacitor will last with the added charge of another RAM and of an inverter, but I think it's enough to safely replace your batteries.
I took some more time to add a lithium battery backup, following the directions found in the hp48 FAQ, so I advice you to add it too.
What to do? Basically, what you have to do is to put the 512k
chip _on_ the 128k which is connected to port 1, connecting nearly
all pins pin-to-pin.
You have to lift from the 512k chip only 3 pins, which you have
to connect individually.
Here is the 512k ram pinout:
|-------\_/-------| | | A18 - | 1 32 | - Vcc A16 - | 2 31 | - A15 A14 - | 3 30 | - A17 A12 - | 4 29 | - Negative WE A7 - | 5 28 | - A13 A6 - | 6 27 | - A8 A5 - | 7 26 | - A9 A4 - | 8 25 | - A11 A3 - | 9 24 | - Negative OE A2 - | 10 23 | - A10 A1 - | 11 22 | - Negative CS A0 - | 12 21 | - I/O 7 I/O 0 - | 13 20 | - I/0 6 I/O 1 - | 14 19 | - I/0 5 I/O 2 - | 15 18 | - I/0 4 VSS - | 16 17 | - I/0 3 | | |-----------------|Lift the pins 1, 30 and 22 and solder the other pins on the corresponding pins of the 128k chip.
This should be enough to make you start.. but check with documents and try to understand what you're doing before doing it! Have a good upgrade!
Stefano Garavaglia (alter.ego@iol.it)
THIS INFORMATION IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
So you need at least one chip in SMD package.
(Another way is to don't use the PCB, I did it on one HP, but I advise you against such methods because you'll have 40 free wires in your HP and it's awful to do and to see)
Imagine your HP is opened, keypad on the ground, batteries towards you.
To do that, solder the chip on the one for port 1 for all pins excepted the 30th that goes to the pin N21 of the 2nd port (the pin that is different from port one in the middle)
You need some other components to drive port 2, they must be soldered on the main PCB near the batteries :
Look carefully at the 4 slots in square on the middle left to see if the resistors must be soldered vertically or horizontally.
On older PCB : 473 on the left ; 104 on the right. On newer PCB : 473 on the top ; 104 on the down. |
WARNING: Look at the next mail I received, where Tony tells me there's maybe some differences with PCB... |
Have a good hack and I apologise for my poor english.
Phil.
Philippe Teuwen
s952365@student.ulg.ac.be
THIS INFORMATION IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
From: Tony Chou <st9213@siu.edu>
I followed the instructions and the ram upgrade works perfectly.
(I replaced the built-in 32KB sram with a low power 128KB SMT
sram, used the PCB layout from Thomas & Thijs in the 48gs256k
to place the DIP version of the 128KB sram in card 1 (port 1)
location and then soldered the 512KB DIP sram on top of the 128KB
DIP sram for the card 2 (port 2 to 5) location).
You do need the extra parts Stefano was talking about.
Namely the 74HC00 to access port 1 (and 2), the 74HC174 to drive
addresses 17 and 18 for the 512KB card 2 sram, the inverter for
the 512KB CS pin 22, and the two resistors to direct the proper
voltage to the clear line (pin 1) of the 74HC174 hex "D" flip-flop.
The only problem though was the instructions give by Teuwen about the placing
the resistors. He says that there are two types where in one type the resistors
are mounted vertically and the in the other the resistors are
mounted horizontally.
Mine is the one that have to placed horizontally. But in mine version, 473 (47k) has to be placed on the bottem
(nearest to the batteries) while 104 (100k) is placed on the top.
I learned this when the upgrade didn't work so I used a logic
probe to hunt down the error. This may be a mistake (on his or
my part) or I have a different verison.
Mine is made in Singapore on the 14th week of 1995, ROM version
is R. I don't know what the PCB version is though.
Tony.
THIS INFORMATION IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
last updated: 28th of January 1998