Calculate back propagation for convolutional neural network

I'm in the middle of adding convolutional neural network to my machine learning framework that I built from scratch using numpy. I documented how I calculate back propagation in the following two pages: For now, I'm setting the stride to 2 on a conv layer instead of using a max pooling layer to down-sample data therefore I'm covering calculation for this specific use case. Please note that CNN implementation in the repo is being debugged, and is not ready for the prime time yet. As soon as I'm done, I'll post an update.