Skip to the content
2 layers87.9 × 88 mmPico hd mcu v2, the printed circuit board in 3D

Pico hd mcu v2

ozgend/hd-mcu4

bluetooth supported mcu for harley davidson 99-03 with raspberry pi pico

Size
87.9 × 88 mm
Copper layers
2
Thickness
1.6 mm
Parts
53
Nets
40
Pads
217
Tracks, vias
354, 1
Pours
2
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
13 Dec 2023
Updated
6 Jan 2026

Overview

Pico hd mcu v2 is an open-source printed circuit board by ozgend, from the ozgend/hd-mcu repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 87.9 × 88 mm with 53 parts on 40 nets, routed with 354 tracks and 1 via.

It is built around the CD4051. It belongs with the sensors and measurement and radio and wireless boards and the RP2040 boards of this library.

Main components

1

README

readme.md

hd-mcu

bluetooth supported mcu for harley davidson 99-03 with raspberry pi pico

this is not a ecu but a diy -and for fun- project for a monitoring hardware via an mcu since there is no can-bus support for 99-03 models. it replaces the default turn signal module (tsm) to provide monitoring features for battery voltage, rpm, voes, ignition, and external thermo sensors via bluetooth to the mobile application. it does not involve a reverse engineering for the original hd-tsm module.

  • programmable idle timeout for turn signal
  • pcb provides signal switching via h-bridge module or mosfet + oc
  • built-in battery voltage sensor
  • built-in rpm reader
  • built-in temperature sensor via rpi-pico
  • aux inputs for ignition and voes signals (may require custom ignition module ie. ultima/dyna 2000i)
  • vehicle information with editable fields for maintenance records
  • external 6x thermocpouler raiser for max6670
  • supports up to 8x thermocpouler sensors for various purposes

icon

features

  • hardware serial
    • raw ft232 usb serial
  • bluetooth serial
    • raw bluetooth serial (hc-06 @ 9600 bps)
    • mobile app
  • data polling/broadcasting
    • reduced power consumption
    • reduced cpu clock usage
  • turn signal flasher module
    • left/right turn signal flasher
    • hazard flasher
    • flash on startup
    • adjustable flash rate
  • throttle control module
    • linear hall sensor input
    • servo pwm output
    • adjustable base parameters
    • adjustable idle speed
    • [ ]
    • adjustable throttle curves
  • supported sensor inputs
    • multiplexed thermocouples
      • up to 8 thermocouples
    • direct sensor inputs
      • uptime counter (onboard)
      • mcu voltage (onboard)
      • temperature (onboard)
      • vbus input (onboard)
      • battery voltage input
      • rpm input
      • speed input
    • tpms
      • 433mhz receiver implementation
      • tpms decoder / man-i or man-ii (tbd)
    • ignition module
      • dyna 2000i / ultima 2000i timer & pickup
      • programmable ignition advance
        • advance curve
        • temp compensation
        • rpm compensation
        • wideband o2 sensor for afr

software

mobile app

  • platform

    • react 18.2.0
    • react-native: 0.73.2
  • react-native

    • android
    • ios

mobile app ui

back

mcu firmware

hardware

assembly

  • 12v-5v buck converter / switching regulator
  • raspberry pi pico
  • hc-06 bluetooth module
  • TSM / turn signal module
    • (option-1) - with mosfet extension board
    • (option-2) - l298n h-bridge driver module
  • THE / thermocouple module
    • cd4051 multiplexer
    • max6675 thermocouple digitizer
      • datasheet
      • k-type thermocouple (maximum of 8)
  • TCM / throttle control module
  • 5v super capacitor
  • 5805 voltage regulator
  • 33k resistor
  • 10k resistor
  • 7.5k resistor
  • 4.7k resistor
  • 1k resistor
  • 1n4001 diode

pcb

front front

back back

blueprint raw

setup & building & installing

  • initialization

    bash
    git clone
    npm run install
  • cook everything

    bash
    npm run build
  • create mcu firmware

    bash
    npm build:mcu
  • flash firmware to pico

    bash
    npm run flash:mcu -- /dev/tty.usbmodem2XXX
  • create mobile app

    • create local build

      bash
      npm run build:app
    • create distributable bundle .apk

      bash
      nom run bundle:app

usb serial interface

  • usb: 115200 bps
  • bt: 9600 bps

service interaction

  • query only: [SVC]+[CMD]\n
  • set svc data: [SVC]+[CMD]=[DATA]\n

service list:

servicedescription
SYSmcu information system
THEthermocouple sensor module
TSMturn signal module
TCMthrottle control module
VHCvehicle healthcheck module
VHIvehicle information system

command list

commanddescription
INFOget information from service
DATAget data from service
SETsend data to service
STARTstart monitoring
STOPstop monitoring

TSM extended command set

commanddescription
LEFTleft turn signal
RIGHTright turn signal
ALLhazard signal
NONEturn signal off

module interaction

  • query only: [MOD]+[CMD]\n

module list:

namedescription
M0main mcu module

command list

commanddescription
DIAGexecute diagnostic
STARTstart ON_DEMAND services in module and publish data
STOPstop ON_DEMAND services in module and stop publishing data
LIST_ALLlist all registered services in module
LIST_RUNlist running/active services in module

Parts

53
QtyValueFootprintReferences
11, , , , , , , , , ,
11N4Connector_PinHeader_2.54mm:Socker_PinHeader_1x05_P2.54mm_Dualside1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5
10R_Axial_DIN0204_L3.6mm_D1.6mm_P2.54mm_VerticalResistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P2.54mm_Vertical->, ->, 7K, 7K, 10K, 10K, R1K, R1K, R1K, R2K
2N1Connector_PinHeader_2.54mm:Socker_PinHeader_1x05_P2.54mm_Dualside1, 1
2PinSocket_1x03_P2.54mm_VerticalConnector_PinSocket_2.54mm:PinSocket_1x03_P2.54mm_VerticalLSIG 7805, RSIG 7805
1clipboard:025a530c-414d-4610-914f-198754de7740
1CD4051Package_DIP:DIP-16_W7.62mm_LongPadsCD4051
1N6Connector_PinHeader_2.54mm:Socker_PinHeader_1x05_P2.54mm_Dualside6
1N7Connector_PinHeader_2.54mm:Socker_PinHeader_1x05_P2.54mm_Dualside7
1N8Connector_PinHeader_2.54mm:Socker_PinHeader_1x05_P2.54mm_Dualside8

The 41 most common of 53 parts.

More from ozgend/hd-mcu

1
  • 2 layers82.4 × 53.6 mmPico hd mcu v3, the printed circuit board in 3D

    Pico hd mcu v3

    ozgend/hd-mcu

    bluetooth supported mcu for harley davidson 99-03 with raspberry pi pico

    47 parts4GPL-3.0

Similar boards

  • 2 layers149.3 × 104.5 mmSequencer, the printed circuit board in 3D

    Sequencer

    michd/modular-synth

    Building a hardware modular synthesizer, this is where I'll collect module schematics and hardware designs.

    132 parts20
  • 2 layers49.5 × 98 mmMatcher, the printed circuit board in 3D

    Matcher

    elektrouwe/YATMA

    Yet Another Transitor MAtcher

    86 parts7CC0-1.0
  • 2 layers141.3 × 54.8 mmLaptop kbrd, the printed circuit board in 3D

    Laptop kbrd

    dileepvr/novenaX_kicad

    These are kicad schematics and design files for PCBs used in the Novena-X project, which aims to build a laptop around the Novena motherboard released by Kosagi.

    148 parts1
  • 2 layers57.3 × 105 mmM4, the printed circuit board in 3D

    M4

    minisystem/M4

    Eurorack MIDI Processing Unit

    182 parts1
  • 2 layers190 × 109 mmIOB v3.2.1, the printed circuit board in 3D

    IOB v3.2.1

    ADFTech/xtec-uc-ip-main-pcb

    KiCad hardware repo for the UC-IP main PCB (currently: IOB board family). This README documents the review-and-release process used to get a schematic/PCB change from an engineer's desk to fabrication.

    538 parts
  • 2 layers100 × 100 mmChroma luma invert, the printed circuit board in 3D

    Chroma luma invert

    cyberboy666/chroma_luma_invert

    analog video colour and brightness effect - adapted from a rob schafer design

    65 partsGPL-3.0
  • 2 layersTrial1, the printed circuit board in 3D

    Trial1

    koson/KicadProject

    123 parts
  • 2 layers217.1 × 393.8 mmSweepv2, the printed circuit board in 3D

    Sweepv2

    davidphilipbarr/Sweep

    Sweep - a small promicro based keyboard inspired by the Ferris.

    53 parts2.1k

Questions

How big is the Pico hd mcu v2 PCB?

It measures 87.9 × 88 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Pico hd mcu v2 use?

53 parts, built around the CD4051. 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 Pico hd mcu v2 KiCad files?

From the ozgend/hd-mcu repository on GitHub, at the commit this page was made from: the board is pcb/pico-hd-mcu-v2/pico-hd-mcu-v2.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Pico hd mcu v2 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).