Arduino zero programming through uart

Hello!

I'am Currently working on a project where you can upload the sketches with USB(TTL converter) or Bluetooth(Uart) to atmega328p, but I'am running out of memory so I wanted to upgrade my microcontroler to Atsamd21g18a same used in arduino zero. My question is can I upload sketches to zero using UART (using bluetooth) as well as USB (native usb port)?

Their is a application note in atmel website that say I can do it using SAM-BA bootloader but they didn't have a source code just gave .hex files.

Application note

Bootloading ARM with an open source loader tool and bootloader has proven to be an obstacle for me. It is one of the things that make AVR nice. I see that Kinetis may have the parts I was looking for (but have not tried).

http://www.nxp.com/products/microcontrollers-and-processors/arm-processors/kinetis-cortex-m-mcus/kinetis-symbols-footprints-and-models/kinetis-bootloader:KBOOT

So now the question is can I use the Teensy 3.5 toolchain and then upload over serial with that loader tool and bootloader (and can I compile the loader tool on Raspberry Pi).