Skip to content

Latest commit

 

History

History
159 lines (116 loc) · 7.04 KB

File metadata and controls

159 lines (116 loc) · 7.04 KB

Pin Assignments

Documentation Arduino Hardware

Complete pin assignments for both IR v1 and HC-12 v2 versions of the WireLessText Terminal

This document lists all Arduino pin assignments for both v1 (IR) and v2 (HC-12) versions of the WireLessText Terminal.


Version Comparison Summary

Component IR v1 Pins HC-12 v2 Pins
LCD 2, 3, 4, 5, 6, 7 4, 5, 6, 7, 8, 9
Keypad Rows A0, A1, A3, A4 A0, A1, A3, A4
Keypad Cols 10, 11, 12 10, 11, 12
IR/RF 9 (IR LED or IR Rx) 2, 3 (HC-12 RX, TX)

Note: HC-12 v2 uses different LCD pins because pins 2 and 3 are used for SoftwareSerial.

IR v1 Pinout

LCD (16×2 Character Display, 4-bit mode)

Arduino Pin LCD Pin Function Notes
2 RS Register Select Data/Command select
3 EN Enable Clock/strobe signal
4 D4 Data bit 4 Lower nibble
5 D5 Data bit 5 Lower nibble
6 D6 Data bit 6 Lower nibble
7 D7 Data bit 7 Lower nibble
5V VCC Power 5V supply
GND GND Ground Common ground
V0 Contrast Potentiometer to GND
R/W Read/Write Grounded (write only)

Note: LCD pins D0-D3 are unused (4-bit mode).

Keypad (4×3 Matrix)

Arduino Pin Function Notes
A0 Row 0 Input with pullup
A1 Row 1 Input with pullup
A3 Row 2 Input with pullup
A4 Row 3 Input with pullup
10 Column 0 Output, driven LOW during scan
11 Column 1 Output, driven LOW during scan
12 Column 2 Output, driven LOW during scan

Key Mapping (row-major order):

Row 0: ['1', '2', '3']
Row 1: ['4', '5', '6']
Row 2: ['7', '8', '9']
Row 3: ['*', '0', '#']

IR Communication

Sender (IR LED)

Arduino Pin Component Notes
9 IR LED anode Via current-limiting resistor (~100Ω)
GND IR LED cathode Direct connection

Protocol: NEC, Address 0xEF00, 38 kHz carrier

Receiver (IR Receiver Module)

Arduino Pin Component Notes
9 IR Rx OUT Data output from receiver module
5V IR Rx VCC Power supply
GND IR Rx GND Common ground

Protocol: NEC decode, validates address 0xEF00

HC-12 v2 Pinout

LCD (16×2 Character Display, 4-bit mode)

Arduino Pin LCD Pin Function Notes
4 RS Register Select Data/Command select
5 EN Enable Clock/strobe signal
6 D4 Data bit 4 Lower nibble
7 D5 Data bit 5 Lower nibble
8 D6 Data bit 6 Lower nibble
9 D7 Data bit 7 Lower nibble
5V VCC Power 5V supply
GND GND Ground Common ground
V0 Contrast Potentiometer to GND
R/W Read/Write Grounded (write only)

Note: LCD pins shifted to 4-9 because pins 2-3 are used for HC-12.

Keypad (4×3 Matrix)

Same as IR v1:

Arduino Pin Function Notes
A0 Row 0 Input with pullup
A1 Row 1 Input with pullup
A3 Row 2 Input with pullup
A4 Row 3 Input with pullup
10 Column 0 Output, driven LOW during scan
11 Column 1 Output, driven LOW during scan
12 Column 2 Output, driven LOW during scan

Key Mapping: Same as IR v1 (see above).

HC-12 RF Module

Arduino Pin HC-12 Pin Function Notes
2 TX HC-12 TX → Arduino RX SoftwareSerial RX (5V tolerant)
3 RX HC-12 RX ← Arduino TX Via voltage divider (5V → 3.3V)
5V VCC Power 5V supply
GND GND Ground Common ground
SET Unconnected Default mode (9600 baud)

Voltage Divider for HC-12 RX:

  • Arduino TX (pin 3) → 2.2 kΩ resistor → HC-12 RX
  • HC-12 RX ← 3.3 kΩ resistor ← GND
  • This creates approximately 3.3V signal level

Alternative: Use a logic level converter module (e.g., SparkFun Logic Level Converter).

Baud Rate: 9600 (default HC-12 setting)

Note: HC-12 operates at 3.3V logic levels. The Arduino outputs 5V, so a voltage divider is required on the RX line (HC-12 RX). The TX line from HC-12 can connect directly to Arduino (most Arduinos tolerate 3.3V on digital inputs, but check your board specifications).

Unused Pins

The following pins are available for future use or debugging:

IR v1:

  • Digital: 0, 1, 8, 13 (Note: 0/1 are UART, 13 is onboard LED)
  • Analog: A2, A5 (A3 and A4 used for keypad)

HC-12 v2:

  • Digital: 0, 1, 11, 12, 13 (Note: 0/1 are UART, 13 is onboard LED)
  • Analog: A2, A5 (A3 and A4 used for keypad)

Power Considerations

  • LCD: Typically draws 1-2 mA (backlight may add 20-100 mA if enabled)
  • Keypad: Negligible current (only during scan)
  • IR LED: ~20-50 mA during transmission (via current-limiting resistor)
  • IR Receiver: ~1-5 mA continuous
  • HC-12: ~20-80 mA during transmission, ~16 mA during reception, ~2 μA in sleep mode

All components can be powered from Arduino's 5V regulator if using a 7-12V supply. If powering from USB (5V), ensure total current draw < 500 mA for USB 2.0 or < 900 mA for USB 3.0.