Without being specific, Obama said the nation has to take the hard steps to turn away from gun violence.
At the service at the Marine Barracks near the Navy Yard, Obama spoke about each of the 12 people killed by a naval contractor wielding a shotgun. Another 12 were wounded.
"We cannot begin to comprehend your loss," the president told family members seated in the front row of his audience. "We know that no words we offer today are equal to the magnitude, to the depth of that loss."
Obama said the United States comes together as a nation "to grieve with you."
The president said he was taken with the "sense that this has happened before ... how this senseless violence in the Navy Yard echoes other recent tragedies. As president I have grieved with five other communities ripped apart by violence."
The nation was gripped by an epidemic of violence "from the streets of Chicago to neighborhoods not far from here" in Washington. " ... Once more our hearts are broken. Once more we ask why. Once more we seek wisdom through God's grace."
Obama said the tragedy at the Navy Yard "ought to obsess us. It ought to lead to a transformation." Other countries have responded to similar tragedies, changed conditions "and mass shootings became a rarity. ... But here In the United States ... nothing happens. ...
"Sometimes I feel there's a creeping resignation. ... That this is somehow the new normal. There's nothing normal in people being gunned down at their work," he said. "There's nothing normal about children being gunned down in their classrooms."
Obama said, "What's different in America is it's easy to get your hands on a gun." There is the "sense that politics are frozen and nothing will change. I do not accept that." Change will happen, but it not come from Washington, he said
"Change will come ... from the American people," he said. " ... The question is, do we care enough .... Even though it's hard, and it's politically uncomfortable.
"Our tears are not enough.... We're going to have to change," Obama said.