āĻā§āĻ¯āĻŧāĻžāĻ°ā§āĻ¨ā§āĻāĻžāĻāĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻŽāĻžāĻā§ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻ¸ā§āĻ˛ā§āĻ˛āĻžāĻ° āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ˛āĻāĻŋāĻ āĻŽāĻĄā§āĻŽā§āĻ° āĻāĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻĄāĻŋāĻāĻžāĻāĻ¸ā§āĻ° āĻŦāĻŋāĻāĻžāĻļā§ āĻ āĻāĻļ āĻ¨ā§āĻāĻ¯āĻŧāĻžāĻ° āĻĒā§āĻ°āĻ¸ā§āĻ¤āĻžāĻŦ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤
āĻā§āĻ°āĻžāĻšāĻ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻā§āĻā§āĻ˛āĻŋāĻ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻā§āĻ˛āĻŋāĻāĻŽ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻāĻ¤āĻŋ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻ¤ā§ āĻā§āĻ¯āĻŧā§āĻāĻŋāĻ˛ā§āĻ¨ āĻ¯āĻžāĻ¤ā§ āĻāĻāĻāĻŋ LTE āĻ¸āĻāĻ¯ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¸āĻ°āĻā§āĻāĻžāĻŽ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻā§āĻ¨ āĻ¸ā§āĻ˛ā§āĻ˛āĻžāĻ° āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻ āĻ¨ā§āĻā§āĻ˛ āĻāĻŋāĻ˛ āĻ¤āĻž āĻŦā§āĻāĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻŋāĻĄāĻŋāĻ āĻ¸āĻŽā§āĻĒā§āĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ā§ˇ āĻāĻāĻ āĻ¸āĻŽāĻ¯āĻŧā§, āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻāĻŋ āĻŦā§āĻ¯āĻ¯āĻŧāĻŦāĻšā§āĻ˛ āĻ¸āĻ°āĻā§āĻāĻžāĻŽ āĻāĻžāĻĄāĻŧāĻžāĻ āĻ¯āĻ¤āĻāĻž āĻ¸āĻŽā§āĻāĻŦ āĻ¸āĻšāĻ āĻāĻŦāĻ āĻ¸āĻ¸ā§āĻ¤āĻžāĻ¯āĻŧ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤
āĻāĻŽāĻŋ āĻāĻāĻ¨āĻ āĻŦāĻ˛āĻŦ āĻ¯ā§ āĻāĻžāĻāĻāĻŋ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻ¸āĻšāĻ āĻāĻŦāĻ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻā§āĻāĻžāĻ¨-āĻ¨āĻŋāĻŦāĻŋāĻĄāĻŧ āĻ¨āĻ¯āĻŧ; āĻāĻŽāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻŦāĻ˛āĻŦ āĻ¯ā§ āĻāĻŽāĻŋ āĻā§ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻ¸āĻŽā§āĻŽā§āĻā§āĻ¨ āĻšāĻ¯āĻŧā§āĻāĻŋ āĻāĻŦāĻ āĻā§āĻāĻžāĻŦā§ āĻāĻŽāĻŋ āĻ¸ā§āĻā§āĻ˛āĻŋ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻŦāĻžāĻ° āĻāĻ˛.
āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯
āĻāĻāĻāĻŋ LTE āĻ¸āĻāĻ¯ā§āĻā§āĻ° āĻāĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒ āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻāĻŋāĻ˛ āĻŦāĻŋāĻˇāĻ¯āĻŧ: āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸āĻ āĻŋāĻ āĻ¸āĻ°āĻā§āĻāĻžāĻŽ āĻāĻŦāĻ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒ āĻā§āĻļāĻ˛ āĻŦā§āĻā§ āĻ¨āĻŋāĻ¤ā§ āĻšāĻŦā§ āĻāĻŦāĻ āĻ¸ā§āĻ˛ā§āĻ˛āĻžāĻ° āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻā§āĻ° āĻāĻĒā§āĻ˛āĻāĻŋ āĻāĻŦāĻ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§āĻ āĻāĻžāĻ˛ā§ āĻ§āĻžāĻ°āĻŖāĻž āĻĨāĻžāĻāĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ, āĻāĻ¤āĻŋ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻāĻžāĻ°āĻŖā§āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§: āĻāĻāĻāĻŋ āĻāĻā§āĻˇā§ āĻā§āĻ°āĻžāĻšāĻā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž, āĻāĻŦāĻšāĻžāĻāĻ¯āĻŧāĻžāĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻž, āĻāĻŽāĻ¨āĻāĻŋ āĻ¸ā§āĻ˛ āĻĨā§āĻā§ āĻ¸ā§āĻ˛ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻ¤āĻŋ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻāĻĒā§āĻ˛āĻāĻŋāĻ° āĻāĻžāĻ°āĻŖā§ āĻ¨āĻžāĻāĻā§āĻ¯āĻŧāĻāĻžāĻŦā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻŦāĻŋāĻļāĻžāĻ˛ āĻ¸āĻāĻā§āĻ¯āĻ āĻ āĻāĻžāĻ¨āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž, āĻāĻŦāĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻ˛āĻŋāĻāĻŽ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻāĻāĻŋ āĻ¸āĻ āĻŋāĻāĻāĻžāĻŦā§ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻāĻāĻžāĻŦā§, āĻā§āĻ°āĻžāĻšāĻ āĻā§āĻŦāĻ˛ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻĻā§āĻ° āĻĢā§āĻ¨ āĻĻāĻŋāĻ¯āĻŧā§ āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻāĻžāĻ˛āĻžāĻ¤ā§ āĻā§āĻ¯āĻŧā§āĻāĻŋāĻ˛ā§āĻ¨, āĻĢā§āĻ¨ā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒ āĻ¨āĻŋāĻ¤ā§ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻāĻāĻŋ āĻ¨ā§āĻāĻŦā§āĻā§ āĻāĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒā§āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ˛āĻŋāĻāĻ¤ā§ āĻā§āĻ¯āĻŧā§āĻāĻŋāĻ˛ā§āĻ¨āĨ¤ lte āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻā§āĻ° āĻāĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻžāĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨, āĻ¯āĻĻāĻŋāĻ āĻāĻĻāĻ°ā§āĻļ āĻ¨āĻ¯āĻŧ, āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°ā§āĨ¤
āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻ āĻāĻžāĻŦā§, āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻŦāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻŋāĻāĻ¤āĻžāĻ° āĻĒāĻā§āĻˇā§ āĻ¨āĻ¯āĻŧ, āĻāĻ¨ā§āĻ¨āĻ¯āĻŧāĻ¨ā§āĻ° āĻāĻ¤āĻŋāĻ° āĻĒāĻā§āĻˇā§ āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋāĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻŦāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒā§āĻĨāĻ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŦāĻžāĻāĻāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻ°āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻŋāĻ VPN-āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§, āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¸ ssh āĻ°āĻŋāĻŽā§āĻ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤
āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¤āĻŋāĻāĻ¤ āĻāĻžāĻ
āĻĒā§āĻ°āĻŦāĻ¨ā§āĻ§ā§ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧā§āĻā§
āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¤āĻŋāĻāĻ¤ āĻāĻžāĻāĻāĻŋ āĻŦā§āĻļ āĻ¸āĻšāĻ āĻāĻŋāĻ˛, āĻāĻŽāĻŋ āĻļā§āĻˇ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻŦā§āĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻŋāĻā§ āĻāĻāĻā§ āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻāĻ°āĻŦāĨ¤ āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¤āĻŋāĻāĻ¤ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻŦāĻ āĻ¸āĻ°āĻā§āĻāĻžāĻŽā§āĻ° āĻĒāĻāĻ¨ā§āĻĻ āĻā§āĻ°āĻžāĻšāĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻ¸ā§āĻ¤āĻ°āĻžāĻ, āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¤āĻŋāĻāĻ¤ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻ¨āĻŋāĻā§āĻ, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ āĻ¨ā§āĻŽā§āĻĻāĻ¨ā§āĻ° āĻĒāĻ°ā§:
āĻāĻāĻāĻŋ āĻāĻāĻ āĻŦā§āĻ°ā§āĻĄ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāĻ°ā§āĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ vim2 āĻāĻāĻ āĻŽāĻĄā§āĻŽā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻ˛āĻāĻŋāĻ āĻ¸āĻāĻ¯ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻāĻ¤āĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨uawei e3372h - 153 āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻā§āĻ˛āĻŋāĻāĻŽ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° (āĻāĻ āĻĨā§āĻā§ āĻāĻ¨)āĨ¤ UART āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻāĻāĻŋ GPS āĻ°āĻŋāĻ¸āĻŋāĻāĻžāĻ° āĻĨā§āĻā§ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻā§āĻ āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻžāĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧāĨ¤ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒ āĻāĻ°ā§āĻ¨
www.speedtest.net āĻāĻŦāĻ āĻ¤āĻžāĻĻā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻŦāĻŋāĻ˛ā§ āĻ°āĻžāĻā§āĻ¨ āĻ¯ā§āĻŽāĻ¨:
csv āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§ āĻā§āĻŦāĻŋāĻ˛āĨ¤ āĻ¤āĻžāĻ°āĻĒāĻ° āĻĒā§āĻ°āĻ¤āĻŋ 6 āĻāĻ¨ā§āĻāĻž āĻ-āĻŽā§āĻāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻ āĻāĻŋāĻšā§āĻ¨ āĻĒāĻžāĻ āĻžāĻ¨. āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, GPIO āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ LED āĻāĻŋ āĻŦā§āĻ˛āĻŋāĻā§āĻ āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻŽāĻŋ āĻ āĻ¨ā§āĻ āĻ āĻ¨ā§āĻŽā§āĻĻāĻ¨ā§āĻ° āĻĒāĻ°ā§, āĻŦāĻŋāĻ¨āĻžāĻŽā§āĻ˛ā§āĻ¯ā§ āĻāĻāĻžāĻ°ā§ āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¤āĻŋāĻāĻ¤ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻāĻ°ā§āĻāĻŋāĨ¤ āĻ¤āĻŦā§ āĻāĻžāĻā§āĻ° āĻ āĻ°ā§āĻĨ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻĻā§āĻļā§āĻ¯āĻŽāĻžāĻ¨āĨ¤ āĻ¸āĻŦāĻāĻŋāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ āĻ¸āĻĒā§āĻ¤āĻžāĻš āĻ¸āĻŽāĻ¯āĻŧ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦā§ āĻ¤āĻž āĻ¤āĻŋāĻ¨ āĻ¸āĻĒā§āĻ¤āĻžāĻš āĻ§āĻ°ā§ āĻāĻ˛ā§āĨ¤ āĻāĻāĻŋ āĻāĻ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻāĻŋāĻā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻžāĻ¯āĻŧ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻā§āĻā§ āĻ¯ā§ āĻāĻŽāĻŋ āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻŽāĻžāĻ° āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻāĻžāĻā§āĻ° āĻĒāĻ°ā§ āĻāĻŦāĻ āĻ¸āĻĒā§āĻ¤āĻžāĻšāĻžāĻ¨ā§āĻ¤ā§ āĻāĻ°ā§āĻāĻŋāĨ¤
āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻŋ āĻāĻŦāĻžāĻ°āĻ āĻāĻ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻāĻŋāĻ° āĻĒā§āĻ°āĻ¤āĻŋ āĻĻā§āĻˇā§āĻāĻŋ āĻāĻāĻ°ā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ āĻ¯ā§ āĻā§āĻ°āĻžāĻšāĻ āĻāĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻāĻŦāĻ āĻšāĻžāĻ°ā§āĻĄāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§ āĻ āĻā§āĻ°āĻŋāĻŽ āĻ¸āĻŽā§āĻŽāĻ¤ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛, āĻ¯āĻž āĻāĻŽāĻžāĻ° āĻā§āĻˇāĻŽāĻ¤āĻžāĻā§ āĻŦā§āĻ¯āĻžāĻĒāĻāĻāĻžāĻŦā§ āĻ¸ā§āĻŽāĻŋāĻ¤ āĻāĻ°ā§āĻāĻŋāĻ˛āĨ¤ āĻŦāĻžāĻā§āĻāĻ āĻāĻŋāĻ˛ āĻ¸ā§āĻŽāĻŋāĻ¤, āĻ¤āĻžāĻ āĻŦāĻŋāĻļā§āĻˇ āĻāĻŋāĻā§ āĻā§āĻ¨āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋāĨ¤ āĻ¤āĻžāĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻŽā§āĻ¨ā§ āĻā§āĻ˛āĻ¤ā§ āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻ¸ā§āĻĨāĻžāĻĒāĻ¤ā§āĻ¯ āĻāĻŦāĻ āĻāĻ¨ā§āĻ¨āĻ¯āĻŧāĻ¨
āĻ¸ā§āĻāĻŋāĻŽ āĻ¸āĻšāĻ āĻāĻŦāĻ āĻ¸ā§āĻ¸ā§āĻĒāĻˇā§āĻ. āĻ āĻ¤āĻāĻŦ, āĻāĻŽāĻŋ āĻā§āĻ¨ā§ āĻŦāĻŋāĻļā§āĻˇ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻāĻŋ āĻā§āĻĄāĻŧā§ āĻĻā§āĻŦāĨ¤
āĻāĻŽāĻŋ āĻĒāĻžāĻāĻĨāĻ¨ā§ āĻĒā§āĻ°ā§ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒāĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋ, āĻ¯āĻĻāĻŋāĻ āĻāĻŽāĻžāĻ° āĻāĻ āĻāĻžāĻˇāĻžāĻ¤ā§ āĻŦāĻŋāĻāĻžāĻļ āĻāĻ°āĻžāĻ° āĻā§āĻ¨ā§ āĻ
āĻāĻŋāĻā§āĻāĻ¤āĻž āĻāĻŋāĻ˛ āĻ¨āĻžāĨ¤ āĻāĻŽāĻŋ āĻāĻāĻŋ āĻŦā§āĻā§ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋ āĻāĻžāĻ°āĻŖ āĻāĻāĻžāĻ¨ā§ āĻ
āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤-āĻ¤ā§āĻ°āĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻāĻŦāĻ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻŦāĻŋāĻāĻžāĻļāĻā§ āĻ¤ā§āĻŦāĻ°āĻžāĻ¨ā§āĻŦāĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻ
āĻ¤āĻāĻŦ, āĻāĻŽāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻļāĻžāĻĻāĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻžāĻ°āĻĻā§āĻ° āĻĒāĻžāĻāĻĨāĻ¨ā§ āĻŦāĻŋāĻāĻžāĻļā§āĻ° āĻāĻŽāĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻ
āĻāĻŋāĻā§āĻāĻ¤āĻžāĻā§ āĻ¤āĻŋāĻ°āĻ¸ā§āĻāĻžāĻ° āĻ¨āĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻ˛āĻŋ, āĻāĻŦāĻ āĻāĻŽāĻžāĻ° āĻĻāĻā§āĻˇāĻ¤āĻž āĻāĻ¨ā§āĻ¨āĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ āĻ¨āĻŽā§āĻ˛āĻ āĻ¸āĻŽāĻžāĻ˛ā§āĻāĻ¨āĻž āĻļā§āĻ¨ā§ āĻāĻŽāĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻā§āĻļāĻŋāĨ¤
āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋāĻ¤ā§ āĻāĻŽāĻŋ āĻāĻŦāĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°ā§āĻāĻŋ āĻ¯ā§ āĻĒāĻžāĻāĻĨāĻ¨ā§āĻ° āĻĻā§āĻāĻŋ āĻāĻ˛āĻŽāĻžāĻ¨ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ 2 āĻāĻŦāĻ 3 āĻ°āĻ¯āĻŧā§āĻā§, āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§āĻĒ āĻāĻŽāĻŋ āĻ¤ā§āĻ¤ā§āĻ¯āĻŧāĻāĻŋāĻ¤ā§ āĻ¸ā§āĻĨāĻŋāĻ° āĻšāĻ¯āĻŧā§āĻāĻŋāĨ¤
āĻšāĻžāĻ°ā§āĻĄāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻ¨ā§āĻĄ
āĻāĻāĻ āĻĒā§āĻ˛ā§āĻ vim2
āĻāĻŽāĻžāĻ° āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻŽā§āĻļāĻŋāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻŽāĻžāĻā§ āĻāĻāĻāĻŋ āĻāĻāĻ-āĻŦā§āĻ°ā§āĻĄ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāĻ° āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛
āĻāĻāĻāĻŋ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻšā§āĻŽ āĻāĻŦāĻ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ-āĻāĻŋāĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻĻā§āĻ°ā§āĻĻāĻžāĻ¨ā§āĻ¤, āĻļāĻā§āĻ¤āĻŋāĻļāĻžāĻ˛ā§ āĻŽāĻŋāĻĄāĻŋāĻ¯āĻŧāĻž āĻĒā§āĻ°āĻ¸ā§āĻ¸āĻ°, āĻ¤āĻŦā§ āĻāĻ āĻāĻžāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ
āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻ
āĻ¨ā§āĻĒāĻ¯ā§āĻā§āĻ¤, āĻŦāĻž, āĻŦāĻ˛āĻž āĻ¯āĻžāĻ, āĻāĻžāĻ°āĻžāĻĒāĻāĻžāĻŦā§ āĻāĻĒāĻ¯ā§āĻā§āĻ¤āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻ° āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻāĻāĻ¸ āĻš'āĻ˛ āĻ
ā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ°āĻ¯āĻŧā§āĻĄ, āĻāĻŦāĻ āĻ˛āĻŋāĻ¨āĻžāĻā§āĻ¸ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ¨ā§āĻĄāĻžāĻ°āĻŋ āĻāĻāĻ¸, āĻāĻŦāĻ āĻ¸ā§āĻ āĻ
āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻā§āĻāĻ āĻ˛āĻŋāĻ¨āĻžāĻā§āĻ¸ā§āĻ° āĻ
āĻ§ā§āĻ¨ā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¨ā§āĻĄ āĻāĻŦāĻ āĻĄā§āĻ°āĻžāĻāĻāĻžāĻ°ā§āĻ° āĻāĻā§āĻ-āĻŽāĻžāĻ¨ā§āĻ° āĻ
āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻāĻŋ āĻĻā§āĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻāĻŦāĻ āĻāĻŽāĻŋ āĻ
āĻ¨ā§āĻŽāĻžāĻ¨ āĻāĻ°āĻŋ āĻ¯ā§ āĻāĻŋāĻā§ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻāĻ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§āĻ° āĻāĻāĻāĻ¸āĻŦāĻŋ āĻĄā§āĻ°āĻžāĻāĻāĻžāĻ°āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻāĻŋāĻ˛, āĻ¤āĻžāĻ āĻŽāĻĄā§āĻŽāĻā§āĻ˛āĻŋ āĻāĻ āĻŦā§āĻ°ā§āĻĄā§ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻļāĻŋāĻ¤ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§āĻ¨āĻŋāĨ¤ āĻāĻāĻŋāĻ¤ā§ āĻā§āĻŦ āĻāĻžāĻ°āĻžāĻĒ āĻāĻŦāĻ āĻŦāĻŋāĻā§āĻˇāĻŋāĻĒā§āĻ¤ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻ°āĻ¯āĻŧā§āĻā§, āĻ¤āĻžāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ
āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻĄāĻāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻ¨āĻ¨ āĻāĻ°āĻ¤ā§ āĻ
āĻ¨ā§āĻ āĻ¸āĻŽāĻ¯āĻŧ āĻ¨ā§āĻ¯āĻŧāĨ¤ āĻāĻŽāĻ¨āĻāĻŋ āĻāĻŋāĻĒāĻŋāĻāĻāĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻāĻžāĻāĻ āĻĒā§āĻ°āĻā§āĻ° āĻ°āĻā§āĻ¤ ââââāĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§āĻāĻŋāĻ˛āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻ˛āĻāĻĄāĻŋ āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻ¤ā§ āĻāĻŽāĻžāĻ° āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻ āĻāĻ¨ā§āĻāĻž āĻ¸āĻŽāĻ¯āĻŧ āĻ˛ā§āĻā§āĻā§āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§, āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ āĻšāĻ¤ā§, āĻāĻāĻŋ āĻŽā§āĻ˛āĻŋāĻāĻāĻžāĻŦā§ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻāĻŋāĻ˛ āĻ¨āĻž āĻ¯ā§ āĻāĻāĻŋ āĻāĻŋ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻāĻ-āĻŦā§āĻ°ā§āĻĄ āĻāĻŋāĻ˛, āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻāĻŋāĻ¨āĻŋāĻ¸āĻāĻŋ āĻāĻŋāĻ˛ āĻāĻāĻŋ āĻāĻžāĻ āĻāĻ°ā§ āĻāĻŦāĻ āĻ¸ā§āĻāĻžāĻ¨ā§ USB āĻĒā§āĻ°ā§āĻ āĻāĻŋāĻ˛āĨ¤
āĻĒā§āĻ°āĻĨāĻŽā§ āĻāĻŽāĻžāĻā§ āĻāĻ āĻŦā§āĻ°ā§āĻĄā§ āĻ˛āĻŋāĻ¨āĻžāĻā§āĻ¸ āĻāĻ¨ā§āĻ¸āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŦāĻ āĻ¯āĻžāĻ°āĻž āĻāĻ āĻāĻāĻ-āĻŦā§āĻ°ā§āĻĄ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻāĻžāĻŦāĻŋāĻ˛āĻž āĻāĻ°āĻŦā§ āĻ¤āĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ā§āĻ° āĻŦāĻ¨ā§āĻ¯āĻ¤āĻž āĻ¨āĻž āĻāĻžāĻāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻŋ āĻāĻ āĻ āĻ§ā§āĻ¯āĻžāĻ¯āĻŧāĻāĻŋ āĻ˛āĻŋāĻāĻāĻŋāĨ¤
āĻ˛āĻŋāĻ¨āĻžāĻā§āĻ¸ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĻā§āĻāĻŋ āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻ°āĻ¯āĻŧā§āĻā§: āĻāĻāĻāĻŋ āĻŦāĻžāĻšā§āĻ¯āĻŋāĻ SD āĻāĻžāĻ°ā§āĻĄā§ āĻŦāĻž āĻāĻāĻāĻŋ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ MMC-āĻ¤ā§ā§ˇ āĻāĻŽāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻ¨ā§āĻ§ā§āĻ¯āĻž āĻāĻžāĻāĻŋāĻ¯āĻŧā§āĻāĻŋ āĻā§āĻāĻžāĻŦā§ āĻāĻāĻŋ āĻāĻžāĻ°ā§āĻĄā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¤āĻž āĻŦā§āĻāĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§, āĻ¤āĻžāĻ āĻāĻŽāĻŋ āĻāĻāĻŋ MMC-āĻ¤ā§ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋ, āĻ¯āĻĻāĻŋāĻ āĻā§āĻ¨āĻ āĻ¸āĻ¨ā§āĻĻā§āĻš āĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻŦāĻžāĻšā§āĻ¯āĻŋāĻ āĻāĻžāĻ°ā§āĻĄā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻž āĻ āĻ¨ā§āĻ āĻ¸āĻšāĻ āĻšāĻŦā§āĨ¤
āĻĢāĻžāĻ°ā§āĻŽāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§
- āĻā§āĻ˛ āĻĒāĻŋāĻ¨ GND: <â> VIMs āĻāĻ° GPIO āĻāĻ° āĻĒāĻŋāĻ¨17
- āĻā§āĻ˛ āĻĒāĻŋāĻ¨ TXD: <â> VIMs āĻāĻ° GPIO (Linux_Rx) āĻāĻ° āĻĒāĻŋāĻ¨18
- āĻā§āĻ˛ āĻĒāĻŋāĻ¨ RXD: <â> VIMs āĻāĻ° GPIO (Linux_Tx) āĻāĻ° āĻĒāĻŋāĻ¨19
- āĻā§āĻ˛ āĻĒāĻŋāĻ¨ VCC: <â> VIMs āĻāĻ° GPIO āĻāĻ° āĻĒāĻŋāĻ¨20
āĻāĻ° āĻĒāĻ°ā§, āĻāĻŽāĻŋ āĻĢāĻžāĻ°ā§āĻŽāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ°āĻāĻŋ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°ā§āĻāĻŋ
āĻāĻ āĻĢāĻžāĻ°ā§āĻŽāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻāĻĒāĻ˛ā§āĻĄ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻžāĻ° āĻāĻāĻāĻŋāĻ˛āĻŋāĻāĻŋ āĻĻāĻ°āĻāĻžāĻ°āĨ¤ āĻāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°ā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤
git clone https://github.com/khadas/utils
cd /path/to/utils
sudo ./INSTALL
Aaand... āĻāĻŋāĻā§āĻ āĻāĻžāĻ āĻāĻ°ā§ āĻ¨āĻž. āĻāĻŽāĻŋ āĻāĻ¨āĻ¸ā§āĻāĻ˛ā§āĻļāĻ¨ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻāĻā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻāĻ¯āĻŧā§āĻ āĻāĻ¨ā§āĻāĻž āĻŦā§āĻ¯āĻ¯āĻŧ āĻāĻ°ā§āĻāĻŋ āĻ¯āĻžāĻ¤ā§ āĻ¸āĻŦāĻāĻŋāĻā§ āĻāĻŽāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻ āĻŋāĻāĻāĻžāĻŦā§ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻšāĻ¯āĻŧāĨ¤ āĻāĻŽāĻŋ āĻ¸ā§āĻāĻžāĻ¨ā§ āĻāĻŋ āĻāĻ°ā§āĻāĻŋ āĻŽāĻ¨ā§ āĻ¨ā§āĻ, āĻ¤āĻŦā§ āĻā§āĻĄāĻŧāĻžāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ¸āĻ āĻāĻŋāĻ˛āĨ¤ āĻ¤āĻžāĻ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ āĻŦāĻ˛āĻŽā§āĻŦāĻ¨ āĻāĻ°āĻž. āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ āĻāĻāĻāĻŋāĻ˛āĻŋāĻāĻŋāĻā§āĻ˛āĻŋ āĻāĻžāĻĄāĻŧāĻž āĻāĻŋāĻŽ 2 āĻā§ āĻāĻ°āĻ āĻ¨āĻŋāĻ°ā§āĻ¯āĻžāĻ¤āĻ¨ āĻāĻ°āĻžāĻ° āĻā§āĻ¨ āĻŽāĻžāĻ¨ā§ āĻ¨ā§āĻāĨ¤ āĻ¤āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻā§āĻ āĻāĻžāĻŽā§āĻ˛āĻž āĻ¨āĻž āĻāĻ°āĻžāĻ āĻāĻžāĻ˛ā§!
āĻ¨āĻ°āĻā§āĻ° āĻ¸āĻžāĻ¤āĻāĻŋ āĻā§āĻ¨āĻžāĻļā§āĻ¨āĻž, āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻāĻŦāĻ āĻāĻ¨āĻ¸ā§āĻāĻ˛ā§āĻļāĻ¨ā§āĻ° āĻĒāĻ°ā§, āĻāĻŽāĻŋ āĻāĻžāĻā§āĻ° āĻāĻāĻāĻŋāĻ˛āĻŋāĻāĻŋāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻĒā§āĻ¯āĻŧā§āĻāĻŋāĨ¤ āĻāĻŽāĻŋ āĻāĻāĻāĻ¸āĻŦāĻŋ āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻŽāĻžāĻ° āĻ˛āĻŋāĻ¨āĻžāĻā§āĻ¸ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāĻ°ā§ āĻŦā§āĻ°ā§āĻĄ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§āĻāĻŋ āĻāĻŦāĻ āĻāĻĒāĻ°ā§āĻ° āĻāĻŋāĻ¤ā§āĻ° āĻ
āĻ¨ā§āĻ¸āĻžāĻ°ā§ UART āĻā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§āĻāĻŋāĨ¤
āĻāĻŽāĻŋ āĻšāĻžāĻ°ā§āĻĄāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻāĻŦāĻ āĻ¸āĻĢā§āĻāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻāĻžāĻĄāĻŧāĻžāĻ 115200 āĻāĻ° āĻāĻ¤āĻŋāĻ¤ā§ āĻāĻŽāĻžāĻ° āĻĒā§āĻ°āĻŋāĻ¯āĻŧ āĻŽāĻŋāĻ¨āĻŋāĻāĻŽ āĻāĻžāĻ°ā§āĻŽāĻŋāĻ¨āĻžāĻ˛ āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻāĻŋāĨ¤ āĻāĻŦāĻ āĻāĻ° āĻļā§āĻ°ā§ āĻāĻ°āĻž āĻ¯āĻžāĻ.
UART āĻāĻžāĻ°ā§āĻŽāĻŋāĻ¨āĻžāĻ˛ā§ VIM2 āĻ˛ā§āĻĄ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻŽāĻŋ āĻ˛ā§āĻĄ āĻāĻ°āĻž āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻ¤ā§ āĻ¸ā§āĻĒā§āĻ¸āĻŦāĻžāĻ°ā§āĻ° āĻŽāĻ¤ā§ āĻāĻāĻāĻŋ āĻā§ āĻāĻŋāĻĒā§āĻ¨āĨ¤ āĻ˛āĻžāĻāĻ¨ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻĒāĻ°ā§
kvim2#
āĻāĻŽāĻŋ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ˛āĻŋāĻāĻŋ:
kvim2# run update
āĻāĻŽāĻ°āĻž āĻ¯ā§ āĻšā§āĻ¸ā§āĻ āĻĨā§āĻā§ āĻ˛ā§āĻĄ āĻāĻ°āĻāĻŋ, āĻ¸ā§āĻāĻžāĻ¨ā§ āĻāĻŽāĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻŋ:
burn-tool -v aml -b VIM2 -i VIM2_Ubuntu-server-bionic_Linux-4.9_arm64_EMMC_V20191231.img
āĻāĻāĻž, āĻāĻĢ. āĻāĻŽāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§ āĻĻā§āĻāĻ˛āĻžāĻŽ, āĻŦā§āĻ°ā§āĻĄā§ āĻ˛āĻŋāĻ¨āĻžāĻā§āĻ¸ āĻāĻā§āĨ¤ āĻ˛āĻāĻāĻ¨/āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ khadas:khadas.
āĻāĻ° āĻĒāĻ°ā§, āĻāĻŋāĻā§ āĻā§āĻāĻāĻžāĻ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ āĻ¸ā§āĻāĻŋāĻāĻ¸āĨ¤ āĻāĻ°āĻ āĻāĻžāĻā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻŋ sudo āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ āĻā§āĻˇāĻŽ āĻāĻ°āĻŋ (āĻšā§āĻ¯āĻžāĻ, āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻ¨āĻ¯āĻŧ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻāĻ¨āĻ)āĨ¤
sudo visudo
āĻāĻŽāĻŋ āĻĢāĻ°ā§āĻŽā§ āĻ˛āĻžāĻāĻ¨āĻāĻŋ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž āĻāĻ°āĻŋ āĻāĻŦāĻ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻŋ
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) NOPASSWD: ALL
āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻāĻŽāĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ˛ā§āĻā§āĻ˛ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻŋ āĻ¯āĻžāĻ¤ā§ āĻ¸āĻŽāĻ¯āĻŧāĻāĻŋ āĻŽāĻ¸ā§āĻā§āĻ¤ā§ āĻĨāĻžāĻā§, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻāĻŋ āĻā§āĻ°āĻŋāĻ¨āĻāĻāĻā§ āĻĨāĻžāĻāĻŦā§āĨ¤
sudo timedatectl set-timezone Europe/Moscow
āĻ āĻĨāĻŦāĻž
ln -s /usr/share/zoneinfo/Europe/Moscow /etc/localtime
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻāĻ āĻŋāĻ¨ āĻŽāĻ¨ā§ āĻāĻ°ā§āĻ¨ āĻ¤āĻŦā§ āĻāĻ āĻŦā§āĻ°ā§āĻĄāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻž; āĻ°āĻžāĻ¸ā§āĻĒāĻŦā§āĻ°āĻŋ āĻĒāĻžāĻ āĻāĻ°āĻ āĻāĻžāĻ˛āĨ¤ āĻ¸āĻ¤ā§āĻ¯āĻŋ āĻŦāĻ˛āĻ¤ā§.
āĻŽāĻĄā§āĻŽ Huawei e3372h â 153
āĻāĻ āĻŽāĻĄā§āĻŽāĻāĻŋ āĻāĻŽāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ°āĻā§āĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻāĻ˛ā§āĻ˛ā§āĻāĻ¯ā§āĻā§āĻ¯ āĻā§āĻ¸ āĻāĻŋāĻ˛, āĻāĻŦāĻ āĻĒā§āĻ°āĻā§āĻ¤āĻĒāĻā§āĻˇā§, āĻāĻāĻŋ āĻĒā§āĻ°ā§ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§āĻ° āĻŦāĻžāĻ§āĻž āĻšāĻ¯āĻŧā§ āĻĻāĻžāĻāĻĄāĻŧāĻžāĻ¯āĻŧāĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§, āĻāĻ āĻĄāĻŋāĻāĻžāĻāĻ¸āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ "āĻŽāĻĄā§āĻŽ" āĻ¨āĻžāĻŽāĻāĻŋ āĻŽā§āĻā§āĻ āĻāĻžāĻā§āĻ° āĻ¸āĻžāĻ°āĻŽāĻ°ā§āĻŽāĻā§ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻŋāĻ¤ āĻāĻ°ā§ āĻ¨āĻž: āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻļāĻā§āĻ¤āĻŋāĻļāĻžāĻ˛ā§ āĻ¸āĻāĻŽāĻŋāĻļā§āĻ°āĻŖ, āĻāĻ āĻšāĻžāĻ°ā§āĻĄāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ°ā§āĻ° āĻ āĻāĻļāĻāĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻ¯ā§āĻāĻŋāĻ āĻĄāĻŋāĻāĻžāĻāĻ¸ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻĄā§āĻ°āĻžāĻāĻāĻžāĻ° āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ CD-ROM āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻžāĻ¨ āĻāĻ°ā§, āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻāĻžāĻ°ā§āĻĄ āĻŽā§āĻĄā§ āĻ¸ā§āĻāĻ āĻāĻ°ā§āĨ¤
āĻ¸ā§āĻĨāĻžāĻĒāĻ¤ā§āĻ¯āĻāĻ¤āĻāĻžāĻŦā§, āĻ˛āĻŋāĻ¨āĻžāĻā§āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻĻā§āĻˇā§āĻāĻŋāĻā§āĻŖ āĻĨā§āĻā§, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸ā§āĻāĻŋāĻāĻ¸ā§āĻ° āĻĒāĻ°ā§, āĻāĻāĻŋ āĻāĻāĻ°āĻāĻŽ āĻĻā§āĻāĻžāĻ¯āĻŧ: āĻŽāĻĄā§āĻŽ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻžāĻ° āĻĒāĻ°ā§, āĻāĻŽāĻžāĻ° āĻāĻžāĻā§ āĻāĻāĻāĻŋ eth* āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻ°āĻ¯āĻŧā§āĻā§, āĻ¯āĻž dhcp āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ IP āĻ āĻŋāĻāĻžāĻ¨āĻž 192.168.8.100 āĻāĻŦāĻ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻā§āĻāĻāĻ¯āĻŧā§ āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§ āĻšāĻ˛ 192.168.8.1āĨ¤
āĻāĻŦāĻ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻŽā§āĻšā§āĻ°ā§āĻ¤! āĻāĻ āĻŽāĻĄā§āĻŽ āĻŽāĻĄā§āĻ˛ āĻŽāĻĄā§āĻŽ āĻŽā§āĻĄā§ āĻāĻžāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž, āĻ¯āĻž AT āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧ. āĻ¸āĻŦāĻāĻŋāĻā§ āĻ āĻ¨ā§āĻ āĻ¸āĻšāĻ āĻšāĻŦā§, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŽāĻĄā§āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻŋāĻĒāĻŋāĻĒāĻŋ āĻ¸āĻāĻ¯ā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻ¤āĻžāĻĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻžāĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, "āĻ¨āĻŋāĻā§āĻ" (āĻāĻ°āĻ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§, udev āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻ āĻ¨ā§āĻ¸āĻžāĻ°ā§ āĻāĻāĻāĻ¨ āĻ˛āĻŋāĻ¨āĻžāĻā§āĻ¸ āĻĄā§āĻŦā§āĻ°āĻŋ), āĻāĻāĻāĻŋ eth āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§ āĻāĻŦāĻ dhcp āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻāĻŋāĻ¤ā§ āĻāĻāĻāĻŋ IP āĻ āĻŋāĻāĻžāĻ¨āĻž āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°ā§āĨ¤
āĻāĻ°āĻ āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋ āĻāĻĄāĻŧāĻžāĻ¤ā§, āĻāĻŽāĻŋ "āĻŽāĻĄā§āĻŽ" āĻļāĻŦā§āĻĻāĻāĻŋ āĻā§āĻ˛ā§ āĻ¯āĻžāĻāĻ¯āĻŧāĻžāĻ° āĻāĻŦāĻ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻāĻžāĻ°ā§āĻĄ āĻāĻŦāĻ āĻā§āĻāĻāĻ¯āĻŧā§ āĻŦāĻ˛āĻžāĻ° āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻĻāĻŋāĻā§āĻāĻŋ, āĻāĻžāĻ°āĻŖ āĻŽā§āĻ˛āĻ¤, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻā§āĻāĻāĻ¯āĻŧā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻāĻžāĻ°ā§āĻĄ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻžāĻ° āĻŽāĻ¤ā§āĨ¤
āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻŽāĻĄā§āĻŽ āĻĨāĻžāĻā§, āĻ¤āĻāĻ¨ āĻāĻāĻŋ āĻā§āĻ¨ā§ āĻŦāĻŋāĻļā§āĻˇ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸ā§āĻˇā§āĻāĻŋ āĻāĻ°ā§ āĻ¨āĻž, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¯āĻāĻ¨ āĻāĻāĻžāĻ§āĻŋāĻ, āĻ¯āĻĨāĻž n-āĻā§āĻāĻ°ā§ āĻĨāĻžāĻā§, āĻ¤āĻāĻ¨ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻāĻŦāĻŋ āĻĻā§āĻāĻž āĻĻā§āĻ¯āĻŧāĨ¤
āĻ
āĻ°ā§āĻĨāĻžā§, n āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻāĻžāĻ°ā§āĻĄ, āĻāĻāĻ IP āĻ āĻŋāĻāĻžāĻ¨āĻž āĻ¸āĻš, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻāĻ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻā§āĻāĻāĻ¯āĻŧā§ āĻ¸āĻšāĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĒā§āĻ°āĻā§āĻ¤āĻĒāĻā§āĻˇā§, āĻ¤āĻžāĻĻā§āĻ° āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§āĻāĻāĻŋ āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻ
āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤āĨ¤
āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻāĻāĻžāĻŦā§, āĻāĻŽāĻžāĻ° āĻāĻžāĻā§ āĻāĻāĻāĻŋ āĻ¸āĻšāĻ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻŋāĻ˛: ifconfig āĻŦāĻž ip āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻ āĻā§āĻˇāĻŽ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻā§āĻŦāĻ˛ āĻĒāĻžāĻ˛āĻžāĻā§āĻ°āĻŽā§ āĻāĻāĻāĻŋ āĻāĻžāĻ˛ā§ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨āĨ¤ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨āĻāĻŋ āĻ¸āĻŦāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻžāĻ˛ āĻāĻŋāĻ˛, āĻ¸ā§āĻ¯ā§āĻāĻāĻŋāĻ āĻŽā§āĻšā§āĻ°ā§āĻ¤āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻŽāĻŋ āĻĄāĻŋāĻāĻžāĻāĻ¸ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻāĻŋāĻ˛āĻžāĻŽ āĻ¨āĻžāĨ¤ āĻāĻŦāĻ āĻ¯ā§āĻšā§āĻ¤ā§ āĻ¸ā§āĻ¯ā§āĻāĻāĻŋāĻ āĻāĻ¨ āĻāĻ¨ āĻāĻŦāĻ āĻĻā§āĻ°ā§āĻ¤, āĻāĻŽāĻžāĻ° āĻāĻ¸āĻ˛ā§ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻžāĻ° āĻā§āĻ¨ āĻ¸ā§āĻ¯ā§āĻ āĻāĻŋāĻ˛ āĻ¨āĻžāĨ¤
āĻ āĻ¤āĻāĻŦ, āĻāĻŽāĻŋ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛āĻŋ āĻŽā§āĻĄā§āĻŽā§āĻ° āĻāĻāĻĒāĻŋ āĻ āĻŋāĻāĻžāĻ¨āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻžāĻ° āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻ°āĻžāĻāĻāĻŋāĻ āĻ¸ā§āĻāĻŋāĻāĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻā§āĻ°āĻžāĻĢāĻŋāĻ āĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻžāĻ° āĻĒāĻĨ āĻŦā§āĻā§ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋāĨ¤
āĻŽāĻĄā§āĻŽāĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻŽāĻžāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻāĻāĻŋ āĻļā§āĻˇ āĻāĻŋāĻ˛ āĻ¨āĻž: āĻŦāĻŋāĻĻā§āĻ¯ā§āĻ¤ā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻ¸ā§āĻā§āĻ˛āĻŋ āĻŦāĻ¨ā§āĻ§ āĻšāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧ āĻāĻŦāĻ USB āĻšāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻāĻžāĻ˛ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§āĻ˛ āĻĒāĻžāĻāĻ¯āĻŧāĻžāĻ° āĻ¸āĻžāĻĒā§āĻ˛āĻžāĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻāĻŋāĻ˛āĨ¤ āĻāĻŽāĻŋ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻšāĻžāĻŦā§āĻ° āĻāĻžāĻā§ āĻĒāĻžāĻāĻ¯āĻŧāĻžāĻ° āĻšāĻžāĻ°ā§āĻĄ āĻ¸ā§āĻ˛ā§āĻĄāĻžāĻ°āĻŋāĻ āĻāĻ°ā§ āĻāĻ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻ°ā§āĻāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¯āĻž āĻāĻŽāĻŋ āĻ¸āĻŽā§āĻŽā§āĻā§āĻ¨ āĻšāĻ¯āĻŧā§āĻāĻŋ āĻāĻŦāĻ āĻ¯āĻž āĻĒā§āĻ°ā§ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒāĻāĻŋāĻā§ āĻ¨āĻˇā§āĻ āĻāĻ°ā§ āĻĻāĻŋāĻ¯āĻŧā§āĻā§: āĻĄāĻŋāĻāĻžāĻāĻ¸āĻāĻŋ āĻ°āĻŋāĻŦā§āĻ āĻŦāĻž āĻ āĻžāĻ¨ā§āĻĄāĻž āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻĒāĻ°ā§, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŽāĻĄā§āĻŽ āĻ¸āĻ¨āĻžāĻā§āĻ¤ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧāĻ¨āĻŋ āĻāĻŦāĻ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻ¨āĻ¯āĻŧ āĻāĻŦāĻ āĻāĻŽāĻŋ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĻ¨āĻŋ āĻā§āĻ¨ āĻāĻāĻŋ āĻāĻā§āĻā§ āĻāĻŦāĻ āĻā§āĻ¨ āĻ
ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ āĻĻā§āĻŦāĻžāĻ°āĻžāĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĒā§āĻ°āĻĨāĻŽ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻĒā§āĻ°āĻĨāĻŽ.
āĻŽāĻĄā§āĻŽ āĻ¸āĻ āĻŋāĻāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻŋ āĻāĻāĻāĻ¸āĻŦāĻŋ-āĻŽā§āĻĄāĻ¸ā§āĻāĻ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°ā§āĻāĻŋāĨ¤
sudo apt update
sudo apt install -y usb-modeswitch
āĻāĻ° āĻĒāĻ°ā§, āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻžāĻ° āĻĒāĻ°ā§, āĻŽāĻĄā§āĻŽāĻāĻŋ āĻ¸āĻ āĻŋāĻāĻāĻžāĻŦā§ āĻ¸āĻ¨āĻžāĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻŦā§ āĻāĻŦāĻ udev āĻ¸āĻžāĻŦāĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ āĻāĻŽāĻŋ āĻā§āĻŦāĻ˛ āĻŽāĻĄā§āĻŽāĻāĻŋ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§ āĻāĻŦāĻ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻāĻāĻŋ āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻā§ āĻ¤āĻž āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°ā§ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻŋā§ˇ
āĻāĻ°ā§āĻāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¯āĻž āĻāĻŽāĻŋ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĻ¨āĻŋ: āĻāĻ āĻŽāĻĄā§āĻŽ āĻĨā§āĻā§ āĻāĻŽāĻ°āĻž āĻ¯ā§ āĻ
āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻāĻŋ āĻ¤āĻžāĻ° āĻ¨āĻžāĻŽ āĻāĻŋāĻāĻžāĻŦā§ āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ? āĻ
āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻ¨āĻžāĻŽāĻāĻŋ āĻŽāĻĄā§āĻŽ āĻāĻ¯āĻŧā§āĻŦ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ā§ 192.168.8.1 āĻ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻ¤āĻŋāĻļā§āĻ˛ āĻāĻ¯āĻŧā§āĻŦ āĻĒā§āĻˇā§āĻ āĻž āĻ¯āĻž Ajax āĻ
āĻ¨ā§āĻ°ā§āĻ§ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻĄā§āĻāĻž āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§, āĻ¤āĻžāĻ āĻā§āĻŦāĻ˛ āĻĒā§āĻˇā§āĻ āĻžāĻāĻŋ āĻāĻāĻā§āĻ āĻāĻ°āĻž āĻāĻŦāĻ āĻ¨āĻžāĻŽāĻāĻŋ āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°āĻž āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻ¨āĻžāĨ¤ āĻ¤āĻžāĻ āĻāĻŽāĻŋ āĻāĻŋāĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻāĻ¯āĻŧā§āĻŦ āĻĒā§āĻ āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋ āĻĄā§āĻā§āĻ˛āĻĒ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¤āĻž āĻĻā§āĻāĻ¤ā§ āĻļā§āĻ°ā§ āĻāĻ°āĻ˛āĻžāĻŽ āĻāĻŦāĻ āĻŦā§āĻāĻ¤ā§ āĻĒāĻžāĻ°āĻ˛āĻžāĻŽ āĻ¯ā§ āĻāĻŽāĻŋ āĻāĻŋāĻā§ āĻŦāĻžāĻā§ āĻāĻĨāĻž āĻāĻ°āĻāĻŋāĨ¤ āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¤āĻŋāĻ¨āĻŋ āĻĨā§āĻĨā§ āĻĢā§āĻ˛ā§āĻ¨, āĻāĻŦāĻ āĻ
āĻĒāĻžāĻ°ā§āĻāĻ° āĻ¨āĻŋāĻā§āĻ āĻ¸ā§āĻĒāĻŋāĻĄāĻā§āĻ¸ā§āĻ API āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻ¤ā§ āĻļā§āĻ°ā§ āĻāĻ°ā§āĨ¤
AT āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻŽāĻĄā§āĻŽā§āĻ° āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻĨāĻžāĻāĻ˛ā§ āĻ āĻ¨ā§āĻ āĻ¸āĻšāĻ āĻšāĻŦā§āĨ¤ āĻāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻž, āĻāĻāĻāĻŋ āĻĒāĻŋāĻĒāĻŋāĻĒāĻŋ āĻ¸āĻāĻ¯ā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž, āĻāĻāĻāĻŋ āĻāĻāĻĒāĻŋ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž, āĻāĻāĻāĻŋ āĻā§āĻ˛āĻŋāĻāĻŽ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋ āĻ¸āĻŽā§āĻāĻŦ āĻšāĻŦā§ā§ˇ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĢāĻ¸ā§āĻ¸, āĻāĻŽāĻžāĻā§ āĻ¯āĻž āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§ āĻ¤āĻž āĻ¨āĻŋāĻ¯āĻŧā§āĻ āĻāĻžāĻ āĻāĻ°āĻāĻŋāĨ¤
āĻāĻŋāĻĒāĻŋāĻāĻ¸
āĻāĻŽāĻžāĻā§ āĻ¯ā§ āĻāĻŋāĻĒāĻŋāĻāĻ¸ āĻ°āĻŋāĻ¸āĻŋāĻāĻžāĻ° āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛ āĻ¤āĻžāĻ° āĻāĻāĻāĻŋ UART āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻāĻŦāĻ āĻļāĻā§āĻ¤āĻŋ āĻāĻŋāĻ˛āĨ¤ āĻāĻāĻŋ āĻ¸āĻ°ā§āĻŦā§āĻ¤ā§āĻ¤āĻŽ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻŋāĻ˛ āĻ¨āĻž, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻāĻāĻ¨āĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻŦāĻ āĻ¸āĻšāĻ āĻāĻŋāĻ˛āĨ¤ āĻ°āĻŋāĻ¸āĻŋāĻāĻžāĻ° āĻĻā§āĻāĻ¤ā§ āĻāĻ°āĻāĻŽ āĻāĻŋāĻā§ āĻāĻŋāĻ˛āĨ¤
āĻ¸āĻ¤ā§āĻ¯āĻŋ āĻāĻĨāĻž āĻŦāĻ˛āĻ¤ā§, āĻāĻāĻŋ āĻāĻŋāĻ˛ āĻāĻŽāĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽāĻŦāĻžāĻ° āĻāĻāĻāĻŋ GPS āĻ°āĻŋāĻ¸āĻŋāĻāĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻž, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻŋ āĻ¯ā§āĻŽāĻ¨āĻāĻŋ āĻāĻļāĻž āĻāĻ°ā§āĻāĻŋāĻ˛āĻžāĻŽ, āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŦāĻāĻŋāĻā§ āĻ
āĻ¨ā§āĻ āĻāĻā§ āĻĨā§āĻā§āĻ āĻāĻŋāĻ¨ā§āĻ¤āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻ¤āĻžāĻ āĻāĻŽāĻ°āĻž āĻļā§āĻ§ā§ āĻ°ā§āĻĄāĻŋāĻŽā§āĻĄ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŋāĨ¤
āĻĒā§āĻ°āĻĨāĻŽā§, āĻāĻŽāĻŋ āĻāĻŋāĻĒāĻŋāĻāĻ¸ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ uart_AO_B (UART_RX_AO_B, UART_TX_AO_B) āĻ¸āĻā§āĻˇāĻŽ āĻāĻ°āĻŋāĨ¤
khadas@Khadas:~$ sudo fdtput -t s /dtb.img /serial@c81004e0 status okay
āĻĒāĻ°ā§ āĻāĻŽāĻŋ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻ¸āĻĢāĻ˛āĻ¤āĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻŋāĨ¤
khadas@Khadas:~$ fdtget /dtb.img /serial@c81004e0 status
okay
āĻāĻ āĻāĻĻā§āĻļāĻāĻŋ āĻĻā§āĻļā§āĻ¯āĻ¤ āĻĢā§āĻ˛āĻžāĻāĻ¤ā§ āĻĻā§āĻŦāĻā§āĻ°āĻŋāĻā§ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž āĻāĻ°ā§, āĻ¯āĻž āĻā§āĻŦ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻāĻ¨āĻāĨ¤
āĻāĻ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻ¸āĻĢāĻ˛ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻĒāĻ°ā§, āĻ°āĻŋāĻŦā§āĻ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ GPS āĻĄā§āĻŽāĻ¨ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°ā§āĻ¨āĨ¤
khadas@Khadas:~$ sudo reboot
āĻāĻŋāĻĒāĻŋāĻāĻ¸ āĻĄā§āĻŽāĻ¨ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻž āĻšāĻā§āĻā§āĨ¤ āĻāĻŽāĻŋ āĻ¸āĻŦāĻāĻŋāĻā§ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻāĻ°āĻ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻāĻāĻŋ āĻā§āĻā§ āĻĢā§āĻ˛āĻŋāĨ¤
sudo apt install gpsd gpsd-clients -y
sudo killall gpsd
/* GPS daemon stop/disable */
sudo systemctl stop gpsd.socket
sudo systemctl disable gpsd.socket
āĻ¸ā§āĻāĻŋāĻāĻ¸ āĻĢāĻžāĻāĻ˛ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž āĻāĻ°āĻž āĻšāĻā§āĻā§āĨ¤
sudo vim /etc/default/gpsd
āĻāĻŽāĻŋ āĻāĻāĻāĻŋ UART āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻāĻŋ āĻ¯āĻžāĻ° āĻāĻĒāĻ° āĻāĻŋāĻĒāĻŋāĻāĻ¸ āĻā§āĻ˛āĻŦā§āĨ¤
DEVICES="/dev/ttyS4"
āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻŽāĻ°āĻž āĻ¸āĻŦāĻāĻŋāĻā§ āĻāĻžāĻ˛ā§ āĻāĻŦāĻ āĻļā§āĻ°ā§.
/* GPS daemon enable/start */
sudo systemctl enable gpsd.socket
sudo systemctl start gpsd.socket
āĻāĻ° āĻĒāĻ°ā§, āĻāĻŽāĻŋ āĻāĻŋāĻĒāĻŋāĻāĻ¸ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻŋāĨ¤
āĻāĻŋāĻĒāĻŋāĻāĻ¸ āĻ¤āĻžāĻ° āĻāĻŽāĻžāĻ° āĻšāĻžāĻ¤ā§, UART āĻĄāĻŋāĻŦāĻžāĻāĻžāĻ° āĻ¤āĻžāĻ°āĻā§āĻ˛āĻŋ āĻāĻŽāĻžāĻ° āĻāĻā§āĻā§āĻ˛ā§āĻ° āĻ¨ā§āĻā§ āĻĻā§āĻļā§āĻ¯āĻŽāĻžāĻ¨āĨ¤
āĻāĻŽāĻŋ āĻ°āĻŋāĻŦā§āĻ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻāĻŋāĻĒāĻŋāĻāĻ¸āĻŽāĻ¨ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻŋāĻĒāĻŋāĻāĻ¸ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻā§āĻ āĻāĻ°āĻŋāĨ¤
āĻāĻĒāĻ¨āĻŋ āĻāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ¨āĻļāĻā§ āĻ¸ā§āĻ¯āĻžāĻā§āĻ˛āĻžāĻāĻāĻā§āĻ˛āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻā§āĻ¨ āĻ¨āĻž, āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻŋ GPS āĻ°āĻŋāĻ¸āĻŋāĻāĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻāĻžāĻ¯ā§āĻ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻā§āĻ¨ āĻāĻŦāĻ āĻāĻ° āĻ
āĻ°ā§āĻĨ āĻšāĻ˛ āĻ¸āĻŦāĻāĻŋāĻā§ āĻ āĻŋāĻ āĻāĻā§āĨ¤
āĻĒāĻžāĻāĻĨāĻ¨ā§, āĻāĻŽāĻŋ āĻāĻ āĻĄā§āĻŽāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĻāĻŋāĻ˛āĻžāĻŽ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻŋ āĻĒāĻžāĻāĻĨāĻ¨ 3 āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻ āĻŋāĻāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§ āĻāĻŽāĻ¨ āĻāĻāĻāĻŋāĻ¤ā§ āĻ¸ā§āĻĨāĻŋāĻ° āĻšāĻ¯āĻŧā§āĻāĻŋāĨ¤
āĻāĻŽāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻŋāĨ¤
sudo -H pip3 install gps3
āĻāĻŦāĻ āĻāĻŽāĻŋ āĻāĻžāĻā§āĻ° āĻā§āĻĄ āĻāĻžāĻ¸ā§āĻāĻ°ā§āĻ¯.
from gps3.agps3threaded import AGPS3mechanism
...
def getPositionData(agps_thread):
counter = 0;
while True:
longitude = agps_thread.data_stream.lon
latitude = agps_thread.data_stream.lat
if latitude != 'n/a' and longitude != 'n/a':
return '{}' .format(longitude), '{}' .format(latitude)
counter = counter + 1
print ("Wait gps counter = %d" % counter)
if counter == 10:
ErrorMessage("ĐŅийĐēĐ° GPS ĐŋŅиĐĩĐŧĐŊиĐēĐ°!!!")
return "NA", "NA"
time.sleep(1.0)
...
f __name__ == '__main__':
...
#gps
agps_thread = AGPS3mechanism() # Instantiate AGPS3 Mechanisms
agps_thread.stream_data() # From localhost (), or other hosts, by example, (host='gps.ddns.net')
agps_thread.run_thread() # Throttle time to sleep after an empty lookup, default '()' 0.2 two tenths of a second
āĻ¯āĻĻāĻŋ āĻāĻŽāĻžāĻ° āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻā§āĻ āĻĒā§āĻ¤ā§ āĻšāĻ¯āĻŧ, āĻāĻāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻ˛ āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧ:
longitude, latitude = getPositionData(agps_thread)
āĻāĻŦāĻ 1-10 āĻ¸ā§āĻā§āĻ¨ā§āĻĄā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻŽāĻŋ āĻšāĻ¯āĻŧ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻā§āĻāĻāĻŋ āĻĒāĻžāĻŦ āĻŦāĻž āĻ¨āĻž āĻĒāĻžāĻŦāĨ¤ āĻšā§āĻ¯āĻžāĻ, āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻā§āĻ āĻĒā§āĻ¤ā§ āĻāĻŽāĻžāĻ° āĻĻāĻļāĻāĻŋ āĻĒā§āĻ°āĻā§āĻˇā§āĻāĻž āĻāĻŋāĻ˛āĨ¤ āĻ¸āĻ°ā§āĻŦā§āĻ¤ā§āĻ¤āĻŽ, āĻā§āĻāĻŋāĻ˛ āĻāĻŦāĻ āĻ¤āĻŋāĻ°ā§āĻ¯āĻ āĻ¨āĻ¯āĻŧ, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻāĻžāĻ āĻāĻ°ā§āĨ¤ āĻāĻŽāĻŋ āĻāĻāĻŋ āĻāĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋ āĻāĻžāĻ°āĻŖ āĻāĻŋāĻĒāĻŋāĻāĻ¸ āĻāĻžāĻ°āĻžāĻĒ āĻ āĻā§āĻ¯āĻ°ā§āĻĨāĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŦāĻ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻĄā§āĻāĻž āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻžāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻĄā§āĻāĻž āĻĒāĻžāĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨, āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻĻā§āĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻ°ā§ āĻāĻžāĻ āĻāĻ°ā§āĻ¨ āĻ¤āĻŦā§ āĻāĻ āĻāĻžāĻ¯āĻŧāĻāĻžāĻ¯āĻŧ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻāĻŋ āĻ¸ā§āĻĨāĻŋāĻ° āĻšāĻ¯āĻŧā§ āĻ¯āĻžāĻŦā§āĨ¤ āĻ āĻ¤āĻāĻŦ, āĻāĻŽāĻŋ āĻāĻ āĻ āĻĒā§āĻ°āĻžāĻ¸āĻā§āĻāĻŋāĻ āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§āĻāĻŋāĨ¤
āĻ¨ā§āĻ¤āĻŋāĻāĻ¤āĻāĻžāĻŦā§, āĻ¯āĻĻāĻŋ āĻāĻ°āĻ āĻ¸āĻŽāĻ¯āĻŧ āĻĨāĻžāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ UART-āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ GPS āĻĨā§āĻā§ āĻĄā§āĻāĻž āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻž, āĻāĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ āĻĨā§āĻ°ā§āĻĄā§ āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°āĻž āĻāĻŦāĻ āĻāĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻž āĻ¸āĻŽā§āĻāĻŦ āĻšāĻŦā§āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻā§āĻ¨ āĻ¸āĻŽāĻ¯āĻŧ āĻāĻŋāĻ˛ āĻ¨āĻž, āĻ¤āĻžāĻ āĻ¨āĻŋāĻ°ā§āĻŽāĻŽāĻāĻžāĻŦā§ āĻā§ā§āĻ¸āĻŋāĻ¤ āĻā§āĻĄ. āĻāĻ° āĻšā§āĻ¯āĻžāĻ, āĻāĻŽāĻŋ āĻ˛āĻā§āĻāĻŋāĻ¤ āĻ¨āĻāĨ¤
āĻšāĻžāĻ˛āĻāĻž emitting āĻĄāĻŋāĻ¤ā§āĻ¤āĻĄ
LED āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻž āĻāĻāĻ āĻ¸āĻŽāĻ¯āĻŧā§ āĻ¸āĻšāĻ āĻāĻŦāĻ āĻāĻ āĻŋāĻ¨ āĻāĻŋāĻ˛āĨ¤ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻ āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻšāĻ˛ āĻ¯ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻĒāĻŋāĻ¨ āĻ¨āĻŽā§āĻŦāĻ°āĻāĻŋ āĻŦā§āĻ°ā§āĻĄā§āĻ° āĻĒāĻŋāĻ¨ āĻ¨āĻŽā§āĻŦāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽāĻŋāĻ˛ā§ āĻ¨āĻž āĻāĻŦāĻ āĻāĻžāĻ°āĻŖ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻŦāĻžāĻŽ āĻšāĻžāĻ¤ā§ āĻ˛ā§āĻāĻž āĻšāĻ¯āĻŧāĨ¤ OS āĻ āĻšāĻžāĻ°ā§āĻĄāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻĒāĻŋāĻ¨ āĻ¨āĻŽā§āĻŦāĻ° āĻāĻŦāĻ āĻĒāĻŋāĻ¨ āĻ¨āĻŽā§āĻŦāĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°āĻ¤ā§, āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ āĻāĻžāĻ˛āĻžāĻ¤ā§ āĻšāĻŦā§:
gpio readall
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻāĻŦāĻ āĻŦā§āĻ°ā§āĻĄā§ āĻĒāĻŋāĻ¨ āĻāĻŋāĻ āĻŋāĻĒāĻ¤ā§āĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻŦāĻŋāĻ˛ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻŦā§āĨ¤ āĻāĻ° āĻĒāĻ°ā§ āĻāĻŽāĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻāĻāĻ¸ā§ āĻĒāĻŋāĻ¨āĻāĻŋ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĨ¤ āĻāĻŽāĻžāĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ LED āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ GPIOH_5.
āĻāĻŽāĻŋ GPIO āĻĒāĻŋāĻ¨āĻāĻŋāĻā§ āĻāĻāĻāĻĒā§āĻ āĻŽā§āĻĄā§ āĻ¸ā§āĻ¯ā§āĻāĻ āĻāĻ°āĻŋāĨ¤
gpio -g mode 421 out
āĻāĻŽāĻŋ āĻļā§āĻ¨ā§āĻ¯ āĻ˛āĻŋāĻā§ āĻ°āĻžāĻāĻŋāĨ¤
gpio -g write 421 0
āĻāĻŽāĻŋ āĻāĻāĻāĻž āĻ˛āĻŋāĻā§ āĻ°āĻžāĻāĻŋāĨ¤
gpio -g write 421 1
"1" āĻ˛ā§āĻāĻžāĻ° āĻĒāĻ°ā§ āĻ¸āĻŦāĻāĻŋāĻā§ āĻāĻ˛ā§āĻāĻŋāĻ¤ āĻšāĻ¯āĻŧ
#gpio subsistem
def gpio_init():
os.system("gpio -g mode 421 out")
os.system("gpio -g write 421 1")
def gpio_set(val):
os.system("gpio -g write 421 %d" % val)
def error_blink():
gpio_set(0)
time.sleep(0.1)
gpio_set(1)
time.sleep(0.1)
gpio_set(0)
time.sleep(0.1)
gpio_set(1)
time.sleep(0.1)
gpio_set(0)
time.sleep(1.0)
gpio_set(1)
def good_blink():
gpio_set(1)
āĻāĻāĻ¨, āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻāĻŽāĻŋ error_blink() āĻāĻ˛ āĻāĻ°āĻŋ āĻāĻŦāĻ LED āĻ¸ā§āĻ¨ā§āĻĻāĻ°āĻāĻžāĻŦā§ āĻā§āĻŦāĻ˛ā§ āĻāĻ āĻŦā§āĨ¤
āĻ¸āĻĢāĻāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻ¨ā§āĻĄ
āĻ¸ā§āĻĒāĻŋāĻĄāĻā§āĻ¸ā§āĻ API
āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻĻā§āĻ°ā§āĻĻāĻžāĻ¨ā§āĻ¤ āĻāĻ¨āĻ¨ā§āĻĻ āĻ¯ā§ speedtest.net āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻžāĻāĻŋāĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ python-API āĻ°āĻ¯āĻŧā§āĻā§, āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻžāĻ˛ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻšāĻ˛ āĻ¯ā§ āĻ¸ā§āĻ°ā§āĻ¸ āĻā§āĻĄāĻā§āĻ˛āĻŋāĻ āĻĻā§āĻāĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻ API āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻŋāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°āĻŦā§āĻ¨ (āĻ¸āĻšāĻ āĻāĻĻāĻžāĻšāĻ°āĻŖ) āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻŦā§
āĻāĻŽāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻĻāĻŋāĻ¯āĻŧā§ āĻĒāĻžāĻāĻĨāĻ¨ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻŋāĨ¤
sudo -H pip3 install speedtest-cli
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻĒāĻ¨āĻŋ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻ¸āĻĢā§āĻāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻĨā§āĻā§ āĻāĻŦā§āĻ¨ā§āĻā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻāĻ¤āĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻāĻŋ āĻāĻāĻ āĻĒāĻžāĻāĻĨāĻ¨ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨, āĻ¯āĻž āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻāĻ¨āĻ¸ā§āĻ˛ āĻĨā§āĻā§ āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
sudo apt install speedtest-cli -y
āĻāĻŦāĻ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻā§āĻ° āĻāĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒ āĻāĻ°ā§āĻ¨āĨ¤
speedtest-cli
Retrieving speedtest.net configuration...
Testing from B***** (*.*.*.*)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by MTS (Moscow) [0.12 km]: 11.8 ms
Testing download speed................................................................................
Download: 7.10 Mbit/s
Testing upload speed......................................................................................................
Upload: 3.86 Mbit/s
āĻĢāĻ˛ā§, āĻ āĻŋāĻ āĻāĻŽāĻžāĻ° āĻŽāĻ¤ā§ āĻāĻ°ā§āĨ¤ āĻāĻŽāĻžāĻ° āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§ āĻāĻ°āĻ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻžāĻā§ āĻāĻ āĻāĻ¤āĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻāĻ¤ā§āĻ¸ āĻā§āĻĄāĻā§āĻ˛āĻŋāĻ¤ā§ āĻĒā§āĻ°āĻŦā§āĻļ āĻāĻ°āĻ¤ā§ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻĒā§āĻ˛ā§āĻā§ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ˛āĻŋāĻāĻŽ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻ¨āĻžāĻŽ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻāĻžāĻāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋāĨ¤
import speedtest
from datetime import datetime
...
#ĐŖĐēаСŅваĐĩĐŧ ĐēĐžĐŊĐēŅĐĩŅĐŊŅĐš ŅĐĩŅвĐĩŅ Đ´ĐģŅ ŅĐĩŅŅĐ°
#6053) MaximaTelecom (Moscow, Russian Federation)
servers = ["6053"]
# If you want to use a single threaded test
threads = None
s = speedtest.Speedtest()
#ĐŋĐžĐģŅŅĐ°ĐĩĐŧ иĐŧŅ ĐžĐŋĐĩŅĐ°ŅĐžŅĐ° ŅĐžŅОвОК ŅвŅСи
opos = '%(isp)s' % s.config['client']
s.get_servers(servers)
#ĐŋĐžĐģŅŅĐ°ĐĩĐŧ ŅĐĩĐēŅŅОвŅŅ ŅŅŅĐžĐēŅ Ņ ĐŋĐ°ŅĐ°ĐŧĐĩŅŅĐ°Đŧи ŅĐĩŅвĐĩŅĐ°
testserver = '%(sponsor)s (%(name)s) [%(d)0.2f km]: %(latency)s ms' % s.results.server
#ŅĐĩŅŅ СаĐŗŅŅСĐēи
s.download(threads=threads)
#ŅĐĩŅŅ вŅĐŗŅŅСĐēи
s.upload(threads=threads)
#ĐŋĐžĐģŅŅĐ°ĐĩĐŧ ŅĐĩСŅĐģŅŅĐ°ŅŅ
s.results.share()
#ĐĐžŅĐģĐĩ ŅĐĩĐŗĐž ŅĐžŅĐŧиŅŅĐĩŅŅŅ ŅŅŅĐžĐēĐ° Đ´ĐģŅ СаĐŋиŅи в csv-ŅĐ°ĐšĐģ.
#ĐŋĐžĐģŅŅĐ°ĐĩĐŧ ĐŋОСиŅиŅ GPS
longitude, latitude = getPositionData(agps_thread)
#вŅĐĩĐŧŅ и Đ´Đ°ŅĐ°
curdata = datetime.now().strftime('%d.%m.%Y')
curtime = datetime.now().strftime('%H:%M:%S')
delimiter = ';'
result_string = opos + delimiter + str(curpos) + delimiter +
curdata + delimiter + curtime + delimiter + longitude + ', ' + latitude + delimiter +
str(s.results.download/1000.0/1000.0) + delimiter + str(s.results.upload / 1000.0 / 1000.0) +
delimiter + str(s.results.ping) + delimiter + testserver + "n"
#ŅŅŅ идĐĩŅ СаĐŋиŅŅ в ŅĐ°ĐšĐģ ĐģĐžĐŗОв
āĻāĻāĻžāĻ¨ā§āĻ, āĻ¸āĻŦāĻāĻŋāĻā§ āĻāĻ¤ āĻ¸āĻšāĻ āĻ¨āĻ¯āĻŧ, āĻ¯āĻĻāĻŋāĻ āĻāĻāĻŋ āĻ āĻ¨ā§āĻ āĻ¸āĻšāĻ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻšāĻŦā§āĨ¤ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻāĻāĻžāĻŦā§, āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ āĻ¸āĻŽāĻžāĻ¨ āĻāĻŋāĻ˛ [], āĻ¤āĻžāĻ°āĻž āĻŦāĻ˛ā§, āĻ¸ā§āĻ°āĻž āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨. āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻŽāĻžāĻ° āĻāĻ˛ā§āĻŽā§āĻ˛ā§ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻŋāĻ˛ āĻāĻŦāĻ, āĻāĻĒāĻ¨āĻŋ āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻāĻ¤āĻŋāĨ¤ āĻāĻāĻŋ āĻŦā§āĻļ āĻāĻāĻŋāĻ˛ āĻŦāĻŋāĻˇāĻ¯āĻŧ, āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§, āĻ¯āĻĻāĻŋ āĻ¤āĻžāĻ āĻšāĻ¯āĻŧ, āĻ¸ā§āĻĨāĻŋāĻ° āĻŦāĻž āĻāĻ¤āĻŋāĻļā§āĻ˛, āĻāĻŦā§āĻˇāĻŖāĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ Beeline āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒ āĻā§āĻ°āĻžāĻĢā§āĻ° āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻāĻ¨ āĻāĻ¤āĻŋāĻļā§āĻ˛āĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻŋāĻāĻāĻžāĻŦā§ āĻ¸ā§āĻĨāĻŋāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻāĻ¤āĻŋāĻļā§āĻ˛ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒā§āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛āĨ¤
āĻāĻāĻāĻŋ āĻāĻ ā§āĻ°āĻāĻžāĻŦā§ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻŋāĻ¤ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻ¸āĻš āĻāĻ¤āĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛āĨ¤
āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻāĻ¯āĻŧ āĻāĻžāĻ¯āĻŧāĻāĻžāĻ¯āĻŧ "āĻĒāĻļāĻŽ" āĻ°āĻ¯āĻŧā§āĻā§ āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻžāĻŖāĻŋāĻ¤āĻŋāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ
āĻĒāĻ¸āĻžāĻ°āĻŖ āĻāĻ°āĻž āĻĻāĻ°āĻāĻžāĻ°āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻŋ āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯ āĻāĻŽ āĻāĻŦāĻ āĻĒā§āĻ°āĻļāĻ¸ā§āĻ¤āĻ¤āĻž āĻāĻ°āĻ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§āĻ˛āĨ¤
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻŽāĻšāĻžāĻ¨ āĻāĻŦā§āĻˇāĻŖāĻžāĻ° āĻāĻžāĻ¯āĻŧāĻāĻžāĨ¤ āĻāĻŦāĻ āĻāĻŽāĻŋ iperf āĻāĻāĻāĻŋāĻ˛āĻŋāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻŽāĻžāĻ° āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻāĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒ āĻāĻ°āĻŦāĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻ°āĻž āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¤āĻŋāĻāĻ¤ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻ˛āĻžāĻ āĻŋ.
āĻŽā§āĻāĻ˛ ââāĻĒā§āĻ°ā§āĻ°āĻŖ āĻāĻŦāĻ āĻ¤ā§āĻ°ā§āĻāĻŋ
āĻŽā§āĻ˛ āĻĒāĻžāĻ āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻŋ āĻāĻ¯āĻŧā§āĻ āĻĄāĻāĻ¨ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĻāĻŋ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻļā§āĻˇ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻŽāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤āĻā§āĻ˛āĻŋāĻ¤ā§ āĻ¸ā§āĻĨāĻŋāĻ° āĻšāĻ¯āĻŧā§āĻāĻŋāĨ¤ āĻāĻŽāĻŋ āĻāĻ¯āĻŧāĻžāĻ¨āĻĄā§āĻā§āĻ¸ā§ āĻāĻāĻāĻŋ āĻŽā§āĻ˛āĻŦāĻā§āĻ¸ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻ¨ āĻāĻ°ā§āĻāĻŋ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋ
āĻ˛āĻāĻā§āĻ˛āĻŋ āĻ¸āĻŽāĻ¯āĻŧāĻ¸ā§āĻā§ āĻ āĻ¨ā§āĻ¸āĻžāĻ°ā§ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛, āĻ¯āĻĻāĻŋ āĻ¸āĻāĻ¯ā§āĻ āĻĨāĻžāĻā§, āĻĒā§āĻ°āĻ¤āĻŋ 6 āĻāĻ¨ā§āĻāĻž: 00 āĻāĻž, 06 am, āĻĻā§āĻĒā§āĻ° 12 āĻāĻž āĻāĻŦāĻ 18 pm āĻāĨ¤ āĻ¨āĻŋāĻŽā§āĻ¨āĻ°ā§āĻĒ āĻāĻāĻŋ āĻĒāĻžāĻ āĻžāĻ¨.
from send_email import *
...
message_log = "ĐĐžĐŗи ŅĐĩŅŅиŅОваĐŊиŅ ĐŋĐģĐ°ŅŅ â1"
EmailForSend = ["[email protected]", "[email protected]"]
files = ["/home/khadas/modems_speedtest/csv"]
...
def sendLogs():
global EmailForSend
curdata = datetime.now().strftime('%d.%m.%Y')
Ņurtime = datetime.now().strftime('%H:%M:%S')
try:
for addr_to in EmailForSend:
send_email(addr_to, message_log, "ĐĐžĐŗи Са " + curdata + " " + Ņurtime, files)
except:
print("Network problem for send mail")
return False
return True
āĻ¤ā§āĻ°ā§āĻāĻŋāĻā§āĻ˛āĻŋāĻ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻāĻāĻžāĻŦā§ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻļā§āĻ°ā§āĻ¤ā§, āĻ¸ā§āĻā§āĻ˛āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻāĻŽāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛, āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻā§āĻ¨āĻ āĻ¸āĻāĻ¯ā§āĻ āĻĨāĻžāĻāĻ˛ā§ āĻļāĻŋāĻĄāĻŋāĻāĻ˛āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻā§āĻ˛āĻŋ āĻĻā§āĻāĻž āĻĻā§āĻ¯āĻŧ āĻ¯ā§ āĻāĻ¯āĻŧāĻžāĻ¨āĻĄā§āĻā§āĻ¸ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻĻāĻŋāĻ¨ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻŽāĻž āĻ°āĻ¯āĻŧā§āĻā§ (āĻāĻāĻŋ āĻŦā§āĻĻāĻ¨āĻž, āĻĻā§āĻāĻ āĻāĻŦāĻ āĻ āĻĒāĻŽāĻžāĻ¨)āĨ¤ āĻ¯ā§āĻšā§āĻ¤ā§ āĻĒā§āĻ°āĻ¤āĻŋ āĻŽāĻŋāĻ¨āĻŋāĻā§ āĻĒā§āĻ°āĻā§āĻ° āĻĒāĻ°āĻŋāĻŽāĻžāĻŖā§ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¤āĻžāĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻŽā§āĻāĻ˛ā§ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻ¤ā§āĻ¯āĻžāĻ āĻāĻ°āĻ¤ā§ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻ¤āĻžāĻ Yandex āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻžāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¤āĻĨā§āĻ¯ āĻĒāĻžāĻ āĻžāĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨āĨ¤
āĻĢāĻŋāĻĄāĻŦā§āĻ¯āĻžāĻ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°
āĻšāĻžāĻ°ā§āĻĄāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻĻā§āĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ āĻāĻļā§ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻĒā§āĻ¤ā§ āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻžāĻ¸ā§āĻāĻŽāĻžāĻāĻ āĻāĻŦāĻ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻžāĻ° āĻāĻāĻāĻŋ āĻŦāĻšāĻŋāĻ°āĻžāĻāĻ¤ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻāĻŋāĻ˛āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§, āĻ¨ā§āĻ¯āĻžāĻ¯ā§āĻ¯ āĻšāĻ¤ā§, āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĄā§āĻāĻž āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻāĻŦāĻ āĻāĻ¯āĻŧā§āĻŦ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸ā§āĻ¨ā§āĻĻāĻ° āĻā§āĻ°āĻžāĻĢ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻ¸āĻ āĻŋāĻ āĻšāĻŦā§āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŦāĻžāĻ°ā§ āĻ¨āĻ¯āĻŧāĨ¤
VPS āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻŋ āĻŦā§āĻā§ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋ
āĻšāĻžāĻ°ā§āĻĄāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻāĻžāĻ¯ā§āĻā§āĻ° āĻāĻāĻāĻŋ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§, vim2 āĻāĻāĻāĻŋ āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ ssh āĻ¸āĻāĻ¯ā§āĻ āĻŦā§āĻā§ āĻ¨āĻŋāĻ¯āĻŧā§āĻā§ āĻāĻŦāĻ, āĻ¯ā§āĻŽāĻ¨ āĻ
āĻ¨ā§āĻļā§āĻ˛āĻ¨ āĻĻā§āĻāĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§, āĻāĻāĻŋ āĻ¸ā§āĻ°āĻž āĻ¨āĻ¯āĻŧāĨ¤ āĻ¸āĻāĻ¯ā§āĻ āĻšāĻžāĻ°āĻŋāĻ¯āĻŧā§ āĻā§āĻ˛ā§, āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°āĻāĻŋ āĻĒā§āĻ°ā§āĻ āĻ§āĻ°ā§ āĻ°āĻžāĻā§ āĻāĻŦāĻ āĻāĻŋāĻā§ āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻŋāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻž āĻ
āĻ¸āĻŽā§āĻāĻŦāĨ¤ āĻ
āĻ¤āĻāĻŦ, āĻ
āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ¯ā§āĻāĻžāĻ¯ā§āĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻ¨āĻ āĻāĻžāĻ˛, āĻ¯ā§āĻŽāĻ¨ āĻāĻŋāĻĒāĻŋāĻāĻ¨āĨ¤ āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§ āĻāĻŽāĻŋ āĻāĻŋāĻĒāĻŋāĻāĻ¨-āĻ āĻ¸ā§āĻ¯ā§āĻāĻ āĻāĻ°āĻ¤ā§ āĻā§āĻ¯āĻŧā§āĻāĻŋāĻ˛āĻžāĻŽ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻŽāĻ¯āĻŧ āĻĒāĻžāĻāĻ¨āĻŋāĨ¤
āĻāĻŽāĻŋ āĻāĻāĻāĻŋ āĻĢāĻžāĻ¯āĻŧāĻžāĻ°āĻāĻ¯āĻŧāĻžāĻ˛ āĻ¸ā§āĻ āĻāĻĒ, āĻ āĻ§āĻŋāĻāĻžāĻ° āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻāĻ°āĻž, āĻ°ā§āĻ ssh āĻ¸āĻāĻ¯ā§āĻ āĻ¨āĻŋāĻˇā§āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°āĻž āĻāĻŦāĻ āĻāĻāĻāĻŋ VPS āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻā§āĻ°āĻžāĻāĻāĻŽā§āĻ° āĻŦāĻŋāĻļāĻĻ āĻŦāĻŋāĻŦāĻ°āĻŖā§ āĻ¯āĻžāĻŦ āĻ¨āĻžāĨ¤ āĻāĻŽāĻŋ āĻŦāĻŋāĻļā§āĻŦāĻžāĻ¸ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ āĻ¯ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻ¸āĻŦāĻāĻŋāĻā§ āĻāĻžāĻ¨ā§āĻ¨āĨ¤ āĻāĻāĻāĻŋ āĻĻā§āĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻŋ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋāĨ¤
adduser vimssh
āĻāĻŽāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻšāĻžāĻ°ā§āĻĄāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ°ā§ ssh āĻ¸āĻāĻ¯ā§āĻ āĻā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋāĨ¤
ssh-keygen
āĻāĻŦāĻ āĻāĻŽāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻ¤āĻžāĻĻā§āĻ° āĻ āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ.
ssh-copy-id [email protected]
āĻāĻŽāĻžāĻĻā§āĻ° āĻšāĻžāĻ°ā§āĻĄāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ°ā§, āĻāĻŽāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦā§āĻā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧ āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ ssh āĻ¸āĻāĻ¯ā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋāĨ¤
[Unit]
Description=Auto Reverse SSH
Requires=systemd-networkd-wait-online.service
After=systemd-networkd-wait-online.service
[Service]
User=khadas
ExecStart=/usr/bin/ssh -NT -o ExitOnForwardFailure=yes -o ServerAliveInterval=60 -CD 8080 -R 8083:localhost:22 [email protected]
RestartSec=5
Restart=always
[Install]
WantedBy=multi-user.target
āĻĒā§āĻ°ā§āĻ 8083 āĻ āĻŽāĻ¨ā§āĻ¯ā§āĻ āĻĻāĻŋāĻ¨: āĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§ āĻ¯ā§ āĻāĻŽāĻŋ āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ ssh āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻā§āĻ¨ āĻĒā§āĻ°ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦāĨ¤ āĻāĻāĻŋ āĻ¸ā§āĻāĻžāĻ°ā§āĻāĻāĻĒā§ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻļā§āĻ°ā§ āĻāĻ°ā§āĻ¨āĨ¤
sudo systemctl enable autossh.service
sudo systemctl start autossh.service
āĻāĻĒāĻ¨āĻŋ āĻāĻŽāĻ¨āĻāĻŋ āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻžāĻ¸ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
sudo systemctl status autossh.service
āĻāĻāĻ¨, āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻŋāĻĒāĻŋāĻāĻ¸ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§, āĻ¯āĻĻāĻŋ āĻāĻŽāĻ°āĻž āĻāĻžāĻ˛āĻžāĻ:
ssh -p 8083 khadas@localhost
āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻŽāĻŋ āĻāĻŽāĻžāĻ° āĻšāĻžāĻ°ā§āĻĄāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻā§āĻāĻ°āĻž āĻĒā§āĻ¤ā§. āĻāĻŦāĻ āĻšāĻžāĻ°ā§āĻĄāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻĨā§āĻā§ āĻāĻŽāĻŋ āĻāĻŽāĻžāĻ° āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ ssh āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ˛āĻ āĻāĻŦāĻ āĻ¯ā§āĻā§āĻ¨ā§ āĻĄā§āĻāĻž āĻĒāĻžāĻ āĻžāĻ¤ā§ āĻĒāĻžāĻ°āĻŋ, āĻ¯āĻž āĻā§āĻŦāĻ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻāĻ¨āĻāĨ¤
āĻ¸āĻŦāĻā§āĻ˛ā§āĻā§ āĻāĻāĻ¤ā§āĻ°ā§ āĻ°āĻžāĻ
āĻ¸ā§āĻ¯ā§āĻāĻ āĻ
āĻ¨ āĻšāĻā§āĻā§, āĻāĻ° āĻĄā§āĻā§āĻ˛āĻĒāĻŽā§āĻ¨ā§āĻ āĻāĻŦāĻ āĻĄāĻŋāĻŦāĻžāĻāĻŋāĻ āĻļā§āĻ°ā§ āĻāĻ°āĻž āĻ¯āĻžāĻ
āĻāĻĢ, āĻāĻžāĻ˛, āĻāĻāĻžāĻ, āĻāĻŽāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¨ā§āĻĄ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻāĻ¨ āĻāĻāĻž āĻ¸āĻŦ āĻāĻāĻ¸āĻžāĻĨā§ āĻāĻ°āĻž āĻ¸āĻŽāĻ¯āĻŧ. āĻāĻĒāĻ¨āĻŋ āĻā§āĻĄ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻā§āĻĄā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ: āĻāĻ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒāĻāĻŋ āĻāĻāĻžāĻŦā§ āĻļā§āĻ°ā§ āĻ¨āĻžāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻžāĻā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻ¯āĻĻāĻŋāĻ āĻāĻŽāĻŋ āĻ¸ā§āĻ°ā§āĻ¸ āĻā§āĻĄ āĻĻāĻŋāĻā§āĻāĻŋ, āĻ¤āĻŦā§āĻ āĻāĻŽāĻŋ āĻāĻāĻžāĻ¨ā§ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻŽā§āĻ˛ā§āĻ¯āĻŦāĻžāĻ¨ āĻāĻŋāĻ¨āĻŋāĻ¸āĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻŦ, āĻ āĻŋāĻ āĻā§āĻā§āĻ¸āĻā§, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻŦā§āĻ§āĻāĻŽā§āĻ¯ āĻ¨āĻ¯āĻŧāĨ¤
āĻļā§āĻ°ā§āĻ¤ā§, āĻāĻŽāĻŋ āĻāĻŋāĻĒāĻŋāĻāĻ¸, āĻāĻŋāĻĒāĻŋāĻ āĻļā§āĻ°ā§ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ āĻļāĻŋāĻĄāĻŋāĻāĻ˛āĻžāĻ° āĻĨā§āĻ°ā§āĻĄ āĻāĻžāĻ˛ā§ āĻāĻ°āĻŋāĨ¤
#СаĐŋŅŅĐē ĐŋĐžŅĐžĐēĐ° ĐŋĐģĐ°ĐŊиŅОвŅиĐēĐ°
pShedulerThread = threading.Thread(target=ShedulerThread, args=(1,))
pShedulerThread.start()
āĻ¸āĻŽāĻ¯āĻŧāĻ¸ā§āĻā§āĻāĻŋ āĻŦā§āĻļ āĻ¸āĻšāĻ: āĻāĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĒāĻžāĻ āĻžāĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻ¸ā§āĻā§ āĻāĻŋāĻ¨āĻž āĻāĻŦāĻ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻž āĻā§ āĻ¤āĻž āĻĻā§āĻāĻ¤ā§ āĻĻā§āĻāĻžāĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĒāĻ¤āĻžāĻāĻž āĻĨāĻžāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻŽāĻ°āĻž LED āĻŦā§āĻ˛āĻŋāĻā§āĻ āĻāĻ°āĻŋāĨ¤
#sheduler
def ShedulerThread(name):
global ready_to_send
while True:
d = datetime.today()
time_x = d.strftime('%H:%M')
if time_x in time_send_csv:
ready_to_send = True
if error_status:
error_blink()
else:
good_blink()
time.sleep(1)
āĻāĻ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§āĻ° āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻ āĻŋāĻ¨ āĻ āĻāĻļ āĻšāĻ˛ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ ssh āĻ¸āĻāĻ¯ā§āĻ āĻŦāĻāĻžāĻ¯āĻŧ āĻ°āĻžāĻāĻžāĨ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ¯āĻŧ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻā§āĻāĻāĻ¯āĻŧā§ āĻāĻŦāĻ DNS āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻž āĻāĻĄāĻŧāĻŋāĻ¤āĨ¤ āĻ¯ā§āĻšā§āĻ¤ā§ āĻā§āĻāĻ āĻĒāĻĄāĻŧā§ āĻ¨āĻž, āĻā§āĻ¨ā§ āĻ°āĻžāĻā§āĻ¨ āĻāĻžāĻ ā§āĻ° āĻ°ā§āĻ˛ā§ āĻā§āĻ°ā§āĻ¨ āĻāĻĄāĻŧā§ āĻ¨āĻžāĨ¤ āĻ¯ā§ āĻā§āĻ āĻāĻ¸ā§āĻāĻžāĻ° āĻĄāĻŋāĻŽ āĻā§āĻāĻā§ āĻĒāĻžāĻ¯āĻŧ āĻ¸ā§ āĻāĻŋāĻā§ āĻŽāĻŋāĻāĻ°āĻŋ āĻĒāĻžāĻ¯āĻŧāĨ¤
āĻāĻāĻŋ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ āĻ°āĻžāĻāĻāĻŋāĻ āĻā§āĻŦāĻŋāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋ -āĻ¸ā§āĻ-āĻŽāĻžāĻ°ā§āĻ 0x2 āĻāĻŦāĻ āĻā§āĻ°āĻžāĻĢāĻŋāĻ āĻĒā§āĻ¨āĻāĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°āĻžāĻ° āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĨ¤
def InitRouteForSSH():
cmd_run("sudo iptables -t mangle -A OUTPUT -p tcp -m tcp --dport 22 -j MARK --set-mark 0x2")
cmd_run("sudo ip rule add fwmark 0x2/0x2 lookup 102")
āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ āĻāĻŋāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§ āĻ¸ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ āĻāĻžāĻ¨āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻ° āĻĒāĻ°ā§ āĻāĻŽāĻŋ āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻ¤āĻšā§āĻ¨ āĻ˛ā§āĻĒā§ āĻ¯āĻžāĻ, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻžāĻ° āĻāĻŽāĻ°āĻž āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻŽāĻĄā§āĻŽā§āĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒāĻžāĻ (āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻšāĻ āĻžā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻā§āĻāĻā§ āĻŦā§āĻ° āĻāĻ°āĻ¤ā§)āĨ¤
network_list = getNetworklist()
āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ā§āĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻŦā§āĻļ āĻ¸āĻšāĻāĨ¤
def getNetworklist():
full_networklist = os.listdir('/sys/class/net/')
network_list = [x for x in full_networklist if "eth" in x and x != "eth0"]
return network_list
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻāĻŋ āĻĒāĻžāĻāĻ¯āĻŧāĻžāĻ° āĻĒāĻ°ā§, āĻāĻŽāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ā§ āĻāĻāĻĒāĻŋ āĻ āĻŋāĻāĻžāĻ¨āĻž āĻ¸ā§āĻ āĻāĻ°ā§āĻāĻŋ, āĻ¯ā§āĻŽāĻ¨āĻāĻŋ āĻāĻŽāĻŋ āĻŽāĻĄā§āĻŽ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ āĻ§ā§āĻ¯āĻžāĻ¯āĻŧā§āĻ° āĻāĻŦāĻŋāĻ¤ā§ āĻĻā§āĻāĻŋāĻ¯āĻŧā§āĻāĻŋāĨ¤
SetIpAllNetwork(network_list)
def SetIpAllNetwork(network_list):
for iface in network_list:
lastip = "%d" % (3 + network_list.index(iface))
cmd_run ("sudo ifconfig " + iface + " 192.168.8." + lastip +" up")
āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻŽāĻŋ āĻā§āĻŦāĻ˛ āĻāĻāĻāĻŋ āĻ˛ā§āĻĒā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¯āĻžāĻ¨āĨ¤ āĻāĻŦāĻ āĻāĻŽāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻŋāĨ¤
for iface in network_list:
ConfigNetwork(iface)
def ConfigNetwork(iface):
#ŅĐąŅĐ°ŅŅваĐĩĐŧ вŅĐĩ ĐŊĐ°ŅŅŅОКĐēи
cmd_run("sudo ip route flush all")
#ĐаСĐŊĐ°ŅĐ°ĐĩĐŧ ŅĐģŅС ĐŋĐž ŅĐŧĐžĐģŅĐ°ĐŊиŅ
cmd_run("sudo route add default gw 192.168.8.1 " + iface)
#СадаĐĩĐŧ dns-ŅĐĩŅвĐĩŅ (ŅŅĐž ĐŊŅĐļĐŊĐž Đ´ĐģŅ ŅайОŅŅ speedtest)
cmd_run ("sudo bash -c 'echo nameserver 8.8.8.8 > /etc/resolv.conf'")
āĻāĻŽāĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸āĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻŋ, āĻ¯āĻĻāĻŋ āĻā§āĻ¨āĻ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻ¨āĻž āĻĨāĻžāĻā§ āĻ¤āĻŦā§ āĻāĻŽāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋāĨ¤ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻĨāĻžāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻāĻŋ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ!
āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻŋ āĻāĻ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ā§ ssh āĻ°āĻžāĻāĻāĻŋāĻ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻŋ (āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻāĻ°āĻž āĻ¨āĻž āĻšāĻ¯āĻŧā§ āĻĨāĻžāĻā§), āĻ¸āĻŽāĻ¯āĻŧ āĻšāĻ˛ā§ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĒāĻžāĻ āĻžāĻ¨, āĻ˛āĻ āĻĒāĻžāĻ āĻžāĻ¨ āĻāĻŦāĻ āĻ āĻŦāĻļā§āĻˇā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻĒāĻŋāĻĄāĻā§āĻ¸ā§āĻ āĻāĻžāĻ˛āĻžāĻ¨ āĻāĻŦāĻ āĻ˛āĻāĻā§āĻ˛āĻŋāĻā§ āĻāĻāĻāĻŋ csv āĻĢāĻžāĻāĻ˛ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻŋāĨ¤
if not NetworkAvalible():
....
#ĐĐ´ĐĩŅŅ ĐŧŅ ŅĐžŅĐŧиŅŅĐĩĐŧ ĐžŅийĐēи
....
else: #ĐŅŅŅ ŅĐĩŅŅ, ŅŅĐ°, ŅайОŅĐ°ĐĩĐŧ!
#ĐŅĐģи Ņ ĐŊĐ°Ņ ĐŋŅОйĐģĐĩĐŧĐŊŅĐš иĐŊŅĐĩŅŅĐĩĐšŅ, ĐŊĐ° ĐēĐžŅĐžŅĐžĐŧ ssh, ŅĐž ĐŧĐĩĐŊŅĐĩĐŧ ĐĩĐŗĐž
if (sshint == lastbanint or sshint =="free"):
print("********** Setup SSH ********************")
if sshint !="free":
Ņmd_run("sudo ip route del default via 192.168.8.1 dev " + sshint +" table 102")
SetupReverseSSH(iface)
sshint = iface
#ŅаС ŅĐĩŅĐēĐ° ŅайОŅĐ°ĐĩŅ, ŅĐž даваК ŅŅĐžŅĐŊĐž вŅĐĩ ĐžŅĐŋŅавиĐŧ!!!
if ready_to_send:
print ("**** Ready to send!!!")
if sendLogs():
ready_to_send = False
if error_status:
SendErrors()
#и Đ´Đ°ĐģĐĩĐĩ ŅĐĩŅŅиŅŅĐĩĐŧ ŅĐēĐžŅĐžŅŅŅ и ŅĐžŅ
ŅĐ°ĐŊŅĐĩĐŧ ĐģĐžĐŗи.
āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ ssh āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻžāĻ° āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻžāĻ° āĻŽāĻ¤ā§āĨ¤
def SetupReverseSSH(iface):
cmd_run("sudo systemctl stop autossh.service")
cmd_run("sudo ip route add default via 192.168.8.1 dev " + iface +" table 102")
cmd_run("sudo systemctl start autossh.service")
āĻāĻŦāĻ āĻ āĻŦāĻļā§āĻ¯āĻ, āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸ā§āĻāĻžāĻ°ā§āĻāĻāĻĒā§ āĻāĻ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸ā§āĻ¨ā§āĻĻāĻ°ā§āĻ¯ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻāĻŋ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻŋ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋ:
sudo vim /etc/systemd/system/modems_speedtest.service
āĻāĻŦāĻ āĻāĻŽāĻŋ āĻāĻ¤ā§ āĻ˛āĻŋāĻāĻŋ:
[Unit]
Description=Modem Speed Test
Requires=systemd-networkd-wait-online.service
After=systemd-networkd-wait-online.service
[Service]
User=khadas
ExecStart=/usr/bin/python3.6 /home/khadas/modems_speedtest/networks.py
RestartSec=5
Restart=always
[Install]
WantedBy=multi-user.target
āĻāĻŽāĻŋ āĻ āĻā§āĻ˛ā§āĻĄāĻŋāĻ āĻāĻžāĻ˛ā§ āĻāĻŦāĻ āĻļā§āĻ°ā§!
sudo systemctl enable modems_speedtest.service
sudo systemctl start modems_speedtest.service
āĻāĻāĻ¨ āĻāĻŽāĻŋ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻŋ āĻāĻāĻā§ āĻ¤āĻžāĻ° āĻ˛āĻ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ°āĻŋ:
journalctl -u modems_speedtest.service --no-pager -f
Đ ĐĩСŅĐģŅŅĐ°ŅŅ
āĻāĻā§āĻāĻž, āĻāĻāĻ¨ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻŦāĻŋāĻˇāĻ¯āĻŧ āĻšāĻ˛, āĻāĻ° āĻĢāĻ˛ā§ āĻā§ āĻšāĻ˛? āĻāĻāĻžāĻ¨ā§ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻā§āĻ°āĻžāĻĢ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻāĻŽāĻŋ āĻŦāĻŋāĻāĻžāĻļ āĻāĻŦāĻ āĻĄāĻŋāĻŦāĻžāĻāĻŋāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ˛āĻžāĻāĻžāĻ˛ā§āĻ¨ āĻā§āĻ¯āĻžāĻĒāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒā§āĻ°ā§āĻāĻŋāĨ¤ āĻ¨āĻŋāĻā§āĻ° āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻā§āĻ° āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ā§ gnuplot āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻā§āĻ°āĻžāĻĢ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
#! /usr/bin/gnuplot -persist
set terminal postscript eps enhanced color solid
set output "Rostelecom.ps"
#set terminal png size 1024, 768
#set output "Rostelecom.png"
set datafile separator ';'
set grid xtics ytics
set xdata time
set ylabel "Speed Mb/s"
set xlabel 'Time'
set timefmt '%d.%m.%Y;%H:%M:%S'
set title "Rostelecom Speed"
plot "Rostelecom.csv" using 3:6 with lines title "Download", '' using 3:7 with lines title "Upload"
set title "Rostelecom 2 Ping"
set ylabel "Ping ms"
plot "Rostelecom.csv" using 3:8 with lines title "Ping"
āĻĒā§āĻ°āĻĨāĻŽ āĻ āĻāĻŋāĻā§āĻāĻ¤āĻžāĻāĻŋ āĻāĻŋāĻ˛ āĻā§āĻ˛āĻŋ 2 āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§, āĻ¯āĻž āĻāĻŽāĻŋ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻ āĻĻāĻŋāĻ¨ āĻ§āĻ°ā§ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°ā§āĻāĻŋāĨ¤
āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻŋ āĻāĻāĻāĻŋ āĻāĻ¤āĻŋāĻļā§āĻ˛ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒ āĻāĻžāĻ āĻāĻ°ā§, āĻ¤āĻŦā§ āĻā§āĻŦ āĻŦā§āĻļāĻŋ āĻāĻ āĻžāĻ¨āĻžāĻŽāĻž āĻāĻ°ā§, āĻ¤āĻŦā§ āĻāĻŋāĻā§ āĻāĻĄāĻŧ āĻŽāĻžāĻ¨ āĻāĻāĻ¨āĻ āĻĻā§āĻļā§āĻ¯āĻŽāĻžāĻ¨, āĻāĻŦāĻ āĻāĻāĻŋ āĻĄā§āĻāĻž āĻĢāĻŋāĻ˛ā§āĻāĻžāĻ° āĻāĻ°ā§ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻ˛āĻŽāĻžāĻ¨ āĻāĻĄāĻŧ āĻ¸āĻšāĨ¤
āĻĒāĻ°ā§ āĻāĻŽāĻŋ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻā§āĻ˛āĻŋāĻāĻŽ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻā§āĻ°āĻžāĻĢ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻŋāĻ˛, āĻāĻŦāĻ āĻĢāĻ˛āĻžāĻĢāĻ˛āĻā§āĻ˛āĻŋāĻ āĻā§āĻŦ āĻāĻāĻ°ā§āĻˇāĻŖā§āĻ¯āĻŧ āĻāĻŋāĻ˛āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻā§āĻ¨, āĻāĻ āĻĄā§āĻāĻžāĻ° āĻāĻŦā§āĻˇāĻŖāĻž āĻāĻŦāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻāĻŋ āĻā§āĻŦāĻ āĻŦāĻŋāĻ¸ā§āĻ¤ā§āĻ¤, āĻāĻŦāĻ āĻ¸ā§āĻĒāĻˇā§āĻāĻ¤āĻ āĻāĻ¯āĻŧā§āĻ āĻ¸āĻĒā§āĻ¤āĻžāĻšā§āĻ° āĻāĻžāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻĨāĻžāĻ¯āĻŧā§ āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§âĻ
āĻāĻžāĻā§āĻ° āĻĢāĻ˛
āĻāĻŽāĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖā§āĻ° āĻŦāĻžāĻāĻ°ā§ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ° āĻāĻžāĻ°āĻŖā§ āĻāĻžāĻāĻāĻŋ āĻšāĻ āĻžā§ āĻāĻ°ā§āĻ āĻļā§āĻˇ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻāĻ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§āĻ° āĻĻā§āĻ°ā§āĻŦāĻ˛āĻ¤āĻžāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ, āĻāĻŽāĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻāĻ¤ āĻŽāĻ¤āĻžāĻŽāĻ¤, āĻŽāĻĄā§āĻŽ āĻāĻŋāĻ˛, āĻ¯āĻž āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻŽāĻĄā§āĻŽā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻ¯ā§āĻā§ āĻāĻžāĻ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¯āĻŧ āĻ¨āĻž āĻāĻŦāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻžāĻ° āĻāĻāĻŋ āĻ˛ā§āĻĄ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻā§āĻļāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻāĻŋāĻ˛āĨ¤ āĻāĻ āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ā§, āĻĒā§āĻ°āĻā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻŽāĻĄā§āĻŽ āĻŽāĻĄā§āĻ˛ āĻ°āĻ¯āĻŧā§āĻā§; āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ¸ā§āĻā§āĻ˛āĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ Mini PCI-e āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻā§ āĻĨāĻžāĻā§ āĻāĻŦāĻ āĻĄāĻŋāĻāĻžāĻāĻ¸ā§āĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻž āĻĨāĻžāĻā§ āĻāĻŦāĻ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻž āĻ āĻ¨ā§āĻ āĻ¸āĻšāĻāĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻž āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻŋāĻ¨ā§āĻ¨ āĻāĻ˛ā§āĻĒāĨ¤ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒāĻāĻŋ āĻāĻāĻ°ā§āĻˇāĻŖā§āĻ¯āĻŧ āĻāĻŋāĻ˛ āĻāĻŦāĻ āĻāĻŽāĻŋ āĻāĻ¤ā§ āĻ āĻāĻļ āĻ¨āĻŋāĻ¤ā§ āĻĒā§āĻ°ā§āĻāĻŋ āĻŦāĻ˛ā§ āĻāĻŽāĻŋ āĻā§āĻŦ āĻāĻ¨āĻ¨ā§āĻĻāĻŋāĻ¤āĨ¤
āĻāĻ¤ā§āĻ¸: www.habr.com