Skip to the content
PCBKitNew board
2 layers58.4 × 64.8 mmProject embeddedSystemDesign2, the printed circuit board in 3D

Project embeddedSystemDesign2

Fescron/Project-LabEmbeddedDesign23

Project-LabEmbeddedDesign2

Size
58.4 × 64.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
41
Nets
46
Pads
169
Tracks, vias
397, 36
Pours
2
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
21 Mar 2019
Updated
3 Sep 2021

Overview

Project embeddedSystemDesign2 is an open-source printed circuit board by Fescron, from the Fescron/Project-LabEmbeddedDesign2 repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 58.4 × 64.8 mm with 41 parts on 46 nets, routed with 397 tracks and 36 vias.

Its parts include 14 capacitors, 12 connectors, 6 resistors, 2 ICs and 2 crystals. It belongs with the radio and wireless and sensors and measurement boards and the Silicon Labs (EFR32, EFM) boards of this library.

README

README.md

Project-LabEmbeddedDesign2

License GitHub last commit GitHub Release Date GitHub release Target device GitHub code size in bytes


This repository contains the presentation, reports and code for the project constructed for Embedded System Design 2 - Lab.

Project Project


1 - Quick links


2 - GIT repo structure

LocationContent
/docs/Doxygen code documentation.

/documentation/current measurements/Documents containing current measurements.
/documentation/current measurements/measurements-SF/Pictures depicting current profiles for sending 6 measurements at full gain with different LoraWAN Spreading Factors. More information can be found in section "3 - LoRaWAN spreading factor (RN2483)" in this file .

/documentation/datasheets/General datasheets regarding the used items.
/documentation/datasheets/hardware-design/Documents regarding hardware design for the EFM32HG microcontroller.
/documentation/datasheets/timers-energy-rtc/Documents regarding timers, the RTC and energy modes on the EFM32HG microcontroller.

/documentation/figures/Figures used in reports and the README.
/documentation/figures/installation/Pictures taken during the project installation.
/documentation/reports/Reports and presentation.
/documentation/schematics/Schematics.
See this file for the schematic of the self designed PCB and this file for the schematic of the DRAMCO LoRaWAN shield.

/hardware/project-embeddedSystemDesign2/KiCad PCB design files.
See this file for the schematic and this file for the BOM.
/hardware/project-embeddedSystemDesign2/3d-renders/Pictures of 3D renders of the self designed PCB.
On this picture the dimensions are displayed.
This is a render of the front and this is a render of the back.

/software/EFM32HG-Embedded2-project/Code for the project.
See this page for general important documentation and this page for information regarding individual files and their methods. This is the decoder for use on The Things Network.

3 - Code flow

Note: The code is developed using Simplicity Studio v4 on Ubuntu 18.04 LTS. The code also has dbprint functionality.

Flowchart

Extra notes on the flowchart:

  • (*1): The following things get initialized:
    • Chip
    • GPIO wakeup (buttons & ADXL INT1)
    • ADC
    • Disable RN2483
    • Accelerometer (initialize SPI and use it to configure the accelerometer
  • (*2): On every external temperature measurement the VDD and DATA pin get re-configured. The oneWire protocol is achieved using bit-banging.
  • (*3): The RN2483 module gets enabled and configured before sending the data. Afterwards it gets disabled again. The status message is always send, measurements only if there are any recorded.
  • (*4): Only one set of measurements are send along with the status message.
  • (*5): The value of X depends on a configured setting.
  • (*6): A status message is send along with any recorded measurements.

  • Before entering a sleep state all GPIO (data) pins are disabled so they can't consume any power.
  • Clocks and peripherals are only enabled when necessary.
  • If an error occures this gets forwarded to the cloud using a LoRaWAN status message.
  • To conserve sended bytes a custom data-format was used (along with a decoder).
  • Negative internal and external temperatures were successfully send and displayed. The internal temperature seems to be 2 - 3 °C off.

4 - Extra hardware changes

The schematic for the custom PCB misses two resistors. A surface mount 10 kΩ resistor was added between the data and power pin for the DS18B20 temperature sensor. A 3,3 kΩ resistor with wires was added between the BREAK_1pin and VDD. These added resistors can be seen on the bottom right on the left most picture below.

Added resistors Shield modifications

An SMA connector for an external antenna was also added to the DRAMCO LoRaWAN shield. This was done by removing the chip-antenna, capacitors C3 and C4 and inductor L1 and replacing it with an SMA connector directly connected to the signal pin of the RN2483 module. This modification can be seen on the right on the right most picture above.

To protect the PCB's from moisture and other contaminants, they were given 2 coats of PLASTIK 70.

Protection during coating Coating process


Parts

41
QtyValueFootprintReferences
5100 nFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC2, C3, C4, C5, C10
3100 ΩResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR3, R4, R6
3MountingHoleMountingHole:MountingHole_3mmH1, H2, H3
210 nFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC7, C8
210 µFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC1, C6
212 pFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC13, C14
218 pFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC11, C12
2Conn_01x03Connectors:1X03_LOCKJ6, J11
2Conn_02x02_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x02_P2.54mm_VerticalJ4, J5
11 kΩResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR5
11 µFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC9
11 ΩResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR1
110 kΩResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR2
124 MHzClocks:CRYSTAL-SMD-5X3.2-4PADY2
132,768 kHzCrystal:Crystal_SMD_2012-2Pin_2.0x1.2mm_HandSolderingY1
1ADXL362-breakoutPackage_DIP:DIP-8_W10.16mmU2
1CBF102WBInductor_SMD:L_0603_1608Metric_Pad1.05x0.95mm_HandSolderL1
1Conn_01x01Connectors:1X01J8
1Conn_01x02Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_HorizontalJ7
1Conn_01x02Connectors:1X02_LOCKJ12
1Conn_01x04Connectors:1X04_LOCKJ3
1Conn_01x07Connectors:1X07_LOCKJ9
1Conn_02x02_Odd_EvenConnector_PinSocket_2.54mm:PinSocket_2x02_P2.54mm_VerticalJ10
1Conn_02x04_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x04_P2.54mm_VerticalJ1
1Conn_02x09_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x09_P2.54mm_VerticalJ2
1EFM32HG322Package_QFP:TQFP-48_7x7mm_P0.5mmU1
1SW_PushButton_Switch_SMD:SW_SPST_FSMSMRESET

Questions

How big is the Project embeddedSystemDesign2 PCB?

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

What parts does the Project embeddedSystemDesign2 use?

41 parts. 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 Project embeddedSystemDesign2 KiCad files?

From the Fescron/Project-LabEmbeddedDesign2 repository on GitHub, at the commit this page was made from: the board is hardware/project-embeddedSystemDesign2/project-embeddedSystemDesign2.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Project embeddedSystemDesign2 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 layers70 × 35 mmTLF35584 breakout, the printed circuit board in 3D

    TLF35584 breakout

    rusefi/rusefi

    rusefi - GPL internal combustion engine control unit

    41 parts1.2k
  • 2 layers270 × 11 mmDaylight Disco, the printed circuit board in 3D

    Daylight Disco

    VoronDesign/Voron-Hardware

    Cool Hardware designed by the Voron Design group

    41 parts1.1kGPL-3.0
  • 2 layers27.5 × 48.3 mmICE40DevBoard, the printed circuit board in 3D

    ICE40DevBoard

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    41 parts915
  • 2 layers45 × 25 mmEasy PD Sink, the printed circuit board in 3D

    Easy PD Sink

    openwch/ch32v003

    CH32V003 is an ultra-cheap RISC-V MCU with 2KB SRAM, 16KB flash, and up to 18 GPIOs that sells for under $0.10

    41 parts599
  • 2 layers97 × 78.5 mmDumbpad, the printed circuit board in 3D

    Dumbpad

    imchipwood/dumbpad

    Simple 4x4 numpad with rotary encoder. Powered by QMK via ATmega32u4 Pro Micro

    41 parts517GPL-2.0
  • 2 layers37 × 15 mmCanTactDist, the printed circuit board in 3D

    CanTactDist

    bondus/KlipperToolboard

    A 3D printer tool head controller board

    41 parts373GPL-3.0
  • 2 layers20.3 × 69.7 mmPG attiny404, the printed circuit board in 3D

    PG attiny404

    fabiansteiner/OpenValve

    3D-printable pinch valve for irrigation and sensor-driven liquid control.

    41 parts276CERN-OHL-S-2.0