Control applications over wireless sensor networks (WSNs) require timely, reliable, and energy efficient communications. This is challenging because reliability and latency of delivered packets and energy are at odds, and resource constrained nodes support only simple algorithms. In this chapter, a new system-level design approach for protocols supporting control applications over WSNs is proposed. The approach suggests a joint optimization, or co-design, of the control specifications, networking layer, the medium access control layer, and physical layer. The protocol parameters are adapted by an optimization problem whose objective function is the network energy consumption, and the constraints are the reliability and latency of the packets as requested by the control application. The design method aims at the definition of simple algorithms that are easily implemented on resource constrained sensor nodes. These algorithms allow the network to meet the reliability and latency required by the control application while minimizing for energy consumption. The design method is illustrated by two protocols: Breath and TREnD, which are implemented on a test-bed and compared to some existing solutions. Experimental results show good performance of the protocols based on this design methodology in terms of reliability, latency, low duty cycle, and load balancing for both static and time-varying scenarios. It is concluded that a system-level design is the essential paradigm to exploit the complex interaction among the layers of the protocol stack and reach a maximum WSN efficiency.