ESP32 рд╡рд░ Wifi рд╕рд╣ рдЧреЗрдо

ESP32 рд╡рд░ Wifi рд╕рд╣ рдЧреЗрдо

рд╡рд╛рдпрдлрд╛рдп рдиреЗрдЯрд╡рд░реНрдХрдЪреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдорд▓рд╛ рдкреЙрдХреЗрдЯ рдЯреВрд▓ рдмрдирд╡рдгреНрдпрд╛рдЪреА рдХрд▓реНрдкрдирд╛ рдХрд╢рд╛рдореБрд│реЗ рдЖрд▓реА рд╣рд╛ рд▓реЗрдЦ.

рдХрд▓реНрдкрдиреЗрдмрджреНрджрд▓ рддреНрдпрд╛рдВрдЪреЗ рдЖрднрд╛рд░. рдорд▓рд╛ рдлрдХреНрдд рдХрд╛рд╣реА рдХрд░рд╛рдпрдЪреЗ рдирд╡реНрд╣рддреЗ.

рдиреЗрдЯрд╡рд░реНрдХ рдЯреЗрдХреНрдиреЙрд▓реЙрдЬреАрдЪреНрдпрд╛ рдХреНрд╖реЗрддреНрд░рд╛рддреАрд▓ рдорд╛рдЭреЗ рдЬреНрдЮрд╛рди рдордЬрд╛ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдЙрджреНрджреЗрд╢рд╛рдиреЗ рд╕рд░реНрд╡ рдХрд╛рдо рдЫрдВрджрд╛рдЪрд╛ рднрд╛рдЧ рдореНрд╣рдгреВрди рдХреЗрд▓реЗ рдЧреЗрд▓реЗ. рдпрд╛ рд╡рд░реНрд╖рд╛рдЪреНрдпрд╛ рд╕реБрд░реБрд╡рд╛рддреАрдкрд╛рд╕реВрди рд╣рд│реВрд╣рд│реВ, рдЖрдард╡рдбреНрдпрд╛рддреВрди 1..4 рддрд╛рд╕.
рдореА рдХреЛрдгрддреНрдпрд╛рд╣реА рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╡рд╛рдкрд░рд╛рдЪреА рдпреЛрдЬрдирд╛ рдЖрдЦрд▓реА рдирд╛рд╣реА. рддреНрдпрд╛. рд╣реЗ рд╣реЕрдХрд░рдЪреЗ рд╕рд╛рдзрди рдирд╛рд╣реА.

рдпрд╛рдХреНрд╖рдгреА, рд╕рд░реНрд╡ рдирд┐рдпреЛрдЬрд┐рдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛рд░реНрдпрд░рдд рдЖрд╣реЗ. рд╕рд░реНрд╡ рд╕реНрддреНрд░реЛрдд, рдЕрд╕реЗрдВрдмреНрд▓реАрд╕рд╛рдареА рдкреВрд░реНрдгрдкрдгреЗ рддрдпрд╛рд░, рдпреЗрдереЗ рдкреЛрд╕реНрдЯ рдХреЗрд▓реЗ. рдЕрд╕реЗрдВрдмреНрд▓реА рд╕реВрдЪрдирд╛ рдЗрддреНрдпрд╛рджреА рджреЗрдЦреАрд▓ рдЖрд╣реЗрдд. рдпрд╛ рдиреЛрдЯрдордзреНрдпреЗ, рдореА рдЧреАрдердмрд╡рд░ рдкреЛрд╕реНрдЯ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдорд╛рд╣рд┐рддреАрдЪреА рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд░рдгрд╛рд░ рдирд╛рд╣реА. рдореА рддреБрдореНрд╣рд╛рд▓рд╛ рдлрдХреНрдд рддреЗрдЪ рд╕рд╛рдВрдЧреЗрди рдЬреЗ рдорд▓рд╛ рд╕реНрд╡рддрдВрддреНрд░рдкрдгреЗ рд╡рд░реНрдгрди рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

"рдпреБрдирд┐рд╡реНрд╣рд░реНрд╕рд▓ рдЯреВрд▓" рд╡рд░ рдорд╛рдЭреЗ рдордд рдЖрдгрд┐ ESP32 рдирд┐рд╡рдбрдгреНрдпрд╛рдЪреЗ рдХрд╛рд░рдг

рдореА рд╕рддреНрдп рдЕрд╕рд▓реНрдпрд╛рдЪрд╛ рджрд╛рд╡рд╛ рдХрд░рдд рдирд╛рд╣реА. рдкреНрд░рддреНрдпреЗрдХрд╛рдЪреЗ рд╕реНрд╡рддрдГрдЪреЗ рдЕрд╕рддреЗ. рдореА рдорд╛рдЭреНрдпрд╛ рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░рдЪреНрдпрд╛ рдирд┐рд╡рдбреАрдЪреЗ рд╕рдорд░реНрдерди рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░реЗрди.

рд▓реЗрдЦрд╛рдд рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрдВрдЯреНрд░реЛрд▓рд░ (STM32) + CC1110 (8051 core) рдЪреНрдпрд╛ рд╕реНрд╡рд░реВрдкрд╛рдд рд▓рд┐рдирдХреНрд╕ (рд╕реБрд░реБрд╡рд╛рддреАрд▓рд╛ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ) + "рдкреЗрд░рд┐рдлреЗрд░рд▓реНрд╕" рдЪреНрдпрд╛ рд╕рдВрдпреЛрдЬрдирд╛рдЪрд╛ рд╡рд╛рдкрд░ рдХреЗрд╕ рдЖрдгрд┐ рддреЗрдереЗ рдЬреЗ рдХрд╛рд╣реА рд╢рдХреНрдп рдЖрд╣реЗ рддреЗ рдХреНрд░реЕрдо рдХрд░рдгреНрдпрд╛рдЪреА рдпреЛрдЬрдирд╛ (125kHz, NFC, 433mHz, USB, iButton, bluetooth, ?) рдорд▓рд╛ рдпреЛрдЧреНрдп рд╡рд╛рдЯрд▓реЗ рдирд╛рд╣реА. рддрдерд╛рдкрд┐, рд╣рд╛ рдкреНрд░рдХрд▓реНрдк рдЕрд╕реЗ рджрд┐рд╕рддреЗ рдХреА рддреЗ рдЦрд╛рдЬрдЧреА рдЖрдгрд┐ рдмрдВрдж рд░рд╛рд╣реАрд▓ (рдлреНрд▓рд┐рдкрд░-рд╢реВрдиреНрдп рдЧрд┐рдердм тАЬрдпрд╛ рд╕рдВрд╕реНрдереЗрдЪреЗ рдХреЛрдгрддреЗрд╣реА рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рднрд╛рдВрдбрд╛рд░ рдирд╛рд╣реАрдд.тАЭ) рдЖрдгрд┐ рддреЗ рдЕрдЧрджреА рд╕рд╛рдорд╛рдиреНрдп рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░рдХрдбреЗ рдЧреЗрд▓реЗ.

рдХрджрд╛рдЪрд┐рдд рдореА рдЪреБрдХреАрдЪреЗ рдЖрд╣реЗ рдЖрдгрд┐ рднрд╡рд┐рд╖реНрдпрд╛рдд рд▓реЗрдЦрдХ рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░ рд╕реНрд░реЛрдд рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХрд░реАрддреНрдпрд╛ рдЙрдкрд▓рдмреНрдз рдХрд░реВрди рджреЗрддреАрд▓. рдкрдг рдЬрд░ рдирд╕реЗрд▓, рддрд░ рдореА рд╕реЛрд░реНрд╕ рдХреЛрдбрд╢рд┐рд╡рд╛рдп рдЕрд╕рд╛ рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░ рд╡рд┐рдХрдд рдШреЗрдгрд╛рд░ рдирд╛рд╣реА.

"рдЯреВрд▓" рд╕рд╛рдареА рдорд╛рдЭреНрдпрд╛ рдЖрд╡рд╢реНрдпрдХрддрд╛

рдмреЙрдХреНрд╕ рд▓рд╣рд╛рди рдЕрд╕рд╛рд╡рд╛ (рдЬрд┐рддрдХреЗ рд▓рд╣рд╛рди рдЕрд╕реЗрд▓ рддрд┐рддрдХреЗ рдЪрд╛рдВрдЧрд▓реЗ).

рдореНрд╣рдгреВрди:

  • рдЕрдВрдЧрднреВрдд рдмреЕрдЯрд░реА рдЖрд╡рд╢реНрдпрдХ рдирд╛рд╣реА. Wifi рд╕рд╣ рдХрд╛рдо рдХрд░рддрд╛рдирд╛ рд╡рд░реНрддрдорд╛рди > 100 mA рд╕рд╣, рдЕрдВрдЧрднреВрдд рдмреЕрдЯрд░реА рдПрдХрддрд░ рдореЛрдареА рдЕрд╕реЗрд▓ рдХрд┐рдВрд╡рд╛ рдЬрд╛рд╕реНрдд рдХрд╛рд│ рдЯрд┐рдХрдгрд╛рд░ рдирд╛рд╣реА. рдореНрд╣рдгреВрди, тАЬрдмреЙрдХреНрд╕тАЭ рдорд╛рдирдХ рдкреЙрд╡рд░ рдмрдБрдХрджреНрд╡рд╛рд░реЗ рд╕рдорд░реНрдерд┐рдд рдЕрд╕реВ рджреНрдпрд╛. рдЕрд╕рдВ рдЕрд╕рд▓рдВ рддрд░реА, рдорд╛рдЭреНрдпрд╛ рдЦрд┐рд╢рд╛рдд/рдХрд╛рд░рдордзреНрдпреЗ рдиреЗрд╣рдореА рдкреЙрд╡рд░ рдмрдБрдХ рдЕрд╕рддреЗ.
  • рдЖрдд рдЯреВрд▓реНрд╕рд╕рд╣ рд▓рд┐рдирдХреНрд╕ тАЬрдмреЙрдХреНрд╕тАЭ рдареЗрд╡рд╛, рд╕рд░реНрд╡ рднрд╛рд╖рд╛рдВрдордзреНрдпреЗ рдЕрдиреЗрдХ рд╡рд░реНрд╖реЗ рд▓рд┐рд╣рд┐рд▓реЗ рдПрдХ рд▓рд╣рд╛рди рд╕реНрдХреНрд░реАрди рдЖрдгрд┐ рдирд┐рдпрдВрддреНрд░рдг рдмрдЯрдгрд╛рдВрдЪрд╛ рдПрдХ рдЕрд▓реНрдк рд╕рдВрдЪ, рдпрд╛рдд рдХрд╛рд╣реА рдЕрд░реНрде рдирд╛рд╣реА. рдкреВрд░реНрдг рдХреАрдмреЛрд░реНрдб рдЖрдгрд┐ рд╕реНрдХреНрд░реАрдирд╕рд╣ рд╕рд╛рдорд╛рдиреНрдп рд▓реЕрдкрдЯреЙрдкрд╡рд░ рдкрд░рд┐рдгрд╛рдо рдкрд╛рд╣рд┐рд▓реЗ/рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддрд╛рдд.
  • рдШрдЯрдХ рд╕рд╣рдЬ рдкреНрд░рд╡реЗрд╢рдпреЛрдЧреНрдп рдЖрдгрд┐ рд╡реНрдпрд╛рдкрдХрдкрдгреЗ рдЬреНрдЮрд╛рдд рдЕрд╕рд▓реЗ рдкрд╛рд╣рд┐рдЬреЗрдд (рдЙрдкрд▓рдмреНрдз SDK, рдЕрдиреЗрдХ рдЙрджрд╛рд╣рд░рдгреЗ рдЖрдгрд┐ рджрд╕реНрддрдРрд╡рдЬреАрдХрд░рдг).

рдкрд░рд┐рдгрд╛рдореА, рдорд╛рдЭреНрдпрд╛рд╕рд╛рдареА, рдирд┐рд╡рдб рд╕реНрдкрд╖реНрдЯ рд╣реЛрддреА - ESP32.

рд▓реЗрдЦрд╛рдд рдирдореВрдж рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕рд░реНрд╡ рдХрд╛рд░реНрдпрд╛рдВрд╕рд╛рдареА рдЬреНрдпрд╛рдиреЗ рдорд▓рд╛ рдХрд╛рд░рд╡рд╛рдИ рдХрд░рдгреНрдпрд╛рд╕ рдкреНрд░рд╡реГрддреНрдд рдХреЗрд▓реЗ, ESP32 рдЪреА рдХреНрд╖рдорддрд╛ рдкреБрд░реЗрд╢реА рдЖрд╣реЗ. рдЬрд░реА рдорд▓рд╛ рдЕрдЬреВрдирд╣реА рд╕рд░реНрд╡рд╛рдд рдЬрд╛рд╕реНрдд рдХрд░рд╛рдпрдЪреЗ рдЖрд╣реЗ:

  • рдмреНрд▓реВрдЯреВрдерд╕рд╣ рдЦреЗрд│рд╛.
  • рд╕рд░реНрд╡рд╛рдд рд╕реЛрдкреНрдпрд╛ рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░рд╕рд╣ 433mHz рд╢реНрд░реЗрдгреАрд╕рд╣ рдЦреЗрд│рд╛ (рдХреЗрд╡рд│ рдореЛрдареЗрдкрдгрд╛ рдореЙрдбреНрдпреВрд▓реЗрд╢рди, рдЬреЗ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЧрд░рдЬрд╛рдВрд╕рд╛рдареА рдкреБрд░реЗрд╕реЗ рдЖрд╣реЗ).

ESP32 рдордзреНрдпреЗ рдорд▓рдо рдордзреНрдпреЗ рдлреНрд▓рд╛рдп

  • ESP32 SDK (IDF) рдХрд╛рд╣реАрд╕реЗ рдЕрд╕реНрддрд╛рд╡реНрдпрд╕реНрдд рдЖрд╣реЗ.
  • рдХрд╛рд╣реА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ (рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рд╡рд╛рдпрдлрд╛рдп рд╕реНрдЯреЕрдХ) рд╕реНрддреНрд░реЛрдд рдХреЛрдбрд╢рд┐рд╡рд╛рдп рдПрдХрддреНрд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕реНрдерд┐рд░ рд▓рд╛рдпрдмреНрд░рд░реАрдЪреНрдпрд╛ рд╕реНрд╡рд░реВрдкрд╛рдд рдпреЗрддрд╛рдд.
  • 5gHz рдмрдБрдб рд╕рдорд░реНрдерд┐рдд рдирд╛рд╣реА рдЖрдгрд┐ WiFi рд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рддрд╛рдирд╛ рдХрд╛рд╣реА рдорд░реНрдпрд╛рджрд╛ рдЖрдгрд┐ рдЕрдирд╛рдард╛рдпреАрдкрдгрд╛ рдЖрд╣реЗрдд.

рдкрд░рдВрддреБ рдХрд┐рдВрдордд/рдЖрдХрд╛рд░ рдпрд╛ рдХрдорддрд░рддреЗрд╕рд╛рдареА рдкреВрд░реНрдгрдкрдгреЗ рднрд░рдкрд╛рдИ рджреЗрддрд╛рдд.

рдореБрдЦреНрдп рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛

рдореА рдХрд╛рд░реНрдпрдХреНрд╖рдорддреЗрдЪреЗ рдЖрдгрд┐ рдорд╛рдЭреНрдпрд╛ рдорддрд╛рдЪреЗ рдереЛрдбрдХреНрдпрд╛рдд рд╡рд░реНрдгрди рдХрд░реЗрди...

рд╕реЗрдЯрд┐рдВрдЧреНрдЬ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреЗ рдЖрдгрд┐ SD рд╡рд░реВрди рдлрд╛рдЗрд▓ рдЕрдкрд▓реЛрдб рдХрд░рдгреЗ

рд╕рд░реНрд╡ рдмрд╛рд╣реНрдп рдирд┐рдпрдВрддреНрд░рдг рдПрдХрд╛ рд╕рд╛рдзреНрдпрд╛ рд╡реЗрдм рдкреГрд╖реНрдард╛рджреНрд╡рд╛рд░реЗ рдХреЗрд▓реЗ рдЬрд╛рддреЗ, рд╡реЗрдЧрд│реНрдпрд╛ рдореЗрдиреВ рдЖрдпрдЯрдордордзреНрдпреЗ рд▓реЙрдиреНрдЪ рдХреЗрд▓реЗ рдЬрд╛рддреЗ. ESP32 WiFi AP рдореЛрдбрдордзреНрдпреЗ рд╕реБрд░реВ рд╣реЛрддреЗ рдЖрдгрд┐ рдПрдХрд╛ рдирд┐рд╢реНрдЪрд┐рдд IP рдкрддреНрддреНрдпрд╛рд╡рд░ рдкреГрд╖реНрда рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреЗ.

рдЬрд░реА ESP32 рдХреЛрд░ рдЦреВрдк рд╡реЗрдЧрд╡рд╛рди рдЖрд╣реЗрдд, рдЬрд╕реЗ рдХреА рдкреНрд░рдпреЛрдЧрд╛рдВрдиреА рджрд░реНрд╢рд╡рд┐рд▓реЗ рдЖрд╣реЗ, рдЕрдВрдЧрднреВрдд рд╡реЗрдм рд╕реЗрд╡реЗрдЪреЗ рдПрдХрд╛рдЪрд╡реЗрд│реА рдСрдкрд░реЗрд╢рди рдЖрдгрд┐ рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рд░рд╛рдЙрдЯрд░ рдореЛрдб рдлрд╛рд░рд╢реА рд╕реБрд╕рдВрдЧрдд рдирд╛рд╣реАрдд. рдореНрд╣рдгреВрди, рдХреЛрдгрддреЗрд╣реА рдбрд╛рдпрдиреЕрдорд┐рдХ рдирд┐рдпрдВрддреНрд░рдг рдирд╛рд╣реА рдЖрдгрд┐ рдкреГрд╖реНрда рдЗрддрд░ рд╕рд░реНрд╡ рдореЛрдбрдордзреНрдпреЗ рдЙрдкрд▓рдмреНрдз рдирд╛рд╣реА.
рд╢рд┐рд╡рд╛рдп, рд╕рдВрд╢реЛрдзрдирд╛рдЪреНрдпрд╛ рд╣реЗрддреВрдВрд╕рд╛рдареА рдбрд╛рдпрдиреЕрдорд┐рдХ рдирд┐рдпрдВрддреНрд░рдгрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╛рд╣реА.

рдмреАрдХрди рдкреЕрдХреЗрдЬреЗрд╕рд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рдгреНрдпрд╛рдЪреА рдкрджреНрдзрдд

рдореЛрдб рд╕рд╛рдорд╛рдиреНрдп рдЖрд╣реЗрдд рдЖрдгрд┐ рдлрд╛рд░ рдордиреЛрд░рдВрдЬрдХ рдирд╛рд╣реАрдд. рдмрдирд╡рд▓реЗ "рдХрд╛рд░рдг рддреЗ рд╢рдХреНрдп рдЖрд╣реЗ." рдЪреЗрдХрд╕рд╛рдареА.
рдЕрдзрд┐рдХреГрдд Espressif рдЙрджрд╛рд╣рд░рдгрд╛рдВрдордзреНрдпреЗ рдЙрджрд╛рд╣рд░рдгреЗ рдЖрд╣реЗрдд.

рдПрдкреА рд╕реВрдЪреА рд╕реНрдХреЕрдирд┐рдВрдЧ рдореЛрдб.
рд╡рд╛рд╕реНрддрд╡рд┐рдХ, рдХреЛрдгрддрд╛рд╣реА рд╕реНрдорд╛рд░реНрдЯрдлреЛрди рд╣реЗ рдХрд░реВ рд╢рдХрддреЛ.
рдмрд░рдВ, рдпрд╛ рдореЛрдбрдордзреНрдпреЗ AP рд╕реВрдЪреА рдЬрддрди рдХреЗрд▓реА рдЬрд╛рдИрд▓.
рдмреАрдХрди рд╕реНрдкреЕрдорд░.
ESP32 рдЪреА рд╕реБрд░реБрд╡рд╛рдд AP рдореНрд╣рдгреВрди рд▓рдкрд╡рд┐рд▓реЗрд▓реНрдпрд╛ SSID рдЖрдгрд┐ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ MAC рд╕рд╣ рд╣реЛрддреЗ рдЖрдгрд┐ SSID рдЪреНрдпрд╛ рдЖрдзреАрдкрд╛рд╕реВрди рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕реВрдЪреАрдиреБрд╕рд╛рд░ [рдмреАрдХрди рдлреНрд░реЗрдо] рдкрд╛рдард╡рдгреЗ рд╕реБрд░реВ рд╣реЛрддреЗ (рдореЕрдиреНрдпреБрдЕрд▓реА рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реА рдХрд┐рдВрд╡рд╛ AP рд╕реВрдЪреА рд╕реНрдХреЕрди рдХрд░реВрди рдЖрдзреА рдорд┐рд│рд╡рд▓реЗрд▓реА)

рд╡рд╛рдпрдлрд╛рдп рдкреЕрдХреЗрдЯ рд╕реНрдирд┐рдлрд┐рдВрдЧ рдореЛрдб

рдПрд╕реНрдкреНрд░реЗрд╕рд┐рдл рдбреЗрд╡реНрд╣рд▓рдкрд░реНрд╕рдиреА рдХреЙрд▓рдмреЕрдХ рдлрдВрдХреНрд╢рдирджреНрд╡рд╛рд░реЗ рд╕рд░реНрд╡ рд╡рд╛рдпрдлрд╛рдп рдкреЕрдХреЗрдЯреНрд╕ тАЬрд╣рд╡реЗрдд рдЙрдбрддтАЭ рдкреНрд░рд╛рдкреНрдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдНрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░рдЪреА рдХреНрд╖рдорддрд╛ рдЬреЛрдбрд▓реА рдЖрд╣реЗ. рдкреНрд░рддреНрдпрдХреНрд╖рд╛рдд рд╕рд░реНрд╡рдЪ рдирд╛рд╣реА, рдХрд╛рд░рдг рддреБрдореНрд╣реА рдлрдХреНрдд рдПрдХрд╛ рдирд┐рд╢реНрдЪрд┐рдд рдЪреЕрдиреЗрд▓рд╕рд╛рдареА рдореЛрдб рд╕реЗрдЯ рдХрд░реВ рд╢рдХрддрд╛.

рдХреЙрд▓рдмреЕрдХ рдлрдВрдХреНрд╢рдирд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЦреВрдк рдХрдареЛрд░ рд╡реЗрд│реЗрдЪреЗ рдирд┐рд░реНрдмрдВрдз рд▓рд╛рджрд▓реЗ рдЬрд╛рддрд╛рдд. рдЬрд░ рдпрд╛рдореБрд│реЗ рд╕рд╛рдзреНрдпрд╛ рдЖрдХрдбреЗрд╡рд╛рд░реА рд╕рдВрдХрд▓рди рдореЛрдбрдордзреНрдпреЗ рд╕рдорд╕реНрдпрд╛ рдЙрджреНрднрд╡рдд рдирд╛рд╣реАрдд, рддрд░ SD рдХрд╛рд░реНрдбрд╡рд░реАрд▓ PCAP рдлрд╛рдЗрд▓ рд░реЗрдХреЙрд░реНрдбрд┐рдВрдЧ рдореЛрдбрд╕рд╛рдареА рдорд▓рд╛ рдЯрд┐рдВрдХрд░ рдХрд░рд╛рд╡реЗ рд▓рд╛рдЧрд▓реЗ, рдореЗрдорд░реА рдЖрдгрд┐ рд╕реЗрдордлреЛрд░реНрд╕рдордзреАрд▓ рд░рд╛рдВрдЧреЗрджреНрд╡рд╛рд░реЗ рд░реЗрдХреЙрд░реНрдбрд┐рдВрдЧ рдЖрдпреЛрдЬрд┐рдд рдХрд░рд╛. рдХреЙрд▓рдмреЕрдХ рдХреЙрд▓ рдХрд░рдгреНрдпрд╛рдЪреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдПрдХрд╛ рдХреЛрд░рд╡рд░ рдЪрд╛рд▓рддреЗ рдЖрдгрд┐ рджреБрд╕рд░реНтАНрдпрд╛ рдХреЛрд░рдордзреНрдпреЗ SD рд▓рд╛ рд▓рд┐рд╣рд┐рдгрд╛рд░реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реЗ рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рд▓рдХреНрд╖рд╛рдд рдШреЗрдКрди.

"рдЧреЛрдВрдЧрд╛рдЯ рд╣рд╡рд╛" рджрд░рдореНрдпрд╛рди, рдХрд╛рд╣реА рдкреЕрдХреЗрдЯ рд╣рд░рд╡рд▓реЗ рдЬрд╛рддрд╛рдд (рд░рд╛рдВрдЧреЗрдд рдЬрд╛рдЧрд╛ рдирд╕рддреЗ рдЖрдгрд┐ рддреА рдЯрд╛рдХреВрди рджрд┐рд▓реА рдЬрд╛рддрд╛рдд), рдкрд░рдВрддреБ рд╕рдВрдзреНрдпрд╛рдХрд╛рд│реА рдЕрдкрд╛рд░реНрдЯрдореЗрдВрдЯрдордзреАрд▓ рдард░рд╛рд╡рд┐рдХ "рд╣рд╡рд╛" рд╕рд╣ (5..7 AP рджреГрд╢реНрдпрдорд╛рдирддреЗрдордзреНрдпреЗ), PCAP рдордзреНрдпреЗ рд░реЗрдХреЙрд░реНрдбрд┐рдВрдЧ рдкреЕрдХреЗрдЯ рдЧрдорд╛рд╡рд▓реНрдпрд╛рд╢рд┐рд╡рд╛рдп рдкреВрд░реНрдг рдХреЗрд▓реЗ рдЬрд╛рддреЗ.

рдпрд╛рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд, PCAP рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рдЖрдгрд┐ рд░реЗрдХреЙрд░реНрдбрд┐рдВрдЧрд╕рд╛рдареА, рдкреЕрдХреЗрдЯ рд╢реАрд░реНрд╖рд▓реЗрдЦрд╛рдВрдордзреНрдпреЗ MAC рд╕реВрдЪреАрд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдлрд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдореЛрдб рдЖрд╣реЗ.

рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдХреНрд▓рдм/рдХреЕрдлреЗрдордзреНтАНрдпреЗ рдПрдЦрд╛рджреА рд╡реНтАНрдпрдХреНтАНрддреА рдЖрдд рдЬрд╛рдгреНтАНрдпрд╛рдкреВрд░реНрд╡реА рдХрд┐рдВрд╡рд╛ рджрд┐рд╕рдгреНтАНрдпрд╛рдкреВрд░реНрд╡реА рддреБрдореНрд╣реА рддреНтАНрдпрд╛рдЪрд╛ рджрд┐рд╕рдгреНтАНрдпрд╛рдЪрд╛ рдорд╛рдЧреЛрд╡рд╛ рдШреЗрдК рд╢рдХрддрд╛. рдХрд╛рд╣реА рд▓реЛрдХ рдЬреНрдЮрд╛рдд AP рд╕рд╛рдареА WiFi рдЖрдгрд┐ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдХрдиреЗрдХреНрд╢рди рдЕрдХреНрд╖рдо рдХрд░рддрд╛рдд. (рдореА рдЖрддрд╛ рддреЗ рдмрдВрдж рдХрд░рдд рдЖрд╣реЗ..)

рд╡рд╛рдпрд░рд╢рд╛рд░реНрдХрдордзреНрдпреЗ рд░реЗрдХреЙрд░реНрдб рдХреЗрд▓реЗрд▓реА рд░рд╣рджрд╛рд░реА рдкрд╛рд╣рдгреЗ рд╢реИрдХреНрд╖рдгрд┐рдХ рдЖрдгрд┐ рдирдХрд╛рд╢реЗ рд╕рдордЬреВрди рдШреЗрдгреНрдпрд╛рд╕рд╛рдареА рдордиреЛрд░рдВрдЬрдХ рдЖрд╣реЗ - рд╣реЗ рд╕рд░реНрд╡ рдХрд╛рд░реНрдп рдХрд░рддреЗ.

рдбреЗрде рдкреЕрдХреЗрдЬреЗрд╕рд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдореЛрдб

рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рддрдкрдгреЗ, libnet80211.a рд▓рд╛рдпрдмреНрд░рд░реАрдордзреНрдпреЗ рд╣реА рдкреЕрдХреЗрдЬреЗрд╕ рдкрд╛рдард╡рдгреЗ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдЖрд╣реЗ, рдЬреЗ рд╕реНрддреНрд░реЛрддрд╛рдВрд╢рд┐рд╡рд╛рдп рдпреЗрддреЗ. рдкрд░рдВрддреБ рдХрд╛рд╣реА рдмрд┐рдЯреНрд╕ рдЯреНрд╡реАрдХ рдХрд░реВрди рдирд┐рд░рд╛рдХрд░рдг рдХрд░рдгреЗ рд╕реЛрдкреЗ рдЖрд╣реЗ. рдкреНрд░рдердо рдорд▓рд╛ рд╢рдВрдХрд╛ рдЖрд▓реА рдХреА рдкреЕрдЪ рдкреЛрд╕реНрдЯ рдХрд░рдгреЗ рдпреЛрдЧреНрдп рдЖрд╣реЗ рдХреА рдирд╛рд╣реА. рдкрд░рдВрддреБ рдбреАрдСрдереЗрдВрдЯрд┐рдХреЗрд╢рди рдлреНрд░реЗрдо рд╕реНрдХреЕрдирд┐рдВрдЧ рдореЛрдб рдЪрд╛рд▓реВ рдХрд░реВрди рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рдард┐рдХрд╛рдгреА рдлрд┐рд░рд▓реНрдпрд╛рдирдВрддрд░, рдорд▓рд╛ рд╡рд╛рдЯрд▓реЗ: "рдХрд╛рдп рдЖрд╣реЗ." рд╢рд┐рд╡рд╛рдп, esp8266 рдордзреНрдпреЗ рдпрд╛ рдкреЕрдХреЗрдЬреЗрд╕рдЪреЗ рд╡рд┐рддрд░рдг рдмрдВрдж рдХреЗрд▓реЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ esp8266 рд╕рд╛рдареА github рд╡рд░ рдЕрд╕реЗрдВрдмреНрд▓реА рдЖрд╣реЗрдд.

рдмрд░реНтАНрдпрд╛рдЪ рдард┐рдХрд╛рдгреА (рдореА рдХреБрдареЗ рд╕рд╛рдВрдЧрдгрд╛рд░ рдирд╛рд╣реА) рдпрд╛ рдкрджреНрдзрддреАрджреНрд╡рд╛рд░реЗ рдЕрд╡рд╛рдВрдЫрд┐рдд APs рдЪреЗ рджрдорди рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддреЗ. рдЖрдгрд┐ рд╣реЗ "рдЧреБрдВрдб" рдирд╛рд╣реАрдд...

рдЖрдгрд┐ рдорд▓рд╛ рдЖрд╢реНрдЪрд░реНрдп рд╡рд╛рдЯрд▓реЗ рдХреА рдорд╛рдЭреНрдпрд╛ рдлреЛрдирд╡рд░реВрди рдорд╛рдЭреЗ рдЗрдВрдЯрд░рдиреЗрдЯ рд╡рд┐рддрд░рдг рдХрд╛рд╣реА рдард┐рдХрд╛рдгреА рдХрд╛рдо рдХрд░рдд рдирд╛рд╣реА...

рдЕрд╢рд╛ рдкреЕрдХреЗрдЯреНрд╕рдЪрд╛ рдирдВрдмрд░ рдЖрдгрд┐ RSSI рдЯреНрд░реЕрдХ рдХрд░рдгреНрдпрд╛рдЪрд╛ рдореЛрдб тАЬрдбрд╛рд╡реНрдпрд╛ рдПрдкреАрдВрдирд╛ рдХреБрдареЗ рдЖрд╡рдбрдд рдирд╛рд╣реАтАЭ рд╣реЗ рд╕рдордЬреВрди рдШреЗрдгреНрдпрд╛рд╕рд╛рдареА рдЦреВрдк рдЙрдкрдпреБрдХреНрдд рдЖрд╣реЗ.

рд░рд╛рдЙрдЯрд░ рдореЛрдб

рд╣реЗ рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рдХрджрд╛рдЪрд┐рдд рдПрдХреНрд╕рдкреНрд▓реЛрд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕рд░реНрд╡рд╛рдд рдордиреЛрд░рдВрдЬрдХ рдЖрд╣реЗ.

ESP32 STA + SoftAP рдореЛрдбрдордзреНрдпреЗ рдПрдХрд╛рдЪрд╡реЗрд│реА рдСрдкрд░реЗрд╢рдирдЪреЗ рд╕рдорд░реНрдерди рдХрд░рддреЗ. рдореНрд╣рдгреВрди, рдЖрдкрдг рддреНрдпрд╛рд╡рд░ рдХреНрд▓рд╛рд╕рд┐рдХ NAT рд░рд╛рдЙрдЯрд░ рд▓рд╛рдЧреВ рдХрд░реВ рд╢рдХрддрд╛.

рдиреЗрдЯрд╡рд░реНрдХ рд╕реНрдЯреЕрдХрд▓рд╛ рд╕рдкреЛрд░реНрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдПрд╕реНрдкреНрд░реЗрд╕рд┐рдл lwip рд▓рд╛рдпрдмреНрд░рд░реАрдЪрд╛ рдлреЛрд░реНрдХ (рдЕрдХреНрд╖рд░рд╢рдГ рди рдмрджрд▓рд▓реЗрд▓рд╛) рд╡рд╛рдкрд░рддреЛ.

рдкрд░рдВрддреБ, рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░, рдорд╛рдирдХ рдмрд┐рд▓реНрдбрдордзреНрдпреЗ, esp-lwip рд▓рд╛рдпрдмреНрд░рд░реА netif рдЗрдВрдЯрд░рдлреЗрд╕ 'ap' (SoftAP) рдЖрдгрд┐ 'st' (STA) рджрд░рдореНрдпрд╛рди рдлреЙрд░рд╡рд░реНрдбрд┐рдВрдЧ рдкреНрд░рджрд╛рди рдХрд░рдд рдирд╛рд╣реА.

рдЕрд░реНрдерд╛рдд, рддреБрдореНрд╣реА рддреЗ NAT рд╢рд┐рд╡рд╛рдп рдХрд░реВ рд╢рдХрддрд╛, рдкрд░рдВрддреБ рдПрдХрд╛рдЪ рд╡реЗрд│реА рджреЛрди рдХрд┐рдВрд╡рд╛ рдЕрдзрд┐рдХ STA рд▓рд╛ 'ap' рдЗрдВрдЯрд░рдлреЗрд╕рд╢реА рдЬреЛрдбрдгреНрдпрд╛рдд рдЖрдгрд┐ 'st' рддреЗ 'ap' рдиреЗрдЯрд╡рд░реНрдХ рдЗрдВрдЯрд░рдлреЗрд╕рдордзреНрдпреЗ IP рдкрддреНрддреЗ рд╕рдордХреНрд░рдорд┐рдд рдХрд░рдгреНрдпрд╛рдд рд╕рдорд╕реНрдпрд╛ рдЖрд╣реЗ. рддреНрдпрд╛рдореБрд│реЗ рдЕрдбрдЪрдгреА рдлрд╛рдпрджреНрдпрд╛рдЪреНрдпрд╛ рдирд╛рд╣реАрдд рдЖрдгрд┐ NAT рджреНрд╡рд╛рд░реЗ рддреЗ рд╕реЛрдкреЗ рдЖрд╣реЗ.

рд╢рд┐рд╡рд╛рдп, martin-ger рдХрдбреВрди рдлреЛрд░реНрдХ esp-lwip рдЖрд╣реЗ, рдЬреЛ IP4 рд╕рд╛рдареА NAT рдЪреА рд╕рд╛рдзреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдЬреЛрдбрддреЛ.

рдЬрд░реА рдорд╛рдЭреЗ рд╣рд╛рдд рдкреВрд░реНрдгрдкрдгреЗ рдХреЙрд╕реНрдореЗрдЯрд┐рдХ рд░рд┐рдореЗрдХ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЦрд╛рдЬрдд рдЕрд╕рд▓реЗ рддрд░реА (рдорд╛рдЭреНрдпрд╛ рдорддреЗ, рдкреНрд░рдХрд▓реНрдкрд╛рдЪреНрдпрд╛ рдХрд╛рдЯреНрдпрд╛рд╢рд┐рд╡рд╛рдп рд╣реЗ рд╕реЛрдкреЗ рд╣реЛрддреЗ, рдкрд░рдВрддреБ LWIP рджреНрд╡рд╛рд░реЗрд╣реВрдХ рдЕрд╕реЗрдВрдмреНрд▓реА рджрд░рдореНрдпрд╛рди рдкрд░рд┐рднрд╛рд╖рд┐рдд рдлрдВрдХреНрд╢рдиреНрд╕), рдкрд░рдВрддреБ рдЖрд│рд╢реАрдкрдгрд╛ рдкреНрд░рдЪрд▓рд┐рдд рдЭрд╛рд▓рд╛ рдЖрдгрд┐ рдорд╛рд░реНрдЯрд┐рди-рдЧреЗрд░рдЪрд╛ рдкрд░реНрдпрд╛рдп рдЖрд╣реЗ рддрд╕рд╛ рд╡рд╛рдкрд░рд▓рд╛ рдЧреЗрд▓рд╛.

рд░рд╛рдЙрдЯрд░ рдореЛрдбрдордзреНрдпреЗ, рдЗрдирдХрдорд┐рдВрдЧ рдЖрдгрд┐ рдЖрдЙрдЯрдЧреЛрдЗрдВрдЧ IP4 рд░рд╣рджрд╛рд░реА рдкрд╛рд╣рд┐рд▓реА рдЬрд╛рддреЗ.

рд╡рд┐рд╢реЗрд╖рддрдГ, рд╕реНрдХреНрд░реАрдирд╡рд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рдлрд╛рдИрд▓рдордзреНрдпреЗ рдЖрдХрдбреЗрд╡рд╛рд░реА рдЧреЛрд│рд╛ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЦрд╛рд▓реАрд▓ рдЧреЛрд╖реНрдЯреА рддреНрдпрд╛рддреВрди рдХрд╛рдврд▓реНрдпрд╛ рдЖрд╣реЗрдд:

  • SoftAP ESP32 (DHCP рдкреЕрдХреЗрдЯреНрд╕) рд╢реА рдХрдиреЗрдХреНрдЯ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдЙрдкрдХрд░рдгрд╛рдЪреЗ рдирд╛рд╡
  • SoftAP ESP53 рд╢реА рдХрдиреЗрдХреНрдЯ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рд╡рд░реВрди DNS рд╡рд┐рдирдВрддреНрдпрд╛рдВрдЪреА URL (UDP рдкреЛрд░реНрдЯ 32).

рдпрд╛рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд, рддреБрдореНрд╣реА PCAP рдлрд╛рдЗрд▓рд╡рд░ рд░рд╣рджрд╛рд░реА рд░реЗрдХреЙрд░реНрдбрд┐рдВрдЧ рд╕рдХреНрд╖рдо рдХрд░реВ рд╢рдХрддрд╛.

рд╣рд╛ рдореЛрдб рдЦреВрдк рдЙрдкрдпреБрдХреНрдд рдЖрд╣реЗ, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рд╕рдордЬреВрди рдШреЗрдгреНрдпрд╛рд╕рд╛рдареА, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рддреБрдордЪрд╛ рдлреЛрди рдиреЗрдЯрд╡рд░реНрдХрд╡рд░ рдХрд╛рдп рдкрд╛рдард╡рддреЛ рдЖрдгрд┐ рддреЛ рдХреБрдареЗ рдЬрд╛рддреЛ.

рдиреЗрдЯрд╡рд░реНрдХ рдЗрдВрдЯрд░рдлреЗрд╕ рд╕реНрддрд░рд╛рд╡рд░ softAP ESP32 рдЗрдирдХрдорд┐рдВрдЧ рдЖрдгрд┐ рдЖрдЙрдЯрдЧреЛрдЗрдВрдЧ рдЯреНрд░реЕрдлрд┐рдХ рдкреВрд░реНрдгрдкрдгреЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рдХреНрд╖рдорддрд╛ рд▓рдХреНрд╖рд╛рдд рдШреЗрдКрди рддреБрдореНрд╣реА рд╣рд╛ рдореЛрдб рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдЗрддрд░ рдорд╛рд░реНрдЧрд╛рдВрдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХрд░реВ рд╢рдХрддрд╛: Ehernet рд╢реАрд░реНрд╖рд▓реЗрдЦ (destMAC[6]+srcMAC[6]+type[2]) + рдкреЗрд▓реЛрдб (IP4, IP6, DCHP, рдЗ. рдкреНрд░рдХрд╛рд░).

рддрддреНрд╡рддрдГ, ESP32 WiFi->WiFi рд░рд╛рдЙрдЯрд░ рдлрдВрдХреНрд╢рдирдЪрд╛ рдЪрд╛рдВрдЧрд▓рд╛ рд╕рд╛рдордирд╛ рдХрд░рддреЛ, рдХреЛрдгрддреНрдпрд╛рд╣реА рд╡рд┐рд╢реЗрд╖ рд╡рд┐рд▓рдВрдмрд╛рд╢рд┐рд╡рд╛рдп рд╕рд╛рдорд╛рдиреНрдп рд░рд╣рджрд╛рд░реАрддреВрди рдЬрд╛рддреЛ. рд╡рд┐рд╖рдпрд╛рдиреБрд╕рд╛рд░, ESP32 рд╡рд░ рд░рд╛рдЙрдЯрд░рджреНрд╡рд╛рд░реЗ рдХрдиреЗрдХреНрдЯ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдлреЛрдирдордзреНрдпреЗ рд╣реЛрдгрд╛рд░рд╛ рд╡рд┐рд▓рдВрдм рд▓рдХреНрд╖рд╛рдд рдпреЗрдгреНрдпрд╛рдЬреЛрдЧрд╛ рдирд╛рд╣реА.

рджреБрд░реНрджреИрд╡рд╛рдиреЗ, Espressif API рдордзреНрдпреЗ SoftAP EPS32 рд╢реА рдХрдиреЗрдХреНрдЯ MAC рд╕рд╛рдареА рдлрд┐рд▓реНрдЯрд░ рд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рдЪреА рдХреНрд╖рдорддрд╛ рдирд╛рд╣реА. рддреНрдпрд╛рдРрд╡рдЬреА, "рдЗрдЪреНрдЫрд┐рдд рдирд╕рд▓реЗрд▓реНрдпрд╛" рдЖрдзреАрдкрд╛рд╕реВрди рдХрдиреЗрдХреНрдЯ рдХреЗрд▓реЗрд▓реНрдпрд╛ STA рд▓рд╛ "рдЧреБрдбрдмрд╛рдп" (esp_wifi_deauth_sta) рдореНрд╣рдгрдгреНрдпрд╛рдЪрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдЖрд╣реЗ.

рдХрдиреЗрдХреНрдЯ рдХреЗрд▓реЗрд▓реНрдпрд╛ STA рд╕рд╛рдареА MAC рджреНрд╡рд╛рд░реЗ рдлрд┐рд▓реНрдЯрд░рд┐рдВрдЧ esp_wifi_deauth_sta() рдХреЙрд▓рджреНрд╡рд╛рд░реЗ рдХрд░рд╛рд╡реЗ рд▓рд╛рдЧрд▓реЗ

рд╢реЗрд╡рдЯреА

рдЬрд░реА рдореА ESP32 рд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдЪреМрдХрдЯреАрдд рдирд╡реАрди рдХрд╛рд╣реАрд╣реА рдЖрдгрд▓реЗ рдирд╛рд╣реА, рддрд░реА рдХрджрд╛рдЪрд┐рдд рдкрд░рд┐рдгрд╛рдо (рд╕реНрд░реЛрдд рдХреЛрдб) рдПрдЦрд╛рджреНрдпрд╛рд╕рд╛рдареА рдордиреЛрд░рдВрдЬрдХ рдЕрд╕реЗрд▓.

рдореА рд╣реЗ рд▓рдХреНрд╖рд╛рдд рдШреЗрдК рдЗрдЪреНрдЫрд┐рддреЛ рдХреА рд╕рдВрд╣рд┐рддрд╛ рдХреЗрд╡рд│ рд╢реИрдХреНрд╖рдгрд┐рдХ рд╣реЗрддреВрдВрд╕рд╛рдареА рд▓рд┐рд╣рд┐рд▓реА рдЧреЗрд▓реА рд╣реЛрддреА. "рд╣реЕрдХрд┐рдВрдЧ" рдЗрддреНрдпрд╛рджреАрд╕рд╛рдареА, рддреЗ рдореБрджреНрджрд╛рдо рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рд╣реЛрддреЗ рддреЗ рдлрд╛рд░рд╕реЗ рд╕реЛрдпреАрдЪреЗ рдирд╡реНрд╣рддреЗ.

рдореА рдкреНрд░рд┐рдВрдЯреЗрдб рд╕рд░реНрдХрд┐рдЯ рдмреЛрд░реНрдб рдмрдирд╡рд▓рд╛ рдирд╛рд╣реА рдХрд╛рд░рдг рддрдпрд╛рд░ рд╕реНрдХрд╛рд░реНрдлрд▓рд╛ рд╡рд╛рдпрд░рдиреЗ рд╕реЛрд▓реНрдбрд░ рдХрд░рд╛рдпрд▓рд╛ 1.5-2 рддрд╛рд╕ рд▓рд╛рдЧрд▓реЗ.

рдЖрдгрд┐ рдЖрдкрдг рдЕрд╕реЗ рдХреЗрд▓реНрдпрд╛рд╕, рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рддреЗ рддрдпрд╛рд░-рддрдпрд╛рд░ рдмреЛрд░реНрдбрд╛рдВрдкрд╛рд╕реВрди рдирд╡реНрд╣реЗ рддрд░ рд╡реИрдпрдХреНрддрд┐рдХ рдШрдЯрдХрд╛рдВрдордзреВрди рдПрдХрддреНрд░ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдордЧ рдкрд░рд┐рдорд╛рдгреЗ рдЖрдгрдЦреА рд▓рд╣рд╛рди рд╣реЛрддреАрд▓.

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛