Giter VIP home page Giter VIP logo

irissat-flight-software's Introduction

Flight Software for IrisSat

This repository contains software for the IrisSat Command and Data Handling (CDH) board. The directory structure is like so:

  • /iris-fsw-libero contains the Libero project required for configuring the device.
  • /iris-fsw-softconsole contains the SoftConsole project required to write and debug the software.

Build Steps

Git submodules are used in this project. Use the command "git submodule update --init" to make sure you have the submodule files.

The CSP library used in this project must be built before the software can be compiled. Follow the instructions in iris-fsw-softconsole/Libraries/ to build the library.

Also the "Production" build of the softconsole project should be compiled before the Libero project is built because the Libero project will include the firmware binary as part of the FPGA image.

Required hardware

This project requires the Microsemi Smartfusion2 Maker Board.

Required Software

This project requires SoftConsole 6.1 and Libero 12.1.

Configure your workspace

  1. Select the root folder (i.e. IrisSat-Flight-Software) as your SoftConsole workspace.
  2. Go to File -> Import.
  3. On the Import window, select General -> Existing C/C++ Projects into Workspace.
  4. Add "iris-fsw-softconsole" to your workspace.

Build

  1. To build the SoftConsole project, go to Project -> Build All, or use Ctrl-B.

Configure FPGA

  1. Open the *.prjx found in iris-fsw-libero, with Libero 12.1.
  2. Connect the MSR board to the computer.
  3. In the "Design Flow" panel on the left, double-click "Synthesize".
  4. In the "Design Flow" panel on the left, double-click "Manage Constraints" and make sure constraint\io\user.pdc is selected.
  5. In the "Design Flow" panel on the left, double-click "Generate FPGA Array Data".
  6. In the "Design Flow" panel on the left, double-click "Update eNVM Memory Content", double-click on the Data Storage client and select iris-fsw-softconsole/Production/iris-fsw-softconsole.hex as the content file.
  7. In the "Design Flow" panel on the left, double-click "Run PROGRAM Action".

Debug

  1. Go to Run -> Debug Configurations.
  2. Double-click GDB OpenOCD Debugging to create a new Debugging configuration.
  3. Under the "Main" tab, browse and select the "iris-fsw-softconsole" project as the project.
  4. Under the "Debugger" tab, change the Config options to: "--command "set DEVICE M2S010" --file board/microsemi-cortex-m3.cfg"
  5. Under the "Startup" tab, make sure that "Pre-run/Restart reset" is not checked.
  6. With the MSR board connected, click "Apply", and then "Debug" to run the software.

Also if the Libero project is modified, the firmware should be regenerated and copied to the softconsole project. Note that the CoreSPI firmware must be generated from the Microsemi Firmware Catalog and copied to the firmware folder in the softconsole project

Software Dependancies:

Cubesat Space Protocol (CSP)

This library is provides a communication protocol stack following the TCP/IP model. The MBSat flight software uses the CSP library for communication with the communication system on the satellite.

Useful links:

  1. Maker Board IoT Demo project: https://www.digikey.com/eewiki/display/microcontroller/Getting+Started+with+the+Microsemi+SmartFusion+2+Maker-Board
  2. Maker Board "First Project" Demo: https://github.com/tstana/M2S010-MKR-KIT_FirstProj/wiki

irissat-flight-software's People

Contributors

aminya avatar ekapilik avatar joehowarth17 avatar rahmant3 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.