Skip to content

Commit cc4df68

Browse files
Update README.md to enhance project description and structure
1 parent ffab934 commit cc4df68

File tree

2 files changed

+176
-111
lines changed

2 files changed

+176
-111
lines changed

README.md

Lines changed: 175 additions & 111 deletions
Original file line numberDiff line numberDiff line change
@@ -1,138 +1,202 @@
1-
# Zephyr Example Application
2-
3-
<a href="https://github.com/zephyrproject-rtos/example-application/actions/workflows/build.yml?query=branch%3Amain">
4-
<img src="https://github.com/zephyrproject-rtos/example-application/actions/workflows/build.yml/badge.svg?event=push">
5-
</a>
6-
<a href="https://github.com/zephyrproject-rtos/example-application/actions/workflows/docs.yml?query=branch%3Amain">
7-
<img src="https://github.com/zephyrproject-rtos/example-application/actions/workflows/docs.yml/badge.svg?event=push">
8-
</a>
9-
<a href="https://zephyrproject-rtos.github.io/example-application">
10-
<img alt="Documentation" src="https://img.shields.io/badge/documentation-3D578C?logo=sphinx&logoColor=white">
11-
</a>
12-
<a href="https://zephyrproject-rtos.github.io/example-application/doxygen">
13-
<img alt="API Documentation" src="https://img.shields.io/badge/API-documentation-3D578C?logo=c&logoColor=white">
14-
</a>
15-
16-
This repository contains a Zephyr example application. The main purpose of this
17-
repository is to serve as a reference on how to structure Zephyr-based
18-
applications. Some of the features demonstrated in this example are:
19-
20-
- Basic [Zephyr application][app_dev] skeleton
21-
- [Zephyr workspace applications][workspace_app]
22-
- [Zephyr modules][modules]
23-
- [West T2 topology][west_t2]
24-
- [Custom boards][board_porting]
25-
- Custom [devicetree bindings][bindings]
26-
- Out-of-tree [drivers][drivers]
27-
- Out-of-tree libraries
28-
- Example CI configuration (using GitHub Actions)
29-
- Custom [west extension][west_ext]
30-
- Custom [Zephyr runner][runner_ext]
31-
- Doxygen and Sphinx documentation boilerplate
32-
33-
This repository is versioned together with the [Zephyr main tree][zephyr]. This
34-
means that every time that Zephyr is tagged, this repository is tagged as well
35-
with the same version number, and the [manifest](west.yml) entry for `zephyr`
36-
will point to the corresponding Zephyr tag. For example, the `example-application`
37-
v2.6.0 will point to Zephyr v2.6.0. Note that the `main` branch always
38-
points to the development branch of Zephyr, also `main`.
39-
40-
[app_dev]: https://docs.zephyrproject.org/latest/develop/application/index.html
41-
[workspace_app]: https://docs.zephyrproject.org/latest/develop/application/index.html#zephyr-workspace-app
42-
[modules]: https://docs.zephyrproject.org/latest/develop/modules.html
43-
[west_t2]: https://docs.zephyrproject.org/latest/develop/west/workspaces.html#west-t2
44-
[board_porting]: https://docs.zephyrproject.org/latest/guides/porting/board_porting.html
45-
[bindings]: https://docs.zephyrproject.org/latest/guides/dts/bindings.html
46-
[drivers]: https://docs.zephyrproject.org/latest/reference/drivers/index.html
47-
[zephyr]: https://github.com/zephyrproject-rtos/zephyr
48-
[west_ext]: https://docs.zephyrproject.org/latest/develop/west/extensions.html
49-
[runner_ext]: https://docs.zephyrproject.org/latest/develop/modules.html#external-runners
50-
1+
<div id="top">
2+
<p>
3+
<h2>This project is work in progress and is not for use or testing yet! Really, you don't want to use it at the moment!</h2>
4+
</p>
5+
<br />
6+
</div>
7+
8+
<!-- PROJECT SHIELDS -->
9+
<!--
10+
*** I'm using markdown "reference style" links for readability.
11+
*** Reference links are enclosed in brackets [ ] instead of parentheses ( ).
12+
*** See the bottom of this document for the declaration of the reference variables
13+
*** for contributors-url, forks-url, etc. This is an optional, concise syntax you may use.
14+
*** https://www.markdownguide.org/basic-syntax/#reference-style-links
15+
-->
16+
[![Contributors][contributors-shield]][contributors-url]
17+
[![Forks][forks-shield]][forks-url]
18+
[![Stargazers][stars-shield]][stars-url]
19+
[![Issues][issues-shield]][issues-url]
20+
[![MIT License][license-shield]][license-url]
21+
22+
23+
<!-- PROJECT LOGO -->
24+
<br />
25+
<div align="center">
26+
<a href="https://github.com/OpenAstroTech/OpenAstroFirmware">
27+
<img src="assets/images/logo.png" alt="Logo" width="80" height="80">
28+
</a>
29+
<h3 align="center">OpenAstroFirmware</h3>
30+
<p align="center">
31+
Official Firmware for DIY astronomical telescope mounts. This firmware is the 2.x successor of the <a href="https://github.com/OpenAstroTech/OpenAstroTracker-Firmware">OpenAstroTracker-Firmware</a>.
32+
</p>
33+
</div>
34+
35+
36+
37+
<!-- TABLE OF CONTENTS -->
38+
<details>
39+
<summary>Table of Contents</summary>
40+
<ol>
41+
<li>
42+
<a href="#about-the-project">About The Project</a>
43+
<ul>
44+
<li><a href="#built-with">Built With</a></li>
45+
</ul>
46+
</li>
47+
<li>
48+
<a href="#getting-started">Getting Started</a>
49+
<ul>
50+
<li><a href="#supported-hardware">Supported hardware</a></li>
51+
<li><a href="#prerequisites">Prerequisites</a></li>
52+
<li><a href="#configuration">Configuration</a></li>
53+
<li><a href="#build">Build</a></li>
54+
<li><a href="#upload">Upload</a></li>
55+
</ul>
56+
</li>
57+
<li><a href="#usage">Usage</a></li>
58+
<li><a href="#roadmap">Roadmap</a></li>
59+
<li><a href="#contributing">Contributing</a></li>
60+
<li><a href="#license">License</a></li>
61+
<li><a href="#contact">Contact</a></li>
62+
</ol>
63+
</details>
64+
65+
66+
67+
<!-- ABOUT THE PROJECT -->
68+
## About The Project
69+
70+
It was a very long and educational time developing, testing and improving [OpenAstroTracker-Firmware](https://github.com/OpenAstroTech/OpenAstroTracker-Firmware) for all of us. It evolved and grew over time as did our hardware support. Amount and type of supported mounts, components, addons and software tools keep increasing. This is why dev team decided to go one step back and redesign the firmware based on the experience with v1 and community feedback and requests. This firmware aims to bring following improvements over time compared to OpenAstroTracker-Firmware:
71+
72+
### Usage
73+
* Easier configuration, flashing and updates
74+
* Improved stability
75+
* Improved/Automated calibration
76+
* New types of addons (these could be among other things Touch display, Mobile app etc.)
77+
* Ability to track "custom" objects (e.g. Sun, Moon, ISS, Comets etc.)
78+
* Support for more types of mounts (OAT, OAM, any further Mounts and their versions designed by OpenAstroTech and retrofitted 3rd party mounts)
79+
* Several new QoL features
80+
81+
### Development
82+
* Easier maintenability and extendability
83+
* Automated testing
84+
* Support for modern 32-bit boards to improve performance, accuracy and reduce the need for hardcore optimizations.
85+
* In hardware debugging
86+
* Higher code quality by following best practices and a predefined architecture design
87+
* Ability to test and run main code and test directly on the host pc to simplify issue analysis
88+
* Support and usage of modern c++ features to improve readability and clarity of the code
89+
90+
<p align="right">(<a href="#top">back to top</a>)</p>
91+
92+
93+
94+
### Built With
95+
96+
* [Zephyr]([https://platformio.org/](https://docs.zephyrproject.org/3.7.0/))
97+
98+
<p align="right">(<a href="#top">back to top</a>)</p>
99+
100+
101+
102+
<!-- GETTING STARTED -->
51103
## Getting Started
52104

53-
Before getting started, make sure you have a proper Zephyr development
54-
environment. Follow the official
55-
[Zephyr Getting Started Guide](https://docs.zephyrproject.org/latest/getting_started/index.html).
105+
This is an example of how you may give instructions on setting up your project locally.
106+
To get a local copy up and running follow these simple example steps.
107+
108+
### Supported hardware
109+
110+
*TBD*
111+
112+
### Prerequisites
113+
114+
*TBD*
115+
116+
### Configuration
117+
118+
*TBD*
119+
120+
### Build
121+
122+
*TBD*
123+
124+
### Upload
125+
126+
*TBD*
127+
128+
<p align="right">(<a href="#top">back to top</a>)</p>
129+
130+
131+
132+
<!-- USAGE EXAMPLES -->
133+
## Usage
134+
135+
*TBD*
136+
137+
<p align="right">(<a href="#top">back to top</a>)</p>
138+
56139

57-
### Initialization
58140

59-
The first step is to initialize the workspace folder (``my-workspace``) where
60-
the ``example-application`` and all Zephyr modules will be cloned. Run the following
61-
command:
141+
<!-- ROADMAP -->
142+
## Roadmap
62143

63-
```shell
64-
# initialize my-workspace for the example-application (main branch)
65-
west init -m https://github.com/zephyrproject-rtos/example-application --mr main my-workspace
66-
# update Zephyr modules
67-
cd my-workspace
68-
west update
69-
```
144+
- [ ] Build environment setup
145+
- [ ] *TBD*
146+
- [ ] MVP
147+
- [ ] *TBD*
70148

71-
### Building and running
149+
See the [open issues](https://github.com/OpenAstroTech/OpenAstroFirmware/issues) for a full list of proposed features (and known issues).
72150

73-
To build the application, run the following command:
151+
<p align="right">(<a href="#top">back to top</a>)</p>
74152

75-
```shell
76-
cd example-application
77-
west build -b $BOARD app
78-
```
79153

80-
where `$BOARD` is the target board.
81154

82-
You can use the `custom_plank` board found in this
83-
repository. Note that Zephyr sample boards may be used if an
84-
appropriate overlay is provided (see `app/boards`).
155+
<!-- CONTRIBUTING -->
156+
## Contributing
85157

86-
A sample debug configuration is also provided. To apply it, run the following
87-
command:
158+
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.
88159

89-
```shell
90-
west build -b $BOARD app -- -DEXTRA_CONF_FILE=debug.conf
91-
```
160+
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
161+
Don't forget to give the project a star! Thanks again!
92162

93-
Once you have built the application, run the following command to flash it:
163+
1. Fork the Project
164+
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
165+
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
166+
4. Push to the Branch (`git push origin feature/AmazingFeature`)
167+
5. Open a Pull Request
94168

95-
```shell
96-
west flash
97-
```
169+
<p align="right">(<a href="#top">back to top</a>)</p>
98170

99-
### Testing
100171

101-
To execute Twister integration tests, run the following command:
102172

103-
```shell
104-
west twister -T tests --integration
105-
```
173+
<!-- LICENSE -->
174+
## License
106175

107-
### Documentation
176+
Distributed under the MIT License. See `LICENSE.txt` for more information.
108177

109-
A minimal documentation setup is provided for Doxygen and Sphinx. To build the
110-
documentation first change to the ``doc`` folder:
178+
<p align="right">(<a href="#top">back to top</a>)</p>
111179

112-
```shell
113-
cd doc
114-
```
115180

116-
Before continuing, check if you have Doxygen installed. It is recommended to
117-
use the same Doxygen version used in [CI](.github/workflows/docs.yml). To
118-
install Sphinx, make sure you have a Python installation in place and run:
119181

120-
```shell
121-
pip install -r requirements.txt
122-
```
182+
<!-- CONTACT -->
183+
## Contact
123184

124-
API documentation (Doxygen) can be built using the following command:
185+
Project Link: [https://github.com/OpenAstroTech/OpenAstroFirmware](https://github.com/OpenAstroTech/OpenAstroFirmware)
125186

126-
```shell
127-
doxygen
128-
```
187+
<p align="right">(<a href="#top">back to top</a>)</p>
129188

130-
The output will be stored in the ``_build_doxygen`` folder. Similarly, the
131-
Sphinx documentation (HTML) can be built using the following command:
132189

133-
```shell
134-
make html
135-
```
136190

137-
The output will be stored in the ``_build_sphinx`` folder. You may check for
138-
other output formats other than HTML by running ``make help``.
191+
<!-- MARKDOWN LINKS & IMAGES -->
192+
<!-- https://www.markdownguide.org/basic-syntax/#reference-style-links -->
193+
[contributors-shield]: https://img.shields.io/github/contributors/OpenAstroTech/OpenAstroFirmware.svg?style=for-the-badge
194+
[contributors-url]: https://github.com/OpenAstroTech/OpenAstroFirmware/graphs/contributors
195+
[forks-shield]: https://img.shields.io/github/forks/OpenAstroTech/OpenAstroFirmware.svg?style=for-the-badge
196+
[forks-url]: https://github.com/OpenAstroTech/OpenAstroFirmware/network/members
197+
[stars-shield]: https://img.shields.io/github/stars/OpenAstroTech/OpenAstroFirmware.svg?style=for-the-badge
198+
[stars-url]: https://github.com/OpenAstroTech/OpenAstroFirmware/stargazers
199+
[issues-shield]: https://img.shields.io/github/issues/OpenAstroTech/OpenAstroFirmware.svg?style=for-the-badge
200+
[issues-url]: https://github.com/OpenAstroTech/OpenAstroFirmware/issues
201+
[license-shield]: https://img.shields.io/github/license/OpenAstroTech/OpenAstroFirmware.svg?style=for-the-badge
202+
[license-url]: https://github.com/OpenAstroTech/OpenAstroFirmware/blob/master/LICENSE

lib/lx200/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,4 @@
22
# SPDX-License-Identifier: Apache-2.0
33

44
zephyr_library()
5+
zephyr_

0 commit comments

Comments
 (0)