Wood and building materials
Marking timber, panels, concrete products and pipe — porous, rough, and rarely clean.
Porous, rough, and dusty
Timber, board, concrete and fibre-cement all absorb ink, which sounds helpful and mostly is. A code dries almost instantly and does not smear.
The difficulty is elsewhere. These surfaces are uneven, so the distance from the printhead to the product changes constantly and a system with a tight throw distance will produce inconsistent results. The environment is dusty, and dust and inkjet nozzles are natural enemies. Products are large and heavy, so they move slowly but present awkward geometry.
Concrete adds a further problem: it is often marked while still green, and the surface is damp and alkaline.
What fits
Large-character drop-on-demand systems are the standard here. They tolerate a working distance of up to a couple of centimetres, which absorbs the surface variation, and they produce characters large enough to read on a stack in a yard.
Where the products are stacked or stored and cannot pass a fixed station, a handheld inkjet printer is the practical answer — the operator brings the printer to the product.
Ink selection matters more than usual. Marking concrete needs a different formulation from marking timber, and both differ from marking a plastic pipe.
What to decide before you buy
Does the product pass a fixed point, or is it marked where it stands?
How much does the surface height vary as the product passes?
For concrete: is it marked green or cured?
Related: construction products covers the CE marking requirements that usually drive the specification.
Recommended printers

EBS-1600
Large-character drop-on-demand printer with self-pressurised, tool-free cartridges.

EBS-1800
Large-character DOD printer that cascades up to four printheads per controller for tall characters.

Handjet EBS-250 Edition
Cable-free handheld inkjet printer, under a kilogram, for marking on the move.