Skip to the content
2 layers58.4 × 61 mmSerial programmer, the printed circuit board in 3D

This is a literally just an infrared remote, might add a youtube video later.

Size
58.4 × 61 mm
Copper layers
2
Thickness
1.6 mm
Parts
22
Nets
30
Pads
96
Tracks, vias
157, 0
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
25 Apr 2022
Updated
27 Apr 2022

Overview

Serial programmer is an open-source printed circuit board by PegLegDino, from the PegLegDino/Roku_IR_Controller repository on GitHub, published under the MIT licence. It is a 2-layer board of 58.4 × 61 mm with 22 parts on 30 nets, routed with 157 tracks and 0 vias.

It is built around the ATMEGA328P-PU. Its parts include 6 connectors, 5 capacitors, 3 resistors, 3 diodes and 2 ICs. It belongs with the interfaces and adapters boards and the AVR (ATmega, ATtiny) boards of this library.

Main components

1

README

README.md

Roku_Controller

This is a controller for the Roku This software will provide you with both a template for sending and reciving IR signals as well as an example of the functional controller

I made this at 1AM so if none of this makes sense, I would be glad to answer questions you have in the issues tab...

Quick_Setup_Guide

Software_Requirements

  • Processing IDE
  • Install CP5 through processing
  • Arduino IDE
  • Install IRremote through arduino

Hardware_Requirements

  • Arduino Uno or any AVR microcontroller with at least 5kb EEPROM (5 kilo bytes storage so probably no TinyAVR series chips...Drop a comment if you want optimization idk)
  • IR Trasmitter LED ~3v
  • Arduino infrared reciever module
  • Resistor (25ohms-330ohms) *Lower resitance == far; High Resistance == not far
  • Your hardware your sexy beast rawr xD

Getting Started

The Code

When your run the reciever script and click your remote at it you'll get a code, the last 4 represent the user while the first 4 represent the data being sent. It'll look like this in the serial monitor...that is your code, use it to change mine.

Each roku is different so a little fiddling may be required.

In Short just take the raw data from your remote signal and replace the last four characters of my user data with yours in this script

The Hard
  • Follow the pictures (bonus points if you DM me a picture of the PCB)

OOOOOOOOOH LOOK A SCHEMATIC...wow BOOM ANOTHER ONE (Update, I meant Transmitter) NOW JUST THE ENGINEERS...if you get this you deserve a cookie it's just an atmega328p serial programming circuit BONUS PCB DESIGN (For those whomst wish to be extra)

ChangeLog

I don't make changes I make genius

*Added first stuff 4/25/2022

*Revised that stuff 4/25/2022

*Remebered I left out a lot of stuff 4/25/2022 (but later)

Parts

22
QtyValueFootprintReferences
222pCapacitor_THT:CP_Radial_D5.0mm_P2.50mmC3, C4
2Conn_01x06_FemaleConnector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalJ3, J6
2LED_ALTDiode_THT:D_DO-201_P3.81mm_Vertical_AnodeUpD2, IR LED
2RResistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_VerticalR1, R1
1100uCapacitor_THT:CP_Radial_D5.0mm_P2.50mmC1
11N4007Diode_THT:D_DO-41_SOD81_P10.16mm_HorizontalD1
1220Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_VerticalR2
122uCapacitor_THT:CP_Radial_D5.0mm_P2.50mmC2
1ATmega328P-PUPackage_DIP:DIP-28_W7.62mmU2
1CCapacitor_THT:CP_Radial_D5.0mm_P2.50mmC5
1Conn_01x03_MaleConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ1
1Conn_01x04_FemaleConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ5
1Conn_01x07_FemaleConnector_PinHeader_2.54mm:PinHeader_1x07_P2.54mm_VerticalJ2
1Conn_01x08_FemaleConnector_PinHeader_2.54mm:PinHeader_1x08_P2.54mm_VerticalJ4
1CrystalCrystal:Crystal_HC49-U_VerticalY1
1LM7805_TO220Package_TO_SOT_THT:TO-220-3_VerticalU1
1PinSocket_1x03_P2.54mm_VerticalConnector_PinSocket_2.54mm:PinSocket_1x03_P2.54mm_VerticalPlace Mod
1SW_PushButton_Switch_THT:SW_Tactile_Straight_KSA0Axx1LFTRSW1

Similar boards

  • 2 layers68.8 × 53.6 mmZArduino, the printed circuit board in 3D

    ZArduino

    zmaker/arduino_cookbook

    gli sketch del nuovo progetto Arduino Cookbook e dei video di YouTube

    46 parts269
  • 2 layers76.3 × 122.8 mmDiscipad pcb, the printed circuit board in 3D

    Discipad pcb

    coseyfannitutti/discipad

    17-key numpad assembled with only through hole components, including usb type-c

    63 parts221GPL-3.0
  • 2 layers111.3 × 106.4 mmSuper Sixteen v1, the printed circuit board in 3D

    Super Sixteen v1

    matthewcieplak/super-sixteen

    Code and schematics for the Super Sixteen Eurorack sequencer

    141 parts171
  • 2 layers247.6 × 99.2 mmRomeo pcb, the printed circuit board in 3D

    Romeo pcb

    coseyfannitutti/romeo

    Staggered 40% keyboard pcb that can be assembled with only through hole components, including USB Type-C

    138 parts148GPL-3.0
  • 2 layers90 × 140 mmDrumkid, the printed circuit board in 3D

    Drumkid

    mattybrad/drumkid

    Version 4 was the first successful working design, with full code, schematics, Gerbers, etc available on GitHub.

    70 parts137
  • 2 layers238.1 × 375.5 mmFramework, the printed circuit board in 3D

    Framework

    stevennguyen/framework

    Ortholinear keyboard with a knob

    197 parts131
  • 2 layersLM80C R6, the printed circuit board in 3D

    LM80C R6

    leomil72/LM80C

    A Z80-based homebrew computer withTMS9918, AY-3-8910, Z80 CTC, Z80 PIO, and Z80 SIO

    153 parts123GPL-3.0
  • 2 layers145.3 × 44.5 mmScout, the printed circuit board in 3D

    Scout

    oskitone/scout

    3D-printed, Arduino-compatible, 17-key mono synth. Squeeeee!

    48 parts114

Questions

How big is the Serial programmer PCB?

It measures 58.4 × 61 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Serial programmer use?

22 parts, built around the ATMEGA328P-PU. 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 Serial programmer KiCad files?

From the PegLegDino/Roku_IR_Controller repository on GitHub, at the commit this page was made from: the board is Ki cad stuff/Serial programmer.kicad_pcb and its schematic Ki cad stuff/Serial programmer.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Serial programmer design in my own project?

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