I'm fairly certain I understand how to use 常常，but I don't know if 往往 is used any differently (they both have the same translations). Are there any differences in usage I should be aware of?
Basically they have the same meanings. Now let's focus on the difference, but first wrap your head in duct tapes in case it explodes.
往往 is usually used with conditions supplied. Without any condition it is usually wrong:
我常常加班。 -- Good.
我往往加班。 -- Wrong.
北京往往下雪。 -- Wrong.
北京往往在冬天下雪。-- Good. Notice the constraint.
努力的人往往会成功。-- Good, maybe better.
However, 往往 can only live in the result, not in the condition:
如果你常常努力，你就会成功。-- 往往 is wrong.
如果你努力，那你往往会成功。-- Good. 常常 is also OK.
往往 focuses on the experience of previous observations, 常常 focuses on existing phenomena. This may not matter much depending on the context:
猫往往会把猎物带给主人。 -- It's an observation, a summary, and maybe also a prediction.
猫常常会把猎物带给主人。 -- It's just an observation, but really, no big difference.
When 往往 is used, there is often a slight enhancement of emotion or stress:
我常常加班到深夜。-- A general statement.
我往往加班到深夜。-- Notice the sense of disapproval.
我常常一加班就头疼。-- A general statement, but...
我往往一加班就头疼。-- The negative sense of 头疼 eludes the difference of 常常 and 往往.
小明常常在班里考第一名。-- A general statement.
小明往往在班里考第一名。-- Good. Though not negative, it sounds more emotional.
小明往往在班里考倒数第一名。-- Good. Negative and emotional.
北京常常在冬天下雪。-- A general statement.
北京在冬天常常下雪。-- Notice although 常常 appeared at different places, it's more of a decorator of the whole sentence.
北京往往在冬天下雪。-- Notice the slight stress. Winter, not spring.
北京在冬天往往下雪。-- Snows, not rains.
常常 can be used in the subjunctive mood. 往往 can't:
你要常常来找我玩哦。-- 往往 is wrong.
我建议你常常复习一下。-- 往往 is wrong.
常常 can be used in the imperative mood. 往往 can't:
常常来找我玩哦！-- 往往 is wrong.
常常复习一下！-- 往往 is wrong.
如果有时间，就常常复习一下！-- 往往 wrong, even with conditions supplied.
Also the negative form:
我不常常吹牛。-- 不常常 is good.
我常常不吹牛。-- 常常不 sounds weird because 吹牛 is an explicit action.
我常常不在家。-- 常常不 sounds OK because 在家 is a status.
懒散的人往往不会成功。-- 往往不 is good. It's the only form of negation.
懒散的人不往往会成功。-- 不往往 is absolutely wrong.
There's a footnote for the 往往 entry in 规范 that says:
注意 跟“常常”不同。㊀“往往”可以指将来发生的事; “常常”一般不用于将来。㊁“往往”的词义跟“往”的各义项都不同; “常常”跟“常”⑥词义接近。
往往 can be used for future events - 常常 in most instances cannot.
往往 has nothing to do with any meanings of 往 alone. 常常 has the same meaning as one of the definitions of 常 alone.
There's also a footnote for the 常常 entry describing the difference between 常常 and 通常 that I think is good to mention here, too: (only the relavent part is below)
常常 mostly describes actions or behavior that occurred repeatedly during a relatively short period of time.
Both answer from user3306356 and Wang Dingwei are correct, I just want to add a simple explanation on top of their answer:
mostly happens (in present); is supported by evidences from the past. 北京十月常常下雪 - Beijing was always snowing on Oct, therefore we use 常常
will most likely happens; is supported by forecasting / vision in the future. 努力的人往往会成功 - People who works hard will most likely success.
I think 往往 implies that the statement is made from one's judgment, while 常常 is a more general word.