Products · Prototypes · your need, built to work

A specific need,
solved with a
working machine.

Some products start with a customer's specific need rather than software we sell — a sample that has to be taken a certain way, a container that has to be filled without someone watching it. You bring the job and the constraints; we write the use case with you, then build the working prototype — electronics assembled and firmware written from the pin definitions up. The two machines below started exactly that way.

GAS ANALYZER LOGGER · LAB NETWORK LIVE FEED
H₂O₂ concentration
486.2ppb
H₂O content
1.884%

The Gas Analyzer Logger started as a prototype like these — a lab wanted to watch its gas analyzer and record the readings into an Excel sheet for data mining. It shipped, and is now a product.

PROTO-01 · Lab equipment · 2019

Air Sampler for a Lab

Automated microbial air-sampling machine
Electronics + firmware Arduino Mega · TFT touch

On-device screens · 320 × 240 TFT

Rebuilt from the firmware's own drawing code — real coordinates, palette and embedded bitmaps.

AIR SAMPLER 05-07-26 14:32:08 Options Start Measurement

Main menu — start a run or open Options; header carries the title, live clock and green rule.

AIR SAMPLER 05-07-26 14:32:08 Measurement Settings Air Flow Time 1 Low - Cleanroom 2 Medium - Lab 3 High - Ambient 4 Max - Outdoor 10 mins 1 hour 3 hours Custom <- Back Start

Measurement settings — pick an air-flow slot and run time; selected rows highlight red.

AIR SAMPLER 05-07-26 14:32:08 Sampler is running... Measuring time:60 mins Start time:14:05:22 End time:15:05:22 Time left: Plate Steps: 00:41:36 143 Cancel

Live run — the yellow time-left and cyan plate-step counters refresh every second.

A working prototype of an air sampler for a lab: the machine draws a controlled volume of air across an exposed agar plate, spins the plate while an air pump runs, and logs each run — operated entirely from a resistive touchscreen with a multi-language UI. TECKNIKA handled both the electronics assembly and the software.

What it does

  • Timed sampling cycles — presets of 10 min, 1 h, 3 h, or a custom duration.
  • Coordinated motion — plate-spin motor and elevator/lift driven through a second Arduino over I²C; air pump on PWM.
  • Sensor-guided — lid, plate and lift end-stop sensors handle calibration and safety interlocks.
  • Self-provisioning storage — users, pump-calibration slots and language files persist to an SD card, created on first boot.
  • Bilingual touchscreen UI — Danish / English, with an on-screen keyboard and idle screen-saver.

Firmware structure

Arduino C++MCUFRIEND_kbv TouchScreenI²C motion slave DS1307 RTCSdFat
PROTO-02 · Production equipment · 2020 · v1.05

Powder Filler — Valve Controller

Level-triggered powder filling station
Custom valve control Arduino Mega · EEPROM

On-device screens · 320 × 240 TFT

Rebuilt from the firmware's own drawing code — real coordinates, RGB565 palette and embedded bitmaps.

POWDER FILLER i V1.05 Valve Monitor Mode Status Delay Auto Closed 5 mins Sensor 4:59 Valve Set Delay

Main screen — auto mode, valve closed, level sensor covered, 4:59 re-open countdown.

POWDER FILLER i V1.05 Valve Control Auto Open Closed Back

Valve control — Auto engaged (underlined); manual Open / Closed override.

POWDER FILLER i V1.05 Set Valve Delay Minutes: 5 - + Save Back

Set Valve Delay — adjust 1–180 min; Save greys out once the value is stored.

A powder filling station that opens and closes a material valve automatically from a single point level sensor. A VEGAWAVE 61 vibrating switch reports whether the container is full; when the level drops the firmware dispenses powder, then closes and runs a configurable delay before the next cycle — preventing rapid re-cycling. A touchscreen shows live status and mode; every setting survives a power cut in EEPROM.

What it does

  • Three valve modes — Auto (follows the sensor), Open and Closed manual overrides, stored in EEPROM.
  • Debounced auto logic — opens on "not full", closes ~1 s after "full", then counts down before re-opening.
  • Adjustable delay — 1 to 180 minutes, shown live as mm:ss on the main screen.
  • Persistent settings — valve mode, delay and language written to EEPROM; sensible defaults on first boot.
  • Bilingual UI — English / Danish, toggled by a flag button and saved.

Firmware structure

Arduino C++MCUFRIEND_kbv TouchScreenTimedAction EEPROM

Have a need nothing on the market solves?

Tell us what it has to do. We write the use case with you, quote the prototype, and build the software — and, if the job needs it, the electronics and firmware — to match.

Start a prototype →