Skip to the content
PCBKitNew board
2 layers60 × 70 mmVer3, the printed circuit board in 3D

ATmega-based RFID Door Lock

Size
60 × 70 mm
Copper layers
2
Thickness
1.6 mm
Parts
40
Nets
36
Pads
139
Tracks, vias
414, 27
Pours
1
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
24 Apr 2022
Updated
25 Apr 2023

Overview

Ver3 is an open-source printed circuit board by leecurrent04, from the leecurrent04/Epic_DoorLock repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 60 × 70 mm with 40 parts on 36 nets, routed with 414 tracks and 27 vias.

It is built around the ATMEGA328P-AU and AMS1117-3.3. Its parts include 11 resistors, 5 capacitors, 4 diodes, 4 switches and 3 ICs. It belongs with the radio and wireless boards and the AVR (ATmega, ATtiny) boards of this library.

Main components

2

README

README.md

EPIC Door Lock Project

img

1. 프로젝트 소개

연초고등학교 EPIC 동아리(2021~2022) 에서 교내 학생들의 자발적인 탐구 활동을 장려하기 위해 진행한 프로젝트 입니다.
하드웨어 설계는 KiCAD 를 사용하였고, 소프트웨어는 avr-gcc 컴파일러를 이용한 avr C 언어로 작성되었습니다.


2. 컴파일

Makefile을 이용하여 컴파일하는 경우, Makefile과 같은 위치에 out 폴더를 생성해야 합니다.

필요한 패키지설명
avr-gcc컴파일러
avr-libc라이브러리
avr-size메모리 사용량 확인
avrdude업로더

1. in Linux

  1. Set up (Debian)
    패키지 설치는 Debian 기준으로 설명하고 있습니다. 자신의 환경에 맞추어 사용하시길 바랍니다.

    console
    apt update && apt upgrade
    apt install avr-gcc avr-libc avr-size avrdude

  2. Download source code

    console
    git clone https://github.com/leecurrent04/Epic_DoorLock
    cd ./Epic_DoorLock/ver3/code/avr/

  3. Set admin card
    main.c 파일의 16, 17줄을 편집하여 관리자 카드를 등록합니다.
    RFID 카드의 4byte UID 코드를 1byte씩 기입합니다. 카드의 UID 코드는 [NFC Tools - Google Play] 프로그램을 통하여 알 수 있습니다. (프로그램내 시리얼 번호 확인)
    반드시 등록한 관리자 카드의 갯수에 맞게 cardAdmin_Num 값을 변경해주어야 합니다.

    c
    #define cardAdmin_Num 2
    uint8_t cardAdmin_UID[cardAdmin_Num][4] = {
            {0x12, 0x34, 0x56, 0x78},
            {0x0A, 0x0B, 0x0C, 0x0D}
    };

  4. Complile
    변경 사항을 저장한 후 아래 명령어를 이용하여 코드를 컴파일 합니다.

    console
    mkdir out
    make all


    또는 다음과 같은 명령어를 사용할 수 있습니다.

    console
    avr-gcc -Wall -mmcu=atmega168p -Os main.c ./lib/* -o ./out/output.o
    avr-objcopy -j .text -j .data -O ihex ./out/output.o ./out/main.hex

  5. Upload
    Makefile 의 2, 4, 5번째 줄을 환경에 맞게 편집합니다.

    makefile
    PORT=/dev/ttyUSB0       # SET YOUR PORT
    OBJ_FILES=./lib/*
    BaudRate=115200         # SET BuadRate
    PROGRAMMER=arduino      # SET Programmer


    아래의 명령어를 터미널에 입력하여 업로드 합니다.

    console
    make flash


    USBtinyISP를 사용하는 경우(권장), 다음의 명령어를 터미널에 입력하면 됩니다.

    console
    avrdude -v -p m168p -c usbtiny -U flash:w:./out/main.hex:i



2. Windows & Mac

Microchip AVR GCC Compiler 를 사용하여 Linux와 같은 과정을 따르거나, ATMEL Studio를 사용하십시오.
자세한 과정은 『아트멜 스튜디오와 아두이노로 배우는 ATmega328 프로그래밍(허경용)』 도서를 참고하십시오.
(이 프로젝트는 ATmega168p을 사용하였으므로, 업로드 과정에서 유의)

4. 참고 라이브러리

RFID 관련 AVR 라이브러리 : https://github.com/asif-mahmud/MIFARE-RFID-with-AVR

Parts

40
QtyValueFootprintReferences
610KResistor_SMD:R_0603_1608MetricR1, R2, R3, R4, R5, R6
4HOLE1, HOLE2, HOLE3, HOLE4
3220Resistor_SMD:R_0603_1608MetricR7, R8, R9
3LED_SmallLED_SMD:LED_0603_1608MetricD2, D3, D4
210uFCapacitor_Tantalum_SMD:CP_EIA-3216-10_Kemet-IC4, C5
222pFCapacitor_SMD:C_0603_1608MetricC2, C3
24.7KResistor_SMD:R_0603_1608MetricR10, R11
2SW_PushButton_Switch_THT:SW_PUSH_6mm_H5mmSW3, SW4
10.1uFCapacitor_SMD:C_0603_1608MetricC1
116MHzCrystal:Crystal_HC49-4H_VerticalY1
11N4004Diode_SMD:D_SMAD1
15.5piConnector_BarrelJack:BarrelJack_HorizontalPOWER_JACK1
1AMS1117-3.3Package_TO_SOT_SMD:SOT-223-3_TabPin2U2
1AT24CS16Package_DIP:DIP-8_W7.62mm_Socket_LongPadsU3
1ATmega328P-APackage_QFP:TQFP-32_7x7mm_P0.8mmU1
1BuzzerSW:FQ-014[Buzzer]BZ1
1Conn_01x06_FemaleConnector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalJ_UART1
1Conn_02x03_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_VerticalJ_SPI1
1Conn_02x04_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x04_P2.54mm_VerticalJ_INNER1
1Conn_02x05_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x05_P2.54mm_VerticalJ_OUTPUT1
1ESD-Logo_6.6x6mm_SilkScreenSymbol:ESD-Logo_6.6x6mm_SilkScreenREF_ESD
1OSHW-Symbol_6.7x6mm_SilkScreenSymbol:OSHW-Symbol_6.7x6mm_SilkScreenREF_OSHW
1SW_PushConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalSW1
1SW_PushButton_Switch_THT:SW_PUSH-12mmSW2

Questions

How big is the Ver3 PCB?

It measures 60 × 70 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Ver3 use?

40 parts, built around the ATMEGA328P-AU and AMS1117-3.3. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Ver3 KiCad files?

From the leecurrent04/Epic_DoorLock repository on GitHub, at the commit this page was made from: the board is ver3/pcb/pcb.kicad_pcb and its schematic ver3/pcb/pcb.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Ver3 design in my own project?

Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layers30.5 × 63 mmAdbuino, the printed circuit board in 3D

    Adbuino

    akuker/adbuino

    Arduino-based USB keyboard and Mouse to ADB adapter. Allows USB keyboards and mice to be used with vintage Macintosh computers.

    75 parts60
  • 2 layers41 × 50 mmSmartportsd smd, the printed circuit board in 3D

    Smartportsd smd

    djtersteegc/smartportsd

    Various PCB and case designs of the SmartPortSD hard disk emulator for Apple II computers.

    25 parts54MIT
  • 2 layers72 × 45 mmBrizer ZigBee, the printed circuit board in 3D

    Brizer ZigBee

    kvazimoda24/TionO2-ZigBee

    Ядром проекта является микроконтроллер ATmega328P. Для работы по протоколу ZigBee используется модуль E18-MS1-PCB.

    48 parts10
  • 2 layers97.8 × 25.1 mmWirelessOrientationSensorSystem, the printed circuit board in 3D

    WirelessOrientationSensorSystem

    sherrardTr4129/RealSense-BNO055-Pose-Estimation

    This repository contains required software to construct a Pose of a vision target by fusing its x,y,z coordinates from the Intel RealSense depth camera, with its quaternion orientation from the BNO055 sensor.

    25 parts6MIT
  • 2 layers45.4 × 50 mmTapecart sd vertical, the printed circuit board in 3D

    Tapecart sd vertical

    djtersteegc/tapecart-sd-vertical

    Vertical SMD PCB design and 3D printable case of the TapeCart SD for the Commodore 64

    33 parts4MIT
  • 2 layers55 × 35 mmMini BT Pcb-328P, the printed circuit board in 3D

    Mini BT Pcb-328P

    d-diot/Mini-BT-Pcb-328P

    MySensors ATMega328P + RFM69 and NRF24 battery (AAA and CR2032) powered pcb

    54 parts3