@jjlmoya/utils-hardware 1.25.0 → 1.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/category/index.ts +3 -1
- package/src/entries.ts +7 -1
- package/src/index.ts +2 -0
- package/src/tests/locale_completeness.test.ts +1 -1
- package/src/tests/tool_validation.test.ts +1 -1
- package/src/tool/usbPowerBudgetCalculator/bibliography.astro +14 -0
- package/src/tool/usbPowerBudgetCalculator/bibliography.ts +16 -0
- package/src/tool/usbPowerBudgetCalculator/component.astro +266 -0
- package/src/tool/usbPowerBudgetCalculator/entry.ts +29 -0
- package/src/tool/usbPowerBudgetCalculator/i18n/de.ts +169 -0
- package/src/tool/usbPowerBudgetCalculator/i18n/en.ts +169 -0
- package/src/tool/usbPowerBudgetCalculator/i18n/es.ts +169 -0
- package/src/tool/usbPowerBudgetCalculator/i18n/fr.ts +169 -0
- package/src/tool/usbPowerBudgetCalculator/i18n/id.ts +169 -0
- package/src/tool/usbPowerBudgetCalculator/i18n/it.ts +169 -0
- package/src/tool/usbPowerBudgetCalculator/i18n/ja.ts +169 -0
- package/src/tool/usbPowerBudgetCalculator/i18n/ko.ts +169 -0
- package/src/tool/usbPowerBudgetCalculator/i18n/nl.ts +169 -0
- package/src/tool/usbPowerBudgetCalculator/i18n/pl.ts +169 -0
- package/src/tool/usbPowerBudgetCalculator/i18n/pt.ts +169 -0
- package/src/tool/usbPowerBudgetCalculator/i18n/ru.ts +169 -0
- package/src/tool/usbPowerBudgetCalculator/i18n/sv.ts +169 -0
- package/src/tool/usbPowerBudgetCalculator/i18n/tr.ts +169 -0
- package/src/tool/usbPowerBudgetCalculator/i18n/zh.ts +169 -0
- package/src/tool/usbPowerBudgetCalculator/index.ts +11 -0
- package/src/tool/usbPowerBudgetCalculator/logic.ts +81 -0
- package/src/tool/usbPowerBudgetCalculator/seo.astro +15 -0
- package/src/tool/usbPowerBudgetCalculator/ui.ts +32 -0
- package/src/tool/usbPowerBudgetCalculator/usb-power-budget-calculator.css +484 -0
- package/src/tool/webUsbSerialMonitor/bibliography.astro +15 -0
- package/src/tool/webUsbSerialMonitor/bibliography.ts +18 -0
- package/src/tool/webUsbSerialMonitor/component.astro +356 -0
- package/src/tool/webUsbSerialMonitor/entry.ts +30 -0
- package/src/tool/webUsbSerialMonitor/i18n/de.ts +241 -0
- package/src/tool/webUsbSerialMonitor/i18n/en.ts +241 -0
- package/src/tool/webUsbSerialMonitor/i18n/es.ts +241 -0
- package/src/tool/webUsbSerialMonitor/i18n/fr.ts +241 -0
- package/src/tool/webUsbSerialMonitor/i18n/id.ts +241 -0
- package/src/tool/webUsbSerialMonitor/i18n/it.ts +241 -0
- package/src/tool/webUsbSerialMonitor/i18n/ja.ts +241 -0
- package/src/tool/webUsbSerialMonitor/i18n/ko.ts +241 -0
- package/src/tool/webUsbSerialMonitor/i18n/nl.ts +241 -0
- package/src/tool/webUsbSerialMonitor/i18n/pl.ts +241 -0
- package/src/tool/webUsbSerialMonitor/i18n/pt.ts +241 -0
- package/src/tool/webUsbSerialMonitor/i18n/ru.ts +241 -0
- package/src/tool/webUsbSerialMonitor/i18n/sv.ts +241 -0
- package/src/tool/webUsbSerialMonitor/i18n/tr.ts +241 -0
- package/src/tool/webUsbSerialMonitor/i18n/zh.ts +241 -0
- package/src/tool/webUsbSerialMonitor/index.ts +12 -0
- package/src/tool/webUsbSerialMonitor/logic.ts +44 -0
- package/src/tool/webUsbSerialMonitor/seo.astro +16 -0
- package/src/tool/webUsbSerialMonitor/ui.ts +51 -0
- package/src/tool/webUsbSerialMonitor/web-usb-serial-monitor.css +415 -0
- package/src/tools.ts +3 -1
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { WebUsbSerialMonitorUI } from '../ui';
|
|
4
|
+
import { bibliography } from '../bibliography';
|
|
5
|
+
|
|
6
|
+
const slug = 'web-usb-serial-monitor';
|
|
7
|
+
const title = 'WebUSB 시리얼 모니터';
|
|
8
|
+
const description = '브라우저에서 USB 시리얼 하드웨어에 연결하고, 실시간 터미널 출력을 읽고, 명령을 보내고, Arduino, ESP32, RP2040 및 메이커 보드를 데스크톱 터미널 설치 없이 디버깅하세요.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: '이 시리얼 모니터는 Arduino, ESP32, Raspberry Pi Pico 보드에서 작동하나요?',
|
|
13
|
+
answer: '네, 보드가 Web Serial에서 지원하는 USB 시리얼 인터페이스를 제공하고 브라우저가 Chromium 기반인 경우에 작동합니다. 일반적인 Arduino, ESP32, RP2040, CH340, CP210x 및 FTDI 어댑터는 사용자가 권한을 부여한 후에 보통 작동합니다.',
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
question: 'Web Serial을 사용하는데 왜 WebUSB라고 부르나요?',
|
|
17
|
+
answer: '대부분의 메이커 보드는 USB를 통해 연결되지만, 브라우저 터미널 접근은 Web Serial API에 의해 제공됩니다. WebUSB는 더 낮은 수준이며 간단한 UART 스타일 터미널에 적합한 추상화가 아닙니다.',
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
question: '웹사이트가 허가 없이 내 시리얼 장치에 접근할 수 있나요?',
|
|
21
|
+
answer: '아니요. 브라우저는 사이트가 시리얼 포트를 열기 전에 사용자 클릭과 네이티브 장치 선택기를 요구합니다. 이 도구는 터미널 로그나 장치 식별자를 저장하지 않습니다.',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
question: '웹 시리얼 터미널에 어떤 브라우저를 사용해야 하나요?',
|
|
25
|
+
answer: 'HTTPS 또는 localhost에서 Chrome, Edge 또는 다른 Chromium 기반 브라우저를 사용하세요. Firefox, Safari 및 많은 iOS 브라우저는 Web Serial API를 제공하지 않습니다.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: '어떤 보레이트를 선택해야 하나요?',
|
|
29
|
+
answer: '펌웨어에 설정된 보레이트를 선택하세요. Arduino 예제는 종종 9600 또는 115200을 사용하며, 더 빠른 로그, 부트로더 및 고속 센서 스트림은 230400, 460800 또는 921600을 사용할 수 있습니다.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'USB 시리얼 장치 연결하기',
|
|
36
|
+
text: '보드 또는 어댑터를 연결하고 이미 포트를 열고 있을 수 있는 다른 시리얼 터미널을 닫으세요.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: '보레이트 선택하기',
|
|
40
|
+
text: '많은 Arduino, ESP32 및 RP2040 스케치용 115200과 같이 펌웨어에서 사용하는 것과 동일한 보레이트를 선택하세요.',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: '브라우저 권한 부여하기',
|
|
44
|
+
text: '연결을 누르고 브라우저 선택기에서 시리얼 장치를 선택한 다음 페이지가 포트를 열 수 있도록 허용하세요.',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: '터미널 데이터 읽기 및 보내기',
|
|
48
|
+
text: '터미널에서 들어오는 로그를 관찰하고, 선택적 CRLF 줄 끝으로 명령을 보내고, 필요할 때 실시간 출력을 지우거나 일시 중지하세요.',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
|
|
52
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
53
|
+
'@context': 'https://schema.org',
|
|
54
|
+
'@type': 'FAQPage',
|
|
55
|
+
mainEntity: faqData.map((item) => ({
|
|
56
|
+
'@type': 'Question',
|
|
57
|
+
name: item.question,
|
|
58
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
59
|
+
})),
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const howToSchema: WithContext<HowTo> = {
|
|
63
|
+
'@context': 'https://schema.org',
|
|
64
|
+
'@type': 'HowTo',
|
|
65
|
+
name: title,
|
|
66
|
+
description,
|
|
67
|
+
step: howToData.map((step, i) => ({
|
|
68
|
+
'@type': 'HowToStep',
|
|
69
|
+
position: i + 1,
|
|
70
|
+
name: step.name,
|
|
71
|
+
text: step.text,
|
|
72
|
+
})),
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
76
|
+
'@context': 'https://schema.org',
|
|
77
|
+
'@type': 'SoftwareApplication',
|
|
78
|
+
name: title,
|
|
79
|
+
description,
|
|
80
|
+
applicationCategory: 'DeveloperApplication',
|
|
81
|
+
operatingSystem: 'All',
|
|
82
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'USD' },
|
|
83
|
+
inLanguage: 'ko',
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export const content: ToolLocaleContent<WebUsbSerialMonitorUI> = {
|
|
87
|
+
slug,
|
|
88
|
+
title,
|
|
89
|
+
description,
|
|
90
|
+
faq: faqData,
|
|
91
|
+
bibliography,
|
|
92
|
+
howTo: howToData,
|
|
93
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
94
|
+
seo: [
|
|
95
|
+
{
|
|
96
|
+
type: 'title',
|
|
97
|
+
text: 'USB 메이커 하드웨어용 온라인 시리얼 모니터',
|
|
98
|
+
level: 2,
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
type: 'paragraph',
|
|
102
|
+
html: '이 브라우저 시리얼 모니터는 Chrome 또는 Edge에서 직접 USB 시리얼 포트를 열고 마이크로컨트롤러, USB UART 브릿지, 개발 보드, 부트로더, 테스트 장비, 센서 및 실험실 하드웨어에서 텍스트를 스트리밍합니다. 시리얼 콘솔이 필요하지만 데스크톱 IDE나 터미널 애플리케이션을 설치하고 싶지 않을 때 빠른 진단을 위해 설계되었습니다.',
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
type: 'message',
|
|
106
|
+
title: '브라우저 권한 경계',
|
|
107
|
+
html: '페이지는 사용자의 시리얼 장치를 조용히 열거하거나 열 수 없습니다. 연결을 누르고 브라우저 선택기에서 포트를 선택한 후에만 접근이 시작됩니다. 터미널 데이터는 직접 복사하지 않는 한 현재 탭에 머무릅니다.',
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
type: 'stats',
|
|
111
|
+
items: [
|
|
112
|
+
{ value: '9600-921600', label: '일반 보레이트 프리셋' },
|
|
113
|
+
{ value: 'CRLF', label: '선택적 명령 종료' },
|
|
114
|
+
{ value: '로컬', label: '터미널 세션' },
|
|
115
|
+
],
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'title',
|
|
119
|
+
text: '웹 시리얼 터미널이 유용한 경우',
|
|
120
|
+
level: 3,
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'list',
|
|
124
|
+
items: [
|
|
125
|
+
'Arduino, ESP32, ESP8266, RP2040, STM32 또는 사용자 정의 펌웨어에서 부트 메시지 확인하기.',
|
|
126
|
+
'USB UART 어댑터를 통해 모뎀, GPS, LoRa, Wi-Fi, Bluetooth 또는 셀룰러 모듈로 AT 명령 보내기.',
|
|
127
|
+
'공장 테스트 지그, 교실 실험실, 로봇 컨트롤러 또는 벤치 프로토타입에서 센서 출력 읽기.',
|
|
128
|
+
'USB 시리얼 브릿지 드라이버, 케이블, 보드 전원 및 펌웨어 보레이트가 모두 함께 작동하는지 확인하기.',
|
|
129
|
+
'버그를 보고하거나 하드웨어 지원을 요청하기 전에 빠른 오류 로그 수집하기.',
|
|
130
|
+
],
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
type: 'comparative',
|
|
134
|
+
items: [
|
|
135
|
+
{
|
|
136
|
+
title: '웹 시리얼 모니터',
|
|
137
|
+
description: '빠른 지원, 강의실 교육, 현장 진단 및 URL을 여는 것이 IDE를 설치하는 것보다 빠른 메이커 워크플로우에 가장 적합합니다.',
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
title: '데스크톱 터미널',
|
|
141
|
+
description: '바이너리 프로토콜, 긴 캡처 세션, 스크립팅, 하드웨어 흐름 제어, 매크로 및 브라우저 API가 차단된 환경에 더 적합합니다.',
|
|
142
|
+
},
|
|
143
|
+
],
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
type: 'title',
|
|
147
|
+
text: '보레이트 및 줄 끝 체크리스트',
|
|
148
|
+
level: 3,
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
type: 'table',
|
|
152
|
+
headers: ['설정', '일반적인 선택', '잘못되었을 때 발생하는 문제'],
|
|
153
|
+
rows: [
|
|
154
|
+
['보레이트', '많은 최신 보드는 115200, 오래된 예제는 9600.', '읽을 수 있는 텍스트가 임의의 기호로 바뀌거나 유용한 로그가 나타나지 않음.'],
|
|
155
|
+
['줄 끝', '많은 명령 파서는 CRLF, 원시 문자 프로토콜은 종료 없음.', '펌웨어가 종료 문자를 기다리고 있어 명령이 무시됨.'],
|
|
156
|
+
['배타적 포트 접근', 'Arduino Serial Monitor, PuTTY, screen, minicom 또는 벤더 도구 닫기.', '브라우저 선택기가 포트를 열지만 읽기 또는 쓰기가 실패함.'],
|
|
157
|
+
['보안 컨텍스트', 'HTTPS 또는 localhost.', '지원되는 브라우저에서도 Serial API가 누락됨.'],
|
|
158
|
+
],
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
type: 'diagnostic',
|
|
162
|
+
variant: 'warning',
|
|
163
|
+
title: '시리얼 출력이 없나요?',
|
|
164
|
+
html: '보드에 전원이 공급되고 USB 케이블이 충전만이 아닌 데이터를 지원하는지 확인하세요. 펌웨어 보레이트를 모르는 경우 9600, 57600, 115200을 시도하세요. 많은 보드가 시작 시에만 부트 로그를 출력하므로 연결 후 리셋을 누르세요. 여전히 시리얼 포트를 소유하고 있을 수 있는 다른 소프트웨어를 닫고, 장치가 나타나지 않으면 CH340, CP210x, FTDI 또는 보드 벤더용 운영 체제 드라이버를 설치하세요.',
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
type: 'title',
|
|
168
|
+
text: '개인정보 보호, 보안 및 제한 사항',
|
|
169
|
+
level: 3,
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
type: 'proscons',
|
|
173
|
+
title: 'Web Serial의 강점과 제한 사항',
|
|
174
|
+
items: [
|
|
175
|
+
{
|
|
176
|
+
pro: '기본적인 시리얼 텍스트 진단을 위해 데스크톱 설치가 필요 없음.',
|
|
177
|
+
con: 'Chromium 기반 브라우저와 보안 컨텍스트가 필요함.',
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
pro: '브라우저 선택기가 선택한 특정 포트로의 접근을 제한함.',
|
|
181
|
+
con: '바이너리 프로토콜 분석기나 장시간 무인 캡처용으로 설계되지 않음.',
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
pro: '텍스트 로그, 명령 프롬프트 및 빠른 하드웨어 점검에 잘 작동함.',
|
|
185
|
+
con: '일부 기업 정책, 모바일 브라우저 및 운영 체제가 Web Serial을 차단함.',
|
|
186
|
+
},
|
|
187
|
+
],
|
|
188
|
+
},
|
|
189
|
+
],
|
|
190
|
+
ui: {
|
|
191
|
+
unsupportedTitle: 'Web Serial을 사용할 수 없습니다',
|
|
192
|
+
unsupportedBody: 'HTTPS 또는 localhost에서 Chrome 또는 Edge를 사용하고 장치가 USB 시리얼 인터페이스를 제공하는지 확인하세요.',
|
|
193
|
+
secureContext: 'Web Serial에는 HTTPS 또는 localhost가 필요합니다. 보안 출처에서 이 페이지를 다시 로드하고 다시 시도하세요.',
|
|
194
|
+
statusIdle: '보레이트를 선택한 다음 USB 시리얼 장치를 연결하세요',
|
|
195
|
+
statusPermission: '브라우저 시리얼 포트 선택기 대기 중',
|
|
196
|
+
statusOpening: '시리얼 포트 여는 중',
|
|
197
|
+
statusConnected: '시리얼 포트 연결됨',
|
|
198
|
+
statusDisconnected: '시리얼 포트 연결 해제됨',
|
|
199
|
+
statusError: '시리얼 연결 실패',
|
|
200
|
+
connect: '시리얼 연결',
|
|
201
|
+
disconnect: '연결 해제',
|
|
202
|
+
send: '보내기',
|
|
203
|
+
clear: '지우기',
|
|
204
|
+
pause: '일시 중지',
|
|
205
|
+
resume: '재개',
|
|
206
|
+
baudRate: '보레이트',
|
|
207
|
+
newline: 'CRLF 추가',
|
|
208
|
+
inputPlaceholder: '명령을 입력하고 Enter를 누르세요',
|
|
209
|
+
portFallback: '선택된 포트 없음',
|
|
210
|
+
portLabel: '포트 식별',
|
|
211
|
+
connectedDeviceLabel: '연결된 장치',
|
|
212
|
+
deviceNameFallback: 'USB 시리얼 장치',
|
|
213
|
+
transportLabel: 'Web Serial 링크',
|
|
214
|
+
bytesLabel: '바이트',
|
|
215
|
+
linesLabel: '줄',
|
|
216
|
+
privacyTitle: '권한 제어',
|
|
217
|
+
privacyBody: '브라우저는 선택한 시리얼 장치만 노출합니다. 로그는 복사하지 않는 한 이 탭에 머무릅니다.',
|
|
218
|
+
emptyLog: '시리얼 장치를 연결하면 여기에 터미널 출력이 표시됩니다.',
|
|
219
|
+
copied: '복사됨',
|
|
220
|
+
copyLog: '복사',
|
|
221
|
+
presetSlow: '9600',
|
|
222
|
+
presetArduino: '115200',
|
|
223
|
+
presetFast: '921600',
|
|
224
|
+
terminalLabel: '실시간 터미널',
|
|
225
|
+
unknownUsbId: 'N/A',
|
|
226
|
+
logDirectionRx: 'rx',
|
|
227
|
+
logDirectionTx: 'tx',
|
|
228
|
+
logDirectionSys: 'sys',
|
|
229
|
+
vidPrefix: 'VID ',
|
|
230
|
+
pidSeparator: ' / PID ',
|
|
231
|
+
baudUnit: ' baud',
|
|
232
|
+
vendorFtdi: 'FTDI USB Serial',
|
|
233
|
+
vendorSilabs: 'Silicon Labs CP210x',
|
|
234
|
+
vendorCh340: 'CH340 USB Serial',
|
|
235
|
+
vendorArduinoUsb: 'Arduino USB Serial',
|
|
236
|
+
vendorAdafruit: 'Adafruit USB Serial',
|
|
237
|
+
vendorRp2040: 'Raspberry Pi RP2040',
|
|
238
|
+
vendorEspressif: 'Espressif USB Serial',
|
|
239
|
+
vendorOpenSource: 'Open Source USB Serial',
|
|
240
|
+
},
|
|
241
|
+
};
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { WebUsbSerialMonitorUI } from '../ui';
|
|
4
|
+
import { bibliography } from '../bibliography';
|
|
5
|
+
|
|
6
|
+
const slug = 'web-usb-seriele-monitor';
|
|
7
|
+
const title = 'WebUSB Seriele Monitor';
|
|
8
|
+
const description = 'Verbind met USB seriele hardware vanuit de browser, lees live terminaluitvoer, verstuur commando s en debug Arduino, ESP32, RP2040 en maker boards zonder een desktopterminal te installeren.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Werkt deze seriele monitor met Arduino, ESP32 en Raspberry Pi Pico boards?',
|
|
13
|
+
answer: 'Ja, wanneer het board een door Web Serial ondersteunde USB seriele interface biedt en de browser op Chromium is gebaseerd. Gangbare Arduino, ESP32, RP2040, CH340, CP210x en FTDI adapters werken meestal nadat de gebruiker toestemming heeft verleend.',
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
question: 'Waarom heet dit WebUSB als het Web Serial gebruikt?',
|
|
17
|
+
answer: 'De meeste maker boards maken via USB verbinding, maar browsertoegang tot de terminal wordt geboden door de Web Serial API. WebUSB is van lager niveau en niet de juiste abstractie voor een eenvoudige UART terminal.',
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
question: 'Kan een website zonder toestemming toegang krijgen tot mijn seriele apparaten?',
|
|
21
|
+
answer: 'Nee. De browser vereist een gebruikersklik en een native apparaatkiezer voordat een site een seriele poort kan openen. Deze tool slaat geen terminallogs of apparaatidentificaties op.',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
question: 'Welke browser moet ik gebruiken voor een web seriele terminal?',
|
|
25
|
+
answer: 'Gebruik Chrome, Edge of een andere op Chromium gebaseerde browser via HTTPS of localhost. Firefox, Safari en veel iOS browsers bieden de Web Serial API niet.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'Welke baudrate moet ik kiezen?',
|
|
29
|
+
answer: 'Kies de baudrate die in uw firmware is geconfigureerd. Arduino voorbeelden gebruiken vaak 9600 of 115200, terwijl snellere logs, bootloaders en snelle sensorstromen 230400, 460800 of 921600 kunnen gebruiken.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'Sluit het USB seriele apparaat aan',
|
|
36
|
+
text: 'Sluit het board of de adapter aan en sluit alle andere seriele terminals die de poort mogelijk al open hebben.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Selecteer de baudrate',
|
|
40
|
+
text: 'Kies dezelfde baudrate die door de firmware wordt gebruikt, zoals 115200 voor veel Arduino, ESP32 en RP2040 sketches.',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Verleen browsertoestemming',
|
|
44
|
+
text: 'Druk op Verbinden, kies het seriele apparaat in de browserkiezer en sta de pagina toe de poort te openen.',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: 'Lees en verzend terminalgegevens',
|
|
48
|
+
text: 'Bekijk inkomende logs in de terminal, verstuur commando s met optionele CRLF regeleinden en wis of pauzeer de live uitvoer wanneer nodig.',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
|
|
52
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
53
|
+
'@context': 'https://schema.org',
|
|
54
|
+
'@type': 'FAQPage',
|
|
55
|
+
mainEntity: faqData.map((item) => ({
|
|
56
|
+
'@type': 'Question',
|
|
57
|
+
name: item.question,
|
|
58
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
59
|
+
})),
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const howToSchema: WithContext<HowTo> = {
|
|
63
|
+
'@context': 'https://schema.org',
|
|
64
|
+
'@type': 'HowTo',
|
|
65
|
+
name: title,
|
|
66
|
+
description,
|
|
67
|
+
step: howToData.map((step, i) => ({
|
|
68
|
+
'@type': 'HowToStep',
|
|
69
|
+
position: i + 1,
|
|
70
|
+
name: step.name,
|
|
71
|
+
text: step.text,
|
|
72
|
+
})),
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
76
|
+
'@context': 'https://schema.org',
|
|
77
|
+
'@type': 'SoftwareApplication',
|
|
78
|
+
name: title,
|
|
79
|
+
description,
|
|
80
|
+
applicationCategory: 'DeveloperApplication',
|
|
81
|
+
operatingSystem: 'All',
|
|
82
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'USD' },
|
|
83
|
+
inLanguage: 'nl',
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export const content: ToolLocaleContent<WebUsbSerialMonitorUI> = {
|
|
87
|
+
slug,
|
|
88
|
+
title,
|
|
89
|
+
description,
|
|
90
|
+
faq: faqData,
|
|
91
|
+
bibliography,
|
|
92
|
+
howTo: howToData,
|
|
93
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
94
|
+
seo: [
|
|
95
|
+
{
|
|
96
|
+
type: 'title',
|
|
97
|
+
text: 'Online Seriele Monitor voor USB Maker Hardware',
|
|
98
|
+
level: 2,
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
type: 'paragraph',
|
|
102
|
+
html: 'Deze browser seriele monitor opent een USB seriele poort rechtstreeks vanuit Chrome of Edge en streamt vervolgens tekst van microcontrollers, USB UART bruggen, ontwikkelborden, bootloaders, testopstellingen, sensoren en laboratoriumhardware. Het is ontworpen voor snelle diagnostiek wanneer u een seriele console nodig hebt maar geen desktop IDE of terminalapplicatie wilt installeren.',
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
type: 'message',
|
|
106
|
+
title: 'Browser toestemmingsgrens',
|
|
107
|
+
html: 'De pagina kan uw seriele apparaten niet stilzwijgend opsommen of openen. Toegang begint pas nadat u op Verbinden drukt en een poort kiest in de browserkiezer. Terminalgegevens blijven in het huidige tabblad tenzij u ze zelf kopieert.',
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
type: 'stats',
|
|
111
|
+
items: [
|
|
112
|
+
{ value: '9600-921600', label: 'gangbare baud voorinstellingen' },
|
|
113
|
+
{ value: 'CRLF', label: 'optionele commando afsluiting' },
|
|
114
|
+
{ value: 'lokaal', label: 'terminalsessie' },
|
|
115
|
+
],
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'title',
|
|
119
|
+
text: 'Wanneer een Web Seriele Terminal Nuttig Is',
|
|
120
|
+
level: 3,
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'list',
|
|
124
|
+
items: [
|
|
125
|
+
'Controleren van opstartberichten van Arduino, ESP32, ESP8266, RP2040, STM32 of aangepaste firmware.',
|
|
126
|
+
'Verzenden van AT commando s naar modem, GPS, LoRa, Wi-Fi, Bluetooth of mobiele modules via een USB UART adapter.',
|
|
127
|
+
'Lezen van sensoruitvoer van een fabriekstestopstelling, klaslokaal lab, robotica controller of bankprototype.',
|
|
128
|
+
'Verifieren dat een USB seriele brugdriver, kabel, boardvoeding en firmware baudrate allemaal samenwerken.',
|
|
129
|
+
'Verzamelen van een snel foutenlogboek voordat u een bug meldt of hardwareondersteuning aanvraagt.',
|
|
130
|
+
],
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
type: 'comparative',
|
|
134
|
+
items: [
|
|
135
|
+
{
|
|
136
|
+
title: 'Web seriele monitor',
|
|
137
|
+
description: 'Het beste voor snelle ondersteuning, klaslokaalinstructies, velddiagnostiek en maker workflows waarbij het openen van een URL sneller is dan het installeren van een IDE.',
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
title: 'Desktop terminal',
|
|
141
|
+
description: 'Beter voor binaire protocollen, lange opnamesessies, scripting, hardware flow control, macro s en omgevingen waar browser API s zijn geblokkeerd.',
|
|
142
|
+
},
|
|
143
|
+
],
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
type: 'title',
|
|
147
|
+
text: 'Baudrate en Regeleinde Checklist',
|
|
148
|
+
level: 3,
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
type: 'table',
|
|
152
|
+
headers: ['Instelling', 'Gangbare keuze', 'Wat misgaat als het fout is'],
|
|
153
|
+
rows: [
|
|
154
|
+
['Baudrate', '115200 voor veel moderne boards, 9600 voor oudere voorbeelden.', 'Leesbare tekst verandert in willekeurige symbolen of er verschijnt geen nuttig logboek.'],
|
|
155
|
+
['Regeleinde', 'CRLF voor veel commando parsers, geen einde voor ruwe tekenprotocollen.', 'Commando s worden genegeerd omdat de firmware wacht op een afsluiter.'],
|
|
156
|
+
['Exclusieve poorttoegang', 'Sluit Arduino Serial Monitor, PuTTY, screen, minicom of leverancierstools.', 'De browserkiezer opent de poort maar lezen of schrijven mislukt.'],
|
|
157
|
+
['Beveiligde context', 'HTTPS of localhost.', 'De Serial API ontbreekt zelfs in een ondersteunde browser.'],
|
|
158
|
+
],
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
type: 'diagnostic',
|
|
162
|
+
variant: 'warning',
|
|
163
|
+
title: 'Geen seriele uitvoer?',
|
|
164
|
+
html: 'Controleer of het board is gevoed en de USB kabel gegevens ondersteunt, niet alleen opladen. Probeer 9600, 57600 en 115200 als u de firmware baudrate niet weet. Druk op reset na het verbinden omdat veel boards alleen opstartlogs afdrukken tijdens het opstarten. Sluit andere software die de seriele poort mogelijk nog bezit en installeer het besturingssysteemstuurprogramma voor CH340, CP210x, FTDI of de boardleverancier als het apparaat nooit verschijnt.',
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
type: 'title',
|
|
168
|
+
text: 'Privacy, Beveiliging en Beperkingen',
|
|
169
|
+
level: 3,
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
type: 'proscons',
|
|
173
|
+
title: 'Web Serial sterke punten en beperkingen',
|
|
174
|
+
items: [
|
|
175
|
+
{
|
|
176
|
+
pro: 'Geen desktopinstallatie voor eenvoudige seriele tekstdiagnostiek.',
|
|
177
|
+
con: 'Vereist een op Chromium gebaseerde browser en een beveiligde context.',
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
pro: 'Browserkiezer beperkt de toegang tot de specifieke poort die u kiest.',
|
|
181
|
+
con: 'Niet bedoeld voor binaire protocolanalyzers of lange onbewaakte opnames.',
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
pro: 'Werkt goed voor tekstlogboeken, opdrachtprompts en snelle hardwarecontroles.',
|
|
185
|
+
con: 'Sommige bedrijfsbeleid, mobiele browsers en besturingssystemen blokkeren Web Serial.',
|
|
186
|
+
},
|
|
187
|
+
],
|
|
188
|
+
},
|
|
189
|
+
],
|
|
190
|
+
ui: {
|
|
191
|
+
unsupportedTitle: 'Web Serial is niet beschikbaar',
|
|
192
|
+
unsupportedBody: 'Gebruik Chrome of Edge via HTTPS of localhost en zorg ervoor dat uw apparaat een USB seriele interface biedt.',
|
|
193
|
+
secureContext: 'Web Serial vereist HTTPS of localhost. Herlaad deze pagina vanaf een beveiligde oorsprong en probeer opnieuw.',
|
|
194
|
+
statusIdle: 'Kies een baudrate en verbind vervolgens een USB serieel apparaat',
|
|
195
|
+
statusPermission: 'Wachten op de browser seriele poortkiezer',
|
|
196
|
+
statusOpening: 'Seriele poort openen',
|
|
197
|
+
statusConnected: 'Seriele poort verbonden',
|
|
198
|
+
statusDisconnected: 'Seriele poort losgekoppeld',
|
|
199
|
+
statusError: 'Seriele verbinding mislukt',
|
|
200
|
+
connect: 'Serieel verbinden',
|
|
201
|
+
disconnect: 'Verbinding verbreken',
|
|
202
|
+
send: 'Verzenden',
|
|
203
|
+
clear: 'Wissen',
|
|
204
|
+
pause: 'Pauzeren',
|
|
205
|
+
resume: 'Hervatten',
|
|
206
|
+
baudRate: 'Baudrate',
|
|
207
|
+
newline: 'CRLF toevoegen',
|
|
208
|
+
inputPlaceholder: 'Typ een commando en druk op Enter',
|
|
209
|
+
portFallback: 'Geen poort geselecteerd',
|
|
210
|
+
portLabel: 'Poortidentiteit',
|
|
211
|
+
connectedDeviceLabel: 'Verbonden apparaat',
|
|
212
|
+
deviceNameFallback: 'USB serieel apparaat',
|
|
213
|
+
transportLabel: 'Web Serial verbinding',
|
|
214
|
+
bytesLabel: 'Bytes',
|
|
215
|
+
linesLabel: 'Regels',
|
|
216
|
+
privacyTitle: 'Toestemmingsgestuurd',
|
|
217
|
+
privacyBody: 'De browser toont alleen het seriele apparaat dat u selecteert. Logs blijven in dit tabblad tenzij u ze kopieert.',
|
|
218
|
+
emptyLog: 'Terminaluitvoer verschijnt hier nadat u een serieel apparaat hebt verbonden.',
|
|
219
|
+
copied: 'Gekopieerd',
|
|
220
|
+
copyLog: 'Kopieren',
|
|
221
|
+
presetSlow: '9600',
|
|
222
|
+
presetArduino: '115200',
|
|
223
|
+
presetFast: '921600',
|
|
224
|
+
terminalLabel: 'Live terminal',
|
|
225
|
+
unknownUsbId: 'N/A',
|
|
226
|
+
logDirectionRx: 'rx',
|
|
227
|
+
logDirectionTx: 'tx',
|
|
228
|
+
logDirectionSys: 'sys',
|
|
229
|
+
vidPrefix: 'VID ',
|
|
230
|
+
pidSeparator: ' / PID ',
|
|
231
|
+
baudUnit: ' baud',
|
|
232
|
+
vendorFtdi: 'FTDI USB Serial',
|
|
233
|
+
vendorSilabs: 'Silicon Labs CP210x',
|
|
234
|
+
vendorCh340: 'CH340 USB Serial',
|
|
235
|
+
vendorArduinoUsb: 'Arduino USB Serial',
|
|
236
|
+
vendorAdafruit: 'Adafruit USB Serial',
|
|
237
|
+
vendorRp2040: 'Raspberry Pi RP2040',
|
|
238
|
+
vendorEspressif: 'Espressif USB Serial',
|
|
239
|
+
vendorOpenSource: 'Open Source USB Serial',
|
|
240
|
+
},
|
|
241
|
+
};
|