Skip to content

Commit 525828f

Browse files
authored
docs: remove version numbers and clean README (#3061)
1 parent e7207c1 commit 525828f

1 file changed

Lines changed: 60 additions & 106 deletions

File tree

README.md

Lines changed: 60 additions & 106 deletions
Original file line numberDiff line numberDiff line change
@@ -112,10 +112,10 @@ Sign up for the latest updates and test new features early by joining our beta p
112112
| Logical Analyzer | Captures and displays signals from digital system | :heavy_check_mark: |
113113
| Wave Generator | Generates arbitrary analog and digital waveforms | :heavy_check_mark: |
114114
| Power Source | Generates programmable voltage and currents | :heavy_check_mark: |
115-
| Luxmeter | Measures the ambient light intensity | :heavy_check_mark: |
116-
| Barometer | Measures the Pressure | :heavy_check_mark: |
115+
| Luxmeter | Measures the ambient light intensity | :heavy_check_mark: |
116+
| Barometer | Measures the Pressure | :heavy_check_mark: |
117117
| Accelerometer | Measures the acceleration of the device | :heavy_check_mark: |
118-
| Gyrometer | Measures the rate of rotation | :heavy_check_mark: |
118+
| Gyrometer | Measures the rate of rotation | :heavy_check_mark: |
119119
| Compass | Measures the absolute rotation relative to earth magnetic poles | :heavy_check_mark: |
120120
| Thermometer | Measures the ambient temperature | :heavy_check_mark: |
121121
| Gas Sensor | Detects gases, including NH3, NOx, alcohol, benzene, smoke and CO2| :heavy_check_mark: |
@@ -135,14 +135,15 @@ This is a **Flutter cross-platform application** that supports:
135135

136136
The app interfaces with PSLab hardware devices via USB and provides scientific instrument functionality.
137137

138-
### Required Software Versions
138+
### Required Software
139139

140-
**Flutter & Dart:**
141-
- Flutter: `>=3.35.4`
142-
- Dart: `>=3.9.0 <4.0.0`
140+
**Flutter & Dart**
141+
- Flutter (stable channel)
142+
- Dart (bundled with Flutter)
143+
144+
**Java**
145+
- Java (LTS version required for Android builds)
143146

144-
**Java:**
145-
- Java 17 (required for Android Kotlin compilation)
146147

147148
### Flutter SDK Setup
148149

@@ -153,69 +154,12 @@ brew install --cask flutter
153154
```
154155

155156
##### Linux
156-
```
157-
mkdir ~/flutter && cd ~/flutter
158-
wget https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_3.35.4-stable.tar.xz
159-
tar -xf flutter_linux_3.35.4-stable.tar.xz
160-
rm -rf flutter_linux_3.35.4-stable.tar.xz
161-
echo 'export PATH="$HOME/flutter/flutter/bin:$PATH"' >> ~/.bash_profile
162-
```
163157

164-
#### Windows
165-
Download from [here](https://docs.flutter.dev/install)
166-
### Flutter development setup (VS Code)
158+
Follow the official Flutter install guide for Linux: https://docs.flutter.dev/get-started/install/linux
167159

168-
The instructions below explain how to install the Flutter SDK, set up Visual Studio Code with the Flutter and Dart extensions, and run the project using `flutter run`. These steps avoid Android Studio-specific instructions and focus on a minimal, cross-platform Flutter workflow.
169-
170-
Prerequisites
171-
- A supported operating system (Windows, macOS, or Linux).
172-
- A working internet connection to download the Flutter SDK and extensions.
173-
174-
1) Install the Flutter SDK
175-
- Download the Flutter SDK from https://flutter.dev and follow the platform-specific instructions. On Windows, extract the SDK (for example to `C:\src\flutter`) and add the `bin` folder to your PATH environment variable. On macOS/Linux, follow the steps on the Flutter website for adding `flutter` to your PATH.
176-
- After installation, open a terminal (PowerShell on Windows) and run:
177-
178-
```powershell
179-
flutter --version
180-
flutter doctor
181-
```
182-
183-
Resolve any missing components suggested by `flutter doctor`. If you plan to build desktop apps, follow the platform-specific toolchain steps suggested by `flutter doctor` (e.g., install Visual Studio on Windows for Windows desktop builds).
184-
185-
2) Set up Visual Studio Code
186-
- Install VS Code (if you don't have it) and open the project folder in VS Code.
187-
- Install the following extensions from the Extensions view:
188-
- Flutter (includes the Dart extension)
189-
- Dart (if the Flutter extension did not install it automatically)
190-
- (Optional) If VS Code cannot find the Flutter SDK, set the `dart.flutterSdkPath` setting to the SDK location in your VS Code settings.
191-
192-
3) Prepare the project and run
193-
- In the project root, fetch packages and generate any code:
194-
195-
```powershell
196-
flutter pub get
197-
flutter pub run build_runner build --delete-conflicting-outputs # if the project uses code generation
198-
```
199-
200-
- Run the app on the default device (emulator, connected device, or desktop target):
201-
202-
```powershell
203-
flutter run
204-
```
205-
206-
If you want to run on a specific device, list available devices and pass `-d`:
207-
208-
```powershell
209-
flutter devices
210-
flutter run -d windows # example: run on Windows desktop
211-
```
212-
213-
Notes and troubleshooting
214-
- If you see issues related to missing SDKs or tools, run `flutter doctor` and follow the recommended fixes.
215-
- Building Android APKs or running on Android devices may require Android SDK tools. If you need Android targets later, install the Android SDK separately; Android Studio is not required for Flutter development but can simplify SDK installation.
216-
- For fast iteration in VS Code, use the Debug panel (press F5) or the Flutter toolbar (Run and Debug).
160+
#### Windows
217161

218-
---
162+
Follow the official Flutter install guide for Windows: https://docs.flutter.dev/install/windows
219163

220164
### Flutter development setup (VS Code)
221165

@@ -269,7 +213,6 @@ Notes and troubleshooting
269213
- Building Android APKs or running on Android devices may require Android SDK tools. If you need Android targets later, install the Android SDK separately; Android Studio is not required for Flutter development but can simplify SDK installation.
270214
- For fast iteration in VS Code, use the Debug panel (press F5) or the Flutter toolbar (Run and Debug).
271215

272-
---
273216

274217
### Application Flavors
275218

@@ -299,17 +242,16 @@ export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
299242
```
300243

301244
**Android Requirements:**
302-
- Compile SDK: 36 (Android 14)
303-
- Min SDK: 24 (Android 7.0)
304-
- Target SDK: 36 (Android 14)
305-
- Java 17 compatibility (configured in build.gradle)
245+
- Android SDK (stable)
246+
- Java (LTS version)
247+
- See Android configuration in the project Gradle files.
306248

307249
### iOS Development Setup (macOS only)
308250

309251
**Requirements:**
310-
- iOS 14.0+ (specified in Podfile)
311-
- Xcode 12.0+
252+
- Xcode
312253
- CocoaPods
254+
- iOS deployment target is defined in the project configuration.
313255

314256
```bash
315257
# Install CocoaPods
@@ -359,7 +301,7 @@ cd ios && pod install && cd ..
359301
# Android - no additional steps needed
360302
```
361303

362-
### Required Permissions
304+
### Android permissions used
363305

364306
The app requires these permissions (configured in AndroidManifest.xml):
365307

@@ -374,14 +316,14 @@ The app requires these permissions (configured in AndroidManifest.xml):
374316
### Key Dependencies
375317

376318
**Hardware Communication:**
377-
- `usb_serial: ^0.5.0` - USB device communication
378-
- `flusbserial: ^0.3.0` - Additional USB serial support
319+
- usb_serial
320+
- flusbserial
379321

380322
**Sensors & Hardware:**
381-
- `sensors_plus: ^6.1.2` - Device sensors
382-
- `light: ^4.1.0` - Light sensor
383-
- `geolocator: ^14.0.2` - GPS functionality
384-
- `permission_handler: ^12.0.1` - Runtime permissions
323+
- sensors_plus
324+
- light
325+
- geolocator
326+
- permission_handler
385327

386328
**Audio Processing:**
387329
- `flutter_audio_capture` (Git dependency) - Audio capture for oscilloscope
@@ -451,7 +393,7 @@ flutter test integration_test/
451393
```
452394

453395
4. **Android build issues:**
454-
- Ensure Java 17 is installed: `java -version`
396+
- Ensure an LTS Java version is installed: java -version
455397
- Clean build: `flutter clean && flutter pub get`
456398

457399
5. **Git dependency issues:**
@@ -460,36 +402,48 @@ flutter test integration_test/
460402
flutter pub get
461403
```
462404

463-
**Verify Setup:**
464-
- `flutter doctor` shows no critical issues
465-
- `flutter build apk --debug` completes successfully
466-
- Tests pass: `flutter test` to the repository and click clone or download button.
467-
4. From the dropdown that appeared, copy the link.
468-
5. Paste the URL that you copied and press clone.
469-
6. Android studio should now begin building the project with gradle.
470-
7. Once this process is complete and Android Studio opens, check the Console for any build errors.
405+
### Verify Setup
406+
407+
Follow the steps below to confirm that your local development environment is correctly configured.
408+
409+
#### 1. Check Flutter installation
410+
```bash
411+
flutter doctor
412+
```
413+
Resolve any critical issues reported by the command.
414+
415+
#### 2. Install dependencies and run tests
416+
```bash
417+
flutter pub get
418+
flutter test
419+
```
471420

472-
- _Note:_ If you receive a Gradle sync error titled, "failed to find ...", you should click on the link below the error message (if available) that says _Install missing platform(s) and sync project_ and allow Android studio to fetch you what is missing.
421+
#### 3. Run the application
422+
```bash
423+
flutter run
424+
```
425+
Run the app on a connected physical device, emulator, or desktop target.
473426

474-
8. Once all build errors have been resolved, you should be all set to build the app and test it.
475-
9. To Build the app, go to _Build>Make Project_ (or alternatively press the Make Project icon in the toolbar).
476-
10. If the app was built successfully, you can test it by running it on either a real device or an emulated one by going to _Run>Run 'app'_ or pressing the Run icon in the toolbar.
427+
#### 4. (Optional) Using Android Studio
428+
If you prefer Android Studio:
429+
- Open the project directory in Android Studio.
430+
- Wait for the Gradle sync to complete.
431+
- Check the Build and Run windows for errors.
477432

478-
If you want build apk only, go to Build>Build apk and apk would be build and directory where apk is generated would be prompted by Android Studio.
433+
Note: If you encounter a Gradle sync error such as
434+
“failed to find …”, use the suggested action (for example, Install missing platform(s) and sync project) to allow Android Studio to download the required components.
479435

480-
You can't debug the usual way as PSLab device is connected to micro-USB port through OTG cable. So Android Device is not connected to PC through USB cable.
436+
Once the app builds successfully and launches on your target device or emulator, the setup is complete.
481437

482-
To debug over Wi-Fi follow the steps given in this [Blog](http://blog.fossasia.org/android-app-debugging-over-wifi-for-pslab/).
438+
The currently supported Flutter, Dart, and platform versions are defined in the project configuration files (for example `pubspec.yaml`, Android Gradle files, and iOS project settings).
483439

484-
* **Note :**
485-
If you built your own hardware, change VendorID and/or ProductID in [CommunicationHandler.java](https://github.com/fossasia/pslab-app/blob/master/app/src/main/java/io/pslab/communication/CommunicationHandler.java).
440+
### Permission manifests
486441

487-
### Permissions Required
442+
Permissions are declared in the platform manifests:
443+
- Android: android/app/src/main/AndroidManifest.xml
444+
- iOS: ios/Runner/Info.plist
488445

489-
1. Record_Audio : It is required for oscilloscope to accept inputs from the phone inbuilt microphone. You can find its implementation in [AudioJack.java](https://github.com/fossasia/pslab-app/blob/development/app/src/main/java/io/pslab/others/AudioJack.java).
490-
2. Access_Fine_Location and Internet : It is required for use in lux meter and compass to get the coordinates for tagging the data on the map. You can find its implementation in [GPSLogger.java](https://github.com/fossasia/pslab-app/blob/development/app/src/main/java/io/pslab/others/GPSLogger.java).
491-
3. Write_External_Storage : It is required for storing log files from instruments that can be transferred out for future analysis.
492-
4. Read_External_Storage : While writing logs in the storage, [CSVLogger.java](https://github.com/fossasia/pslab-app/blob/development/app/src/main/java/io/pslab/others/CSVLogger.java) first checks whether there is any CSVLogger directory exist or not and that require this read permission.
446+
The app may request permissions at runtime depending on the instrument/features being used (e.g., location, microphone, storage, USB).
493447

494448
## Setup to use PSLab with Android App
495449
To use PSLab device with Android, you simply need an OTG cable, an Android Device with USB Host feature enabled ( most modern phones have OTG support ) and PSLab Android App. Connect PSLab device to Android Phone via OTG cable. Rest is handled by App itself.

0 commit comments

Comments
 (0)