1. 개요
작은 사이즈에 다양한 센서를 내장하고 있으며, 5*5 풀컬러 RGB 매트릭스로 멋진 표현이 가능합니다. 블록클리 기반의 Easy Blocks을 이용하여 센서 제어 및 IoT 복잡한 코딩도 손쉽게 가능하여 손쉽게 사물 인터넷 구축이 가능합니다. 물론 엔트리도 지원합니다.
간편한 조립성과 쌓으면 기능이 추가되는 쉴드 보드를 통해 확장이 가능하며 커넥터 방식의 센서 연결로 손쉽게 센서 연결이 가능합니다.


작은 사이즈에 다양한 센서를 내장하고 있으며, 5*5 풀컬러 RGB 매트릭스로 멋진 표현이 가능합니다. 블록클리 기반의 Easy Blocks을 이용하여 센서 제어 및 IoT 복잡한 코딩도 손쉽게 가능하여 손쉽게 사물 인터넷 구축이 가능합니다. 물론 엔트리도 지원합니다.
간편한 조립성과 쌓으면 기능이 추가되는 쉴드 보드를 통해 확장이 가능하며 커넥터 방식의 센서 연결로 손쉽게 센서 연결이 가능합니다.

헥사보드 언박싱 영상입니다.

1. 소프트웨어 실행
헥사보드는 블록클리 기반의 Easy Blocks로 프로그래밍을 합니다.
Easy Blocks는 아래 링크로 접근합니다.
아래 사진처럼 보드 선택에 헥사보드가 표시되어 있어야 합니다. ESP32라고 표시가 되면, 빨간 사각형의 보드선택을 클릭하면 열리는 보드 선택 창에서 헥사보드를 선택해 줍니다.

2. USB 드라이버 설치
헥사보드는 CH340 드라이버를 사용합니다. 많이 사용하는 USB 드라이버이니 이미 설치되어 있는 분들은 설치하지 않으셔도 됩니다.
미설치된 컴퓨터는 USB Driver 설치를 클릭하여 파일을 다운 받은 후 설치를 진행합니다.

3. 헥사보드 연결
헥사보드를 컴퓨터와 USB 케이블로 연결한 뒤, 연결하기를 클릭하여, 연결된 헥사보드를 선택한 후 연결을 클릭하면, ' USB가 연결되었습니다.' 라는 안내 메세지가 나오며 연결이 됩니다.

4. 코드 작성
코드 작성은 일반적인 블록코딩과 같습니다. 좌측의 카테고리에서 명령 블록을 작업 화면으로 이동하여 연결합니다.
5. 업로드
오른쪽 상단의 업로드 버튼을 누르면 업로드가 완료됩니다.
6. 파이썬으로 보기
‘< > ‘를 클릭하면 블록으로 작성된 코드를 파이썬으로 볼 수 있습니다.

7. 시리얼데이터
USB 케이블로 데이터를 송수신할 수 있습니다.

8. 블루투스 데이터
무선으로 데이터를 송수신할 수 있습니다.

9. 인공지능(AI)
티처블머신 연동하여 인공지능 코딩을 할 수 있습니다.

10. 도움말
폄웨어 설치 방법 안내 및 설치 프로그램 다운로드, 프로젝트 예제, 블록 설명 등 도움말을 볼 수 있습니다.

1. 소프트웨어 실행
헥사보드는 블록클리 기반의 Easy Blocks로 프로그래밍을 합니다..
Easy Blocks는 아래 링크로 접근합니다..
아래 사진처럼 앱스토어에서 EasyBlocks를 검색한 후 설치해주세요.
설치가 완료되면 앱을 실행하여 준비를 마칩니다!


2. 헥사보드 연결
헥사보드를 태블릿과 USB 케이블로 연결하면 다음 메시지가 나타납니다.

3. 코드 작성
코드 작성은 일반적인 블록코딩과 같습니다. 좌측의 카테고리에서 명령 블록을 작업 화면으로 이동하여 연결합니다.
4. 업로드
오른쪽 상단의 업로드 버튼을 누르면 업로드가 완료됩니다.

5. 파이썬으로 코드 보기
'<>' 를 클릭하면 블록으로 작성된 코드를 파이썬으로 볼 수 있습니다.

6. 시리얼 모니터
시리얼 데이터를 받거나 보낼 수 있습니다.

7. 도움말
폄웨어 설치 방법 안내 및 설치 프로그램 다운로드, 프로젝트 예제, 블록 설명 등 도움말을 볼 수 있습니다.

헥사보드 펌웨어 업데이트는 아래의 경우에 사용합니다.
1. 사용 중 오류가 계속 나서 초기화 하고 싶다.
2. 새로운 기능이 추가되어 업데이트가 필요한 경우
3. 엔트리 소프트웨어를 사용하고자 할 때
4. 엔트리 사용 후 다시 Easy Blocks를 사용하고자 할 때
업데이트 후에는 PC와의 연결을 해제하였다가 다시 연결을 합니다.
Easy Blocks 우측에서 도움말(?) 클릭 후 '1. 펌웨어 설치 방법'을 클릭합니다.


EasyFirmware를 클릭하여 펌웨어 업로드 소프트웨어를 실행합니다.



Easy Blocks는 Blockly를 기반으로 제작되었습니다.
일반적인 블록코딩 소트프웨어와 사용법이 비슷하며, 블록에 항목을 추가하는 방법이 좀 다릅니다.
아래 사진처럼 기어 모양의 '설정'을 클릭하면 추가할 수 있는 항목이 왼쪽에 나오고, 이 추가 블록을 오른쪽으로 붙여다 놓으면 항목이 계속 늘어나게 됩니다. 삭제하려면 왼쪽으로 버리면 됩니다. 완료가 되면, '설정'을 다시 클릭하면 없어집니다. 항목을 줄이고 싶으면 '설정'을 클릭하고 다시 왼쪽으로 옮기면 없어집니다.
문자열, 리스트, 함수 등은 이렇게 항목을 추가, 제거할 수 있습니다.

특히, 문자열의 경우 '출력하기' 명령 한 개는 한 줄에 표시 되기 때문에 자신이 보기 편한대로 추가하여 사용하면 좋습니다.



헥사보드는 5*5의 풀컬러 LED 매트릭스를 가지고 있어 다양한 표현이 가능합니다.
문자를 출력할 수도 있고(영어만 가능), 원하는 위치의 LED에 색상을 지정하여 다양하고 예쁜 이모티콘을 만들 수 있습니다.
또한, RGB LED를 연결하여 제어도 가능합니다.
1. 기본 동작
아래처럼 코드를 작성한 후, 동작을 확인해 보겠습니다.
LOVE 문자열을 슬라이드 하고,
LOVE 각각의 문자를 1초씩 출력한 뒤
파란색의 웃는 얼굴을 보여주고
녹색 바탕에 핑크색 하트를 깜빡여 봅니다.
문자열 슬라이드는 첫 글자도 슬라이드 되도록 한 칸을 띄운 뒤 글자를 쓰면 좋습니다. -> ' LOVE'




헥사보드는 제법 큰 소리를 낼 수 있는 부저가 장착되어 있습니다.
아래 블럭을 이용하여 음악을 연주할 수 있습니다.

[ 악보 출처 - https://blog.naver.com/soundleaders/223252317300 ]


1. Data 기능 사용하기
헥사보드의 내,외부 센서들의 입력값을 엑셀파일로 저장하고 그래프로 표시할 수 있습니다.
그래프는 이미지로 다운로드가 가능합니다.


컴퓨터와 연결되어 Data를 주고 받을 수 있습니다.
1. Serial Data
헥사보드로부터 전달받는 Data 를 표시합니다. 내장된 자이로 센서를 이용하여 좌우로 기울어지는 각도값을 표시하여 봅니다.

2. Send Data
간단하게 입력된 값을 표시해보고 전달 받은 LED 색상을 켜보는 코드입니다.
시리얼로 보내는 데이터는 꼭 문자로 표시하여야 합니다. Send Data를 숫자로 입력해도 역시 숫자가 아닌 문자로 전송됩니다.


티처블 머신을 활용하여 인공지능 활용 코딩을 할 수 있습니다. 시리얼 통신으로 학습 결과값을 받기 때문에 인공지능을 사용하기 위해서는 헥사보드와 컴퓨터가 USB케이블로 연결 되어 있어야 합니다.
1. 코드 작성 및 업로드
펜을 보여주면 연두색, 센서을 보여주면 노란색을 켜도록 간단한 코드를 작성해 보았습니다. 작성 후 헥사보드에 업로드 합니다.
시리얼로 보내는 데이터는 'String(문자열)'로 오기 때문에 '빨강', '파랑', '노랑'은 문자로 넣어주셔야 합니다. 1, 2 같은 숫자도 문자로 전송이 되니 꼭 문자로 입력을 해주세요.

2. 티처블 머신 학습 및 업로드 후 링크 가지고 오기




헥사보드는 WiFi을 지원합니다.
인터넷으로 연결되어 인터넷에 있는 정보를 가지고 올 수 있는데, 가장 대표적인 시간을 가지고 와서 시계를 만들어 봅니다.
아래 코드 중 빨간 사각형의 빈 문자열은 글자는 없지만 2칸을 띄운 공백이 있습니다.
처음 나오는 시간의 숫자가 너무 빨리 지나가서 넣었습니다^^

헥사보드는 다른 헥사보드와 서로 통신을 할 수 있습니다.
2개의 헥사보드로 간단하게 송신측에서 A버튼, B버튼을 누르면 수신측에서 LED로 A, B를 출력해 보겠습니다.
1. 송신하기



블루투스 연결을 위한 프로그램을 작성해보겠습니다.

이제 별도의 앱 없이, EasyBlock만으로 블루투스 데이터를 주고받을 수 있어요!
먼저 ‘블루투스’ 메뉴를 클릭한 다음, ‘블루투스 연결’ 버튼을 눌러 연결을 시작해보겠습니다.

버튼을 누르면, 페어링이 가능한 헥사보드가 보여요! 해당 장치를 누르고 ‘페어링’을 클릭해 주세요!

‘시리얼/블루투스 데이터’를 열고, 프로그래밍한 ‘노랑’이나 ‘초록’을 입력해볼까요?
헥사보드가 입력한 색깔에 맞춰 네오픽셀이 반짝이며 빛을 냅니다!

블루투스가 제대로 연결되었는지 확인할 수 있도록, 연결 상태를 디스플레이에 표시해볼까요?
연결이 완료되면, 블루투스를 통해 받은 데이터를 바탕으로 헥사보드에서 음악이 연주되도록 프로그래밍할 수 있어요.

헥사보드에는 3개의 I/O핀과 1개의 I2C핀이 있어 다양한 외부 센서를 연결하여 사용할 수 있습니다.
배터리 쉴드보드에는 3개의 I/O핀과 1개의 I2C핀, 모터 쉴드보드에는 DC모터 2개, 서보모터 2개의 커넥터가 있습니다.
온습도센서를 PIN1에 연결합니다.
온도, 습도 변수를 만들고, 각각 연결된 PIN1 을 적어줍니다. 출력하기는 한 줄로 나오게 하는 것이 보기 편한 것 같습니다.^^

토양수분 센서를 PIN2에 연결합니다. 토양수분 센서는 아날로그 값으로 0~4095값이 들어옵니다. 이 값으로 수분값을 알아보기가 어려우니 Map 함수를 이용하여 백분율로 바꾸어 줍니다.
물 대신 물티슈를 이용하여 값을 측정해봅니다. 아래 사진을 보면 물티슈로 감쌌을 때 1860 정도, 그냥 대기 중에 있을 때의 값이 3600 정도로 나오네요. 수분이 많을 수록 값이 작습니다.
%는 당연히 안맞겠지요^^




1602 LCD을 I2C 커넥터에 연결합니다. 케이블의 색상은 아래 사진처럼 연결합니다. 일반적으로 많이 사용하는 것은 5V 용이여서 3.3V용 LCD를 사용하셔야 합니다.







DC모터를 사용하기 위해서는 모터 쉴드 보드가 필요합니다.
모터 쉴드 보드 살펴보기 -> https://happycreative.co.kr/manual/detail.php?idx=55#773
서보모터를 사용하기 위해서는 모터 쉴드 보드가 필요합니다.
모터 쉴드 보드 살펴보기 -> https://happycreative.co.kr/manual/detail.php?idx=55#773
수위센서는 아두이노에서 많이 사용하는 센서를 사용해 보겠습니다.
'헥사보드 아두이노 센서 연결 케이블'을 이용하여 극성에 맞게 연결합니다.



Blynk는 IoT 를 매우 쉽게 운용할 수 있는 환경을 지원하는 플랫폼으로 PC 및 모바일 모두 지원합니다.
무료버전은 사용할 수 있는 기능의 한계가 있지만, 교육용으로는 매우 훌륭한 퍼포먼스를 보여줍니다. 회원가입이 필요하여 교육 전 회원 가입을 위한 e-mail를 개별 준비합니다.
현재(240129) 무료버전은 아래와 같이 사용할 수 있습니다. 템플릿 당 5개의 데이타스트림을 쓸 수 있으니 무료버전으로도 충분히 교육이 가능합니다.^^



Blynk를 이용하는 기본 순서는
템플릿 생성 -> 디바이스 설정 -> 데이타스트림 설정 -> 웹 대시보드 설정 -> 헥사보드 코드 작성 및 업로드 (이 작업은 먼저 해도 됩니다^^)입니다.
정확한 표현은 아닐 수 있으나, 템플릿과 디바이스 설정은 Blynk에 가상의 보드를 만든다고 생각하고, 데이타스트림은 가상핀에 입출력 데이터를 부여하는 것, 웹 대시보드는 이 데이터를 시각적으로 보거나 제어할 수 있는 위젯을 설정하는 것입니다. 즉, 우리가 보드에 입출력 장치를 케이블로 연결하고 코드들 작성하여 동작하는 것 처럼, Blynk에 만들어진 가상의 보드에 코드를 작성하고(데이타스트림), 입출력 장치를 연결하는 작업(웹 대시보드)과 비슷하다고 생각하면 될 듯 합니다.^^
설명은무료버전으로 PC를 위주로 하였습니다. 교육 환경에 PC와 스마트기기 2개 모두 준비하는 것이 어려울 수 있고, 사용방법이 거의 비슷하기 때문입니다. PC에서 데이터스트림까지 작성된 경우는 위젯만 해주시면 됩니다.
Blynk 기본 사용법입니다.
아래 버튼을 눌러 PPT를 확인하세요~
배터리 모듈은 헥사보드에 전원을 공급하는 것 이외에 3개의 I/O핀과 1개의 I2C 핀이 있어 추가 외부 센서 연결이 가능합니다.
배터리 용량은 240mAh 입니다.


모터 쉴드보드는 각각 2개의 DC모터와 서보모터를 제어할 수 있습니다.

헥사보드와 연결커넥터를 이용하여 쉽게 조립이 가능합니다.
배터리 모듈과도 같이 연결이 가능합니다.

1. 헥사보드

2. 센서

3. 네오픽셀

4. OLED

5. 무선통신
헥사보드 기본 코딩 교육과정입니다.
클릭하면 전체 교육과정을 한눈에 확인할 수 있습니다.
헥사보드 필수 교안
헥사보드와 블록코딩 도구인 이지블록스에 대해 학습할 수 있습니다.
헥사보드 기본 교안
PPT 1개당 2차시로 구성된 기본 교육 과정입니다.
헥사보드 심화 교안
기본 교안을 이수한 후 학습할 수 있는 심화 과정입니다.
헥사보드 미니게임
헥사보드를 활용하여 즐길 수 있는 코딩 기반 게임입니다.
강사님이 공유해주신 초등학생 대상 12차시(2차시=1회) 수업에 활용되었던 PPT입니다.
4~6학년 활용이 가능할 것 같습니다.
기본 폼으로 간략하게 되어 있기에 예시 표현 등 다양하고 재미있는 내용을 추가하시면서 사용하시면 좋을 것 같습니다.
헥사보드 스마트 워치는 헥사보드와 배터리 모듈을 연결하고, 나토 스트랩으로 손목에 찰 수 있도록 구성하였습니다.
이제 다양한 콘텐츠를 시작해 볼까요?^^
1. 스마트워치 만들기


스마트워치를 손에 쥐고 운동하면서 윗몸 일으키기 횟수를 측정해 보는 프로젝트입니다.
1. 온도, 습도, 토양수분 모니터링 및 토양수분 부저 제어/ 토양수분 부족 웹/앱 알림

2. 온도, 습도, 토양수분 모니터링 및 RGB LED 제어/ 토양수분 부족 웹/앱 알림

신호등 모드와 보안 모드 2가지가 있습니다.
Blynk는 선택사항으로 난이도를 조절할 수 있습니다.
라인트레킹센서(적외선)와 초음파센서를 활용한 DIY 자동차입니다.
라인트레킹센서로 라인트레이서 코딩, 초음파 센서로 물체 감지 동작, 블루투스로 무선 조종에 대한 코딩 학습을 할 수 있습니다.
조립하기
간편하게 조립하여 사용할 수 있는 헥사보드 DIY 자동차입니다.
아래 버튼을 클릭하시면 조립 매뉴얼을 보실 수 있습니다.


초음파 센서를 이용한 거리 측정 활동을 통해 센서 제어와 프로그래밍을 함께 학습할 수 있습니다.
