Back to projects[ Project file · P 08 ]

OWL Inventory

OWL Inventory is a web system for the R&D division of PT Origin Wiracipta Lestari (OWL). The team makes IoT devices for palm oil plantations. Examples are tank level sensors, rain gauges, fingerprint attendance machines, and GPS trackers.

Primary stack
PHP
Technologies
06
Features
15
[ Screens ]09 FILES · CLICK TO ENLARGE
[ Overview ]

The system starts with the parts. Staff record each electronic part, its price, its stock, and its storage location. Each device type has a bill of materials. When staff produce a batch, the system removes the parts from stock and calculates the production cost of each device.

When a new device starts for the first time, it sends its chip ID to the system. The system gives the device a serial number. The device also sends its MAC addresses, firmware version, and sensor test results. A device passes quality control when all test results are complete. Staff then print a barcode label for the device.

Staff send devices to client companies and record each shipment, return, and replacement. The device status page shows each device at a client site. It shows the temperature, battery level, error code, and last online time.

The system also manages repairs. Staff record the damaged devices that a client sends back. Then they follow each repair step from arrival to return shipment. The system makes a signed service report as a PDF file.

The team also uploads new firmware for each device type. Devices check for a new version and download it automatically.

Key features

15 ITEMS
  1. F.01

    Staff record each part with its group, price, stock, storage location, and purchase link.

  2. F.02

    Each device type has a bill of materials with the parts and quantity for one unit.

  3. F.03

    Before production, the system shows the necessary parts, the remaining stock, and the total cost.

  4. F.04

    Production removes the parts from stock and calculates the production cost of each device.

  5. F.05

    Each new device gets a serial number automatically when it connects for the first time.

  6. F.06

    A quality control list shows which devices passed all sensor tests and which tests are missing.

  7. F.07

    Staff download a barcode label with the serial number and the WiFi and Bluetooth MAC addresses.

  8. F.08

    Staff send devices to clients, take them back, and replace a damaged device with a new one.

  9. F.09

    A live status page shows the temperature, battery, errors, and last online time of each device.

  10. F.10

    Staff upload new firmware, and devices download it automatically when a new version is available.

  11. F.11

    Staff track each repair step and print a signed service report as a PDF file.

  12. F.12

    Staff make purchase requests for parts, get approval, and track each item until it arrives.

  13. F.13

    Report pages show production per month, repairs per month, and the parts used most often.

  14. F.14

    Every stock change goes into a history log with the user, time, and quantity.

  15. F.15

    Admins have full access. Users can only see stock, device status, and history.

Technical concepts

owl-inventory/concepts13 entries
  1. Inventory management for electronic parts with bill-of-materials production.
  2. Automatic stock deduction and production cost calculation for each device batch.
  3. Device registration API that gives a date-based serial number to each new IoT device.
  4. Over-the-air firmware updates by product and hardware version.
  5. Remote device health monitoring with online, idle, and offline status rules.
  6. Quality control check based on complete device and sensor data.
  7. Barcode label generation for device identification.
  8. Repair workflow tracking from arrival to return shipment.
  9. PDF document generation for signed service reports and purchase requests.
  10. Purchase request approval flow with item status tracking.
  11. Role-based access with separate admin and user menus.
  12. Audit log for all stock and device movements.
  13. Data analysis API in Python that sends chart data to the PHP front end.