Skip to content

Commit 7fa6763

Browse files
Refactor README.md to enhance clarity on supported hardware and development setup
1 parent ec7cda6 commit 7fa6763

File tree

1 file changed

+39
-50
lines changed

1 file changed

+39
-50
lines changed

README.md

Lines changed: 39 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -110,46 +110,32 @@ To get started with OpenAstroFirmware development or to build and deploy the fir
110110
### Supported hardware
111111

112112
- **MKS Robin Nano** (STM32F407xx-based controller board) - Production target
113+
- Way more 32 bit boards to come
113114
- **native_sim** - Development and testing platform
114-
- STM32F407xx microcontroller family support
115115
- Stepper motor drivers:
116116
- TMC stepper motor controllers
117-
- GPIO-based stepper motor drivers
117+
- GPIO-based stepper motor drivers
118118
- Testing/simulation drivers for development
119119

120120
### Development Environment Setup
121121

122122
Before getting started, make sure you have a proper Zephyr development environment. Follow the official [Zephyr Getting Started Guide](https://docs.zephyrproject.org/latest/getting_started/index.html).
123123

124-
#### Prerequisites
125-
126-
- **Zephyr SDK** - Required for cross-compilation and board support
127-
- **West** - Zephyr's meta-tool for project management and building
128-
- **CMake** (version 3.20.0 or higher) - Build system
129-
- **Ninja** - Fast build tool
130-
- **Python 3** (with pip) - For build scripts and utilities
131-
- **Git** - For version control and West manifest management
132-
133-
#### Installation
134-
135-
1. **Install the Zephyr SDK**: Follow the [official Zephyr getting started guide](https://docs.zephyrproject.org/latest/getting_started/index.html) for your operating system.
136-
137-
2. **Set up a Python virtual environment and install West**:
138-
```bash
139-
python3 -m venv ~/.venv
140-
source ~/.venv/bin/activate
141-
pip install west
142-
```
143-
144124
#### Workspace Initialization
145125

146126
The first step is to initialize the workspace folder where the `OpenAstroFirmware` and all Zephyr modules will be cloned. Run the following command:
147127

148128
```bash
129+
# Create workspace directory
130+
mkdir OpenAstroFirmware-workspace
131+
132+
# Change to the workspace directory
133+
cd OpenAstroFirmware-workspace
134+
149135
# Initialize workspace for OpenAstroFirmware
150-
west init -m https://github.com/OpenAstroTech/OpenAstroFirmware --mr main OpenAstroFirmware-workspace
136+
west init -m https://github.com/OpenAstroTech/OpenAstroFirmware --mr main .
137+
151138
# Update Zephyr modules
152-
cd OpenAstroFirmware-workspace
153139
west update
154140
```
155141

@@ -163,22 +149,7 @@ OpenAstroFirmware-workspace/
163149

164150
**Important**: Remember to activate your Python virtual environment each time you start working on the project:
165151
```bash
166-
source ~/.venv/bin/activate
167-
```
168-
169-
### Configuration
170-
171-
The firmware uses Zephyr's Kconfig system for configuration. Key configuration files:
172-
173-
- `app/prj.conf` - Main project configuration
174-
- `app/boards/native_sim.conf` - Native simulator specific settings
175-
- `app/boards/native_sim.overlay` - Device tree overlay for simulation
176-
- Board-specific configurations in `boards/` directory
177-
178-
Configuration can be modified using:
179-
```bash
180-
west build -t menuconfig # Interactive configuration menu
181-
west build -t guiconfig # GUI configuration tool
152+
source ~/zephyrproject/.venv/bin/activate
182153
```
183154

184155
### Build
@@ -192,7 +163,7 @@ west build -b native_sim
192163
#### For MKS Robin Nano (Production Hardware)
193164
```bash
194165
cd OpenAstroFirmware-workspace/OpenAstroFirmware/app
195-
west build -b mks_robin_nano
166+
west build -b robin_nano
196167
```
197168

198169
#### Clean Build
@@ -202,10 +173,25 @@ west build -b <board_name> # Rebuild from scratch
202173
```
203174

204175
The build system supports:
205-
- Cross-compilation for STM32F407xx targets
176+
- Cross-compilation for hardware targets
206177
- Native compilation for PC-based testing
207178
- Comprehensive testing with automated test suites
208179

180+
### Configuration
181+
182+
The firmware uses Zephyr's Kconfig system for configuration. It requires an existing build directory. Key configuration files:
183+
184+
- `app/prj.conf` - Main project configuration
185+
- `app/boards/native_sim.conf` - Native simulator specific settings
186+
- `app/boards/native_sim.overlay` - Device tree overlay for simulation
187+
- Board-specific configurations in `boards/` directory
188+
189+
Configuration can be modified using:
190+
```bash
191+
west build -t menuconfig # Interactive configuration menu
192+
west build -t guiconfig # GUI configuration tool
193+
```
194+
209195
### Upload
210196

211197
#### Native Simulation
@@ -241,15 +227,16 @@ OpenAstroFirmware provides telescope mount control with the following capabiliti
241227

242228
### LX200 Command Interface
243229
The firmware implements the standard LX200 protocol for communication with planetarium software like:
244-
- SkySafari
245-
- Stellarium
246-
- TheSkyX
247-
- Cartes du Ciel
248-
- Any ASCOM-compatible software
230+
- [OATControl](https://github.com/OpenAstroTech/OpenAstroTracker-Desktop)
231+
- [INDI](https://indilib.org)
232+
- [ASCOM](https://ascom-standards.org)
233+
- [SkySafari](https://skysafariastronomy.com)
234+
- [Stellarium](https://stellarium.org)
235+
- Any ASCOM or INDI compatible software
249236

250237
### Hardware Control
251238
- Stepper motor drivers (TMC, GPIO-based)
252-
- STM32F407xx microcontroller support
239+
- 32 bit microcontroller support (see official [Zephyr documentation for supported boards](https://docs.zephyrproject.org/latest/boards/))
253240
- Extensible driver architecture for additional hardware components
254241

255242
### Development and Testing
@@ -283,7 +270,7 @@ Don't forget to give the project a star! Thanks again!
283270
<!-- LICENSE -->
284271
## License
285272

286-
Distributed under the MIT License. See `LICENSE.txt` for more information.
273+
Distributed under the MIT License. See [`LICENSE`](https://github.com/OpenAstroTech/OpenAstroFirmware/blob/main/LICENSE) for more information.
287274

288275
<p align="right">(<a href="#top">back to top</a>)</p>
289276

@@ -292,7 +279,9 @@ Distributed under the MIT License. See `LICENSE.txt` for more information.
292279
<!-- CONTACT -->
293280
## Contact
294281

295-
Project Link: [https://github.com/OpenAstroTech/OpenAstroFirmware](https://github.com/OpenAstroTech/OpenAstroFirmware)
282+
GitHub: [OpenAstroFirmware](https://github.com/OpenAstroTech/OpenAstroFirmware)
283+
284+
Project Discord: [OpenAstroTech Discord](https://discord.gg/pzGaJztdAD)
296285

297286
<p align="right">(<a href="#top">back to top</a>)</p>
298287

0 commit comments

Comments
 (0)