Integrated UPS for Hot-swappable Battery

I’m trying to integrate a diy UPS internally between a laptop battery and the motherboard for hot swap battery functionality.

I am using a framework 13 motherboard and a framework 16 85Wh battery. Pinout of the 16's 85whr battery?

It has been confirmed in another thread that the 16 battery will perfectly power the 13 laptop without any problems if configured as shown.

I am very new to circuits and batteries, but should the attached schematic work without issue? I am not 100% certain of what all of these connections actually do, but I would like a UPS to activate once the main battery has been depleted or detached.

Is this the right place for a question like this? Thanks!

Where are you planning to insert the UPS and how do you intend to mount the external battery?

Also, I think this is exactly the right place in the forum to ask about this.

2 Likes

There are quite a few considerations that you have to make in your design. Firstly, the FW16 battery communicates over SMBus (DAT_SMB/CLK_SMB) with the computer, and has a SYS_PRES pin (not sure if telling the battery its plugged in or the computer), and VRTC (separate voltage for the RTC, or clock signal?). You will likely need some way of managing these signals in the absence of a battery, which means some kind of microcontroller sitting between the battery and FW 13 board with your UPS sitting in between for other things.

Additionally, you will need to switch from the external battery voltage to the internal UPS battery. This will probably involve some kind of “power mux,” which will switch between two different power sources. This may produce some issues, as the external battery voltage will not be the same as the internal mux battery, so there may be some inrush current when connecting the internal battery.

You could alternatively actively charge the internal UPS battery from the external battery at all times. This keeps the internal battery topped up until the external battery dies. This one will ensure a cleaner transition between external battery and internal battery, since theres no voltage difference when switching. The problem here is additional switching circuitry and lower efficiency. Also, depending on how the battery functions, the laptop may be using the voltage to determine battery charge level. In the case of the UPS, this method causes the laptop to always think its at 100% until the external battery dies and the UPS battery starts discharging.

You also have to consider charging for both the internal and external batteries.

1 Like

Thank you for the reply. The goal is to keep the mechanism as simple as possible to ensure consistency. The design in mind would keep the internal battery charged until the removable battery is depleted. I may just use the framework 13 battery to not over complicate things. Because none of the other diagnostic pins would be connected to the internal battery, wouldn’t I get an accurate reading? I plan to use an external display to look at the charge of the internal battery; that would be a part of the UPS. This display would be a part of the UPS itself.

To keep things simple I want PC to essentially draw all power from the UPS. It would be inserted between the external battery and the mainboard as shown in the diagram. As for the external battery, I will make a mounting solution by connecting the individual wires to a magnetic connector. Thank you for the reply!

I’m afraid it’s likely worse than that. The battery data isn’t just for reporting capacity. The battery’s onboard BMS (Battery Management System) is also responsible for monitoring the health of the cells and the temperature of the pack. Large li-ion packs can be dangerous. The laptop’s EC (embedded controller) may consider it a critical problem when you disconnect one battery’s data lines to swap in the other. I think there is potential it might abruptly shut down the system. Or when the new battery is connected, the unexpected change in information presented might cause problems, like refusal to charge.

If you have multiple Framework batteries on hand you could test how it reacts to the disconnection of the data lines, and switching over to another.

Oh, let me rephrase my question. I should have asked the following for clarity instead: Where do you plan to physically insert the UPS into the laptop chassis?

This is what I want. Ultimately I just want the ability to hot-swap batteries without the laptop powering down. How I achieve that goal is flexible for me.

Ah, I will build my own chassis to the mainboard in, so there are no real space constraints.

1 Like

All of the pins would only connect to the proprietary framework 13 “external battery” the internal ups would only have the ground line and the batt+ lines connected. The result would be the power coming directly from the UPS, but the ups would be constantly charged by the laptop battery. The diagnostic pins would only be connected to the actual framework battery, so wouldn’t the readings come out as expected. I do not want a reading for the internal UPS. I tried to illustrate this, but perhaps it didn’t get across in my diagram.

I do see the possibility of the laptop shutting down, or otherwise causing problems, when the battery is disconnected while I’m swapping the batteries. The only reason I feel this may not be an issue is because the motherboard can be used entirely without a battery at all, through usb-c

When I think of this solution, it seems like the internal battery would be drained because the laptop will think I want the framework 13 battery charged. Is this correct?

I want the internal battery to always be drained after the “external” framework 13 battery.

Additionally, I’m concerned that when I unplug the laptop battery, there will be a delay in the pc swapping to the internal battery for power. This would result in the pc shutting down anyway.

I don’t know but I suspect that the SMBus / battery data line would report voltage, and the EC may see a voltage mismatch between SMBus and actual voltage supplied by the UPS inserted in-line.

But in this case the EC can see that USB-C is supplying power.

Again, I don’t know how it will behave, but what I’m saying is that you’re presenting the EC with a situation that it may not react well to. This not a use case that would it have been programed for.

I presume you don’t want to just provide UPS power via the USB-C in order to try to avoid power lost in the conversion, correct? It would be much easier tho. Plug and play.

For reference, my end goal is something like the old Lenovo Thinkpad’s “power bridge” technology.

That is correct. I want the “internal” battery topped off at all times unless the “external” framework 13 battery is depleted or detached.

Usb-C would result in the framework 13 “external” battery being charged from the “internal” usb-c battery

Additionally, if I can find a way to keep the “internal” usb-c battery at full charge from the framework 13 “external” battery, then there will be power loss when I detach the external battery.

There would be a delay cause by the internal battery having to go from receiving power to providing power.

Just keeping the framework 13 battery at full charge defeats the purpose. That is the battery that I need to be swappable.

In this case are you using the framework 13 battery as the internal battery?

This is not so.
An external USB-C PD power bank should provide power, not be charged from the Framework.

It is possible that some poorly designed power banks might have an issue, requiring replugging to switch the power direction.

This is the behavior I want to avoid, I always want the framework 13 battery to drain first. I have some parts on the way, so I’ll do some testing myself soon

I’m going for a small form factor build. In most cases I will have the PC plugged in and in this case I want to eliminate the bulk of the battery.

However, I do want the option of running without being plugged in. This is why I am going to design a solution for a detachable battery.

In the case that the connection ever fails on my detachable battery for a small amount of time or I accidentally bump the usb-c power cable, I want an internal UPS to ensure the pc doesn’t die.

This is why just using a usb-c power-bank would not work for me.

Hopefully this clearly explains my objective.

(I guess I’ve been posting too much, had to wait to make this reply)

1 Like

@Mptep, you have some highly confused thinking here. Your external UPS just needs to look like the standard charger, but have a battery in it that is charged from the mains or solar or geothermal or whatever your chosen prime power source is. It won’t run down the internal battery if you don’t make it look like it can be charged from the Framework.

This is just how any existing UPS works. You seem to be making an Everest sized mountain out of a molehill.

I’m agreeing with everyone else here. I don’t understand why you don’t just use a USB-C powerbank with both input and output ports.

I have an Anker Powerbank that can output up to 100W, can do power passthrough, and has 2 USB-C ports, one of which can be used for both input and output. If you want to have a hardware project, you could certainly hack apart a few identical powerbanks and figure out how to mount it to the bottom of the chassis of your laptop. Additionally, you won’t have to figure out how to safely charge and discharge your (I assume) lithium-based custom battery solution (which I didn’t see in any capacity of your diagram).

Additionally, the default charging behavior of the laptop would already support your desired use case.

  • Have USB-C power bank → plug in to laptop. Laptop then charges/runs from battery bank.
  • Battery bank fully discharges → battery bank turns itself off and laptop runs from internal battery: call it a UPS if you prefer.
  • Unplug discharged battery bank and replace with fully charged battery bank → upon sensing voltage from charged battery bank, laptop automatically switches back to being powered by the external battery.

Other major benefits over your franken-battery setup:

  • If your external battery has a hardware failure, you can easily replace it with a commercially available replacement relatively easily
  • You can safely travel with a powerbank; if you’re in the US and try to fly with a homemade/modified battery (especially if there are loose wires), I guarantee the TSA will want to chat. I can only assume similar caution will be displayed in most other countries.
  • PowerBanks can be sized up (and down) to allow for different durations of runtime. While in no way do I suggest getting something like an EcoFlow ‘solar-generator’ solely to power your laptop, they can power a laptop for literal days (if not weeks) and still have USB-C outputs. More realistically, they are often available in capacities larger than the Framework 13 (or even 16) batteries, and therefore may be able to provide longer runtimes than the current battery.

One downside:

  • One of the USB-C ports becomes used for external power. Though the port would already be used for charging, so… :person_shrugging: