(Phòng chống) Nghệ thuật hắc ám với ESP8266 - Phần 5: Bầu ơi thương lấy Bí cùng với ESP32

Mô tả dự án: 

Bài trước tui đã hướng dẫn các bạn hô biến chiếc Casio huyền thoại thành thiết bị nhận phao wifi từ xa để thủ khoa đại học. Thể theo truyền thống "Bầu ơi thương lấy Bí cùng" của người Việt Nam chúng ta, các bạn sau khi chắc chắn 100% thủ khoa thì cũng nên ra tay nghĩa hiệp giúp đỡ các đồng môn trong thi trường hoàn thành bài thi đại học. Vì vậy, trong bài này, tui sẽ hướng dẫn các bạn làm một bộ đàm Casio để liên lạc thả thính trong phòng thi. Lưu ý là các bạn nên chế cháo cẩn thận, chớ nên buôn bán thiết bị nếu không muốn bị Công An gõ cửa hỏi thăm.

Nguyên lý

Đây là Bí

  • Bí ham chơi nên bị bí.
  • Bí tìm được bí kíp nhận phao Casio từ trang arduino.vn.
  • Bí bí mật dùng Casio có gắn ESP8266 và relais.
  • Casio của Bí có server để làm receiver.
  • Đừng như Bí.

Đây là Bầu

  • Bầu là thủ khoa nên rất tỉnh đẹp trai.
  • Bầu chỉ dùng Casio và ESP32.
  • Bầu không chơi relais
  • Casio của Bầu làm client để làm transmitter.
  • Hãy như Bầu.

Theo tình huống thì Bầu sẽ gửi phao đến Bí

Về phần máy Casio để nhận phao (của Bí) thì chúng ta sẽ tận dụng phương án như bài trước, nghĩa là dùng relais để kết nối tiếp điểm giữa các test point để giả lập nút bấm, sau đó tạo 1 web socket server để nhận phao.

Về phần máy Casio để gửi phao (của Bầu) thì chúng ta cần thay đổi nguyên lý hack. Ta sẽ dùng chức năng mới toanh của ESP32, đó là capacitive touch sensor.

Các bạn dùng mũi hàn chọc thủng các phím số rồi luồn dây đồng ra mặt trước. Dùng băng keo cố định mặt sau lại:

Dùng ống co để các dây đồng khỏi chạm nhau:

Như vậy mặt bàn phím sẽ có các sợi dây đồng làm cảm biến:

Tiếp đến các bạn nối các dây với chân touch sensor T0, T1, ... T9: 

(Nguồn: http://www.ayarafun.com/2016/12/capacitive-touch-with-node32s-esp32/)

Khi các bạn chạm vào bàn phím thì các giá trị đọc sẽ giảm xuống còn khoàng 20, và viêc còn lại là gửi message đến web server.

int key_5 = touchRead(T5);

if (key_5 < 20) {client.println("GET /?sCmd=FUNCTION5ON  HTTP/1.1\r");}

 

Code thoai

Các bạn vào git của tui tải 2 tập tin binary Casio_client.ino.esp32.bin và Casio_server.ino.nodemcu.bin về

Với ESP8266 thì các bạn vào git của ESP8266 để tải chương trình flasher về. Sau đó mở flasher và nhập đường dẫn của Casio_servier.ino.nodemcu.bin:

Với ESP32 thì các bạn làm tương tự, vào trang download flasher để tải flasher Flash Download Tools V3.4.4 (ESP8266 & ESP32) về: (nguồn http://iot-bits.com/esp32/esp32-flash-download-tool-tutorial/)

2) Đường dẫn tập tin mà  Casio_client.ino.esp32.bin các bạn vừa tải về .

3) Tần số thạch anh trên ESP32 của các bạn.

4) Tốc độ SPI flash; 80MHz.

8) Cổng COM và baud rate. Các bạn có thể dùng Arduino IDE để kiểm tra các thông số này.

11) Kích thước bộ nhờ flash. Thông thường là 32MBit

Sau đó bấm "5" để nạp tập tin binary.

Demo

Bình luận

Chúng ta đã thấy ESP8266 và ESP32 là 1 combo hắc ám thế nào rồi đó. Vì ESP32 sở hữu số chân ADC khá lớn nên việc đọc nút bấm của Casio trở nên khả dĩ, khiến cho việc ném phao ngay trong phòng thi trở thành việc không mấy khó khăn, và việc gian lận học hành càng trở nên dễ dàng hơn bao giờ hết. Một trò hắc ám khác với ESP32 đó là kết nối với internet qua wifi của điện thoại 3G rồi ngồi trong phòng thi bấm casio gửi đề ra ngoài cho người khác giải. Cho dù trường thi có canh gác cẩn mật bao nhiêu thì 15 phút sau khi phát đề là toàn thế giới có thể biết chuyện gì đang xảy ra.

Tuy nhiên, ta cũng có thể xoay vấn đề theo chiều hướng tích cực hơn. Thay vì nộp kết quả bài thi trên giấy, thí sinh chỉ cần kết nối máy casio của mình với 1 máy chủ nào đó trong trường thi, bấm kết quả bài làm. Sau khi hết thời gian thi thì kết quả đúng sai sẽ được thông báo lập tức, tiết kiệm rất nhiều thời gian và ngân sách quốc gia để thuê giáo viên rọc phách chấm bài. Không trị được lũ thì chúng ta sẽ phải học cách sống chung với lũ. 

Dù tốt hay xấu, ta phải nhìn nhận 1 điều là cuộc cách mạng Internet của Vạn Vật sẽ làm xáo trộn cuộc sống của ta đến 1 cách không ngờ. Việc chiếc Casio nhỏ bé bỗng nhiên có khả năng kết nối Internet có thể sẽ làm một số thứ bỗng chốc biến mất như nghề gác thi, nghề chấm thi, thậm chí là cả việc thi cử với giấy bút truyền thống. Vì vậy các bạn trẻ hãy chuẩn bị cho mình các kiến thức thật vững chắc, nhưng cũng phải cần linh động để không bị đào thải trong kỷ nguyên số này.

Và như thường lệ, vì vấn đề nhạy cảm nên Vechai tui sẽ không đưa lên source code, và chương trình sẽ tự động hết hạn sử dụng trong vài phút.    

Gợi ý nâng cao

  • Một số module breakout esp32 sẽ không dùng được chân T1 và T2. Các bạn có thể nối các chân touch sensor theo dạng ma trận để đọc được nhiều nút bấm hơn.
  • Các bạn có thể lập trình bàn phím kiểu điện thoại ngày xưa để gửi ký tự tin nhắn:

  • Dĩ nhiên là bạn có thể chế chiếc Casio của mình thành chiếc remote điều khiển máy lạnh, đèn nhà, drone....
  • Việc dùng websocket khá chậm, các bạn có thể chuyển qua UART bluetooth giữa 2 module ESP32 cho nhanh.
lên
11 thành viên đã đánh giá bài viết này hữu ích.
Từ khóa: 
Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Arduino lưỡng quốc diễn nghĩa - Truyền nhân UNO và MEGA

Đây là bài tiếp theo về cuộc đại chiến giữa hai công ty Arduino. Phần này tui sẽ giới thiệu về phiên bản nâng cấp của board UNO và MEGA huyền thoại, phát triển bởi Arduino.org (Italia). Các board này sẽ được niêm giá vào mùa thu năm nay.

lên
12 thành viên đã đánh giá bài viết này hữu ích.
Từ khóa: 

Cho tui 1 dzé đi tuổi thơ - Cài đặt Retro Pie - Chơi game thùng với Raspberry Pi

Trong chúng ta hẳn ai cũng đã từng mê mẩn với các trò chơi điện tử console ở quán ngoài đầu ngõ. Hiện nay các thế hệ console đời mới XBOX, PS liên tục phát hàn các trò rất hay, nhưng đôi khi ta lại hoài niệm và muốn quay về tuổi thơ với cá trò kinh điển như Contra, Mario, KKND. Bài này tui sẽ hướng dẫn các bạn cài hệ điều hành Retro Pie giả lập các game đời xa xưa. (Dịch từ https://github.com/retropie/retropie-setup/wiki/First-Installation)

lên
16 thành viên đã đánh giá bài viết này hữu ích.