Electric, Power System designed for Atlas Sat. Developed at DSO National Laboratories for R@YDSP
This repository features code used in the Electrical, Power Systemm (EPS) of Atlas Sat. The EPS is responsible for power generation, storage, and distribution to the satellite subsystems. The EPS is built using the FreeRTOS real-time operating system and the CSP communication protocol. The EPS software is modular and built to interface seamlessly with other subsystems.
For a detailed list of features, refer to the project report.
View Project Structure
└── eps/
├── docs
│ ├── Capture_obc.PNG
│ ├── Capture_subsys.PNG
│ ├── README.md
│ ├── _config.yml
│ └── wiring.jpg
├── eps
│ ├── FreeRTOS
│ │ ├── Demo
│ │ │ └── Common
│ │ └── Source
│ │ ├── include
│ │ ├── list.c
│ │ ├── portable
│ │ ├── queue.c
│ │ ├── tasks.c
│ │ └── timers.c
│ ├── FreeRTOSConfig.h
│ ├── eps.componentinfo.xml
│ ├── eps.cproj
│ ├── libcsp
│ │ ├── CHANGELOG
│ │ ├── CONTRIBUTORS
│ │ ├── COPYING
│ │ ├── INSTALL.rst
│ │ ├── README.rst
│ │ ├── bindings
│ │ │ └── python
│ │ ├── doc
│ │ │ ├── example.rst
│ │ │ ├── history.rst
│ │ │ ├── interfaces.rst
│ │ │ ├── libcsp.rst
│ │ │ ├── memory.rst
│ │ │ ├── mtu.rst
│ │ │ ├── protocolstack.rst
│ │ │ ├── structure.rst
│ │ │ └── topology.rst
│ │ ├── include
│ │ │ └── csp
│ │ ├── src
│ │ │ ├── arch
│ │ │ ├── crypto
│ │ │ ├── csp_bridge.c
│ │ │ ├── csp_buffer.c
│ │ │ ├── csp_conn.c
│ │ │ ├── csp_crc32.c
│ │ │ ├── csp_debug.c
│ │ │ ├── csp_dedup.c
│ │ │ ├── csp_endian.c
│ │ │ ├── csp_iflist.c
│ │ │ ├── csp_io.c
│ │ │ ├── csp_port.c
│ │ │ ├── csp_promisc.c
│ │ │ ├── csp_qfifo.c
│ │ │ ├── csp_route.c
│ │ │ ├── csp_service_handler.c
│ │ │ ├── csp_services.c
│ │ │ ├── csp_sfp.c
│ │ │ ├── interfaces
│ │ │ ├── rtable
│ │ │ └── transport
│ │ ├── utils
│ │ │ ├── cfpsplit.py
│ │ │ └── cspsplit.py
│ │ ├── waf
│ │ └── wscript
│ ├── main.c
│ └── project
│ ├── include
│ │ ├── bme280.h
│ │ ├── conf_util.h
│ │ ├── driver_debug.h
│ │ ├── error.h
│ │ ├── protocol.h
│ │ ├── tasks.h
│ │ └── uart.h
│ └── src
│ ├── bme280.c
│ ├── i2c.c
│ ├── tasks.c
│ └── uart.c
└── eps.atslnBefore getting started with eps, ensure your runtime environment meets the following requirements:
- Programming Language: C
- IDE: Microchip Studio
- Download from Arduino Software.
- Choose the MSI installer.
- Go to
Tools > Board > Boards Managerand install Arduino AVR boards. - Check the installation path of Arduino IDE:
- Right-click on the Arduino IDE icon > Open File Location.
- Example:
C:\Users\johndoe\AppData\Local\Programs\Arduino IDE.
- Verify the existence of the folder:
- Example:
C:\Users\johndoe\AppData\Local\Arduino15.
- Example:
- Locate the
avrdude.exepath:- Example:
C:\Users\johndoe\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17\bin\avrdude.exe - Copy the path and save it.
- Example:
- Download Microchip Studio from the Microchip website.
- Open Microchip Studio.
- Go to
Tools > External Tools. - Click on
Add. - Fill in the following fields:
- Title:
COMx.- Example:
COM4.
- Example:
- Command:
avrdude.exepath.- Example:
C:\Users\johndoe\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17\bin\avrdude.exe - Arguments:
-Cpath toavrdude.conffile-v -patmega328p -carduino -PCOMx-b115200 -D -Uflash:w:"$(ProjectDir)Debug\$(TargetName).hex":i.- Example:
-C"C:\Users\johndoe\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17\etc\avrdude.conf" -v -patmega328p -carduino -PCOM3 -b115200 -D -Uflash:w:"$(ProjectDir)Debug\$(TargetName).hex":i
- Title:
- Clone the eps repository:
❯ git clone https://github.com/atlas-sat/eps- Navigate to the project directory:
❯ cd eps- Open Microchip Studio.
- Go to
File > Open > Project/Solution. - Navigate to the project directory and open the
eps.atslnfile.
- Build the project by clicking on the
Buildbutton. - Verify that the project builds successfully.
- Go to
Tools > COMx. - Verify that the project flashes successfully.
This project is not protected under any license. You are free to use, modify, and distribute the software as you see fit.
- Caden's cat Clover.