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)
| File | Size | Uploaded | |
|---|---|---|---|
| epoxy_calc-1.1.0.tar.gz | 16.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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 logRelease 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