Your Premier Kicad PCB Manufacturer In China

PCBMay has earned a good reputation and a better image for over a decade in the manufacturing field. As a China-based professional manufacturer, we offer you our exceptional Kicad PCB. You can avail of our products at affordable costs. 

  • Adhering to the UL, ISO, and REACH standard certification
  • More than ten years of rich manufacturing history
  • Double inspection before delivery for quality assurance
  • 24/7 Available for online services
Get Our Best Quotation
Upload File

Kicad PCB is Your Reliable Choice to Delight Your Customer

PCBMay is your reliable fabricator and supplier of various PCB prototyping components, like Kicad PCB. During the past ten years in the industry, we focus on giving our customers outstanding quality Kicad PCB. This is also custom-made to fulfill your satisfaction.

PCBMay always wants the best for your project applications. For that reason, we are providing only quality innovative Kicad PCB. Place your orders today, or talk with our professionals about your concerns!

Types of Kicad PCB Meet Your Requirements

Electronics Schematic Design Kicad PCB

We are your expert electronics schematic design Kicad PCB manufacturer. It is RoHS certified. We used raw materials during the processing.

Kicad Design & Layout Assembly

Available in 1.6mm up to 3.2mm board thicknesses. All our Kicad design & layout assembly services are offered at reasonable costs. 

Kicad Power Tools PCB

 The Kicad power tools PCB runs with precision tolerance and high-temperature accuracy. Proven and passed through many inspections.

Openbiosprog-Spi PCB Kicad 0.1

Openbiosprog-spi PCB Kicad 0.1 is accessible in different soldering mask colors. Offered at very competitive rates to fit your budget.

Professional Quality Kicad PCB

Professional quality Kicad PCB runs with 433.92MHz frequency. Please show us your design for the customization process.

Secondary IO Kicad PCBs

For different applications, whether automotive or electronic, secondary I/O Kicad PCB is perfect for you. It has an outstanding layout.

Why Choose PCBMay Kicad PCB

Choose PCBMay to custom your ideal Kicad PCB requirements. It will be your best decision! We gained rich experience in manufacturing various types of Kicad PCB. All are high-tech and brand-new solutions for your upcoming projects or business.

PCBMay is your reliable manufacturer consisting of professional engineers, skilled inspectors, and designers. We make sure to inspect your Kicad PCB’s quality to ensure zero defects. As qualified manufacturer, we will keep on serving you with our great services and product solutions.

Book orders today! We make sure on-time delivery.

VPC Plating Line

Related Kicad PCB

3D Modeling Kicad PCB
3D Modeling Kicad Circuit Board
We offer outstanding quality 3D modeling Kicad PCB that suits automotive, industrial, residential, and many uses.
Factory Price Kicad PCB
Factory Price Kicad Circuit Board
Both OEM and ODM services for your Kicad PCB is available. Customizable based on your given specs.
High Quality Kicad PCB
High Quality Kicad Circuit Board
We will give you our latest version of high quality Kicad PCB. It is RoHS, UL, and ISO approved.
Kicad Hardware PCB Design
Kicad Hardware PCB Design
Our Kicad hardware PCB design is available in plenty of sizes, colors, thicknesses, and power tolerance.
Kicad Making Cutter Custom Kicad PCB
Kicad Making Cutter Custom Kicad Circuit Board
Kicad making cutter custom Kicad PCB provides normality and consistency. It also ensures liable use.
Kicad Panelization PCB
Kicad Panelization PCB
Kicad panelization PCB provides long-term use. This can highly benefits your automotive and electronic applications.
Multi-Layer Kicad PCB
Multi-Layer Kicad Circuit Board
Durable and cost-effective at a price. The multi-layer Kicad PCB provides a massive application.
Negative Copper Kicad PCB
Negative Copper Kicad Circuit Board
Our negative copper Kicad PCB features flexible components that make it convenient in all required installations and repairs.

Kicad PCB Production Details As Following Up

Brown Oxide
PTH Line
VCP Plating   AOI  Exposure E-Test
Layer Count1-40layers
Base MaterialKBShengyiShengyiSF305FR408FR408HRIS410FR406GETEK370HRIT180ARogers4350BRogers4000PTFE Laminates(Rogers seriesTaconic seriesArlon seriesNelco series)Rogers/Taconic/Arlon/Nelco laminate with FR-4 material(including partial Ro4350B hybrid laminating with FR-4)
Board TypeBackplane、HDI、High multi-layer 、blind&buried PCB、Embedded Capacitance、Embedded resistance board 、Heavy copper power PCB、Backdrill.
Board Thickness0.2-5.0mm
Copper ThicknessMin. 1/2 OZ, Max. 10 OZ
PTH Wall25um(1mil)
Maximum Board Size1100*500mm(43”*19”)
Min laser drilling size4mil
Min. Spacing/Tracing2.7mil/2.7mil
Solder MaskGreen, Black, Blue, Red, White, Yellow,Purple matte/glossy
Surface TreatmentFlash gold(electroplated gold)ENIGHard goldFlash goldHASL Lead freeOSPENEPIGSoft goldImmersion silverImmersion TinENIG+OSP,ENIG+Gold finger,Flash gold(electroplated gold)+Gold finger,Immersion silver+Gold finger,Immersion Tin+Gold finger.
Min. Annular Ring3mil
Aspect ratio10:1(HASL Lead freeHASL LeadENIGImmersion TinImmersion silverENEPIG);8:1(OSP)
Impedance control±5ohm(<50ohm), ±10%(≥50ohm)
Other TechniquesBlind/Buried Via
Gold Fingers
Press Fit
Via in Pad
Electrical Test

Here there’re many laminate material datasheets, they’re useful and helpful for you, please see them:

TU-872Modified EpoxyDOWNLOAD2003403.8-4.03.8
RO 3010Cer/PTFEDOWNLOAD50010.2
RO 4003Hydrocarbon/CerDOWNLOAD>2804253.38
RO 4350BHydrocarbon/CerDOWNLOAD>2803903.48
RT/duroid 5880PTFE/GlassDOWNLOAD5002.2
ISOLAPolyclad 370HRFR4DOWNLOAD1703404.8-5.1
HitachiMCL-BE- 67GModified EpoxyDOWNLOAD1403404.94.4
MCL-LX-67YSpecial LaminateDOWNLOAD185-195325-3453.4-3.6
NelcoN4000-13Modified EpoxyDOWNLOAD210-2403653.73.6
N4000-13EPModified EpoxyDOWNLOAD210-2403503.43.2
N4000-13SIModified EpoxyDOWNLOAD210-2403503.43.2
N4000-13EP SIModified EpoxyDOWNLOAD210-2403503.43.2
ArlonArlon 25NCerDOWNLOAD2603.38
Arlon 25FRCerDOWNLOAD2603.58
Arlon 33NPolymideDOWNLOAD>2503534
Arlon 35NPolymideDOWNLOAD>2503634.2
Arlon 85NPolymideDOWNLOAD2503874.2
StablcorST325DOWNLOADThermal conductivity:75w/m.k(with 1oz copper)
ST10DOWNLOADThermal conductivity:325w/m.k(with 1oz copper)
Bergquistht-04503DOWNLOADThermal conductivity:2.2w/m.k(with 1oz copper)


PCBMay offers flexible shipping methods for our customers, you may choose from one of the methods below.

1. DHL

DHL offers international express services in over 220 countries.
DHL partners with PCBMay and offers very competitive rates to customers of PCBMay.
It normally takes 3-7 business days for the package to be delivered around the world.

DHL Forwarder

2. UPS

UPS gets the facts and figures about the world’s largest package delivery company and one of the leading global providers of specialized transportation and logistics services.
It normally takes 3-7 business days to deliver a package to most of the addresses in the world.

UPS Forwarder

3. TNT

TNT has 56,000 employees in 61 countries.
It takes 4-9 business days to deliver the packages to the hands
of our customers.

TNT Forwarder

4. FedEx

FedEx offers delivery solutions for customers around the world.
It takes 4-7 business days to deliver the packages to the hands
of our customers.

Fedex Forwarder

5. Air, Sea/Air, and Sea

If your order is of large volume with PCBMay, you can also choose
to ship via air, sea/air combined, and sea when necessary.
Please contact your sales representative for shipping solutions.

Note: if you need others, please contact your sales representative for shipping solutions.

On our website you can use the following payment methods:

Telegraphic Transfer(TT): A telegraphic transfer (TT) is an electronic method of transferring funds utilized primarily for overseas wire transactions. It’s very convenient to transfer.

Bank/Wire transfer: To pay by wire transfer using your bank account, you need to visit your nearest bank branch with the wire transfer information. Your payment will be completed 3-5 business days after you have finished the money transfer.

Paypal: Pay easily, fast and secure with PayPal. many other credit and debit cards via PayPal.

Credit Card: You can pay with credit card: Visa, Visa Electron, MasterCard, Maestro.

    PCBMay- Your Premier Kicad PCB Manufacturer

    Do you need the best Kicad PCB solution? Glad you’re here! You can rely upon PCBMay capabilities in manufacturing your ideal Kicad PCB. We are experts in creating the design, layout, production, and assembly services since established a decade ago.

    Indeed, PCBMay has been involved in the PCB prototyping industry for more than ten years. And one of our on-demand products is Kicad PCB. This is the ideal solution for your PCB business projects, repairs, or installments.

    Generally speaking, Kicad PCB covers various industries, such as the mechanical industry, commercial, residential, automotive, and more. We proudly provide PCB with numerous thicknesses, sizes, power tolerance, solder mask, and other specifications. Also, as requested, we can provide a custom Kicad PCB.

    PCBMay has all the qualities you are looking for in a PCB. To make sure, we double-check the quality before shipment. Our elite PCB engineers, technicians, and sourcing team courageously give their best to develop your PCB requirements. If you have your own design of the Kicad printed circuit board, we will take that as a reference during the production. This enables us to make the Kicad PCB exactly to your design and purposes.

    We are using our advanced production platforms and occupy over 13,000 workshop facilities. Due to this, we can handle your custom Kicad PCB completely. No doubt, PCBMay can support your PCB-related business.

    Each PCB undergoes in-depth inspections to ensure quality and reliability. We ensure it passes the Aging testing, FCT, AOI, SPI, BGA, ICT, and X-RAY inspections. After the testing process, we are confident you will receive no defects Kicad PCB from PCBMay.

    Kicad PCB

    PCBMay is your most reliable partner to help you achieve and develop more profitable, wealthier Kicad PCB sales marketing. Our goal is to help your brand be known and attract more customers.

    There are thousands of customers who trust PCBMay capabilities when it comes to Kicad PCB production. You can trust us too! It will be an honor to serve you.

    Please leave us a message right away!

    Kicad PCB: An Ultimate FAQ Guide

    It is a very popular type of printed circuit board. We design these PCBs using Kicad software for all of their detailed specifications.

    PCBMay is one of the most expanding Kicad PCB manufacturing companies providing service in over 60 countries worldwide. We are dedicated to building the best-quality Kicad PCB that is as well as best at efficiency, functionality, durability.

    This FAQ guide contains all information regarding Kicad PCB which will lead your knowledge about this PCB. If you are eager to know, go through this FAQ guide to the end.

    What Is A Kicad PCB?

    It is a type of printed circuit board that uses Kicad software for the designing process. Kicad is a free software retinued for EDA or Electronic Design Automation. The software especially makes possible the schematics design for circuit boards and then their transformation to printed circuit board designs.

    KiCad PCB

    Kicad PCB

    It possesses a balanced environment for the schematic design and also the layout design. You will get a materials list, Gerber files, artwork, 3D views of the printed circuit board, and the component in the Kicad PCB.

    What Are The Features Of Kicad PCB?

    It has some individual features. The PCB is designed in a balanced environment in all the steps of the designing process. The designing process consists of steps like PCB layout, schematic design, library editing, and generating Gerber files.

    KiCad Single Layer PCB

    Kicad Single Layer PCB

    It uses cross-platform software that is written in C++. you can add customized components to your Kicad PCB. The custom components are usually found per-project basis or you can install them to apply in a project.

    Kicad PCB can use third-party libraries for components that are available. Here the configuration files are well organized in plain text. It is able to interface systems of version control and to do the scripts of automated component generation.

    How Does Kicad PCB Work?

    It is designed with the help of the software Kicad. Though it has similarities with other PCB design software, Kicad also possesses a unique work system. Like, Kicad keyboard PCB works in a way that the footprints and the schematic components are separate from each other.

    KiCad Print PCB

    Kicad Print PCB

    Kicad PCB creates the schematic first and then assigns the footprints to the components. The work system has basically two steps that are designing the schematic and laying out the board. We need both the PCB footprint library and the schematic component library to finish off these two steps.

    It comprises many footprints and components. There are also some tools that you can use to make new ones. Kicad printed circuit board also works in a designed flow.

    Watch the following video of the Kicad PCB design tutorial.


    What Are The Advantages Of Kicad PCB?

    There are many advantages of Kicad PCB for which the use of Kicad print PCB is only increasing day by day. Kicad is an excellent tool for designing PCBs. Some main advantages are as follows.

    • Open-source.
    • Unlimited usage
    • Complete features.
    • Kicad PCB design software free download.

    KiCad PCB Design Software Free Download

    Kicad PCB Design Software Free Download

    • Great simulator.
    • Great workflow.
    • Great compatibility.
    • Compatible cross-platform.
    • The standard for industries.
    • Largely configurable.

    How Do You Create A Project In Kicad PCB?

    A project in Kicad print PCB comprises several files that give the idea about the printed circuit board. There is at least a schematic file to explain the PCB functionality. To explain the functionality, the schematic takes the help of labels, wires, and symbols.

    We use this file to set the information for connectivity for the PCB layout. The file also describes which footprint we will use on the PCB. Creating a Kicad flex PCB contains some steps.

    KiCad Panelize PCB

    Kicad Panelize PCB

    First, you start Kicad like any other program. As the Kicad main window opens, we use it to maintain tasks of Kicad at the project level. Then we open or create projects and then open related tools in case we want to edit the project files.

    What Are Copper Zones In Kicad PCB?

    Copper zones are a vital tool in Kicad printed circuit boards. We use this tool to build power planes on the board. It is generally large copper areas on the PCB.

    If we want to create a copper zone in our printed circuit board using the software, we have to select the tool named zone. Then fix the area of the zone. After that, the zone properties dialog opens automatically.

    Then you need to select GND as the net and B.Cu as the layer. You can also take default settings for your board. In that case, check the default settings if you want it, if not, then just change it.

    KiCad Flex PCB

    Kicad Flex PCB

    The zone properties should be according to your requirements. If you want to change something later on, just right-click on the outline of the zone. After that, you can select the properties dialog on the context menu.

    How Do You Make The Connections In Kicad PCB?

    The symbols have lines with a small circle standing out of them. We call the lines pins and the circles at the end of them refer to that the pin is not attached. We use wires to establish the required connections between them.

    First, you need to begin with the wire tool. You need to move the cursor over the output pin end of the amplifier. By clicking the left button, you can begin the wire.

    KiCad PCB new

    Kicad PCB new

    We need to connect the rest of the board following the same procedure. We will not connect the leave V-pin for now of the amplifier. You may also have additional changes of direction while working with the wire tool.

    A wire can be started or ended anywhere by left-clicking on another wire. There will also generate junction dots where the wires cross.

    After that, the V-pin needs to be connected to the associated wire. It will represent the low voltage potential of the printed circuit board located on the schematic’s bottom in the shape of a horizontal line. We can not proceed with this procedure if some existing wires do not cross.

    However, this will not cause any obstacle as it happens in every schematic to be honest. First, you need to click on the pin and then on the wire. By doing it right, there should not be any appearance of junction dots at the connection point of the amplifier pin and the wire.

    What Is The Layout Of Kicad PCB?

    You will have a Kicad PCB layout on the software. The Kicad PCB layout should be as flawless as possible. Because its layout will work as the base for our PCB when we proceed with the manufacturing process.

    KiCad PCB Layout

    Kicad PCB Layout

    The manufacturer creates the board following the connectivity information of the schematics. The manufacturer uses traces to attract the footprints’ pads.

    its layout can vary from one Kicad PCB to another one according to the requirement of the application due to customization. However, there is a basic Kicad PCB layout that follows every Kicad board. The basic layout is as follows.

    • Opening the editor.
    • Panning and zooming.
    • Getting the information of the schematic.
    • Item visibility and handling layers.
    • Ratsnest lines.
    • Placement of the footprints.
    • Outlining the board.
    • Trace adding.
    • Checking the board.
    • Inspecting board in 3D.

    How Can You Organize The Footprint Placing In A Kicad PCB?

    Placing the footprints on the Kicad PCB new is a very important step. At the first, the footprints are located here and there randomly on the board. we will get a suitable layout by placing the footprints correctly.

    KiCad Keyboard PCB Layout

    Kicad Keyboard PCB Layout

    The process varies largely regarding the connection complexity and the footprints number. If you are able to place the footprints in a good way, it will decrease ratsnest crossing numbers as well as keep the parts near together. You can move a footprint by selecting it and also rotate it.

    Check where the footprint perfectly sets by moving it around the board and then fit it. We usually do this procedure according to the grid. Sometimes the selected grid may be a little rough as well.

    What Is The Best Process To Cut The Edge Of Kicad PCB?

    We need to define the dimensions and shape of our Kicad PCB layout. This process can be done either at the start of the layout processor at the end of the process. It is preferable to do this process at the beginning as it will set the design in a shape before placing the traces and footprints.

    KiCad PCB Design

    Kicad PCB Design

    If you do this process at the end, you may need to redesign the board which will take a lot more time and effort. We need to select the edge first in order to have the PCB border. Then using the layers manager, we will cut the layers.

    The edge cutting layer is an important one as it has the information for the manufacturer. It contains information about where the board should be cut. The information gets exported while exporting Gerber files.

    How Do You Add Traces In Kicad PCB?

    Adding traces is a crucial step in Kicad PCB new once we place the footprints in an organized way. For that, you would need to select the tool named route tracks from the toolbar on the right. After activating the tool, click on pad 1 of R2.

    Now all the pads that require to be attached to this pad will get highlighted. Moving the cursor on the board, a trace will also follow the mouse.

    Kicad has a semi-automatic powerful routing engine that is also called push and shove router or interactive router. The router is always in a walk-around mode by default. So you may move around the cursor anywhere on the board and the router will do its thing, though you need to observe it.

    Traces In KiCad PCB

    Traces In Kicad PCB

    To get the most out of a  router engine, you need to practice a bit and be good at it. For now, we will just attach the trace. You can cancel the added trace by clicking the ESC key. By changing a route’s point, you may assist the interactive router to get the route.

    There is also an option to drag some parts of the traces in order to fine-tune existing traces. After that, we will lay down the remaining traces on the board. You can check the different features of the traces at this point.

    What Is The Design Flow Of Kicad PCB?

    We use Kicad for designing printed circuit boards. There are some basic criteria for designing the board. The Kicad PCB designing process follows some basic steps after installing Kicad the software.

    KiCad PCB Design Tutorial

    Kicad PCB Design Tutorial

    We can split the Kicad PCB designing flow into some steps. Basically, the Kicad PCB design flow goes as follows.

    • Create the project.
    • Design the schematic which includes wires and symbols.
    • Layout the board including footprints, visibility options, board, and trace outline.
    • Improving the schematic by labels, power symbols, electrical test
    • Improving the layout with vias, copper zones, schematic changes, exchanging units, net selection.
    • Getting done for the manufacturing with Gerber export and design rules.

    How Do You Use Vias In Kicad PCB?

    Generally, the copper zone is at the bottom layer of the printed circuit board. There are some surface mount pads on the board’s upper layer as well. These surface mount pads require a connection set to GND.

    Every such pad needs to be connected to the through-hole pad that is the nearest to them. You need to consider zones for this purpose and need to add some vias.

    First, you need to switch on the routing tool that is hotkey x. Then you have to click on pad 2 of R2 that is the GND pad of R2.

    Vias In KiCad PCB

    Vias In Kicad PCB

    There will be a via at this point at the cursor. A trace follows the via back to the beginning position. The active layer will also turn to be the bottom layer at this point.

    Kicad is able to position vias inside the pads. But there may be obstacles in this way in the manufacturing process. You can repeat the same process for the endured ground pads of the OPA.

    Switching layers manually wouldn’t be necessary as if you click on the pad, it will take you to the right layer. But it wouldn’t be the same for the through-hole pads because they have validation on every layer.

    What Is The Manufacturing Process Of Kicad PCB?

    The manufacturing process of Kicad PCB is pretty delicate as well. As we define everything in the design, the manufacturing process just follows the Kicad PCB design accordingly.

    There are pads in the footprints that define the location of the lead solidarity. The soldering mask cutout, copper geometry, paste stencil cutout, drill hit are led by the pads in the footprint. Documentation like silkscreen takes help from the graphics that are on the technical layers.

    KiCad PCB Tutorial

    Kicad PCB Tutorial

    Graphics that are on the courtyard layers define that there are no more close components. The connectivity information helps us to know which pad we need to connect with traces. We often call the connectivity information a net-list.

    Watch the following video of the Kicad PCB tutorial.


    How Can You Improve The Schematic Of Kicad PCB?

    A simple schematic is made of only wires and symbols. If you want to improve the schematic, you can add some powerful features like labels and power symbols to the mix. Then you need to work with these multi-unit symbols.

    KiCad Schematic To PCB

    Kicad Schematic To PCB

    Kicad is able to crack the complex composite symbols into small units. We can independently place the small units. We call this feature a multi-unit symbol.

    There are now simpler symbols in the Kicad schematic to PCB so that you won’t be needed to join the filter string. You can expand the virtual library for choosing symbols and then select whatever you need for your Kicad schematic to PCB.

    How To Generate Gerber Files In Kicad PCB?

    Generating Gerber files is the last step in Kicad PCB. Then you need to send them to your manufacturing company. Some manufacturers may take them via web upload and some may ask you to send them via email.

    We get the Gerber output via the button in the toolbar at the top or via the plot entry which is in the File menu in Kicad flex PCB. You have to finalize the PCB layers in the layer list that you want to include in your PCB.

    Gerber Files

    Gerber Files

    If you want the default layer selection, then you can proceed with it. You can also disapprove of the paste layers if you do not need to manufacture a solder paste stencil. The other settings of Gerber files will go according to your requirements and the manufacturer’s recommendations.

    After generating the Gerber files, you need to get the drill files which you can get by clicking on the button named generate drill files. The little details you can select according to your and the manufacturer’s requirements and select them on the file.

    What Are The Design Rules Of Kicad PCB?

    There are some design rules for Kicad PCB as well. Generally, we use the default settings in Kicad for design rules. Nowadays Kicad has a DRC or Design Rules Check system of the bare minimum that easily not only defines the rules but also limits the procedure.

    DRC System

    DRC System

    There are two major factors that affect the design rules largely. The first one is the capability of the manufacturer that defines absolute limits and the second one is your requirements that define other limits. Also, the following pages define the design rules of Kicad PCB.

    • Design rules.
    • Solder mask.
    • Net classes.

    What Are The Disadvantages Of Kicad PCB?

    There are some disadvantages of Kicad PCB as well. As we all know, every pro comes with cons. The limitations of Kicad print PCB are not vital, still they play a huge role in the functionality of the board.

    Some major disadvantages of Kicad panelize PCB are as follows.

    • Can not create a new project from an existing one.
    • Hard to manage libraries, footprints, and symbols.
    • Difficulties in the unrooting net.
    • Difficult to set the same net clearance.
    • Copying schematics is not easy.

    How Do You Compare Kicad PCB To Eagle?

    Eagle is another very popular PCB designing software that is used widely. Between these two PCBs, you may want to use the one that is able to provide you with the required performance and features for your project. Kicad PCB design software free download available wherever Eagle is not available for free.

    Eagle PCB

    Eagle PCB

    If you plan to design a much complex PCB, you may prefer Eagle. Kicad PCB may not have some complex features that you can find in Eagle.

    Also, Kicad is actually easier to learn than Eagle for designing PCBs. Kicad also has a simpler user interface to navigate and understand rather than Eagle.

    How To Choose The Right Manufacturer Of Kicad PCB?

    You have to choose the Kicad PCB manufacturer who has adequate knowledge regarding the Kicad software. The manufacturing company also should have advanced knowledge of it and advanced technologies. The right Kicad PCB manufacturer will have no absolute limit to manufacturing Kicad PCB.

    KiCad PCB Manufaturer

    Kicad PCB Manufacturer


    To use a Kicad PCB, you need to first put some effort into learning the procedure of using it. The use of Kicad PCB is expanding day by day due to its wide range of advantages.

    If you have any more queries about Kicad PCB or our service, feel free to contact us. We are always here at your service.

    Get Our Best Quotation
    Upload File

    Circuit Board Fabrication and PCB Assembly Turnkey Services

    Update cookies preferences
    Scroll to Top

    Get a Quick Quote!

    Upload File

    Get a Quick Quote!

    Upload File