Skip to content

Commit e20c29e

Browse files
committed
Updated docs + adopted sentence case for titles/headers
1 parent 557c64d commit e20c29e

File tree

10 files changed

+63
-20
lines changed

10 files changed

+63
-20
lines changed
12.1 KB
Loading
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
[ZoneTransfer]
2+
ZoneId=3
3+
ReferrerUrl=https://www.google.com/
4+
HostUrl=https://www.diskpart.com/screenshot/en/others/windows-11/how-to-open-device-manager-windows-11/windows-11-device-manager.png
31.1 KB
Loading
29.7 KB
Loading

docs/src/assets/docs_images/putty.png:Zone.Identifier

Whitespace-only changes.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: Building Examples
2+
title: Building examples
33
description: On how to build examples
44
---
55
The following guide outlines a procedure to build examples to flash to the board. Examples are minimal applications intended to test a certain feature on the board.
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: Building for the Ground Station
3-
description: On how to build for Ground Station
2+
title: Building for the ground station
3+
description: On how to build for ground station
44
---
55
The following guide outlines a procedure to build for the ground station.

docs/src/content/docs/getting-started/build-obc.md

Lines changed: 50 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ The following is a simple guide for building the app for the OBC and flashing.
1313
```
1414

1515
:::tip[Tip: Reducing Build Time]{icon="setting"}
16-
The `cmake --build .` takes some time to run since it is using a single thread to compile. To speed up the process we can use one of the following commands
16+
The `cmake --build .` takes some time to run since it is using a single thread to compile. To speed up the process we can replace it with one of the following commands...
1717
1. `make -j 16` (Recommended for most systems)
1818
2. `make -j 32` (This is faster but depends on if your system can handle 32 parallel jobs)
1919
:::
@@ -26,24 +26,59 @@ The following is a simple guide for building the app for the OBC and flashing.
2626
## Flashing to the OBC
2727
There are two main ways to flash to the OBC: **using the bootloader** or **using UniFlash**. UniFlash is the more common way so let's go over that first.
2828
29-
### Flashing Via UniFlash
29+
### Flashing via UniFlash
3030
1. When you open UniFlash you should be greeted with the following screen...
3131
3232
![UniFlash on startup](../../../assets/docs_images/uniflash.png)
33-
2. For the chip select `RM46L852` if you are using OBC Revision 1 or OBC Revision 2. If you are using the Launchpad, seletc `LAUNCHXL2-RM46`.
33+
2. For the chip select `RM46L852` if you are using *OBC Revision 1* or *OBC Revision 2*. If you are using the *Launchpad*, select `LAUNCHXL2-RM46`.
3434
3. Then for the connection, choose `Texas Instruments XDS110 USB Debug Probe`
3535
4. Now press `Start` and you should see the following screen.
3636
3737
![UniFlash on flash](../../../assets/docs_images/uniflash2.png)
38-
5. Browse for the file you would like to flash and then press `Load Image`.
38+
5. Browse for the file with a `.out` suffix that you would like to flash and then press `Load Image`. Usually you will flash one of the following files...
39+
* `OBC-firmware.out` in the `build_arm` directory >> This contains the main app to run on the OBC.
40+
* `OBC-bl.out` in the `build_arm` directory >> This contains the bootloader for the OBC.
41+
* An OBC example file from the `build_examples` directory >> This is for when you want to test specific functionality on the OBC (assuming you have written a test file for it and added it to the build script. See [Building Examples](/OBC-firmware/getting-started/build-examples/))
3942
:::note
40-
UniFlash may get stuck sometimes and throw errors. In such cases, navigate to session on the top red bar and start a new session. You will have to reconfigure UniFlash but it should get working again.
43+
UniFlash may get stuck sometimes and throw errors. In such cases, navigate to session on the top red bar and start a new session. You will have to reconfigure UniFlash but it should start working again.
4144
:::
4245
43-
### Accessing UART (WIP)
44-
This is an important skill everyone should know just for debugging.
46+
### Accessing UART
47+
This is an important skill everyone should know just for debugging. We will go through the process for Windows and Linux.
4548
46-
### Flashing Via the Bootloader (WIP)
49+
#### Pre-requisites
50+
Both Linux and Windows have a program called `puTTY` available to download. `puTTY` is a great program to detect serial activity on ports so make sure you download this before proceeding!
51+
52+
1. Download and open `puTTY`. You should be greeted with the following screen...
53+
54+
![puTTY on startup](../../../assets/docs_images/putty.png)
55+
2. Under the `Connection Type:` section, select the `Serial` option which should make `puTTY` show the following.
56+
57+
![puTTY with Serial Selected](../../../assets/docs_images/putty-serial.png)
58+
59+
3. You can set the speed to `115200` which is the baud rate at the time of writing this tutorial (August, 2025). Update this rate if the baud rate of the board is increased!
60+
4. If you know how to detect what USB port is connected to UART you can type that USB port into the `Serial line` field in `puTTY`. If you need help, read through the following sections!
61+
5. You can then press the `Open` button and there should be a black screen that starts printing out text sent by the board!
62+
63+
#### Finding USB port on Linux
64+
On Linux the port name will be in the form of `/dev/tty*`. For example the port could be named `/dev/ttyACM0` or `/dev/ttyUSB0`. To find the port connected to the board do the following...
65+
1. Open up a terminal without the board connected and type in the following command that will list out all file paths starting with `/dev/tty`
66+
```shell
67+
ls /dev/tty*
68+
```
69+
2. Now connect the board and repeat the same command.
70+
3. Look for differences in outputs between running the command before and after connecting the board. The `/dev/tty` file path that gets added the second time around is the port that your board is connected on!
71+
4. You can type the name of the port you have determined to be going to the board in the `Serial line` field in `puTTY`. If you are using JTAG and have to connect two USBs to your Linux system, you will have to experiment and see which port outputs logs on puTTY.
72+
73+
#### Finding USB port on Windows
74+
On Windows the port name will be in the form of `COMXX` with `XX` denoting numbers. For example possible port names are `COM1`, `COM12`, etc. To find the port connected to the board do the following...
75+
1. Open `Device Manager` and you should be greeted with the following (the image is taken off the web so your window may look a bit different)...
76+
![Device Manager Windows](../../../assets/docs_images/device-manager.webp)
77+
2. Under `Ports` try to find the COM port labelled with `UART` somewhere in it's name. Once you have found it that is the COM port you will be using in `puTTY`.
78+
79+
### Working with USB on WSL (WIP)
80+
81+
### Flashing via the bootloader (WIP)
4782
1. Use UniFlash to flash the `OBC-bl.out` file, ensuring you have built it for the correct board using the right argument for the `-DBOARD_TYPE=` option.
4883
2. From the root directory activate the python virtual environment with the following command
4984

@@ -54,11 +89,15 @@ This is an important skill everyone should know just for debugging.
5489
```shell
5590
cd obc/tools/python/
5691
```
57-
4. Run the app `app_update.py` script specifying a usb port and the absolute file path. The following is an example for linux.
92+
4. Run the app `app_update.py` script specifying a USB port and the absolute file path. The following are some examples.
5893
```shell
59-
python3 app_update.py /dev/ttyS0 ~/Desktop/dev/OBC-firmware/build_arm/OBC-firmware.bin
94+
# On Linux and WSL
95+
python3 app_update.py /dev/ttyS0 ~/OBC-firmware/build_arm/OBC-firmware.bin
96+
97+
# On Linux and WSL
98+
python3 app_update.py /dev/ttyUSB0 ~/OBC-firmware/build_arm/OBC-firmware.bin
6099
```
61100
:::note
62-
The bootloader sends messages through the UART port so if the first string that the script displays is not 'Erase Successful' or the script is takes more than 1 second to start, re-run the script.
101+
The bootloader sends messages through the UART port so if the first string that the script displays is not 'Erase Successful' or the script is takes more than 1 second to start, re-run the script. Hopefully this is addressed in the future!
63102
:::
64103
5. Wait for the script to flash and the board should jump to app within 2 seconds of when flashing is completed. If not check the error that is being logged to UART and try again!

docs/src/content/docs/getting-started/cmake-options.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: CMake Options Guide
2+
title: CMake options guide
33
description: Some useful options and options that we have defined
44
---
55
The following is a list of options along with their brief description. The guide is divided into most used and extra for convenience. You can go to the end of this page for examples on how to chain these options together.
@@ -10,10 +10,10 @@ The following is a list of options along with their brief description. The guide
1010
If an argument is marked as **Default**, it will be the default argument that is used if the option is not specified. If there are no arguments marked as default then nothing will happen.
1111
:::
1212

13-
## Most Used Options
13+
## Most used options
1414
These are options that you will frequently be using while compiling. **Unless otherwise specified these options are to be use within the `build_arm` directory of the project**
1515

16-
### `-DCMAKE_BUILD_TYPE=` (Can be used in directories other than `build_arm`)
16+
### `-DCMAKE_BUILD_TYPE=` (can be used in directories other than `build_arm`)
1717
This specifies what the current build directory is for. You can pass either of the **four** arguments into this command...
1818
* `OBC`: Used to build for the board (use in the `build_arm` directory)
1919
* `GS`: Used to build code for the ground station (use in the `build_gs` directory)
@@ -27,7 +27,7 @@ This option specifies the board that the binary is being built for since differe
2727
* `OBC_REVISION_2`: Build the files for the second revision of the OBC
2828

2929

30-
## Extra Options
30+
## Extra options
3131

3232
### `-DDEBUG`
3333
If specified, this removes all optimization flags to debug. Sometimes optimizations can interfere with critical code but, first check your code's logic before using this option.
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: The File Structure Explained
3-
description: How Orbital Organizes Files in their Repository.
2+
title: The file structure explained
3+
description: How Orbital organizes files in their repository.
44
---
55
UW Orbital's Firmware Repository is quite large. As a result the previous leads have constantly refactored it to where it is now. So let's go through it! This write-up will only provide a brief overview. Consult other places in the documentation for more detailed explanations.

0 commit comments

Comments
 (0)