Close
0%
0%

SOS Business Card

Business card that generates Morse code SOS signal using discrete logic components.

Public Chat
Similar projects worth following
This project was conceived for the 2024 Business Card Contest. The idea was to create a logical circuit from discrete components that would generate SOS signal in Morse code. I wanted to make this project a learning experience for creating logical circuits in a simple and practical way.

Using discrete logical chips increases cost and complexity compared to just using cheap MCU. But I think advantage in non-MCU approach is longevity.
You don't want to find yourself in need for SOS signal 20 years from now and realize that cosmic radiation flipped some bit in MCU flash memory.

Morse code has following rules for signaling: 

  • dot is 1 time unit 

  • dash is 3 time units 

  • the space between symbols of the same letter is 1 time unit 

  • the space between words is 7 time units

Following these rules SOS signal timing diagram will look like this:

We see that 34 independent logical states are needed. This introduces a problem as we could reduce logical circuit complexity by using 32 states instead as it will require 5 inputs for our truth table.

I decided to violate last Morse code signaling rule and use 5 time units for spacing between words instead of 7.

I'm using Logism, it can take truth table as input and generate logical circuit.  Generated circuit is not perfect and can be improved manually by removing duplicated components and changing number of inputs for logical gates. 

Final circuit that generates SOS signal in Morse code


falstad.circuitjs.txt

plain - 2.91 kB - 05/31/2024 at 19:36

Download

wavedrom_waveform.json

JavaScript Object Notation (JSON) - 252.00 bytes - 05/31/2024 at 19:36

Download

simplified_circuit.circ

circ - 9.60 kB - 05/31/2024 at 19:36

Download

BOM.csv

Comma-Separated Values - 3.57 kB - 05/31/2024 at 19:35

Download

schematic.pdf

Adobe Portable Document Format - 79.34 kB - 05/31/2024 at 19:35

Preview

View all 11 files

  • 1 × Battery Holder Keystone 3034 1x20mm Single-cell battery holder
  • 7 × 100nF capacitor Capacitor_SMD:C_0805_2012Metric
  • 1 × 10nF capacitor Capacitor_SMD:C_0805_2012Metric
  • 1 × 330nF capacitor Capacitor_SMD:C_0805_2012Metric
  • 1 × SMD LED LED_SMD:LED_1206_3216Metric

View all 20 components

  • Testing

    Martynas06/23/2024 at 17:17 0 comments

    My test setup with Analog Discovery 2.

    Measured CLK frequency is 5.75 Hz and duty cycle 50.4%

    Current consumption from 5V power source (without any load) on average was around 2mA.

    Video shows circuit operation with different loads:

    1. On-board LED
    2. 5V LED strip
    3. 12V neon bulb

  • Assembly

    Martynas06/21/2024 at 09:51 0 comments

    PCBs finally arrived.

    Noticed some issues while soldering:

    • Coin battery holder should be flipped. It is difficult to insert battery if USB-C socket and CC line resistors are soldered.
    • Turns out I don't have any 330nF 0805 capacitors at hand for C9 and no 1M ohm resistors for R2. It is needed for setting 555 timer frequency to 2Hz. I soldered two 100nF in parallel for C9 and 620K ohm resistor for R2 instead. This should give 5.8Hz frequency.
    • I don't really know why I chose 2.5mm holes for corner connections. I think 3mm holes would be better.

    I  have soldered two PCBs. One powered by coin battery and driving small green LED.

    Another powered from USB-C and driving brighter white LED with possibility to connect external load.

    Board thickness is 5.7mm (PCB 1.2mm + TO-220 4.5mm).

  • Project Cost

    Martynas05/31/2024 at 21:01 0 comments

    Most of the components were ordered from DigiKey, some from LCSC and some I already had.

    I added single component prices from DigiKey to BOM.csv file.

    All components needed for one board totals to ~12$.

    I ordered PCBs on JLCPCB service with minimal quantity of 5 and all standard features. Total price was 2$.


    So one business card costs around 14$, this doesn't include shipping cost and taxes.

  • PCB Design

    Martynas05/31/2024 at 20:50 0 comments

    PCB designed using KiCAD. I tried to use SMD as much as possible, for ICs - SOIC package and for discrete components - 0805 size package.

    Check schematics.pdf for full circuit schematics. There are some custom symbols and footprints used in this project. Those can be imported from this github repository.

    PCB is dual sided with most of the traces on top layer. Bottom layer dedicated for business card stuff - name, barcode which points to my github and artwork.

    I ordered PCB on JLCPCB with black soldermask and board thickness of 1.2 mm. 

  • Power and Output

    Martynas05/31/2024 at 20:34 0 comments

    Circuit will have 2 power options:

    •     CR2025 coin battery
    •     USB-C 5V@3A

    USB-C socket CC lines are connected to ground via 5.1K ohm resistor. This tells power source to supply 5V on VBUS line. Most ICs I chose have maximum supply voltage of 6V.

    The circuit will have a small on-board LED for SOS signal output. Additionally, a high-side PMOS load switch can be connected to a larger load, such as a 12V lamp. An external power supply with a maximum of 40V will be needed for this.

  • Clock Circuit Design

    Martynas05/31/2024 at 20:15 0 comments

    For clock signal I'm using 555 timer. There are lots of tools online for calculating 555 timer circuit parameters. I used 555 Astable Circuit Calculator for this.

    General rules are:

    •     choose R2 value much higher than R1 for 50% duty cycle;
    •     C9 sets clock frequency. 330nF capacitor will generate 2Hz signal. To increase frequency, decrease C9 value.

    For generating 5-bit logic circuit input signal we'll need binary counter. It will divide clock signal frequency by 2/4/8/16 and so on.

    Full circuit simulation with 555 clock generator, binary counter and logical circuit was done using Falstad. Click here to access it.

View all 6 project logs

  • 1
    Modify project files

    If you want to make this business car for yourself, first download all project files or clone github repository.

    PCB is designed with KiCAD8. You will want to update PCB bottom silkscreen with information relevant for you.

    It depends on you if you want to make additional changes.

  • 2
    Order PCB and components

    Generate new gerber files. I used JLCPCB design rules for PCB, but there should be no issues with other manufacturers like PCBWay.

    Components should be easy to find on usual suppliers, check BOM.csv file.

  • 3
    Assebly

    Start from smallest 0805 components and then ICs. Sockets, switches and so on should be soldered last.

View all 3 instructions

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates