Skip to main content

On-the-sea epoxy calculator

I have ordered epoxy from https://hp-textiles.com, so there are two components that should be mixed by mass. If having a super-exact scale, stable hands, stable working position and presuming it's possible to pour very exact quantities of components from the canisters then it's super-easy mixing very exact quantities of components.

Now in reality the scale has a 1g resolution rather than the 0.1g it ought to have when mixing small quantities of epoxy, but worse still, you're on a boat, there are waves, and the scale keeps jumping from -2g to 22g when you've attempted adding 10g of base into a jar. And even if you're sure you've added 10g of base in the jar, when adding 6g of hardener it's easy to accidentally add 8g instead of 6g ... and then more base needs to be added.

The problems

This small program attempts to solve three (four) problems:

  • The scale showing different numbers each time one looks at it due to waves. The program will take a series of readings, chop away the extremes and take the average of the remaining numbers. It probably won't be perfect as the scale probably doesn't move linearly, but it's the best I can propose.
  • The calculation problem. It's easy enough to do the math in the head if adding 100g of base and then 60g of hardener. It's usually also easy to do the math in the head if adding, say, 20g of base and then 12g of hardener. Now, what if you've tried measuring 20g of base and ends up with 23.5g? Of course, still possible to do the math in the head, but the computer is more reliable at that (and possibly faster).
  • The overshoot calculation problem. So you've added 23.5g of base, that means you should add 14.1g of hardener, but ... oups, now there is 16.5g of hardener in the jar. How much more base is it needed to add?
  • The 1g resolution of typical scales is too high when one wants to mix very small quantities of resin. The proper solution to this is to buy a better scale, but when there are some waves and many measurements is taken, the end result (say, 6.3g, after many readings of 6g, and some few readings of 7g) may be closer to the truth than what the scale can show on a day without waves (6g).

(When mixing epoxy outdoors, there may also be a wind causing the readings to vary. I'm not sure the algorithms here are good to use in windy environment)

Installation

pip install epoxy-calc

Or with pipx:

pipx install epoxy-calc

Usage

Run epoxy-calc from the command line. It will interactively ask you for minimum six readings of the tara, six readings of the tara + base total weight, then it will tell how much hardener to add, ask for six more readings of the total weight, tell how much base or hardener should be added, etc, all until the ratio is more or less correct.

Future plans

Moved to TODO.md

Metadata

Release files for epoxy-calc 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for epoxy-calc 1.1.0
File Size Uploaded
epoxy_calc-1.1.0.tar.gz 16.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for epoxy-calc 1.1.0
File Interpreter ABI Platform
epoxy_calc-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 33.6 kB

Release files / epoxy_calc-1.1.0.tar.gz

Download URL epoxy_calc-1.1.0.tar.gz
Size 16.5 kB
Tags Source
SHA-256 checksum
How to use checksums
d7c2807d96ac8f396e1b2248ccc2b90904246dcdaeb8f2ac9e3f124922a48e0b
BLAKE2b-256 checksum
How to use checksums
8091ef6904a916ea1962b7567bf385d10da9ab2997395f3a6d3b481a301327ca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Dec 21, 2025.

Transparency log

Release files / epoxy_calc-1.1.0-py3-none-any.whl

Download URL epoxy_calc-1.1.0-py3-none-any.whl
Size 17.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
66211772c371b49872a6107702ba9c1a355bf94dc05cc28b5c0b2fcc24e857e4
BLAKE2b-256 checksum
How to use checksums
16265d316f18bfb316f92972433d16758225bfeaf7dab4420fb60d557784db0f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Dec 21, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files

1.0.10

2 release files

0.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page