At the risk of stating the obvious, you either have a hardware issue or a software issue. Given that things work with the other software faulty wiring seems unlikely. That leaves software.
If the same sketch works with an UNO node you can probably rule out resource constraints -- both boards have the same processor and memory. I'd still keep an eye toward any dynamically allocated resources. Dynamic memory management on a system this constrained (and hard to debug) is always hit or miss. I try to avoid it if at all possible.
That leaves the probable cause as something that you're misusing that for some reason happens to work on the uno because the hardware is more forgiving, or randomly works for some reason beyond your control (compiler, linker, avrdude baud, etc.). I'd go back and double check each API call to make sure you are certain that you're passing the correct values.
You might want to post your sketch code so others can browse, too. We might see something you've overlooked.