]> git.draconx.ca Git - homepage.git/blobdiff - content/weblog/ultra60-nvram.md
M48T59Y battery replacement
[homepage.git] / content / weblog / ultra60-nvram.md
diff --git a/content/weblog/ultra60-nvram.md b/content/weblog/ultra60-nvram.md
new file mode 100644 (file)
index 0000000..ec96370
--- /dev/null
@@ -0,0 +1,101 @@
+---
+title: M48T59Y-70PC1 NVRAM Battery Replacement
+copyright: 2022 Nick Bowler
+license: cc-by-sa-4.0
+published: 2022-07-09T12:12:21-0400
+---
+
+*[NVRAM]: Non-Volatile Random Access Memory
+*[SRAM]: Static Random-Access Memory
+*[NOS]: New Old Stock
+*[DIP]: Dual In-line Package
+*[SOIC]: Small-Outline Integrated Circuit
+*[MAC]: Media Access Control
+
+Thanks to [Mark Henderson's Sun NVRAM FAQ][nvram-faq] for providing invaluable
+insight regarding this repair.
+{:article-info="article-info"}
+
+[nvram-faq]: http://web.archive.org/web/20150919135835/http://www.squirrel.com/sun-nvram-hostid.faq.html
+
+The Sun Ultra 60 workstation uses an ST M48T59Y-70PC1 battery-backed SRAM with
+real-time clock.  When the embedded lithium primary cell inevitably dies, the
+chip is essentially useless.  The most noticeable negative effect of a dead
+chip is that the workstation always powers up in a default configuration with
+diag-switch?  true, running several minutes of self tests every time, with
+bogus MAC and host ID values.
+
+<%= floating_img(@items["/images/m48t59y.jpg"], caption: <<EOF
+You don't even know you are already dead.
+EOF
+) %>
+
+This device was branded obsolescent by the manufacturer in April of 2008 and
+has presumably been out of production since around that time.  Similar chips
+like the M48T58Y are still made but they are expensive (around $40) and slight
+differences may result in compatibility problems.  It appears that NOS parts
+can be found fairly cheap online but these must be almost 15 years old by now
+and who knows what state the embedded batteries are in.  No thanks.
+
+One option could be to find the SOIC version of the M48T59Y for which NOS also
+seems to be available, although somewhat less readily than the DIP modules, and
+then construct an adapter board to fit into the DIP socket on the motherboard.
+The SOIC package does not include the battery and crystal; instead, it has
+contacts on the top to attach a separate "SNAPHAT" package which are still
+made.  This would be complicated and somewhat expensive.
+
+Fortunately, a straightforward (if time-consuming) repair is possible.  This
+is a literal hackjob: we can dig through the potting to expose the battery
+terminals, disconnect the internal battery, and connect a normal battery clip.
+This enables the use of readily-available CR2032 lithium primary cells that can
+be replaced as needed, just like a normal PC.  Since we already have the chip
+we need, it is not necessary to source any obscure or expensive components.
+
+<%=
+floating_img(@items["/images/m48t59y-terminals.jpg"], left: 1, caption: '')
+%>
+
+<%=
+floating_img(@items["/images/m48t59y-solder.jpg"], left: 1, caption: '')
+%>
+
+The battery contacts are located on the end opposite pin 1, between pins
+14 and 15.  Looking underneath the chip there is a small well at either end
+filled with potting compound.  The battery connections are inside one of
+these.  Using a knife, cut back the plastic outer shell on the battery side,
+then begin scraping away potting compound until the terminals are exposed.
+You can use a suitable DIP socket to help protect the pins from accidental
+damage.
+
+Once the terminals are exposed, the internal battery must be disconnected.
+The thick protruding tabs near the bottom of the module are what we want
+to solder to.  The vertical strips going up and into the module are the
+internal battery terminals.  These can be desoldered from the tabs and
+lifted out of the way, or simply cut off.
+
+With the time-consuming parts completed it is a straightforward matter to
+connect a normal battery clip to the exposed terminals.  As the Ultra 60 has
+no clearance issues I simply glued it to the top of the chip.  Since this
+would obscure the barcode sticker which is useful to restore the original MAC
+address and host ID, I moved this sticker to the side of the chip.
+
+Finally all that remains is to put everything back together and power up
+the system.  The system will run the full self-diagnostic tests again and
+if all goes well, the "NVRAM Battery Detect Test" should no longer display
+any errors.  At the ok prompt, the memory can now be initialized.  Where
+"AA BB CC" are the six hexadecimal digits from the orange barcode sticker:
+
+<kbd class='ok'>set-defaults</kbd><br/>
+<kbd class='ok'>setenv diag-switch? false</kbd><br/>
+<kbd class='ok'>8 0 20 AA BB CC AABBCC mkpl<br/><em>&lt;Ctrl-D&gt;&lt;Ctrl-R&gt;</em></kbd><br/>
+<kbd class='ok'>.idprom</kbd><br/>
+<kbd class='ok'>reset</kbd>
+
+<%= gallery_img(@items["/images/m48t59y-fixed.jpg"], caption: <<EOF
+Just like a bought one!
+EOF
+) %>
+<%= gallery_img(@items["/images/m48t59y-installed.jpg"], caption: <<EOF
+There's no place like home in the Ultra 60.
+EOF
+) %>