You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+39-50Lines changed: 39 additions & 50 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -110,46 +110,32 @@ To get started with OpenAstroFirmware development or to build and deploy the fir
110
110
### Supported hardware
111
111
112
112
-**MKS Robin Nano** (STM32F407xx-based controller board) - Production target
113
+
- Way more 32 bit boards to come
113
114
-**native_sim** - Development and testing platform
114
-
- STM32F407xx microcontroller family support
115
115
- Stepper motor drivers:
116
116
- TMC stepper motor controllers
117
-
- GPIO-based stepper motor drivers
117
+
- GPIO-based stepper motor drivers
118
118
- Testing/simulation drivers for development
119
119
120
120
### Development Environment Setup
121
121
122
122
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).
123
123
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
-
144
124
#### Workspace Initialization
145
125
146
126
The first step is to initialize the workspace folder where the `OpenAstroFirmware` and all Zephyr modules will be cloned. Run the following command:
147
127
148
128
```bash
129
+
# Create workspace directory
130
+
mkdir OpenAstroFirmware-workspace
131
+
132
+
# Change to the workspace directory
133
+
cd OpenAstroFirmware-workspace
134
+
149
135
# 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
+
151
138
# Update Zephyr modules
152
-
cd OpenAstroFirmware-workspace
153
139
west update
154
140
```
155
141
@@ -163,22 +149,7 @@ OpenAstroFirmware-workspace/
163
149
164
150
**Important**: Remember to activate your Python virtual environment each time you start working on the project:
165
151
```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
182
153
```
183
154
184
155
### Build
@@ -192,7 +163,7 @@ west build -b native_sim
192
163
#### For MKS Robin Nano (Production Hardware)
193
164
```bash
194
165
cd OpenAstroFirmware-workspace/OpenAstroFirmware/app
195
-
west build -b mks_robin_nano
166
+
west build -b robin_nano
196
167
```
197
168
198
169
#### Clean Build
@@ -202,10 +173,25 @@ west build -b <board_name> # Rebuild from scratch
202
173
```
203
174
204
175
The build system supports:
205
-
- Cross-compilation for STM32F407xx targets
176
+
- Cross-compilation for hardware targets
206
177
- Native compilation for PC-based testing
207
178
- Comprehensive testing with automated test suites
208
179
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
+
209
195
### Upload
210
196
211
197
#### Native Simulation
@@ -241,15 +227,16 @@ OpenAstroFirmware provides telescope mount control with the following capabiliti
241
227
242
228
### LX200 Command Interface
243
229
The firmware implements the standard LX200 protocol for communication with planetarium software like:
0 commit comments