There are two different types of ADS-B, namely 1090ES and UAT.
In Europe, EASA requirements concern only 1090ES. Aircraft with MTOM over 5.700 kg are required to have 1090ES, but may in addition have FLARM. For light aircraft, FLARM is sufficient.
In the US, all powered aircraft need either 1090ES or UAT from year 2020, but may additionally have FLARM.
FLARM should however not be mixed up with ADS-B. The purpose of ADS-B is only to relieve the crowded 1090 MHz frequency and to give ATC more accurate data for separation purposes. FLARM is a collision avoidance technology similar to TCAS, but technically superior and more affordable than TCAS. Even if many FLARM devices also receive transponder and ADS-B Out traffic, ADS-B has limitations for collision avoidance. FLARM uses its own frequency and radio protocol, optimized for collision avoidance.