Skip to content

Instantly share code, notes, and snippets.

@gnif
Last active January 29, 2022 22:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gnif/6dea0d98549e6d79600736912a090f14 to your computer and use it in GitHub Desktop.
Save gnif/6dea0d98549e6d79600736912a090f14 to your computer and use it in GitHub Desktop.
IBM branded APC SmartUPS 3000VA Notes

These are notes on modifications to make to the IBM branded 2RU APC SmartUPS 3000VA UPS to make it operate as a hybrid solar inverter/ups.

Disable the charging circuit

Since I am charging from solar I do not want the UPS to be able to charge the externally attached battery array, on this model this is very simply done by inserting a diode on the RED and BLACK wires coming from the front of the ups (charging module) to J4 on the main PCB to prevent reverse current flow to the batteries. The diode is required or the charging module wont be powerered at startup which puts the unit into a fault mode.

Coltrolling the output

Initially I was using a solid state relay to disconnect the feed in to the UPS when I was getting enough power to charge the batteries and run my equipment from solar, however this has been causing issues with RCDs (residual current devices) due to the massive inrush current when the UPS is re-connected to the supply. As such I have reverse engineered enough of the circuit to understand how the UPS does it's switch over between inverter and mains in the hopes that I can trgger this manually.

On the PCB marked 640-7713B relay RY3 controls this transfer which is energised via the mosfet at Q2 which is controlled by the diode D2 and the resistor R2 eventually coming to the board connector on pin 7 of the smaller pins (not sure of the pin number assignments here, if you need to be sure check with a DMM). This eventually traces through to output pin 8 of IC315 which is a CD4016 hex inverting schmitt trigger. Pin 9, the input, is fed directly by the Phillips P87C51FB microcontroller at IC314 on pin 30 which is P2.6.

Interesingly the micocontroller is not protected and I was able to read out the ROM making it possible to perhaps alter this for other things in the future if needed.

In theory (I will be testing this today) it should be possible to pull pin 7 on IC315 high putting the UPS into online mode. I will update this gist if this is successful.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment