IMPORTANT: single output buffer, improved synchronisation