tehoLogistics is a java program designed to help keep track of part inventories and optimize running costs in the context of electronics manufacture.

It currently is in early alpha form.

The program is open source released under the MIT license.

The source code and binaries are available on gitHub.


  • Imports invoices Mouser PDF, Digikey PDF, Arrow HTML (email)
  • Keeps current inventory and average unit cost of application identical parts in CSV file
  • Removes inventory via “building” lists (AKA making PCBs), lists defined externally via CSV file
  • Look up and modify inventory data amount of single parts
  • Check if parts are on hand for production of set of designs and create shopping list if needed
  • Create buy lists for lowest cost source importable at Arrow, Mouser, Digikey parts needed a production run


It is probably best to view these full screen at 720p than embedded…

This screen cast explains how to use the program:

The Adobe Flash Plugin is needed to display this content.

This screen cast explains some of the code base and design choices:

The Adobe Flash Plugin is needed to display this content.


Please see the readme on gitHub and gitHub in general for bugs. Eagle eyes may have noticed “Multiplicity” has a typo in the screencasts, which I noticed when watching them back.

Workflow Design

The following is the logical workflow for tehoLogistics the numbers are the main menu command number to complete the task.

Think of board design.
Select parts.
Design board.
Buy initial parts quantity.

get parts in mail, import invoices in tehoLogistics (1)

Make sure parts on hand for project (2) -> no: goto C; yes: continue
Sit down and physically build the boards
Withdrawal parts (3) - tells you what it cost to build what you just made 
sell widgets for more than they cost to make
goto B

source best cost for parts needed from "2" (5)
goto A

Part Sourcing

Parts are abstracted to allow a partList item to point to multiple manufactures and sources for a single line item. (For instance there could be 5 acceptable SOT-23 3.3V LDOs all from different (multiple) sources and manufactures which would be stored in a single inventory part if they are interchangeable).

Because of stocking, minimum order sizes and simple part repricing, the lowest cost for a part depends on both when you buy and how many you something you need.

For this reason tehoLogistics attempts to find the lowest currently available cost at the time of ordering for the parts you need, via website queries.

Some logical questions to ask are:

  • Is the item in stock or would it create a backorder?
  • Would this order be cheaper from a single source because of shipping overhead?
  • Is the item cheaper if I buy more? (IE I need 49 and there is a price break at 50, therefore 50 is less and I should round up).
  • Is there a large price break that would cost more but save a lot in the long run if feature runs are this size?

Currently (0.10) “more parts for less” question is implemented. The other questions and more will be added in future versions.

tehologistics/overview.txt · Last modified: 2014/08/01 20:14 (external edit)
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki