Remove readme, for now

This commit is contained in:
Jan-Henrik Bruhn 2025-12-11 13:40:24 +01:00
parent 3d57853928
commit 675bb2a6cc

150
README.md
View file

@ -1,150 +0,0 @@
# Brother Embroidery Machine Web Controller
A modern web application for controlling Brother embroidery machines via WebBluetooth.
## Features
- **WebBluetooth Connection**: Connect directly to Brother PP1 embroidery machines from your browser
- **Pattern Upload**: Load and upload PEN format embroidery files
- **Pattern Visualization**: Preview embroidery patterns on an interactive canvas with color information
- **Real-time Monitoring**: Monitor sewing progress, position, and status in real-time
- **Machine Control**: Start mask trace, start sewing, and manage patterns
## Requirements
- Modern browser with WebBluetooth support (Chrome, Edge, Opera)
- HTTPS connection (required for WebBluetooth API)
- Brother PP1 compatible embroidery machine with BLE
## Getting Started
### Installation
```bash
npm install
```
### Development
```bash
npm run dev
```
The application will be available at `http://localhost:5173`
**Note**: WebBluetooth requires HTTPS. For local development, you can use:
- `localhost` (works with HTTP)
- A reverse proxy with SSL
- Vite's HTTPS mode: `npm run dev -- --https`
### Build for Production
```bash
npm run build
```
The built files will be in the `dist` directory.
### Preview Production Build
```bash
npm run preview
```
## Usage
1. **Connect to Machine**
- Click "Connect to Machine"
- Select your Brother embroidery machine from the browser's Bluetooth device picker
- Machine information and status will be displayed
2. **Load Pattern**
- Click "Choose PEN File" and select a `.pen` embroidery file
- Pattern details and preview will be shown on the canvas
- Different colors are displayed in the preview
3. **Upload to Machine**
- Click "Upload to Machine" to transfer the pattern
- Upload progress will be shown
- Pattern information will be retrieved from the machine
4. **Start Mask Trace** (optional)
- Click "Start Mask Trace" to trace the pattern outline
- Confirm on the machine when prompted
5. **Start Sewing**
- Click "Start Sewing" to begin the embroidery process
- Real-time progress, position, and status will be displayed
- Follow machine prompts for color changes
6. **Monitor Progress**
- View current stitch count and completion percentage
- See real-time needle position
- Track elapsed time
## Project Structure
```
web/
├── src/
│ ├── components/ # React components
│ │ ├── MachineConnection.tsx
│ │ ├── FileUpload.tsx
│ │ ├── PatternCanvas.tsx
│ │ └── ProgressMonitor.tsx
│ ├── hooks/ # Custom React hooks
│ │ └── useBrotherMachine.ts
│ ├── services/ # BLE communication
│ │ └── BrotherPP1Service.ts
│ ├── types/ # TypeScript types
│ │ └── machine.ts
│ ├── utils/ # Utility functions
│ │ └── penParser.ts
│ ├── App.tsx # Main application component
│ ├── App.css # Application styles
│ └── main.tsx # Entry point
├── public/ # Static assets
├── package.json
├── tsconfig.json
└── vite.config.ts
```
## Technology Stack
- **React 18**: UI framework
- **TypeScript**: Type safety
- **Vite**: Build tool and dev server
- **WebBluetooth API**: BLE communication
- **HTML5 Canvas**: Pattern visualization
## Protocol
The application implements the Brother PP1 BLE protocol:
- Service UUID: `a76eb9e0-f3ac-4990-84cf-3a94d2426b2b`
- Write Characteristic: `a76eb9e2-f3ac-4990-84cf-3a94d2426b2b`
- Read Characteristic: `a76eb9e1-f3ac-4990-84cf-3a94d2426b2b`
See `../emulator/PROTOCOL.md` for detailed protocol documentation.
## PEN Format
The application supports PEN format embroidery files:
- Binary format with 4-byte stitch records
- Coordinates in 0.1mm units
- Supports multiple colors and color changes
- Includes jump stitches and flags
## Browser Compatibility
WebBluetooth is supported in:
- Chrome 56+
- Edge 79+
- Opera 43+
**Not supported in:**
- Firefox (no WebBluetooth support)
- Safari (no WebBluetooth support)
## License
MIT