Dude, every electronic signal is running through the *hardware* layer. You press the X button on the peripheral which converts to an electronic signal in the wires of the controller *hardware*. The bluetooth *hardware* in the controller turns that electronic signal into a wireless signal. The bluetooth *hardware* in the console turns that signal into an electronic signal which it sends to the I/O/Interrupt handler *hardware* which then sends the message to the software that is currently running on the console. All of this is invisible to the user, of course, since the uses just sees a prompt on screen to press the x-button and when they do, the screen responds, but all the communication between the controller and the screen is happening in the hardware layer.
If one end of that hardware layer is being revised, it makes complete sense that the other end of the hardware layer also needs to be revised.