Skip to content

Commit 7205c10

Browse files
committed
2 parents 4e97fd0 + 40c73a8 commit 7205c10

File tree

1 file changed

+205
-0
lines changed

1 file changed

+205
-0
lines changed

README.md

Lines changed: 205 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,205 @@
1+
# JR-Beru (JR発車ベル)
2+
3+
A Japanese train station departure bell and announcement system hardware replica with a responsive web-based control interface, designed to run on ESP8266 microcontrollers and to be installed into the authentic housing. JR-Beru brings the nostalgic sounds of Japanese train stations to your home, offering both physical and remote control options.
4+
5+
---
6+
7+
## Features
8+
9+
### 🚂 Audio Playback
10+
11+
- **Departure Melodies**: JR station departure melodies
12+
- **ATOS Announcements**: Yamanote Line ATOS announcements.
13+
- **Door Chimes**: Door opening and closing sounds.
14+
- **Platform Announcements**: JR station platform announcements.
15+
16+
### 🎧 Control Methods
17+
18+
- **Physical Button Control**:
19+
- Single press: Start melody loop.
20+
- Release: Play ATOS announcement followed by door chime.
21+
- **Web Interface Control**:
22+
- Audio selection for all sound types.
23+
- Volume control (range: 0-30).
24+
- Random play toggle.
25+
- Manual platform announcement trigger.
26+
27+
### 📱 Web Interface
28+
29+
- **Responsive Design**: Fully functional on both desktop and mobile devices.
30+
- **Station Sign Display**:
31+
- JR station signage design (Static for now, can be changed to dynamic with further development).
32+
- Multilingual station names (Japanese, Korean, English).
33+
- Line Marker displaying (e.g., JY03).
34+
- Direction indicators for prev/next stations.
35+
- **Real-time Controls**: Instant feedback and response to user inputs.
36+
37+
<img width="294" alt="Screenshot 2024-12-25 at 14 20 59" src="https://github.com/user-attachments/assets/da28639d-7efb-4e0b-ba38-c74ee062fd0b" />
38+
39+
40+
41+
### 🔧 System Features
42+
43+
- **WiFi Manager**: Simplified WiFi configuration with AP mode fallback.
44+
- **OTA Updates**: Seamless over-the-air firmware updates.
45+
- **Volume Memory**: Retains last volume settings between power cycles.
46+
- **Track Selection Memory**: Remembers the last played tracks for each folder.
47+
- **Serial Output**: Detailed status logs for monitoring and debugging.
48+
49+
---
50+
51+
## Hardware Requirements
52+
53+
- **ESP8266 Board**: Compatible with NodeMCU, Wemos D1 Mini, etc.
54+
- **DFPlayer Mini MP3 Player**
55+
- **SD Card**: Formatted as FAT32 with audio files.
56+
- **Speaker**: Suitable for MP3 playback.
57+
- **Push Button**: Recommended: BSW215B3.
58+
- **Power Supply**: 5V regulated power source.
59+
60+
---
61+
62+
## Pin Configuration
63+
64+
| Pin | Function |
65+
| --- | ----------------- |
66+
| D5 | DFPlayer RX |
67+
| D6 | DFPlayer TX |
68+
| D4 | Main Button Input |
69+
70+
---
71+
72+
## Audio File Structure
73+
74+
The SD card file system must follow this structure:
75+
76+
```
77+
/01/ # Departure melodies
78+
/02/ # ATOS announcements
79+
/03/ # Door chime sounds
80+
/04/ # Platform announcements
81+
```
82+
83+
---
84+
85+
## Setup Instructions
86+
87+
1. Format the SD card as FAT32.
88+
2. Copy audio files to the appropriate folders.
89+
3. Connect hardware according to the [Pin Configuration](#pin-configuration).
90+
4. Flash firmware to the ESP8266 using the Arduino IDE.
91+
5. Power on the device.
92+
6. Connect to the "JR-BERU-AP" WiFi network.
93+
7. Configure your WiFi settings via the web interface.
94+
8. Access the web interface at the device’s assigned IP address.
95+
96+
---
97+
98+
## Web Interface Access
99+
100+
- **URL**: `http://[device-ip]`
101+
102+
---
103+
104+
## Firmware Updates
105+
106+
1. Access `http://[device-ip]/update`.
107+
2. Enter credentials when prompted:
108+
- **Default OTA Username**: `JR`
109+
- **Default OTA Password**: `beru`
110+
3. Select the new firmware file.
111+
4. Click upload to update.
112+
113+
---
114+
115+
## Version History
116+
117+
### **MCU-R0.3.7 WebUI-R2.0.5**
118+
119+
- More accurate station sign display.
120+
- Improved audio control reliability.
121+
- Added Reset DF-Player support in WebUI.
122+
123+
### **MCU-R0.3.5 WebUI-R2.0.2**
124+
125+
- Enhanced station sign display.
126+
- Improved audio control reliability.
127+
- Added multilingual support.
128+
- WiFi connection stability improvements.
129+
130+
---
131+
132+
## Serial Monitoring
133+
134+
The device outputs detailed status information via Serial (115200 baud rate). Use the Arduino IDE’s Serial Monitor or any serial terminal to monitor real-time logs.
135+
136+
### Boot Sequence Output
137+
138+
```
139+
===================
140+
JR-Beru Booting
141+
===================
142+
Firmware Version: MCU-RX.X.X WebUI-RX.X.X
143+
Initializing MP3-Player ... (May take 3~5 seconds)
144+
MP3-Player online.
145+
=======Audio File Count:=======
146+
Melody Files: X
147+
Atos Files: X
148+
DoorChime Files: X
149+
VA Files: X
150+
===============================
151+
Starting Wifi Manager...
152+
Wifi Manager Started!
153+
Web server started!
154+
========Boot up Completed!========
155+
```
156+
157+
### Audio Playback Status
158+
159+
- Track selection: `PlayingFolder: X, Playing Audio: Y`
160+
- Random play: `RandomPlay: X/Y`
161+
- Playback completion: `Number:X Play Finished!`
162+
- Door chime triggers: `====Door Chime playing====`
163+
164+
### Error Messages
165+
166+
- `Time Out!`: MP3 player communication timeout.
167+
- `Stack Wrong!`: MP3 player stack error.
168+
- `Card not found`: SD card reading error.
169+
- `Cannot Find File`: Requested audio file not found.
170+
- `File Index Out of Bound`: Invalid file number requested.
171+
172+
### WiFi Status
173+
174+
- Connection status.
175+
- IP address assignment.
176+
- Web server initialization.
177+
178+
### Debugging Tips
179+
180+
1. Open Serial Monitor in Arduino IDE.
181+
2. Set baud rate to 115200.
182+
3. Ensure "Newline" is selected for line ending.
183+
4. Power cycle the device to see boot sequence.
184+
5. Monitor real-time operation status.
185+
186+
---
187+
188+
## Credits
189+
190+
- Station melodies and announcements are the property of JR East.
191+
- Web interface design inspired by JR Yamanote Line station signage.
192+
- Built using the ESP8266 Arduino Core and DFRobotDFPlayerMini library.
193+
194+
---
195+
196+
## License
197+
198+
This project is released under the MIT License. See the `LICENSE` file for details.
199+
200+
---
201+
202+
## Support
203+
204+
For issues and feature requests, please use the [GitHub Issues](https://github.com/99buntai/JR-BERU-ESP/issues) page.
205+

0 commit comments

Comments
 (0)