This thesis describes the process of implementing the software part of acommunication sub-system for a student built satellite (CubeSat). The implementationconsist of a communication protocol in the data link layer thatutilizes AX.25 frames for communicating with a ground station based on amateurradio equipment. The development and usage of this communicationprotocol are based on data communication theory, link budget calculations,efficiency and availability analyzes together with practical tests. The steps inhow this software has been developed and evaluated are described, and canbe useful for other project that could benefit from this communication protocol.Source code listings are included. The reader should be familiar withcommunication theory, data communication, programming and electronics.