From Arduino Prototype to Finished Product: Custom Board and Housing in One Workflow

From Arduino Prototype to Finished Product: Custom Board and Housing in One Workflow

A kiosk technician opens a cash compartment to clear a note jam and finds a loose jumper wire on the control stack. The cash-handling equipment maker can restore service, but the prototype is too fragile for a manufacturing partner. Its electrical engineer built it around an Arduino Mega 2560, two shields, and separate motor boards.

The prototype had done its job. It proved that a bill acceptor, coin recycler, ticket printer, and keypad could work together. It had also accumulated several hand-soldered leads and spacers cut from a plastic sheet. Every service visit meant tracing which module owned a signal before touching the machine. The factory wanted one controller board and a tray that could be installed without reworking the kiosk frame.

The kiosk made the prototype's loose edges visible

The electrical engineer began by writing down each external connection. The recycler sent status over CAN. The ticket printer used a serial link. The door switch and note-path sensors used 24 V inputs. A pair of brushed motors drove the cash gate and ticket feed. The existing installation ran from a protected 24 V supply and left a 150 by 112 millimeter space inside the service bay.

She imported the prototype schematic and compared it with the station's wiring drawing. The Arduino stack used three different connector families, and one shield had a duplicated connector label. The electrical engineer made the bill acceptor, printer, keypad, motor outputs, and door sensor into named interfaces before laying out the integrated board. That gave the service technicians one connector map to learn.

The new 118 by 82 millimeter, four-layer board used an STM32G474RET6 controller, a TJA1051 CAN transceiver, two DRV8876 motor drivers, protected 24 V inputs, and a USB-C maintenance port. The electrical engineer kept the motor current loop along one edge and the low-level keypad and sensor signals on the opposite side. She added test pads for the two motor outputs, CAN, and the 5 V logic rail.

The Flux agent created the schematic and routed board from the electrical engineer's written requirements. It checked the candidate parts against datasheets and stock, and kept the BOM aligned as the design changed. The electrical engineer reviewed motor-driver thermal paths and connector pin order. She edited a silk label by hand after seeing that a service technician would read it upside down through the kiosk door.

Give the electronics a tray that belongs in the machine

The old plastic spacers had no repeatable datum. The electrical engineer and controls engineer measured the bay in three kiosks, then imported the frame STEP file. The bay varied by less than 0.6 millimeters, so they set the tray against the two stamped rails rather than the back wall. That preserved the access path to the note cassette.

The new tray used 1.5-millimeter powder-coated steel with four M3 board standoffs and two captive mounting tabs. Its 142 by 104 millimeter footprint fit the existing service bay. Cable openings followed the machine's existing grommets, while a folded shield separated the board from the cash cassette. The tray could be lifted out after removing two fasteners, leaving the cassette and printer in place.

The electrical engineer inspected the board within the tray in 3D and X-ray. The tallest motor driver package cleared the folded shield by 2.4 millimeters. A screw head sat too close to the USB-C plug, so the controls engineer moved the tab 5 millimeters outward. They checked the tray's stiffness and confirmed that the motor terminals remained reachable with a screwdriver. A small finger notch also made it possible to pull the board without touching the cash mechanism.

The team kept the signal connectors on the front edge and placed the motor terminals toward the side wall. This made the cable paths visible during installation. The controls engineer changed the tray's service slot to match the PCB's revised USB-C location, and the electrical engineer checked the full assembly against the maintenance door's swing.

The requests behind the integrated controller

Replace the Arduino Mega and stacked shields with one controller for the bill acceptor, coin recycler, ticket printer, keypad, door switch, and two 24 V motors. Keep the CAN and serial interfaces available for service review.

Lay out the 118 by 82 millimeter board with the STM32G474RET6, TJA1051 CAN interface, dual motor outputs, and protected logic supply. Separate high-current paths from the sensor inputs and expose test points for field diagnosis.

Fit this controller into the 150 by 112 millimeter service bay. Preserve the cassette removal path, use the two stamped rails for tray location, and check driver, terminal, and USB-C clearance inside the assembled kiosk.

A technician could identify every connection

The electrical engineer finished the board and tray review in an afternoon. The integrated design retained the kiosk's power, cash, printer, keypad, and interlock interfaces. She ran design rule checks and circuit simulation on the 24 V input and motor-drive sections. The controls engineer reviewed the steel tray in the same project and approved the connector and screwdriver access.

The finished control assembly used one four-layer board instead of the Arduino stack. Its electronics included the STM32G4 controller, CAN transceiver, dual motor drivers, protected inputs, test pads, and keyed connectors. Its mechanical parts included the folded steel tray, four standoffs, captive mounting tabs, service slot, and shield. The manufacturing partner could quote the board and tray from one controlled revision.

At the next service rehearsal, a technician followed the printed connector labels from the door switch to the cash gate. There was no wire to move between stacked modules. The service team could remove the controller tray while leaving the note cassette undisturbed. The electrical engineer added a board-level test for CAN response and motor direction to the factory's acceptance sheet.

The change did not make the early Arduino prototype a mistake. That stack helped the maker discover the product's signal flow and test the kiosk's core functions. The custom board gave that learning a stable electrical and mechanical form. The tray translated the same decisions into a mounting datum, service path, and repeatable connection scheme for the production machine.

Before consolidating a prototype stack

  • List every module, external signal, power rail, and service connector.
  • Verify the actual pinout against the wiring diagram and installed machine.
  • Place motor and switching paths apart from sensor and communication signals.
  • Measure the machine bay and model the tray, standoffs, shields, and access door.
  • Check that technicians can see labels and reach terminals after installation.
  • Prepare the board, BOM, test points, and tray drawing from the reviewed revision.

Start your project at flux.ai

About the author

Matthias Wagner

Founder & CEO at Flux

Matthias is the Founder and CEO of Flux, a hardware design platform that's revolutionizing how teams create and iterate on circuits. Find him on Flux @natarius.

Let’s start building.

Let’s build your idea together. All you need to do is describe what you want to make, or what problem you want to solve. Flux will work with you to make it a reality.

Try it Free
Close-up of a Flux-designed printed circuit board