Skip to content

Commit

Permalink
Merge pull request #157 from spacelab-ufsc/dev
Browse files Browse the repository at this point in the history
Dev: Periodic merge
  • Loading branch information
mgm8 authored Apr 30, 2020
2 parents 166fcfb + 7a18215 commit 47804ce
Show file tree
Hide file tree
Showing 247 changed files with 218,374 additions and 146,312 deletions.
Binary file modified doc/build/obdh2_doc.pdf
Binary file not shown.
23 changes: 16 additions & 7 deletions doc/chapters/firmware.tex
Original file line number Diff line number Diff line change
Expand Up @@ -30,24 +30,25 @@ \section{Tasks}

\begin{table}[!h]
\centering
\begin{tabular}{llllll}
\begin{tabular}{lccccc}
\toprule[1.5pt]
\textit{Name} & \textit{Priority} & \textit{Initial delay [ms]} & \textit{Period [ms]} & \textit{Stack [bytes]} \\
\midrule
Startup (boot) & Highest & 0 & Aperiodic & 500 \\
Deployment hibernation & Highest & 0 & Aperiodic & TBD \\
Antenna deployment & Highest & 0 & Aperiodic & TBD \\
Watchdog reset & Lowest & 0 & 100 & TBD \\
Watchdog reset & Lowest & 0 & 100 & 128 \\
Heartbeat & Lowest & 0 & 500 & 128 \\
Periodic downlink & Medium & 5000 & 60000 & 128 \\
Uplink & High & 5000 & 1000 & TBD \\
Beacon & Medium & 1000 & 60000 & 2000 \\
Uplink & Low & 1000 & 10000 & 500 \\
EPS reading & Medium & 5000 & 60000 & TBD \\
EDC reading & High & 5000 & 1000 & TBD \\
Payload X reading & Medium & 5000 & 5000 & TBD \\
TTC writing & Medium & 5000 & 10000 & TBD \\
Radio periodoc reset & Low & 0 & 600000 & TBD \\
Radio periodoc reset & Medium & 600000 & 600000 & 128 \\
System reset & High & 0 & 36000000 & 128 \\
Read temperature & Low & 0 & 60000 & TBD \\
Read temperature & Medium & 0 & 60000 & 128 \\
CSP Server & Lowest & 0 & 500 & 1024 \\
\bottomrule[1.5pt]
\end{tabular}
\caption{Firmware tasks.}
Expand Down Expand Up @@ -78,7 +79,7 @@ \subsection{Heartbeat}

The heartbeat task keeps blinking a LED (``\textit{System LED}'' in \autoref{fig:status-leds}) at a rate of 1 Hz during the execution of the system. Its purpose is to give a visual feedback of the execution of the scheduler. This is tasks does not have a specific purpose on the flight version of the module (the flight version of the PCB does not have LEDs).

\subsection{Periodic downlink}
\subsection{Beacon}

.

Expand Down Expand Up @@ -114,6 +115,10 @@ \subsection{Read temperature}

This task reads the internal temperature of the microcontroller of the OBDH at every 60 seconds.

\subsection{CSP Server}

.

\section{Telecommands}

\begin{table}[!h]
Expand Down Expand Up @@ -203,6 +208,10 @@ \section{Hardware Abstraction Layer (HAL)}

DriverLib

\section{File System}

As file system, the Reliance Edge library is used \cite{reliance_edge} (version 2.4). Reliance Edge is a failsafe filesystem with an small footprint, targeting critical embedded systems with fewer resources. It works with a broad array of storage media including: eMMC, SD/MMC, NVRAM, USB mass storage and SATA (or PATA) disk.

\section{Protocols}

\subsection{NGHam}
Expand Down
8 changes: 8 additions & 0 deletions doc/chapters/introduction.tex
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,11 @@ \chapter{Introduction} \label{ch:introduction}
\item RTOS
\item Low power MCU
\end{itemize}

\begin{figure}[!ht]
\begin{center}
\includegraphics[width=0.75\textwidth]{figures/obdh2-pcb-3d.png}
\caption{3D view of the OBDH 2.0 PCB.}
\label{fig:pcb-3d}
\end{center}
\end{figure}
2 changes: 1 addition & 1 deletion doc/chapters/references.tex
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,6 @@
% \date 18/07/2019
%

\bibliography{references/ngham}
\bibliography{references/ngham,references/reliance_edge}

\addcontentsline{toc}{chapter}{References}
Binary file added doc/figures/obdh2-pcb-3d.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/figures/obdh2-pcb-bottom.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/figures/obdh2-pcb-top.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion doc/header/titlepage.tex
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
\thispagestyle{empty}

\begin{flushleft}
SPACELAB - OBDH 2 DOCUMENTATION - REV1
SPACELAB.OBDH2.2019.10.001 REV A. ISSUE 0.1
\end{flushleft}

\begin{figure}[!ht]
Expand Down
6 changes: 6 additions & 0 deletions doc/references/reliance_edge.bib
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
@misc{reliance_edge,
author = {Datalight},
title = {Reliance Edge},
year = {2020},
note = {Available at <\href{https://www.datalight.com/products/embedded-file-systems/reliance-edge-overview/}{https://www.datalight.com/products/embedded-file-systems/reliance-edge-overview/}>}
}
1 change: 1 addition & 0 deletions doc/spacelab_book.sty
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@
\usepackage{xcolor}
\usepackage[outdir=figures/]{epstopdf}
\usepackage{longtable} % Multiple pages table
\usepackage[math]{iwona}

% URLs font style
\urlstyle{same}
Expand Down
4 changes: 3 additions & 1 deletion firmware/.cproject
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@
<listOptionValue builtIn="false" value="${PROJECT_ROOT}/config"/>
<listOptionValue builtIn="false" value="${PROJECT_ROOT}/freertos/portable/CCS/MSP430X"/>
<listOptionValue builtIn="false" value="${PROJECT_ROOT}/app/libs/libcsp-1.5.16/include"/>
<listOptionValue builtIn="false" value="${PROJECT_ROOT}/app/libs/reliance-edge-2.4/include"/>
<listOptionValue builtIn="false" value="${PROJECT_ROOT}/app/libs/reliance-edge-2.4/os/freertos/include"/>
</option>
<option id="com.ti.ccstudio.buildDefinitions.MSP430_18.12.compilerID.ADVICE__POWER.1792356630" name="Enable checking of ULP power rules (--advice:power)" superClass="com.ti.ccstudio.buildDefinitions.MSP430_18.12.compilerID.ADVICE__POWER" useByScannerDiscovery="false" value="all" valueType="string"/>
<option id="com.ti.ccstudio.buildDefinitions.MSP430_18.12.compilerID.OPT_LEVEL.1099029684" name="Optimization level (--opt_level, -O)" superClass="com.ti.ccstudio.buildDefinitions.MSP430_18.12.compilerID.OPT_LEVEL" value="com.ti.ccstudio.buildDefinitions.MSP430_18.12.compilerID.OPT_LEVEL.off" valueType="enumerated"/>
Expand Down Expand Up @@ -95,7 +97,7 @@
</toolChain>
</folderInfo>
<sourceEntries>
<entry excluding="app/libs/ngham/unused|app/libs/ngham/fec-3.0.1/sumsq_sse2_assist.s|app/libs/ngham/fec-3.0.1/sumsq_mmx_assist.s|app/libs/ngham/fec-3.0.1/ssebfly29.s|app/libs/ngham/fec-3.0.1/ssebfly27.s|app/libs/ngham/fec-3.0.1/sse2bfly29.s|app/libs/ngham/fec-3.0.1/sse2bfly27.s|app/libs/ngham/fec-3.0.1/peakval_sse_assist.s|app/libs/ngham/fec-3.0.1/peakval_mmx_assist.s|app/libs/ngham/fec-3.0.1/peak_sse2_assist.s|app/libs/ngham/fec-3.0.1/peak_sse_assist.s|app/libs/ngham/fec-3.0.1/peak_mmx_assist.s|app/libs/ngham/fec-3.0.1/mmxbfly29.s|app/libs/ngham/fec-3.0.1/mmxbfly27.s|app/libs/ngham/fec-3.0.1/cpu_features.s|app/libs/ngham/fec-3.0.1/vtest615.c|app/libs/ngham/fec-3.0.1/vtest39.c|app/libs/ngham/fec-3.0.1/vtest29.c|app/libs/ngham/fec-3.0.1/vtest27.c|app/libs/ngham/fec-3.0.1/viterbi615.c|app/libs/ngham/fec-3.0.1/viterbi615_sse2.c|app/libs/ngham/fec-3.0.1/viterbi615_sse.c|app/libs/ngham/fec-3.0.1/viterbi615_port.c|app/libs/ngham/fec-3.0.1/viterbi615_mmx.c|app/libs/ngham/fec-3.0.1/viterbi615_av.c|app/libs/ngham/fec-3.0.1/viterbi39.c|app/libs/ngham/fec-3.0.1/viterbi39_sse2.c|app/libs/ngham/fec-3.0.1/viterbi39_sse.c|app/libs/ngham/fec-3.0.1/viterbi39_port.c|app/libs/ngham/fec-3.0.1/viterbi39_mmx.c|app/libs/ngham/fec-3.0.1/viterbi39_av.c|app/libs/ngham/fec-3.0.1/viterbi29.c|app/libs/ngham/fec-3.0.1/viterbi29_sse2.c|app/libs/ngham/fec-3.0.1/viterbi29_sse.c|app/libs/ngham/fec-3.0.1/viterbi29_port.c|app/libs/ngham/fec-3.0.1/viterbi29_mmx.c|app/libs/ngham/fec-3.0.1/viterbi29_av.c|app/libs/ngham/fec-3.0.1/viterbi27.c|app/libs/ngham/fec-3.0.1/viterbi27_sse2.c|app/libs/ngham/fec-3.0.1/viterbi27_sse.c|app/libs/ngham/fec-3.0.1/viterbi27_port.c|app/libs/ngham/fec-3.0.1/viterbi27_mmx.c|app/libs/ngham/fec-3.0.1/viterbi27_av.c|app/libs/ngham/fec-3.0.1/sumsq.c|app/libs/ngham/fec-3.0.1/sumsq_test.c|app/libs/ngham/fec-3.0.1/sumsq_sse2.c|app/libs/ngham/fec-3.0.1/sumsq_port.c|app/libs/ngham/fec-3.0.1/sumsq_mmx.c|app/libs/ngham/fec-3.0.1/sumsq_av.c|app/libs/ngham/fec-3.0.1/sqtest.c|app/libs/ngham/fec-3.0.1/sim.c|app/libs/ngham/fec-3.0.1/rstest.c|app/libs/ngham/fec-3.0.1/rs_speedtest.c|app/libs/ngham/fec-3.0.1/peakval.c|app/libs/ngham/fec-3.0.1/peakval_sse2.c|app/libs/ngham/fec-3.0.1/peakval_sse2_assist.s|app/libs/ngham/fec-3.0.1/peakval_sse.c|app/libs/ngham/fec-3.0.1/peakval_port.c|app/libs/ngham/fec-3.0.1/peakval_mmx.c|app/libs/ngham/fec-3.0.1/peakval_av.c|app/libs/ngham/fec-3.0.1/peaktest.c|app/libs/ngham/fec-3.0.1/init_rs.c|app/libs/ngham/fec-3.0.1/init_rs_int.c|app/libs/ngham/fec-3.0.1/gen_ccsds.c|app/libs/ngham/fec-3.0.1/gen_ccsds_tal.c|app/libs/ngham/fec-3.0.1/fec.c|app/libs/ngham/fec-3.0.1/exercise.c|app/libs/ngham/fec-3.0.1/encode_rs.c|app/libs/ngham/fec-3.0.1/encode_rs_int.c|app/libs/ngham/fec-3.0.1/encode_rs_ccsds.c|app/libs/ngham/fec-3.0.1/encode_rs_av.c|app/libs/ngham/fec-3.0.1/encode_rs_8.c|app/libs/ngham/fec-3.0.1/dtest.c|app/libs/ngham/fec-3.0.1/dotprod.c|app/libs/ngham/fec-3.0.1/dotprod_sse2.c|app/libs/ngham/fec-3.0.1/dotprod_sse2_assist.s|app/libs/ngham/fec-3.0.1/dotprod_port.c|app/libs/ngham/fec-3.0.1/dotprod_mmx.c|app/libs/ngham/fec-3.0.1/dotprod_mmx_assist.s|app/libs/ngham/fec-3.0.1/dotprod_av.c|app/libs/ngham/fec-3.0.1/decode_rs.c|app/libs/ngham/fec-3.0.1/decode_rs_int.c|app/libs/ngham/fec-3.0.1/decode_rs_ccsds.c|app/libs/ngham/fec-3.0.1/decode_rs_8.c|app/libs/ngham/fec-3.0.1/cpu_mode_x86.c|app/libs/ngham/fec-3.0.1/cpu_mode_ppc.c|app/libs/ngham/ngham_spp.c|drivers/isis_antenna" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
<entry excluding="app/libs/ff14/documents|app/libs/ngham/unused|app/libs/ngham/fec-3.0.1/sumsq_sse2_assist.s|app/libs/ngham/fec-3.0.1/sumsq_mmx_assist.s|app/libs/ngham/fec-3.0.1/ssebfly29.s|app/libs/ngham/fec-3.0.1/ssebfly27.s|app/libs/ngham/fec-3.0.1/sse2bfly29.s|app/libs/ngham/fec-3.0.1/sse2bfly27.s|app/libs/ngham/fec-3.0.1/peakval_sse_assist.s|app/libs/ngham/fec-3.0.1/peakval_mmx_assist.s|app/libs/ngham/fec-3.0.1/peak_sse2_assist.s|app/libs/ngham/fec-3.0.1/peak_sse_assist.s|app/libs/ngham/fec-3.0.1/peak_mmx_assist.s|app/libs/ngham/fec-3.0.1/mmxbfly29.s|app/libs/ngham/fec-3.0.1/mmxbfly27.s|app/libs/ngham/fec-3.0.1/cpu_features.s|app/libs/ngham/fec-3.0.1/vtest615.c|app/libs/ngham/fec-3.0.1/vtest39.c|app/libs/ngham/fec-3.0.1/vtest29.c|app/libs/ngham/fec-3.0.1/vtest27.c|app/libs/ngham/fec-3.0.1/viterbi615.c|app/libs/ngham/fec-3.0.1/viterbi615_sse2.c|app/libs/ngham/fec-3.0.1/viterbi615_sse.c|app/libs/ngham/fec-3.0.1/viterbi615_port.c|app/libs/ngham/fec-3.0.1/viterbi615_mmx.c|app/libs/ngham/fec-3.0.1/viterbi615_av.c|app/libs/ngham/fec-3.0.1/viterbi39.c|app/libs/ngham/fec-3.0.1/viterbi39_sse2.c|app/libs/ngham/fec-3.0.1/viterbi39_sse.c|app/libs/ngham/fec-3.0.1/viterbi39_port.c|app/libs/ngham/fec-3.0.1/viterbi39_mmx.c|app/libs/ngham/fec-3.0.1/viterbi39_av.c|app/libs/ngham/fec-3.0.1/viterbi29.c|app/libs/ngham/fec-3.0.1/viterbi29_sse2.c|app/libs/ngham/fec-3.0.1/viterbi29_sse.c|app/libs/ngham/fec-3.0.1/viterbi29_port.c|app/libs/ngham/fec-3.0.1/viterbi29_mmx.c|app/libs/ngham/fec-3.0.1/viterbi29_av.c|app/libs/ngham/fec-3.0.1/viterbi27.c|app/libs/ngham/fec-3.0.1/viterbi27_sse2.c|app/libs/ngham/fec-3.0.1/viterbi27_sse.c|app/libs/ngham/fec-3.0.1/viterbi27_port.c|app/libs/ngham/fec-3.0.1/viterbi27_mmx.c|app/libs/ngham/fec-3.0.1/viterbi27_av.c|app/libs/ngham/fec-3.0.1/sumsq.c|app/libs/ngham/fec-3.0.1/sumsq_test.c|app/libs/ngham/fec-3.0.1/sumsq_sse2.c|app/libs/ngham/fec-3.0.1/sumsq_port.c|app/libs/ngham/fec-3.0.1/sumsq_mmx.c|app/libs/ngham/fec-3.0.1/sumsq_av.c|app/libs/ngham/fec-3.0.1/sqtest.c|app/libs/ngham/fec-3.0.1/sim.c|app/libs/ngham/fec-3.0.1/rstest.c|app/libs/ngham/fec-3.0.1/rs_speedtest.c|app/libs/ngham/fec-3.0.1/peakval.c|app/libs/ngham/fec-3.0.1/peakval_sse2.c|app/libs/ngham/fec-3.0.1/peakval_sse2_assist.s|app/libs/ngham/fec-3.0.1/peakval_sse.c|app/libs/ngham/fec-3.0.1/peakval_port.c|app/libs/ngham/fec-3.0.1/peakval_mmx.c|app/libs/ngham/fec-3.0.1/peakval_av.c|app/libs/ngham/fec-3.0.1/peaktest.c|app/libs/ngham/fec-3.0.1/init_rs.c|app/libs/ngham/fec-3.0.1/init_rs_int.c|app/libs/ngham/fec-3.0.1/gen_ccsds.c|app/libs/ngham/fec-3.0.1/gen_ccsds_tal.c|app/libs/ngham/fec-3.0.1/fec.c|app/libs/ngham/fec-3.0.1/exercise.c|app/libs/ngham/fec-3.0.1/encode_rs.c|app/libs/ngham/fec-3.0.1/encode_rs_int.c|app/libs/ngham/fec-3.0.1/encode_rs_ccsds.c|app/libs/ngham/fec-3.0.1/encode_rs_av.c|app/libs/ngham/fec-3.0.1/encode_rs_8.c|app/libs/ngham/fec-3.0.1/dtest.c|app/libs/ngham/fec-3.0.1/dotprod.c|app/libs/ngham/fec-3.0.1/dotprod_sse2.c|app/libs/ngham/fec-3.0.1/dotprod_sse2_assist.s|app/libs/ngham/fec-3.0.1/dotprod_port.c|app/libs/ngham/fec-3.0.1/dotprod_mmx.c|app/libs/ngham/fec-3.0.1/dotprod_mmx_assist.s|app/libs/ngham/fec-3.0.1/dotprod_av.c|app/libs/ngham/fec-3.0.1/decode_rs.c|app/libs/ngham/fec-3.0.1/decode_rs_int.c|app/libs/ngham/fec-3.0.1/decode_rs_ccsds.c|app/libs/ngham/fec-3.0.1/decode_rs_8.c|app/libs/ngham/fec-3.0.1/cpu_mode_x86.c|app/libs/ngham/fec-3.0.1/cpu_mode_ppc.c|app/libs/ngham/ngham_spp.c|drivers/isis_antenna" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
</sourceEntries>
</configuration>
</storageModule>
Expand Down
2 changes: 2 additions & 0 deletions firmware/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,5 @@
* MSP430 DriverLib 2.91.11.01
* FreeRTOS 10.2.1
* NGHam protocol
* libcsp 1.5.16
* FatFS R0.14
24 changes: 24 additions & 0 deletions firmware/app/libs/ff14/LICENSE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
FatFs License

FatFs has being developped as a personal project of the author, ChaN. It is free from the code anyone else wrote at current release. Following code block shows a copy of the FatFs license document that heading the source files.

/*----------------------------------------------------------------------------/
/ FatFs - Generic FAT Filesystem Module Rx.xx /
/-----------------------------------------------------------------------------/
/
/ Copyright (C) 20xx, ChaN, all right reserved.
/
/ FatFs module is an open source software. Redistribution and use of FatFs in
/ source and binary forms, with or without modification, are permitted provided
/ that the following condition is met:
/
/ 1. Redistributions of source code must retain the above copyright notice,
/ this condition and the following disclaimer.
/
/ This software is provided by the copyright holder and contributors "AS IS"
/ and any warranties related to this software are DISCLAIMED.
/ The copyright owner or contributors be NOT LIABLE for any damages caused
/ by use of this software.
/----------------------------------------------------------------------------*/

Therefore FatFs license is one of the BSD-style licenses but there is a significant feature. FatFs is mainly intended for embedded systems. In order to extend the usability for commercial products, the redistributions of FatFs in binary form, such as embedded code, binary library and any forms without source code, does not need to include about FatFs in the documentations. This is equivalent to the 1-clause BSD license. Of course FatFs is compatible with the most of open source software licenses including GNU GPL. When you redistribute the FatFs source code with any changes or create a fork, the license can also be changed to GNU GPL, BSD-style license or any open source software license that not conflict with FatFs license.
Loading

0 comments on commit 47804ce

Please sign in to comment.