function savecsv(ExpData, arduShort, tunnelData)
    % SAVECSV Save synced and clean data to a single CSV file.
    % -----
    % TODO

    % ----------------------------------------------------------------------------------------------
    % (c) Copyright 2022 University of Liege
    % Author: Thomas Lambert <t.lambert@uliege.be>
    % ULiege - Aeroelasticity and Experimental Aerodynamics
    % MIT License
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    % Constants and defaults

    FULL_TABLE_HEADER = {'Time', 'Angle1', 'Angle2', 'Power1', 'Power2', ...
                         'Fx1', 'Fy1', 'Fz1', 'Mx1', 'My1', 'Mz1', ...
                         'Fx2', 'Fy2', 'Fz2', 'Mx2', 'My2', 'Mz2'};
    STATIC_TABLE_HEADER = {'Time', ...
                           'Fx1', 'Fy1', 'Fz1', 'Mx1', 'My1', 'Mz1', ...
                           'Fx2', 'Fy2', 'Fz2', 'Mx2', 'My2', 'Mz2'};
    SAMPLING = 1000;

    ALWAYS_OVERWRITE = true;

    if isempty(arduShort)
        tableHeader = STATIC_TABLE_HEADER;
        time = (0:1 / SAMPLING:(size(tunnelData, 1) - 1) / SAMPLING)';
    else
        tableHeader = FULL_TABLE_HEADER;
        time = arduShort(:, 1);
    end

    % Make filename
    [path, ~] = fileparts(ExpData.tunnelFile);
    dirSplits = strsplit(path, filesep);
    testCase = string(dirSplits(end));
    filename = sprintf('%s-%0.0fcm-f%0.2f-U%0.1f.csv', ...
                       testCase, ExpData.dx * 100, ExpData.freq, ExpData.airspeed);

    savefile = fullfile('data/cleaned', dirSplits(4), filename); % FIXME Better detect splits

    if ~exist(string(savefile), 'file') || ALWAYS_OVERWRITE
        % Merges the two arrays together and put it in table
        size(time);
        size(arduShort);
        size(tunnelData);
        cleanedArray = [time, arduShort(:, 2:end), tunnelData];
        cleanedTable = array2table(cleanedArray, ...
                                   'VariableNames', tableHeader);

        % Write table to file
        writetable(cleanedTable, string(savefile));
    end
end
