Skip to the content
PCBKitNew board
4 layers34.9 × 30.5 mmVsf m484, the printed circuit board in 3D

Versaloon Software Framework -- a tiny preemptive-capable event-driven incremental software framework for embedded systems

Size
34.9 × 30.5 mm
Copper layers
4
Thickness
1.6 mm
Parts
81
Nets
133
Pads
352
Tracks, vias
863, 123
Pours
6
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
17 Apr 2019
Updated
2 Nov 2026

Overview

Vsf m484 is an open-source printed circuit board by vsfteam, from the vsfteam/vsf repository on GitHub, published under the Apache-2.0 licence. It is a 4-layer board of 34.9 × 30.5 mm with 81 parts on 133 nets, routed with 863 tracks and 123 vias.

It is built around the SS14 and 1SS400G. Its parts include 27 resistors, 24 capacitors, 9 diodes, 6 connectors and 5 ICs.

Main components

2

README

README.md

VSF -- Versaloon Software Framework

GitHub

windows-build cmake-native-build cmake-arm-cross-build

vsf.linux windows build cmake-arm-cross-build cmake-native-build

vsf.demo build

中文 |

Full name of VSF is "Versaloon Software Framework". VSF is an open-source software framework for embedded applications based on Apache2 license. VSF includes hal, a pre-emptive multi-thread kernel, services and components. VSF is implemented by C language with object-oriented programming methods(PLOOC).

Overall Framework

Catalogue

NameDescription
documentdocument
doxygenconfiguration of doxygen
exampledemo codes
hardwarehardware of VSF development boards
patchsome patches(for 3rd-party components, etc)
script
 cmakecmake scripts
sourcesource code of VSF
 componentcomponent(filesystem, stacks, UI, drivers, etc)
 halhardware abstraction layer(ARCH support, chip drivers)
 kernelVSF pre-emptive/collaborative kernel
 osa_servicesoftware services based on kernel
 servicesoftware services
 shellshell to use application software for other systems
 utilitiesbase software utilities(preprocessor, compiler, list, etc)

Kernel

Pre-emptive kernel based on event-driven architecture, supporting mcs51, 8bit MCU, 32/64 bit ARM, riscv, x86, etc.

  • event-driven architecture, sleep if no event occurred, lower-power naturally
  • in pre-emptive mode, task switch is implemented by hardware swi(software interrupt), priority of task is the priority of the swi.
  • pre-emptive scheduling for tasks with different priority, collaborative scheduling for tasks with the same priority
  • can run in other RTOS as a task, or as swi ISR
  • different tasks
    • event handler task -- minimum resources usage, 20 bytes ram usage for minimum configuration, 40 bytes ram usage for normal configuration
    • pt task
    • thread with dedicated stack -- depending on setjmp in libc
    • fsm task
    • other tasks in shell, eg pthread
  • IPC: semaphore, mutex, trigger, queue, etc

Components

  • Reasonable framework for code re-use
  • declarative development model
  • standard interface, standard port for 3rd-party components
  • software components
    • distbus -- distributed bus framework
    • fifo
    • heap
    • json
    • pool
    • stream
    • trace
  • Components
    • fs -- filesystem with vfs support
    • input -- input sub-system
    • mal -- memory abstraction layer(normally known as 'block' device)
    • scsi -- SCSI device
    • tcpip -- TCPIP stack and netdrv drivers
    • ui -- UI and display drivers
    • usb -- USB host/slave stacks
    • bt -- bt stack(using btstack)

HAL -- hardware abstraction layer

  • standard hal interface and API -- eg: vsf_spi_init can be used with hardware SPI, GPIO emulated SPI, SPI from external usb device, etc
  • IP core driver -- simplify porting by implement clock, reset, interrupt functions which is not provided by IP core
  • template for different interfaces and functionalities
  • interfaces
    • PM
    • GPIO
    • SPI
    • I2C
    • PWM
    • ADC
    • SWI
    • USART
    • FLASH
    • USB
    • ethernet

Shell

To use applications from other system, shell can be used.

  • SDL -- use applications based on SDL directly
  • linux -- use applications based on linux directly
    • posix
    • devfs
    • socket
    • console
    • libraries
      • libusb
      • libgen
      • libsdl2
      • libcurl
      • etc

3rd-party

SoftwarePathLicenseLink
btstacksource/component/3rd-party/btstack/rawOtherhttps://github.com/bluekitchen/btstack
coremarksource/component/3rd-party/coremark/rawApachehttps://github.com/eembc/coremark
freetypesource/component/3rd-party/freetype/rawFreeTypehttps://freetype.org/
zlibsource/component/3rd-party/zlib/rawzlibhttp://zlib.net/
nuklearsource/component/3rd-party/nuklear/rawMTIhttps://github.com/Immediate-Mode-UI/Nuklear
nnomsource/component/3rd-party/nnom/rawApache 2.0https://github.com/majianjia/nnom
luasource/component/3rd-party/lua/rawMIThttps://www.lua.org/
lwipsource/component/3rd-party/lwip/rawBSDhttps://savannah.nongnu.org/projects/lwip/
libpngsource/component/3rd-party/libpng/rawPNG2https://libpng.sf.net
libjpeg-turbosource/component/3rd-party/libjpeg-turbo/rawBSDhttps://libjpeg-turbo.org/
SDL_ttfsource/shell/media/sdl2/3rd-party/SDL_ttfzlibhttps://hg.libsdl.org/SDL_ttf/
SDL_imagesource/shell/media/sdl2/3rd-party/SDL_imagezlibhttps://hg.libsdl.org/SDL_image/
lvglsource/component/3rd-party/lvgl/raw/lvglMIThttps://lvgl.io/
lv_lib_freetypesource/component/3rd-party/lvgl/extension/lv_lib_freetype/rawMIThttps://lvgl.io/
CMSISsource/utilities/compiler/arm/3rd-party/CMSISApache 2.0https://github.com/ARM-software/CMSIS_5
PLOOCsource/utilities/3rd-party/PLOOC/rawApache 2.0https://github.com/GorgonMeducer/PLOOC
mbedtlssource/component/3rd-party/mbedtls/rawApache 2.0https://tls.mbed.org/
Segger_RTTsource/component/3rd-party/segger/raw/RTTseggerhttps://wiki.segger.com/RTT
Segger_SystemViewsource/component/3rd-party/segger/raw/SystemViewseggerhttps://wiki.segger.com/SystemView
nuconsolesource/component/3rd-party/nuconsole/rawnuvotonhttps://www.nuvoton.com.cn/
AIC8800M_SDKsource/hal/driver/AIC/AIC8800/vendoraichttp://www.aicsemi.com/
awtkLGPL 2.1https://www.zlg.cn/index/pub/awtk.html
littlefssource/component/3rd-party/littlefs/rawBSDhttps://github.com/littlefs-project/littlefs
getopt_longsource/shell/sys/linux/lib/3rd-party/getoptOpenBSDhttps://github.com/openbsd/src
regexsource/shell/sys/linux/lib/3rd-party/regexOpenBSDhttps://github.com/openbsd/src
fnmatchsource/shell/sys/linux/lib/3rd-party/fnmatchBSDhttp://www.jbox.dk/sanos/source/lib/fnmatch.c.html
globsource/shell/sys/linux/lib/3rd-party/globBSDhttps://github.com/cloudius-systems/musl
setjmpsource/hal/arch/x86/winBSD
libtuvsource/shell/sys/linux/lib/3rd-party/libtuv/rawApache 2.0https://github.com/Samsung/libtuv
scguisource/component/ui/tgui/view/scgui_view/scgui.c&hMIThttps://gitee.com/li_yucheng/scgui

Parts

81
QtyValueFootprintReferences
70.1uFCapacitor_SMD:C_0402_1005MetricC7, C8, C9, C15, C16, C22, C24
7TestPointSimonQian:TestPoint_SMDTP1, TP2, TP3, TP4, TP5, TP6, TP7
51uFCapacitor_SMD:C_0402_1005MetricC4, C13, C20, C21, C23
41KResistor_SMD:R_0402_1005MetricR7, R8, R9, R10
420pFCapacitor_SMD:C_0402_1005MetricC0, C1, C25, C26
4300Resistor_SMD:R_0402_1005MetricR17, R18, R19, R20
433Resistor_SMD:R_0402_1005MetricR12, R14, R15, R16
30Resistor_SMD:R_0402_1005MetricR2, R3, R13
3100KResistor_SMD:R_0402_1005MetricR21, R22, R23
3NCResistor_SMD:R_0402_1005MetricR24, R25, R26
2100uFCapacitor_SMD:C_1206_3216MetricC5, C6
210KResistor_SMD:R_0402_1005MetricR1, R11
22.2uFCapacitor_SMD:C_0402_1005MetricC18, C19
233RResistor_SMD:R_0402_1005MetricR5, R6
24.7uFCapacitor_SMD:C_0402_1005MetricC14, C17
2AP1117-33Package_TO_SOT_SMD:SOT-89-3U1, U4
2Crystal_GND24Crystal:Crystal_SMD_2520-4Pin_2.5x2.0mmY0, Y2
2GREENLED_SMD:LED_0402_1005MetricD5, D7
2REDLED_SMD:LED_0402_1005MetricD4, D6
2SS14Diode_SMD:D_SMAD0, D8
2USB_B_MicroConnector_USB:USB_Micro-B_Wuerth_629105150521J2, J4
110uFCapacitor_SMD:C_0402_1005MetricC27
110uFCapacitor_SMD:C_1206_3216MetricC28
11SS400GDiode_SMD:D_0603_1608MetricD3
1200R %1Resistor_SMD:R_0402_1005MetricR4
151KResistor_SMD:R_0402_1005MetricR0
1Conn_01x05Connector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_VerticalJ5
1Conn_02x05_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x05_P2.54mm_VerticalJ6
1Conn_02x10_Odd_EvenSimonQian:PinSocket_2x10_P2.54mm_Horizontal_2Layer_NoSilksJ1
1GD25Q_8Psimonqian:WSON-8_8x6mm_P1.27mmU2
1LEDLED_SMD:LED_0402_1005MetricD2
1LED_ARGBSimonQian:LED_RGB_0603D1
1M4842U_64Package_QFP:LQFP-64_7x7mm_P0.4mmU0
1NUC120_64Package_QFP:LQFP-64_10x10mm_P0.5mmU3
1SW_DIP_x01SimonQian:Key_2Pin_2.9X4.3SW0
1USB_ASimonQian:USB_AF_SinkJ3

Questions

How big is the Vsf m484 PCB?

It measures 34.9 × 30.5 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Vsf m484 use?

81 parts, built around the SS14 and 1SS400G. 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 Vsf m484 KiCad files?

From the vsfteam/vsf repository on GitHub, at the commit this page was made from: the board is hardware/M484/vsf_m484.kicad_pcb and its schematic hardware/AC6321A/vsf_ac6321a.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Vsf m484 design in my own project?

Its repository publishes it under the Apache-2.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).

More from vsfteam/vsf

11
  • 2 layers25.4 × 33 mmPegboard, the printed circuit board in 3D

    Pegboard

    vsfteam/vsf

    Versaloon Software Framework -- a tiny preemptive-capable event-driven incremental software framework for embedded systems

    222 parts341Apache-2.0
  • 2 layers62.2 × 99.1 mmVsf gd32h759, the printed circuit board in 3D

    Vsf gd32h759

    vsfteam/vsf

    Versaloon Software Framework -- a tiny preemptive-capable event-driven incremental software framework for embedded systems

    127 parts341Apache-2.0
  • 2 layers155.8 × 76.2 mmGamepad, the printed circuit board in 3D

    Gamepad

    vsfteam/vsf

    Versaloon Software Framework -- a tiny preemptive-capable event-driven incremental software framework for embedded systems

    100 parts341Apache-2.0
  • 4 layers36.8 × 57.2 mmVsf aic8800m40b, the printed circuit board in 3D

    Vsf aic8800m40b

    vsfteam/vsf

    Versaloon Software Framework -- a tiny preemptive-capable event-driven incremental software framework for embedded systems

    92 parts341Apache-2.0
  • 2 layers50.8 × 69.2 mmUikit, the printed circuit board in 3D

    Uikit

    vsfteam/vsf

    Versaloon Software Framework -- a tiny preemptive-capable event-driven incremental software framework for embedded systems

    51 parts341Apache-2.0
  • 2 layers36.8 × 57.1 mmVsf ac6321a, the printed circuit board in 3D

    Vsf ac6321a

    vsfteam/vsf

    Versaloon Software Framework -- a tiny preemptive-capable event-driven incremental software framework for embedded systems

    42 parts341Apache-2.0
  • 2 layers47.8 × 27.4 mmVsf stm32h7b0, the printed circuit board in 3D

    Vsf stm32h7b0

    vsfteam/vsf

    Versaloon Software Framework -- a tiny preemptive-capable event-driven incremental software framework for embedded systems

    37 parts341Apache-2.0
  • 2 layers27.9 × 50.8 mmVsf aic8800, the printed circuit board in 3D

    Vsf aic8800

    vsfteam/vsf

    Versaloon Software Framework -- a tiny preemptive-capable event-driven incremental software framework for embedded systems

    33 parts341Apache-2.0
  • 2 layersJTAG ext, the printed circuit board in 3D

    JTAG ext

    vsfteam/vsf

    Versaloon Software Framework -- a tiny preemptive-capable event-driven incremental software framework for embedded systems

    14 parts341Apache-2.0
  • 2 layers36.8 × 33 mmAdapter, the printed circuit board in 3D

    Adapter

    vsfteam/vsf

    Versaloon Software Framework -- a tiny preemptive-capable event-driven incremental software framework for embedded systems

    5 parts341Apache-2.0
  • 2 layers30.5 × 45.7 mmMux, the printed circuit board in 3D

    Mux

    vsfteam/vsf

    Versaloon Software Framework -- a tiny preemptive-capable event-driven incremental software framework for embedded systems

    3 parts341Apache-2.0

Similar boards

  • 2 layers80 × 129.1 mmSmart Plant, the printed circuit board in 3D

    Smart Plant

    JGAguado/Smart_Plant

    The Smart Plant is a board that can be plugged directly on the soil, close to the plant, that allows the measurement of the environment (soil moisture, environment temperature & illuminance), and presents the…

    75 parts303
  • 2 layers128 × 88 mmFireball revD, the printed circuit board in 3D

    Fireball revD

    ugcs/ddc

    Drone Show Software is software designed for drone shows, allowing flight path planning as well as control of dozens of drones simultaneously in a synchronized manner.

    64 parts223
  • 4 layers113.5 × 105.5 mmMultistepper, the printed circuit board in 3D

    Multistepper

    eddyem/stm32samples

    Code samples and ready projects based on bare-metal STM32

    243 parts208
  • 2 layers66.8 × 34 mmESP8266, the printed circuit board in 3D

    ESP8266

    MaloufSleep/ME-ESP8266

    Malouf Electronics - ESP8266 Dev Board

    127 parts204MIT
  • 2 layers40 × 53.6 mmCanLite, the printed circuit board in 3D

    CanLite

    voltlog/CanLite

    ESP32 based CAN development board

    42 parts192GPL-3.0
  • 2 layers99.1 × 76.2 mmPico dev, the printed circuit board in 3D

    Pico dev

    execuc/u2if

    USB to interfaces implementing MicroPython "machine" module functionalities on a computer.

    36 parts182
  • 2 layers40 × 100 mmBack pcb, the printed circuit board in 3D

    Back pcb

    ZeroPhone/ZeroPhone-PCBs

    PCB files for ZeroPhone - for gerbers and schematics, go to "Releases" tab!

    118 parts148GPL-3.0
  • 2 layers100 × 85 mmVNA, the printed circuit board in 3D

    VNA

    profdc9/VNA

    Vector Network Analyzer based on the STM32F103C8T6 bluepill

    178 parts93