Skip to content

Commit c7c7a7b

Browse files
committed
update 2024.4.1
1 parent ebcaeb1 commit c7c7a7b

File tree

325 files changed

+4436
-782
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

325 files changed

+4436
-782
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,4 @@
33
.vscode/c_cpp_properties.json
44
.vscode/launch.json
55
.vscode/ipch
6+
.DS_Store

CHANGELOG.md

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,92 @@
11
# Changelog
22

3+
4+
## 2024.4.1
5+
### 주의 사항
6+
SPIFFS에서 FFAT으로 저장소 형식이 변경되었습니다. 프로그램 뿐만 아니라 파일 시스템도 다시 업로드해야 정상 사용 가능합니다.
7+
8+
### CAUTION
9+
Storage format changed from SPIFFS to FFAT. You will need to re-upload not only the program but also the file system.
10+
11+
### 기능
12+
- Boop 센서 VL53L1X 지원 추가
13+
- 조도센서 BH1750 지원 추가
14+
- 온습도센서 SHT31 지원 추가
15+
- 메인 패널과 사이드 패널 밝기 별도 조절 가능하도록 개선
16+
- 동적 이미지 로딩 기능 추가
17+
- 이제 이미지가 많아서 표시 할 수 없던 표정도 표시 할 수 있습니다!
18+
- 대신 60fps 기준 약간의 프레임 드랍이 발생 할 수 있습니다.
19+
- 비디오 모드 추가
20+
- 일반 스크립트보다 간략화된 새로운 스크립트를 지원합니다.
21+
- 재생시 화면 주사율이 변경합니다.
22+
- 30fps 초과 재생시 프레임 드랍이 발생 할 수 있습니다.
23+
- 모니터에 `!set video`를 입력해서 확인해보세요!
24+
- 음악 시각화 에뮬레이션 모드 (파티 모드) 에서 얼굴 표시 여부 설정 추가 (`my_protogen:festive_face`)
25+
- 표정 변화에 걸리는 시간 대폭 개선
26+
27+
### 버그 수정
28+
- 조도센서 사용시 특정 조건에서 최소/최대 밝기로 조절되지 않는 문제 수정
29+
- 최초 전원 인가시 HUD에 깨진 이미지가 표시되는 문제 수정
30+
- 오차 누적으로 미세하게 빨라지는 문제 수정
31+
- 표정 변경 최적화가 동작하지 않는 문제 수정
32+
33+
### 기타
34+
- config.yaml 버전 변경 (1 -> 2)
35+
- 버전 1도 아직 사용 가능
36+
- 조도센서 설정 `photoresistor` -> `lightsensor`로 변경
37+
- 기본 표정 각 부위별(`eyes_default`, `nose_default`, `mouth_default`, `side_default`) -> 전체 표정(`default_emotion`)으로 변경
38+
- 조도센서 처리 코어 0으로 이동
39+
- 로그 표시 개선 (시간, 색상 추가)
40+
- 시리얼을 통한 Soft reset 추가 (`!reset`)
41+
- 시리얼을 통한 표정 변경 명령어 추가
42+
- `!set [표정]` (예제: `!set video`)
43+
- 파일 시스템 변경 (`SPIFFS` -> `FFAT`)
44+
- 파티션 테이블 변경 (`default.csv` -> `noota_3g.csv`)
45+
- OTA를 위한 용량 제거 (1.25MB -> 0MB)
46+
- 애플리케이션 용량 감소 (1.25MB -> 1MB)
47+
- 저장소 용량 증가 (1.375MB -> 2.875MB)
48+
- HUD 미러링 성능 개선
49+
50+
### Feature
51+
- Add support for VL53L1X, Boop sensor
52+
- Add support for BH1750 light sensor
53+
- Add support for SHT31, temperature/humidity sensor
54+
- Improved the brightness of the main panels and side panels to be adjusted differently
55+
- Dynamic image loading
56+
- Now you can display emotions that could not be displayed due to too many images!
57+
- Instead, slight frame drops may occur at 60fps.
58+
- Add video mode
59+
- Supports new simplified scripts.
60+
- The screen refresh rate changes during playback.
61+
- Frame drops exceeding 30fps may occur.
62+
- Enter `!set video` into monitor and check out!
63+
- Add face visibility in Music visualizer emulation (`my_protogen:festive_face`)
64+
- Improved emotion change performance
65+
66+
### Bugfix
67+
- Fix the brightness was not adjusted to the minimum/maximum some conditions when using the light sensor
68+
- Fix a broken image was displayed on the HUD when first powering on
69+
- Fix slight speedup due to error accumulation
70+
- Fix an issue where emotion change optimization did not work
71+
72+
### Misc.
73+
- Increase config.yaml version (1 to 2)
74+
- Version 1 is still compatible
75+
- `photoresistor` changed to `lightsensor`.
76+
- Default emotion changed from each(`eyes_default`, `nose_default`, `mouth_default`, `side_default`) to all(`default_emotion`).
77+
- Light sensor processing moved to core 0
78+
- Improved log display (add time and color)
79+
- Add Soft reset via Serial (`!reset`)
80+
- Add set emotion via Serial
81+
- `!set [emotion]` (ex: `!set video`)
82+
- Change filesystem (`SPIFFS` -> `FFAT`)
83+
- Change flash partition table (`default.csv` to `noota_3g.csv`)
84+
- Remove space for OTA (1.25MB to 0MB)
85+
- Less space for Application (1.25MB to 1MB)
86+
- More space for Storage (1.375MB to 2.875MB)
87+
- Improve performance when HUD mirroring
88+
89+
390
## 2024.1.1
491
- 문서화 된 최초 빌드
592
- First documented build

README.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ Q: 상업적으로 사용해도 되나요?<br>
3333
A: 아니오. (단호)
3434

3535
Q: 구입 할 수 있는 보드가 있나요?<br>
36-
A: 아직 없습니다. ESP32-Trinity가 유사하지만 핀맵 문제나 장착 위치 문제로 사용하기 어려울 것으로 보입니다. 저는 ESP32 개발 보드에 케이블을 일일이 납땜해서 제작했습니다. 언젠가는 PCB로 만들지도 모릅니다.
36+
A: 아직은 없지만, 현재 프로토타입을 제작하여 테스트 중입니다!
3737

3838
Q: ESP32 대신 다른 보드를 사용해도 되나요?<br>
3939
A: ESP32로만 테스트되었으며, ESP32-C3, ESP32-S2, ESP32-S3 등 보드에서는 테스트되지 않았습니다. 코어 개수, RAM 용량에서 차이가 있으므로 최소한 소스를 수정해야 구동 가능하며, 수정하더라도 원활한 사용이 어려울 수 있습니다.
@@ -44,8 +44,14 @@ A: ESP32로만 테스트되었으며, ESP32-C3, ESP32-S2, ESP32-S3 등 보드에
4444

4545

4646

47+
# 기여하신 분
48+
- 사토루 [X(Twitter)](https://x.com/leopard_sato_)
49+
- 양말 / SheepPony [X(Twitter)](https://x.com/sheeppony)
50+
51+
52+
4753
# 프로젝트 관리자
48-
디테일 / DETAIL [X(Twitter)](https://x.com/deltafish32)
54+
- 디테일 / DETAIL [X(Twitter)](https://x.com/deltafish32)
4955

5056

5157

README_en_US.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ Q: Can I use it commercially?<br>
3333
A: No.
3434

3535
Q: Is there a board I can purchase?<br>
36-
A: Not yet. International shipping may not be possible. ESP32-Trinity is similar, but appears to be difficult to use due to pin map issues and mounting location issues. I made it soldering cables to the ESP32 development board. I might make it into a PCB someday.
36+
A: Not yet, but we are currently testing a prototype!
3737

3838
Q: Can I use another board instead of ESP32?<br>
3939
A: Tested only on ESP32, not on ESP32-C3, ESP32-S2, ESP32-S3, etc. boards. Since there are differences in the number of cores and RAM capacity, you must at least modify the source to run it, and even if you modify it, smooth use may be difficult.
@@ -44,8 +44,14 @@ A: Tested only on ESP32, not on ESP32-C3, ESP32-S2, ESP32-S3, etc. boards. Since
4444

4545

4646

47+
# Special Thanks
48+
- 사토루 [X(Twitter)](https://x.com/leopard_sato_)
49+
- 양말 / SheepPony [X(Twitter)](https://x.com/sheeppony)
50+
51+
52+
4753
# Administrator
48-
디테일 / DETAIL [X(Twitter)](https://x.com/deltafish32)
54+
- 디테일 / DETAIL [X(Twitter)](https://x.com/deltafish32)
4955

5056

5157

data/config.yaml

Lines changed: 122 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
version: 1
1+
version: 2
22

33
# 나만의 프로토젠을 만들어보세요.
44
# Create your own Protogen.
@@ -12,10 +12,7 @@ my_protogen:
1212

1313
# 기본 표정
1414
# Default emotion
15-
eyes_default: eyes_normal
16-
nose_default: nose_default
17-
mouth_default: mouth_default
18-
side_default: side_default
15+
default_emotion: normal
1916

2017
# 색상 모드
2118
# original: 이미지의 원래 색상
@@ -52,6 +49,10 @@ my_protogen:
5249
# - 0.8 -> '#00ff00'
5350
# - 1.0 -> '#ffff00'
5451

52+
# festive에 얼굴 표시 여부
53+
# face Visibility in festive
54+
festive_face: true
55+
5556

5657
emotions:
5758
- name: default
@@ -60,7 +61,13 @@ emotions:
6061
mouth: mouth_default
6162
side: side_default
6263
- name: normal
63-
eyes: eyes_normal
64+
eyes: eyes_normal_boop
65+
nose: nose_default_boop
66+
mouth: mouth_normal_boop
67+
# - name: normal
68+
# eyes: eyes_normal_boop2
69+
# nose: nose_hide
70+
# mouth: mouth_hide
6471
- name: badass
6572
eyes: eyes_badass
6673
- name: grin
@@ -85,6 +92,10 @@ emotions:
8592
eyes: loading
8693
nose: ''
8794
mouth: ''
95+
- name: video
96+
eyes: video
97+
nose: ''
98+
mouth: ''
8899

89100

90101
hardware:
@@ -119,11 +130,23 @@ hardware:
119130
# 사이드 패널 (NeoPixel)
120131
# Side panel (NeoPixel)
121132
side_panel:
122-
num_leds: 30
133+
num_leds: 72
123134
pin: 17
124135
# NeoPixelBus 종류 변경은 컴파일이 필요합니다.
125136
# Changing NeoPixelBus type requires compilation.
126137

138+
# 사이드 패널 밝기 비율
139+
# 1.0보다 작으면 사이드가 어두워지고, 크면 사이드가 밝아짐
140+
# Side panel brightness rate
141+
# less than 1.0, the side becomes darker, and larger than 1.0, the side becomes brighter.
142+
brightness_rate: 0.05
143+
144+
# I2C Bus
145+
i2c:
146+
# 속도 (1 ~ 1000000, 기본값: 100000)
147+
# Speed (1 to 1000000, default: 100000)
148+
frequency: 100000
149+
127150
# HUD (SSD1306 128x64)
128151
hud:
129152
fps: 30
@@ -187,30 +210,96 @@ hardware:
187210
- code: 0xa55aff00 # right
188211
keypress: L
189212
- code: 0xe31cff00 # ok
190-
keypress: S
191-
192-
# 조도센서
193-
# Photoresistor
194-
photoresistor:
195-
pin: 34
196-
calibration:
197-
# 이동평균 알파값
198-
# 0에 가까울수록 빠르게 변화하지만 노이즈 많음
199-
# 1에 가까울수록 천천히 변화하지만 노이즈 적음
200-
# SMA alpha value
201-
# The closer it is to 0, the faster it changes, but more noisy.
202-
# The closer it is to 1, the slowler it changes, but less noisy.
203-
alpha: 0.98
204-
alpha_init: 0.9
213+
keypress: A
214+
215+
# 조도 센서
216+
# Light Sensor
217+
lightsensor:
218+
# 현재 2가지 종류를 지원하지만 사용하지 않는 것을 권장드립니다.
219+
# (HUB75 특성상 밝기 조정시 플리커링이 발생하여, 사진 촬영시 표정 깨짐 발생)
220+
221+
# ----------------
222+
# 미 사용
223+
# Unused
224+
type: none
225+
226+
# ----------------
227+
# CDS (LDR)
228+
# type: ldr
229+
# pin: 34
230+
231+
# # 히스테리시스 (밝기를 변경할 최소 센서 변화량 비율 (0.0 ~ 1.0))
232+
# # Hysteresis (minimum sensor change rate to change brightness (0.0 to 1.0))
233+
# hysteresis: 0.05
234+
235+
# calibration:
236+
# # 이동평균 알파값
237+
# # 0에 가까울수록 빠르게 변화하지만 노이즈 많음
238+
# # 1에 가까울수록 천천히 변화하지만 노이즈 적음
239+
# # SMA alpha value
240+
# # The closer it is to 0, the faster it changes, but more noisy.
241+
# # The closer it is to 1, the slowler it changes, but less noisy.
242+
# alpha: 0.98
243+
# alpha_init: 0.9
205244

206-
# 자동 밝기 구간 (센서 -> 밝기)
207-
# 최소 2개는 존재해야 하며, 사용하지 않는 구간은 비활성화 가능
208-
# Auto brightness (Sensor -> Brightness)
209-
# Must be at least two, and unused sections can be deactivated.
210-
points:
211-
- 0.25 -> 0.25
212-
- 0.75 -> 1.0
213-
214-
# 히스테리시스 (밝기를 변경할 최소 센서 변화량 비율 (0.0 ~ 1.0))
215-
# Hysteresis (minimum sensor change rate to change brightness (0.0 to 1.0))
216-
hysteresis: 0.05
245+
# # 자동 밝기 구간 (센서 -> 밝기)
246+
# # 최소 2개는 존재해야 하며, 사용하지 않는 구간은 비활성화 가능
247+
# # Auto brightness (Sensor -> Brightness)
248+
# # Must be at least two, and unused sections can be deactivated.
249+
# points:
250+
# - 0.25 -> 0.25
251+
# - 0.75 -> 1.0
252+
253+
# ----------------
254+
# # BH1750
255+
# type: bh1750
256+
# # i2c: 0x23
257+
258+
# # 히스테리시스 (밝기를 변경할 최소 센서 변화량 (0 ~ ?))
259+
# # Hysteresis (minimum sensor change value to change brightness (0.0 to ?))
260+
# hysteresis: 50
261+
262+
# calibration:
263+
# # 이동평균 알파값
264+
# # 0에 가까울수록 빠르게 변화하지만 노이즈 많음
265+
# # 1에 가까울수록 천천히 변화하지만 노이즈 적음
266+
# # SMA alpha value
267+
# # The closer it is to 0, the faster it changes, but more noisy.
268+
# # The closer it is to 1, the slowler it changes, but less noisy.
269+
# alpha: 0.98
270+
# alpha_init: 0.9
271+
272+
# # 자동 밝기 구간 (센서 -> 밝기)
273+
# # 최소 2개는 존재해야 하며, 사용하지 않는 구간은 비활성화 가능
274+
# # Auto brightness (Sensor -> Brightness)
275+
# # Must be at least two, and unused sections can be deactivated.
276+
# points:
277+
# - 5 -> 0.25
278+
# - 40 -> 1.0
279+
280+
# Boop 센서
281+
# Boop sensor
282+
boopsensor:
283+
# 종류: VL53L1X (현재는 이것만 지원)
284+
# type: VL53L1X (currently only support this)
285+
type: vl53l1x
286+
# i2c: 0x29
287+
288+
# Boop으로 인식할 거리 (mm)
289+
# Distance to be Boop (mm)
290+
threshold: 20
291+
292+
# 노이즈 제거를 위한 샘플링 횟수 (현재 30Hz)
293+
# Smooth out measurements from this number of readings (currently 30Hz)
294+
sampling: 6
295+
296+
# 온도 센서
297+
# Thermometer
298+
thermometer:
299+
# 종류: SHT31 (현재는 이것만 지원)
300+
# type: SHT31 (currently only support this)
301+
type: sht31
302+
303+
# 측정 주기
304+
# period
305+
period: 15s

0 commit comments

Comments
 (0)