๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ’ก work work work/BLE

BLE ์ฑ…์ •๋ฆฌ - 1 : ํ‘œ์ค€๊ทœ๊ฒฉ, ๊ตฌ์„ฑ์š”์†Œ, ๋„คํŠธ์›Œํฌ ํ† ํด๋กœ์ง€

by hanwitjus 2022. 1. 18.

1. ํ‘œ์ค€ ๊ทœ๊ฒฉ ๊ธฐ๋ฐ˜ ์ง€์›

ํ‘œ์ค€ ๊ทœ๊ฒฉ

1)  BR/EDR (๊ธฐ์กด ๋ธ”๋ฃจํˆฌ์Šค)

๋ธ”๋ฃจํˆฌ์Šค 1.0๋ถ€ํ„ฐ ์ง„ํ™”ํ•˜๊ณ  ์žˆ๋Š” ๋ฌด์„  ํ‘œ์ค€ ๊ทœ๊ฒฉ

 

2) BLE (์ €์ „๋ ฅ ๋ธ”๋ฃจํˆฌ์Šค)

๋ฒ„์ „ 4.0๊ณผ ํ•จ๊ป˜ ์†Œ๊ฐœ๋œ ์ €์ „๋ ฅ ๋ฌด์„  ํ‘œ์ค€ ๊ทœ๊ฒฉ

 

๋””๋ฐ”์ด์Šค ์œ ํ˜•

 

1) Bluetooth Smart (BLE, ๋‹จ์ผ๋ชจ๋“œ) ๋””๋ฐ”์ด์Šค

 BLE๋ฅผ ๊ตฌํ˜„ํ•œ ๋””๋ฐ”์ด์Šค๋กœ์จ ๋‹จ์ผ๋ชจ๋“œ์™€ ๋“€์–ผ ๋ชจ๋“œ ๋””๋ฐ”์ด์Šค๋“ค๊ณผ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ BR/EDR๋งŒ ์ง€์›ํ•˜๋Š” ๋””๋ฐ”์ด์Šค๋Š” ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.

 ํŠน์ •ํ•œ ์ •๋ณด๋ฅผ ์ˆ˜์ง‘ํ•ด Bluetooth Smart Ready ๋””๋ฐ”์ด์Šค๋กœ ๋ณด๋‚ด๊ธฐ ์œ„ํ•ด๋งŒ๋“ค์–ด์ง„ ๋””๋ฐ”์ด์Šค์ด๋‹ค.

  ex: ์‹ฌ๋ฐ• ๋ชจ๋‹ˆํ„ฐ, ์Šค๋งˆํŠธ ์›Œ์น˜, ์ฐฝ๋ฌธ ๋ฐ ํ˜„๊ด€ ๋ณด์•ˆ ์„ผ์„œ, ์ž๋™์ฐจ ํ‚ค ์ฒด์ธ, ํ˜ˆ์•• ํŒ”์ฐŒ ๋“ฑ

 

2) Bluetooth Smart Ready (BR/EDR/LE, ๋“€์–ผ๋ชจ๋“œ) ๋””๋ฐ”์ด์Šค

 BR/EDR๊ณผ BLE๋ฅผ ๋ชจ๋‘ ๊ตฌํ˜„ํ•œ ๋””๋ฐ”์ด์Šค๋กœ ์–ด๋–ค ๋ธ”๋ฃจํˆฌ์Šค ๋””๋ฐ”์ด์Šค์™€๋„ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋‹ค.

 ํ˜„์žฌ ์‹œ์žฅ์— ๋‚˜์™€์žˆ๋Š” ์ˆ˜์–ต ์ข…์˜ Bluetooth ๋””๋ฐ”์ด์Šค๋“ค์— ๋Œ€ํ•œ ์—ญ๋ฐฉํ–ฅ ํ˜ธํ™˜์„ฑ์„ ๊ฐ€์ง„๋‹ค.

 ํด๋ž˜์‹ Bluetooth ๋””๋ฐ”์ด์Šค ๋ฐ Bluetooth Smart ๋””๋ฐ”์ด์Šค๋“ค๋กœ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•„ ์œ ์šฉํ•œ ์ •๋ณด๋กœ ๋ณ€ํ™˜์‹œํ‚ค๋Š” Bluetooth ์‹œ์Šคํ…œ์˜ ํ—ˆ๋ธŒ๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.

  ex: ์Šค๋งˆํŠธํฐ, ํƒœ๋ธ”๋ฆฟ, PC, TV, ์…‹ํƒ‘๋ฐ•์Šค, ๊ฒŒ์ž„ ์ฝ˜์†” ๋“ฑ

 

 

2. ์ฃผ์š” ๊ตฌ์„ฑ์š”์†Œ

(๋ธ”๋ฃจํˆฌ์Šค ํ”„๋กœํ† ์ฝœ ์Šคํƒ์„ ๊ตฌ์„ฑํ•˜๋Š” ์—ฌ๋Ÿฌ ํ”„๋กœํ† ์ฝœ ๊ณ„์ธต์— ๋Œ€ํ•ด ๋ฐฐ์šธ ๋•Œ ๋‚˜์˜ค๊ฒ ์ง€๋งŒ, ์—ฌ๊ธฐ์„œ๋Š” ๋ชจ๋“  ๋ธ”๋ฃจํˆฌ์Šค ์žฅ์น˜์˜ ์ฃผ์š” ๊ตฌ์„ฑ์š”์†Œ ์„ธ๊ฐ€์ง€๋ฅผ ๊ฐ„๋žตํ•˜๊ฒŒ ์„ค๋ช…)

 

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜

 ํŠน์ •ํ•œ ์“ฐ์ž„์ƒˆ๋ฅผ ๋‹ค๋ฃจ๋Š” ๋ธ”๋ฃจํˆฌ์Šค ํ”„๋กœํ† ์ฝœ ์Šคํƒ๊ณผ ์—ฐ๊ณ„ํ•˜๋Š” ์‚ฌ์šฉ์ž ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜

 

ํ˜ธ์ŠคํŠธ

 ๋ธ”๋ฃจํˆฌ์Šค ํ”„๋กœํ† ์ฝœ ์Šคํƒ์˜ ์ƒ์œ„ ๊ณ„์ธต

 

์ปจํŠธ๋กค๋Ÿฌ

 ๋ฌด์„ ์„ ํฌํ•จํ•œ ๋ธ”๋ฃจํˆฌ์Šค ํ”„๋กœํ† ์ฝœ ์Šคํƒ์˜ ํ•˜์œ„ ๊ณ„์ธต

 

 

ํ‘œ์ค€ ๊ทœ๊ฒฉ์€ ๋‹ค๋ฅธ ํšŒ์‚ฌ์—์„œ ์ œ์กฐ๋œ ํ˜ธ์ŠคํŠธ์™€ ์ปจํŠธ๋กค๋Ÿฌ์˜ ์ƒํ˜ธ์šด์šฉ์„ฑ์„ ํ—ˆ์šฉํ•˜๊ธฐ ์œ„ํ•ด

ํ˜ธ์ŠคํŠธ์™€ ์ปจํŠธ๋กค๋Ÿฌ ์‚ฌ์ด์— ํ‘œ์ค€ ํ†ต์‹  ํ”„๋กœํ† ์ฝœ HCI(Host Controller Interface)๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

์ด ๊ณ„์ธต์€ ๋‹จ์ผ ์ง‘์  ํšŒ๋กœ(IC)๋‚˜ ์นฉ์œผ๋กœ ๊ตฌํ˜„๋˜๊ฑฐ๋‚˜, ํ†ต์‹  ๊ณ„์ธต์„ ํ†ตํ•ด ์—ฐ๊ฒฐ๋œ ์—ฌ๋Ÿฌ IC๋“ค์— ๋ถ„ํ• ๋  ์ˆ˜ ์žˆ๋‹ค.

 

 

์‹œ์ค‘์—์„œ ํŒ๋งค๋˜๋Š” ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ์„ธ ๊ฐ€์ง€ ํ•˜๋“œ์›จ์–ด ๊ตฌ์„ฑ

SoC (System on Chip)

 ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, ํ˜ธ์ŠคํŠธ, ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋‹จ์ผ IC

 

HCI๋ฅผ ํ†ตํ•œ ๋“€์–ผ IC

 ํ•˜๋‚˜์˜ IC๊ฐ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ํ˜ธ์ŠคํŠธ๋ฅผ ์‹คํ–‰์‹œํ‚ค๊ณ , HCI๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์‹คํ–‰์‹œํ‚ค๋Š” ๋‘ ๋ฒˆ์งธ IC์™€ ํ†ต์‹ ํ•œ๋‹ค.

 >> HCI๊ฐ€ ๋ธ”๋ฃจํˆฌ์Šค ๊ทœ๊ฒฉ์— ์˜ํ•ด ์ •์˜๋๊ธฐ ๋•Œ๋ฌธ์— ๋ชจ๋“  ํ˜ธ์ŠคํŠธ๊ฐ€ ์–ด๋– ํ•œ ์ปจํŠธ๋กค๋Ÿฌ์™€๋„ ๊ฒฐํ•ฉ๋  ์ˆ˜ ์žˆ๋‹ค.

 

์—ฐ๊ฒฐ ์žฅ์น˜์™€ ๋“€์–ผ IC

 ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•˜๋Š” ํ•˜๋‚˜์˜ IC๊ฐ€ ํ˜ธ์ŠคํŠธ์™€ ์ปจํŠธ๋กค๋Ÿฌ์—์„œ ๋ชจ๋‘ ์‹คํ–‰๋˜๋Š” ๋‘ ๋ฒˆ์งธ IC์™€ ๋…์ ์ ์ธ ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ†ต์‹ ํ•œ๋‹ค.

 >> ํ‘œ์ค€ ๊ทœ๊ฒฉ์ด ํ”„๋กœํ† ์ฝœ ๊ฐ™์€ ๊ฒƒ์€ ํฌํ•จํ•˜์ง€ X -> ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋ฐ˜๋“œ์‹œ ์„ ํƒ๋œ ๋ฒค๋”์˜ ํŠน์ •ํ•œ ํ”„๋กœํ† ์ฝœ๋กœ ์กฐ์ •๋˜์–ด์•ผ ํ•œ๋‹ค.

 

(์ฑ… p.8์ชฝ์— ๊ทธ๋ฆผ 1-2๋ฅผ ์ฐธ๊ณ ํ•˜๋ฉด ์ดํ•ด๊ฐ€ ์‰ฝ๋‹ค.)

 

์Šค๋งˆํŠธํฐ๊ณผ ํ…Œ๋ธ”๋ฆฟ์€ ์ฃผ๋กœ HCI๋ฅผ ํ†ตํ•œ ๋“€์–ผ IC๋ฅผ ์‚ฌ์šฉ. (์ด๋ฏธ ํ”„๋กœํ† ์ฝœ ์Šคํƒ ์‹คํ–‰์„ ์œ„ํ•œ ๊ฐ•๋ ฅํ•œ CPU๋ฅผ ๊ฐ–๊ณ ์žˆ๊ธฐ ๋•Œ๋ฌธ)

์—ฐ๊ฒฐ์žฅ์น˜ ๊ตฌ์„ฑ์„ ๊ฐ€์ง„ ๋“€์–ผ IC๋Š” ํŠนํ™”๋œ ๋งˆ์ดํฌ๋กœ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ๊ฐ€์ง„ ์‹œ๊ณ„ ๊ฐ™์€ ๊ฒƒ์ด ์‚ฌ์šฉ.

 

 

3. ๋„คํŠธ์›Œํฌ ํ† ํด๋กœ์ง€

1) Advertise Mode (๋ฐฉ์†ก ๋ชจ๋“œ, Broadcast Mode)

์„ค๋ช… 

์ „์†ก๋œ ๋ฐ์ดํ„ฐ๋ฅผ ํ”ฝ์—…ํ•  ์ˆ˜ ์žˆ๋Š” ๊ทธ ๋ˆ„๊ตฌ์—๊ฒŒ๋ผ๋„ ํŽธ๋„๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค.

 ํŠน์ • ๋””๋ฐ”์ด์Šค๋ฅผ ์ง€์ •ํ•˜์ง€ ์•Š๊ณ  ์ฃผ๋ณ€์˜ ๋ชจ๋“  ๋””๋ฐ”์ด์Šค์—๊ฒŒ Signal์„ ๋ณด๋‚ธ๋‹ค.

 

 

 

๋””๋ฐ”์ด์Šค์˜ ์—ญํ•  ๊ตฌ๋ถ„

  • Broadcaster (Advertiser) : ๋น„์ ‘์† ๊ฒŒ์‹œ ํŒจํ‚ท์„ ๋ฐ›๊ณ ์‹ถ์–ด ํ•˜๋Š” ์ž์—๊ฒŒ ์ฃผ๊ธฐ์ ์œผ๋กœ ํŒจํ‚ท์„ ๋ณด๋‚ด๋Š” ๋””๋ฐ”์ด์Šค
  • Observer : ๋น„์ ‘์† ๊ฒŒ์‹œ ํŒจํ‚ท์„ ์ˆ˜์‹ ํ•˜๊ธฐ ์œ„ํ•ด ์ฃผ๊ธฐ์ ์œผ๋กœ ์Šค์บ๋‹ํ•˜๋Š” ๋””๋ฐ”์ด์Šค

ํŠน์ง•

๋น ๋ฅด๊ณ  ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฝ๋‹ค. 

ํ•œ๋ฒˆ์— ํ•œ ๊ฐœ ์ด์ƒ์˜ ๋””๋ฐ”์ด์Šค์™€ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•์ด๋‹ค.

์ •ํ•ด์ง„ ์‹œ๊ฐ„์ด๋‚˜ ๋‹ค์ค‘ ๋””๋ฐ”์ด์Šค๋“ค์— ์†Œ๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋งŒ ๋ฐ€์–ด๋„ฃ๊ณ  ์‹ถ์„ ๋•Œ ์ข‹์€ ์„ ํƒ์ด๋‹ค.

์‹œ๊ทธ๋„์„ ์ผ๋ฐฉ์ ์œผ๋กœ ๋ฟŒ๋ฆฌ๋Š” ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ณด์•ˆ์— ์ทจ์•ฝํ•˜๋‹ค.

 

 

2) Connection Mode (์—ฐ๊ฒฐ ๋ชจ๋“œ)

์„ค๋ช…

์–‘๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ์ „์†ก, ์ˆ˜์šฉ ๊ฐ€๋Šฅํ•œ ๊ฒŒ์‹œ ํŽ˜์ด๋กœ๋“œ ๋ณด๋‹ค ๋” ๋งŽ์€ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ์‚ฌ์šฉ

๋‘ ๋””๋ฐ”์ด์Šค ์‚ฌ์ด ํŒจํ‚ท๋“ค์˜ ์˜๊ตฌ์ , ์ฃผ๊ธฐ์  ๋ฐ์ดํ„ฐ ๊ตํ™˜์„ ๋งํ•œ๋‹ค. 

 

                                                                                                                                                                                                                                                                                                                                              

๋””๋ฐ”์ด์Šค ์—ญํ•  ๊ตฌ๋ถ„

  • ์ค‘์•™์žฅ์น˜ (Master/Central) : ๋‹ค๋ฅธ ๋””๋ฐ”์ด์Šค์™€ ์—ฐ๊ฒฐ์„ ๋งบ๊ธฐ ์œ„ํ•ด ๊ฒŒ์‹œ ํŒจํ‚ท(์‹œ๊ทธ๋„)์„ ์ฃผ๊ธฐ์ ์œผ๋กœ ์Šค์บ”ํ•˜๋‹ค๊ฐ€, ์ ์ ˆํ•œ ๋””๋ฐ”์ด์Šค์— ์—ฐ๊ฒฐ์„ ์š”์ฒญํ•œ๋‹ค. ์—ฐ๊ฒฐ์ด ์„ค์ •๋˜๋ฉด **ํƒ€์ด๋ฐ์„ ๊ด€๋ฆฌํ•˜๊ณ  ์ฃผ๊ธฐ์ ์ธ ๋ฐ์ดํ„ฐ ๊ตํ™˜์„ ์ฃผ๋„ํ•œ๋‹ค.  (**ํƒ€์ด๋ฐ์ด๋ž€ ๋‘ ๋””๋ฐ”์ด์Šค๊ฐ€ ๋งค๋ฒˆ ๊ฐ™์€ ์ฑ„๋„์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›๊ธฐ ์œ„ํ•ด ์ •ํ•˜๋Š” hopping ๊ทœ์น™)
  • ์ฃผ๋ณ€ ์žฅ์น˜ (Slave/Peripheral) : ์ •๊ธฐ์ ์œผ๋กœ ์ ‘์† ๊ฐ€๋Šฅํ•œ ๊ฒŒ์‹œ ํŒจํ‚ท(์‹œ๊ทธ๋„)์„ ๋ณด๋‚ด๊ณ  ๋“ค์–ด์˜ค๋Š” ์—ฐ๊ฒฐ์„ ์ˆ˜์šฉํ•˜๋Š” ์žฅ์น˜. ์ผ๋‹จ ํ•œ๋ฒˆ ํ™œ์„ฑํ™”๋œ ์—ฐ๊ฒฐ์—์„œ ์ค‘์•™ ์žฅ์น˜์˜ ์ •๊ธฐ์ ์ธ ํƒ€์ด๋ฐ๊ณผ ํ•จ๊ป˜ ์ •๊ธฐ์ ์ธ ๊ตํ™˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋”ฐ๋ฅธ๋‹ค.

์—ฐ๊ฒฐ์ด ์„ค์ •๋˜๊ณ ๋‚˜๋ฉด ์Šฌ๋ ˆ์ด๋ธŒ๋Š” Advertising์„ ๋ฉˆ์ถ”๊ณ  ์–‘๋ฐฉํ–ฅ์œผ๋กœ ๋ฐ์ดํ„ฐ ๊ตํ™˜์„ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋‹ค.

์—ฐ๊ฒฐ์€ ๊ด€๋ จ๋œ ๋‘ ํ”ผ์–ด ์‚ฌ์ด์˜ ์‹œ๊ฐ„์— ์–ด๋–ค ํŠน์ • ์ง€์ (์—ฐ๊ฒฐ ์ด๋ฒคํŠธ)์—์„œ์˜ ๋ฐ์ดํ„ฐ์˜ ์ฃผ๊ธฐ์  ๊ตํ™˜์— ์ง€๋‚˜์ง€ ์•Š๋Š”๋‹ค.

 

ํŠน์ง•

๋ฐฉ์†ก ๋ชจ๋“œ ์ฒ˜๋Ÿผ '์ผ๋Œ€ ๋‹ค' ๋ฐฉ์‹์ด ์•„๋‹Œ '์ผ๋Œ€ ์ผ' ๋ฐฉ์‹์ด๋‹ค.

๋””๋ฐ”์ด์Šค๊ฐ„์— Channel hopping ๊ทœ์น™์„ ์ •ํ•ด๋†“๊ณ  ํ†ต์‹ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฐฉ์†ก ๋ชจ๋“œ๋ณด๋‹ค ์•ˆ์ „ํ•˜๋‹ค.

(์—ฐ๊ฒฐ์— ๊ด€๋ จ๋œ ๋‘ Peer ์‚ฌ์ด์—์„œ๋งŒ ๋ฐ์ดํ„ฐ๊ฐ€ ์†ก์ˆ˜์‹  ๋˜๊ณ  ๋‹ค๋ฅธ ๋””๋ฐ”์ด์Šค๊ฐ€ ๋งˆ๊ตฌ์žก์ด๋กœ ์Šค๋‹ˆํ•‘์„ ํ•˜์ง€ ์•Š๋Š” ํ•œ, ์—ฐ๊ฒฐ์€ ๋ณธ์งˆ์ ์œผ๋กœ ๋น„๊ณต๊ฐœ)

 

 

 

 

 

 

 

 

 

 


References

https://medium.com/@zoyi_product/bluetooth-low-energy-ble-84b03705ffca

 

 

 

LIST

๋Œ“๊ธ€