Skip to the content
4 layers41.4 × 108 mmM17 3310, the printed circuit board in 3D

Mainboard replacement for Nokia 3310

Size
41.4 × 108 mm
Copper layers
4
Thickness
0.98 mm
Parts
124
Nets
105
Pads
392
Tracks, vias
702, 433
Pours
3
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
21 Oct 2024
Updated
1 Jul 2025

Overview

M17 3310 is an open-source printed circuit board by M17-Project, from the M17-Project/M17_3310 repository on GitHub. It is a 4-layer board of 41.4 × 108 mm with 124 parts on 105 nets, routed with 702 tracks and 433 vias.

It is built around the LFCN-490+, TPS63031DSK and USBLC6-2SC6, with the BAT60A, BSS138 and IRLML6401 among its other parts. Its parts include 35 resistors, 22 capacitors, 17 switches, 13 diodes and 8 connectors. It belongs with the STM32 boards of this library.

Main components

7

README

README.md

M17_3310

Mainboard replacement for the Nokia 3310/3330.

[!CAUTION] The board's thickness is 1.0mm. Anything thicker will not fit.

Original mainboard photos

Both photos in the misc directory are cropped, so that if you scale them for 108mm height, you should be able to make direct measurements using GIMP or other image editing software.

Interactive HTML BOM

An interactive HTML version of the Bill of Materials can be found here.

SA868S UHF module firmware

The RF module must be flashed with OpenRTX. It can be flashed before or after soldering it in place as the PCB has a hole through which the four programming pads are still accessible.

First of all, download and install the rl78flash utility. How you install it, depends on your operating system.

Now download the latest OpenRTX firmware for the SA868S UHF module. Here is an example for version 1.4.1:

text
# cd ~/Downloads
# wget https://github.com/OpenRTX/sa8x8-fw/releases/download/v1.4.1/sa8x8-fw-sa868s-uhf.s37

We now have the software and firmware in place but we need to build a small programming adapter. You can build one with a UART to USB converter, two 1N5819 diodes, some wire and a small PCB. Here's a diagram showing how it is connected:

Here is how it could look like:

For the four pins, cut and solder the legs of a few resistors to the front of the PCB and bend them to the spacing of the four pins of the SA868S. The rest is quite self-explainatory.

To flash the firmware, plug in the UART to USB converter, hold the board with the four pins to the SA868S module and execute the following command.

Note: Make sure to jumper the converter to 3.3V!

text
# cd ~/Downloads/rl78flash/
# flash % ./rl78flash -m 1 -a -v /dev/tty.usbserial-A50285BI ~/Downloads/sa8x8-fw-sa868s-uhf.s37
rl78flash v0.7.0
Protocol configuration: protocol=0, code_block=1024, data_block=1024
Erase code flash
Erase data flash
Read file "/Users/rz01/Downloads/sa8x8-fw-sa868s-uhf.s37"
Write code flash
Write data flash
Verify Code flash
Verify Data flash
Reset MCU

In this case, flash mode 1 (-m 1) was chosen as the UART to USB converter has a DTR pin. You might need to wire your adapter differently and then select another mode depending on your specific UART to USB board. Please consult this README and this diagram for more information on this.

[!NOTE] The device will appear frozen if the firmware running on the RF module is not OpenRTX.

Device firmware

See the example firmware here.

Flashing over USB

  1. Plug in the USB cable.
  2. Press and hold the OK button (large horizontal one with a blue bar, just below the display).
  3. Press the power button at the top of the device.
  4. Release the OK button.

The device should enter USB DFU mode and should be recognized by CubeProgrammer.

Parts

124
QtyValueFootprintReferences
14~Parts:3310_keySW3, SW4, SW5, SW6, SW7, SW8, SW9, SW10, SW11, SW12, SW13, SW14, SW15, SW17
1147kResistor_SMD:R_0402_1005MetricR3, R4, R9, R11, R12, R18, R31, R32, R33, R34, R35
9100nCapacitor_SMD:C_0402_1005MetricC5, C6, C7, C8, C9, C10, C12, C13, C19
956RResistor_SMD:R_0402_1005MetricR16, R19, R21, R22, R23, R24, R25, R26, R27
8REDParts:3310_ledD5, D6, D7, D9, D10, D11, D12, D13
7100kResistor_SMD:R_0402_1005MetricR7, R8, R10, R13, R15, R17, R20
7~Parts:2mm_mounting_hole_sigH1, H2, H3, H4, H5, H6, H7
5BAT60ADiode_SMD:D_SOD-323D1, D2, D3, D4, D8
5BSS138Package_TO_SOT_SMD:SOT-23Q1, Q3, Q4, Q5, Q7
310uF/10VCapacitor_Tantalum_SMD:CP_EIA-3528-21_Kemet-BC14, C15, C16
347uF/10VCapacitor_Tantalum_SMD:CP_EIA-3528-21_Kemet-BC11, C17, C18
3BeadInductor_SMD:L_0805_2012MetricFB1, FB2, FB3
21kResistor_SMD:R_0402_1005MetricR14, R28
220pCapacitor_SMD:C_0402_1005MetricC21, C22
222kResistor_SMD:R_0402_1005MetricR1, R6
22u2Capacitor_SMD:C_0402_1005MetricC3, C4
25k1Resistor_SMD:R_0402_1005MetricR29, R30
26p8Capacitor_SMD:C_0402_1005MetricC1, C2
2IRLML6401Package_TO_SOT_SMD:SOT-23Q2, Q6
1"OK"Parts:3310_keySW2
110kResistor_SMD:R_0402_1005MetricR5
110nCapacitor_SMD:C_0402_1005MetricC20
11u5Inductor_SMD:L_1210_3225MetricL1
12k2Resistor_SMD:R_0402_1005MetricR2
132.768kHzParts:xtal_smd_32kY2
18MHzCrystal:Crystal_SMD_3225-4Pin_3.2x2.5mmY1
1ANT_ATestPoint:TestPoint_Pad_D1.5mmJ2
1ANT_BTestPoint:TestPoint_Pad_D1.5mmJ3
1BatteryParts:3310_battJ4
1BuzzerParts:3310_buzzerJ6
1DisplayParts:3310_displayJ7
1LFCN-490+Filter:Filter_Mini-Circuits_FV1206FL1
1MAX1555Package_TO_SOT_SMD:TSOT-23-5U3
1MAX16054Package_TO_SOT_SMD:TSOT-23-6U4
1ML414H-IV01EParts:ML414HBT1
1POWER ON/OFFParts:SIDE PUSH 2.2NF 4.7x3.2x1.65mmSW1
1SA868Parts:SA868-VER1.1U2
1STM32F405RGTxPackage_QFP:LQFP-64_10x10mm_P0.5mmU1
1SWD_DBGParts:3310_4_pinJ1
1TPS63031DSKPackage_SON:WSON-10-1EP_2.5x2.5mm_P0.5mm_EP1.2x2mmU5
1USB CConnector_USB:USB_C_Receptacle_GCT_USB4110J8
1USBLC6-2SC6Package_TO_SOT_SMD:SOT-23-6U6
1VibratorParts:3310_vibratorJ5
1~Parts:3310_key_gapSW16
1~Parts:3310_speakerLS1

Similar boards

  • 4 layers60 × 127 mmOpenHT RF, the printed circuit board in 3D

    OpenHT RF

    M17-Project/OpenHT-hw

    Repository for the hardware parts of the OpenHT project

    199 parts63
  • 2 layers54.5 × 74.8 mmKv4p ht MagSafe, the printed circuit board in 3D

    Kv4p ht MagSafe

    bi4wms/kv4p-ht-MagSafe

    MagSafe version for kv4p-ht

    72 parts3
  • 4 layers86.4 × 50.2 mmKv4p ht dmr, the printed circuit board in 3D

    Kv4p ht dmr

    ceilingduster/kv4p-ht-dmr

    Please see the main project site: https://kv4p.com. Thank you Vance for an incredible project! This MOD is only meant to serve to innovate and support the greater project.

    95 parts3GPL-3.0
  • 4 layers38.1 × 82.5 mmKv4p ht, the printed circuit board in 3D

    Kv4p ht

    VanceVagell/kv4p-ht

    Open source handheld ham radio project KV4P-HT

    98 parts828GPL-3.0
  • 2 layers68 × 58 mmIot data logger nfc samd21, the printed circuit board in 3D

    Iot data logger nfc samd21

    polesskiy-dev/iot-risk-data-logger-nfc-samd21-hardware

    Hardware (schematics, PCB, BOM) for iot-risk-data-logger-nfc-samd21 project

    66 parts5MIT
  • 2 layers55 × 45 mmIot risk logger stm32l4, the printed circuit board in 3D

    Iot risk logger stm32l4

    polesskiy-dev/iot-risk-logger-stm32l4

    Open IoT risk data logger based on STM32L4 MCU

    52 parts2
  • 4 layers94.1 × 152 mmDevelopment board panel, the printed circuit board in 3D

    Development board panel

    portapack-mayhem/mayhem-mdk

    PortaPack - Module Develoment Kit

    298 parts88GPL-3.0

Questions

How big is the M17 3310 PCB?

It measures 41.4 × 108 mm and has 4 copper layers, 0.98 mm thick.

What parts does the M17 3310 use?

124 parts, built around the LFCN-490+, TPS63031DSK, USBLC6-2SC6 and BAT60A. 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 M17 3310 KiCad files?

From the M17-Project/M17_3310 repository on GitHub, at the commit this page was made from: the board is M17_3310.kicad_pcb and its schematic M17_3310.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the M17 3310 design in my own project?

Its repository states no licence, so its author keeps all rights: ask M17-Project before reusing the design.