A cruise line company acknowledged Wednesday that its disabled ship in the Gulf of Mexico had mechanical problems weeks before an engine-room fire left more than 4,000 passengers and crew members stranded in the open waters.

Carnival Cruise Lines also cancelled a dozen scheduled cruises aboard the Carnival Triumph, which is now being towed to a port in Mobile, Ala.

CTV News has learned that Ottawa is sending consular officials to Mobile to assist any Canadian passengers on board.

Passengers have complained about horrible conditions on crippled liner, including filthy bathrooms, limited access to food and sweltering rooms due to lack of air conditioning.

"They're having to urinate in the shower. They've been passed out plastic bags to go to the bathroom," Robert Giordano, whose wife is on the ship, told The Associated Press. "There was fecal matter all over the floor.”

Others said that some people are getting sick and that the ship is in poor condition overall.

But the company is disputing those claims, saying staff are doing everything possible to keep the passengers comfortable.

Carnival President Gerry Cahill has said the ship still has running water and most of its public restrooms and some guest cabin bathrooms are working.

The ship left Texas last Thursday for a four-day cruise, with 3,143 passengers and 1,086 crew members on board. On Sunday, an engine room fire knocked out power to the vessel, leaving it drifting in the waters about 240 kilometres off Mexico’s Yucatan Peninsula.

No one was injured in the fire, but one passenger with a pre-existing medical condition was taken off the ship as a precaution, a company spokesperson said.

Carnival spokesperson Vance Gulliksen said there was an electrical problem with the Triumph’s alternator on the ship’s previous voyage and repairs were completed on Feb.2.

An email sent to passengers on Jan. 28 said the problem was affecting the vessel’s speed and would prevent it from docking in two ports.

The National Transportation Safety Board is investigating the incident.

The cruise liner drifted until Tuesday, when tugboats arrived to take it to shore. The ship was originally going to be towed to Progreso, Mexico, but it’s now headed to Mobile. It’s not expected to arrive there until Thursday afternoon.

Carnival Cruise Lines has chartered 15 buses to haul passengers to hotels in New Orleans, according to a spokesperson for the city of Mobile.

Carnival said passengers would also be able to fly home on chartered flights.

But family members say the company has provided limited information about when the passengers are expected to arrive in Alabama and which hotels they will go to.

Passengers are supposed to get a full refund and discounts on future cruises.

With files from The Associated Press