Based on the error message I guess that either Net or Normie_net is raising this error, since these are using batchnorm layers.
In your custom conv layer you are hardcoding the device of the tensors to be CUDATensors, so I assume the output will also be on the GPU. Based on your code, conv_model should be on the GPU, so I’m unsure what’s causing this issue.
I would recommend to check all parameter devices via:
for name, param in model.named_parameters():
    print(name, param.device)

of all used modules and make sure all parameters (and buffers) are on the GPU.