I thought to post my thoughts about blind battles as they sometimes seem to get furious at the micros. This is actually a concept I don't fully understand, so I'm only giving my thoughts, so please don't come to knock my door if you end up losing a big pot after reading this

This stuff may lead you into trouble if you don't understand what you are doing, so think about these things yourself and don't take all of them as "rules". Please share your thoughts and advice as well.
The small blind
I'll talk about small blind first. I guess everyone agrees that limping from the sb is generally bad if it's only you and the bb. Especially against a bb who will like always raise you or if the bb is so tight that he will fold to a raise.
TBH, I don't even like limping with AA for deception. You are essentially wanting the bb to raise. If the bb is likely to raise, he is pretty likely to call or 3bet if you raise, so in the long run we are getting more money in preflop if we just go ahead and raise ourselves.
I think there are a few exceptions to the "always raise or fold rule". Let's say you have a fish with a short stack on the bb who folds like never if he has something and you have a hand that flops well, but is not really great preflop. What I mean by hands that flop well are hands like AT, QJ, 67 suited etc.
I will often just limp if I know that he is only raising premium hands. I don't want to build the pot without having a hand if he is not folding. And if he is not folding, it's easy to build the pot when we hit a hand and stack him if he is short. I'm probably just folding hands like 89o, K7o that need to flop pretty nicely to be comfortable against his range.
If he has around 100bb stack, I would go ahead and raise those hands that I would limp with if he was short, but still fold the ones that I would also fold if he was short.
Raising ranges
What hands do we raise then against different opponents? Let's assume we have about 80-100bb stacks to simplify things. We will talk about each type of bb in their own sections which are:
#1 Pretty aggressive regs
#2 Nits
#3 Aggrodonks/Spewtards/Holabaloos
#4 Calling stations
#1
We usually want to have a hand to raise from the sb against a reg on the bb if we expect him to be 3betting a lot. Essentially we want a hand that is clearly a head of his 3betting range as he has position. So basically if the opponent is 3betting like 50% of the time, I want at least something like AT, any pocket pair, QJ suited or something that we can defend with. If we have a small pp, we can't just call. If he is 3betting a lot, you can't just raise/fold with a hand like 33. You will have to either fold or raise/4bet.
Let's say you have QJ suited, you raise and he 3bets you with a pretty wide range. Depending on the dynamics, you can 4bet or call. If you call, you can checkraise with draws, ch/c or lead with pairs. If you hit absolutely nothing, you basically just have to give up or checkraise if the board is something that hits well your range, but doesn't really hit his range.
So against regs that 3bet a lot, raise only a hand you are not folding to a 3bet, but be aware that he might notice your tight opening range and may start tightening up his 3betting range.
#2
Nits are the most easy group the play against from the sb. The tighter they are, the more hands you open unless you start seeing resistance. But very often they just keep folding. Always fold when they 3bet you if you don't have a hand like at least 99+ or AK.
And a hand like 99 or TT is garbage on a A or K high flop and if you flop an overpair, you can probably just lead, because nits don't usually raise with pure A high and they will never have a smaller pp. If you flop an overpair with 99 you should probably b/f. If he calls, evaluate the turn. If the flop was dry like 8 high and he called, you are very often beat on the turn.
Remember that when a nit 3bets you pre, he has very few draws in his range, because AKs and maybe AQs are the only hands that give them a draw reasonably often on the flop.
#3
Against maniacs, I would advice to raise only a very tight range from the sb. You could r/4bet with a wide range if their aggression exceeds only to 3bets and they just fold to a 4bet. But without reads, raise only with a tight range that will always continue after a 3bet
#4
If you have a station on your left who like always calls on the flop and calls you on the river very light, just fold bad hands preflop from the sb. Raise with hands that flop well and 3 barrel them when you hit something decent. I talked about the ranges a bit in the introduction.
The big blind
Big blind is of course the better position of the two. Generally speaking you can 3bet a lot loose sb openers who appreciate the power of position. Against players who raise often and will defend your 3bet, I generally tighten up my 3betting range or just call with a nice hand.
In those kind of spots it's better to be fairly comfortable when you hit the flop, rather than start making moves when you have air. When you show aggression, people are generally making mistakes more often when they don't have hand, so you generally want to have a hand to punish them for their mistakes.
If the sb limps, I usually raise with any 2 cards at least to know how they react unless the sb is a short stack or a reg who like never limps. Then I check behind without a hand and play cautiously as he is often trapping if he suddenly limps when he normally raises a lot.