{"id":5811,"date":"2026-11-03T08:30:52","date_gmt":"2026-11-03T08:30:52","guid":{"rendered":"https:\/\/flj-pcb.com\/?page_id=5811"},"modified":"2026-11-03T09:52:34","modified_gmt":"2026-11-03T09:52:34","slug":"functional-testing","status":"publish","type":"page","link":"https:\/\/flj-pcb.com\/cs\/testing\/functional-testing\/","title":{"rendered":"Functional Testing"},"content":{"rendered":"<div class=\"fct-page flj-page\" id=\"flj-content\"><section class=\"ft-hero\"><div class=\"container\">\n<div class=\"ft-breadcrumb\"><a href=\"https:\/\/flj-pcb.com\/cs\/\">Home<\/a><span>\/<\/span><a href=\"https:\/\/flj-pcb.com\/cs\/pcb-testing\/\">PCB &amp; PCBA Testing<\/a><span>\/<\/span><span>Functional Testing<\/span><\/div>\n<div class=\"ft-hero-grid flj-single-column\"><div class=\"ft-hero-copy\"><span class=\"ft-eyebrow\">PCBA manufacturing and testing<\/span><h1>Functional Testing for PCB Assemblies<\/h1><p class=\"ft-lead\">Product-specific checks on the assembled board under power.<\/p><p>FLJ provides functional testing as part of PCB assembly, exercising the required power-up, input\/output and communication behaviour. We combine test connections, instruments and a defined sequence to check product responses and investigate failed steps.<\/p><div class=\"ft-actions\"><a class=\"btn\" href=\"https:\/\/flj-pcb.com\/cs\/contact\/#quote\">Request a Functional Test Quote <span aria-hidden=\"true\">\u2192<\/span><\/a><a href=\"#ft-equipment\">Explore the test instruments<\/a><\/div><\/div><\/div><\/div><\/section>\n<div class=\"ft-index-wrap\"><nav aria-label=\"On this page\" class=\"container ft-index\"><a href=\"#ft-checks\">Functional checks<\/a><a href=\"#ft-equipment\">Test instruments<\/a><a href=\"#ft-fixture\">Fixtures &amp; programs<\/a><a href=\"#ft-example\">Test example<\/a><a href=\"#ft-production\">Production &amp; results<\/a><\/nav><\/div>\n<section class=\"ft-section\"><div class=\"container\">\n<h2 id=\"ft-checks\">Functional Checks for Powered PCB Assemblies<\/h2>\n<p>FLJ tests the operating functions required for the assembled board: startup and current, input\/output behaviour, and the applicable interface or firmware response. Each check couples a defined operating condition with an observation and a product requirement.<\/p>\n<h3>Startup and Power Response<\/h3>\n<p>The supply condition and the stage of startup define what a current reading means. The test can observe whether the required startup state is reached and measure current or a selected rail at the point identified by the procedure.<\/p>\n<h3>Input, Output and Interface Responses<\/h3>\n<p>A sensor-like signal or a control command creates another test question: does the board produce the required indication, terminal response or returned data? Inputs, connected loads and firmware configuration form part of that operating condition.<\/p>\n<p class=\"ft-scroll-hint\">Scroll to read all four columns.<\/p><div aria-label=\"Functional test conditions and responses\" class=\"ft-table-scroll\" role=\"region\" tabindex=\"0\"><table class=\"ft-table\">\n<caption>Examples of powered functional checks<\/caption>\n<thead>\n<tr><th scope=\"col\">Test<\/th><th scope=\"col\">Applied condition or action<\/th><th scope=\"col\">Observed response<\/th><th scope=\"col\">Acceptance requirement<\/th><\/tr>\n<\/thead>\n<tbody>\n<tr><th scope=\"row\">Startup and current<\/th><td>Apply the specified supply to the assembly in its defined startup state.<\/td><td>Record startup behavior and supply current.<\/td><td>Required startup state and allowed current for that stage.<\/td><\/tr>\n<tr><th scope=\"row\">Analog or digital input<\/th><td>Apply a defined input level or digital state at the relevant interface.<\/td><td>Observe the corresponding measured, indicated, or reported response.<\/td><td>Required state, indicated value or input-to-output relationship and tolerance.<\/td><\/tr>\n<tr><th scope=\"row\">Controlled output<\/th><td>Issue the specified command with the output connected to its defined load.<\/td><td>Measure or observe the physical output at the designated point.<\/td><td>Required output state or level and, where applicable, its response window under the connected load.<\/td><\/tr>\n<tr><th scope=\"row\">Communications<\/th><td>Send a defined request over the specified interface.<\/td><td>Capture the returned message or status.<\/td><td>Expected message fields or data, with the response time required for that request.<\/td><\/tr>\n<\/tbody>\n<\/table><\/div>\n<p>The required response may be a state, value, message or timing window. A returned status and an output-terminal measurement describe different observations; the procedure selects what is needed to verify the product function.<\/p>\n<\/div><\/section>\n<section class=\"ft-section ft-equipment\"><div class=\"container\">\n<h2 id=\"ft-equipment\">Test Equipment for Functional Verification<\/h2>\n<p>FLJ provides powered PCBA functional checks using instruments selected for the question each test must answer: establish operating conditions, apply defined inputs, and measure the response.<\/p>\n<p class=\"ft-photo-note\">Instrument reference photographs illustrate the roles below; test settings follow the product procedure.<\/p><div class=\"ft-gallery\"><article class=\"ft-instrument\">\n\n<div class=\"ft-instrument-copy\">\n<h3>Digital multimeter and bench measurements<\/h3>\n<p>A digital multimeter measures a selected voltage or current at the test connections. A supply-rail reading or steady output value becomes useful when it is tied to the board\u2019s operating state and the point being measured. The program compares that reading with the required electrical limit.<\/p>\n<\/div>\n<\/article>\n<article class=\"ft-instrument\">\n<figure class=\"\"><img loading=\"lazy\" width=\"1200\" height=\"1600\" src=\"https:\/\/flj-pcb.com\/wp-content\/uploads\/2026\/11\/functional-testing-bench-supply.webp\" class=\"attachment-full size-full\" alt=\"Front of an adjustable bench DC power supply with current and voltage displays and manual controls\" decoding=\"async\" sizes=\"auto, (max-width: 800px) calc(100vw - 40px), 600px\" srcset=\"https:\/\/flj-pcb.com\/wp-content\/uploads\/2026\/11\/functional-testing-bench-supply.webp 1200w, https:\/\/flj-pcb.com\/wp-content\/uploads\/2026\/11\/functional-testing-bench-supply-225x300.webp 225w, https:\/\/flj-pcb.com\/wp-content\/uploads\/2026\/11\/functional-testing-bench-supply-768x1024.webp 768w, https:\/\/flj-pcb.com\/wp-content\/uploads\/2026\/11\/functional-testing-bench-supply-1152x1536.webp 1152w, https:\/\/flj-pcb.com\/wp-content\/uploads\/2026\/11\/functional-testing-bench-supply-9x12.webp 9w\" \/><figcaption>Adjustable bench DC power supply shown as an instrument reference.<\/figcaption><\/figure>\n<div class=\"ft-instrument-copy\">\n<h3>Adjustable DC supply<\/h3>\n<p>When a test specifies more than one supply condition, an adjustable DC source can establish each required input level. The test question is whether the assembly responds within its requirement at each condition. The procedure must identify the setting and the point where the response is measured.<\/p>\n<\/div>\n<\/article>\n<article class=\"ft-instrument\">\n\n<div class=\"ft-instrument-copy\">\n<h3>Digital oscilloscope<\/h3>\n<p>An oscilloscope captures voltage as it changes over time at a selected point. It can answer a timing question, such as whether an output changes after a defined event or a supply response settles as required. The probe connection and acquisition must suit the signal being checked.<\/p>\n<\/div>\n<\/article>\n<article class=\"ft-instrument\">\n\n<div class=\"ft-instrument-copy\">\n<h3>Function generator<\/h3>\n<p>A function generator applies a defined waveform or signal as a test input; the DC supply separately powers the assembly. This lets a test ask whether the board&#8217;s output or indication responds as required to that input. The stimulus and observed response belong to the same test condition.<\/p>\n<\/div>\n<\/article><\/div>\n<p class=\"ft-load-note\">Some output checks also require a prescribed load. A DC electronic load draws current from the assembly and absorbs its output power, while a DC supply provides power to it. The test procedure defines the required load condition and the response to measure; a load setting alone is not an acceptance result.<\/p>\n<\/div><\/section>\n<section class=\"ft-section\"><div class=\"container\">\n<h2 id=\"ft-fixture\">Product-Specific Fixtures and Test Programs<\/h2>\n<p>FLJ configures the board\u2019s test connections for the functions being exercised. An existing fixture and procedure can provide a starting point; a new or changed build may need revised interfaces or a new test arrangement. The connections and executable sequence must correspond to the product configuration.<\/p>\n<div class=\"ft-fixture-top\">\n<div class=\"ft-fixture-photo\"><\/div>\n<div class=\"ft-fixture-copy\">\n<h3>Connecting Power, Signals and Loads<\/h3>\n<p>The fixture brings relevant connectors or accessible nodes to the test setup. A supply path establishes board power, an input path carries the stimulus, and the output path connects the prescribed load and measurement. These connections can share one fixture while serving different roles.<\/p>\n<p>When the working connections are still being designed, <a href=\"https:\/\/flj-pcb.com\/cs\/design-for-test-review\/#interfaces\">design-for-test review<\/a> can address access to the required power, control and programming interfaces.<\/p>\n<\/div>\n<\/div>\n<div class=\"ft-program\">\n<h3>Firmware, Sequence and Acceptance Limits<\/h3>\n<p>FLJ sets up the operating sequence for the released assembly and required firmware configuration. It identifies each action, where to observe its response and the acceptance limit. An operator may make selected connections or follow prompts; an automated sequence can coordinate configured instruments and collect responses. The execution arrangement follows the checks and production needs.<\/p>\n<p>Where firmware loading is part of the build, <a href=\"https:\/\/flj-pcb.com\/cs\/ic-programming\/#methods\">IC programming<\/a> can prepare the required image before the powered sequence. The loaded configuration and test-program revision need to stay aligned with the assembly being tested.<\/p>\n<\/div>\n<\/div><\/section>\n<section class=\"ft-section ft-example\"><div class=\"container\">\n<h2 id=\"ft-example\">Functional Test Example: Checking a Control Output<\/h2>\n<p class=\"ft-example-intro\">Consider an illustrative powered control board that must switch an output when it receives a defined command. The check needs a known operating state, the specified load at the output, and a measurement of the resulting electrical response.<\/p>\n<p class=\"ft-example-note\">Illustrative example only; the required supply, timing, load, measurement method, and acceptance limits come from the product\u2019s test specification.<\/p>\n<figure class=\"ft-path-figure\">\n<svg aria-labelledby=\"ft-path-title ft-path-desc\" class=\"ft-path-wide\" role=\"img\" viewbox=\"0 0 960 365\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<title id=\"ft-path-title\">Functional test connections for a controlled output<\/title>\n<desc id=\"ft-path-desc\">A DC source powers the control-board assembly. A defined input or command exercises its control path. The output connects to the prescribed load, with a measurement connection at the output to observe its physical response.<\/desc>\n<defs><marker id=\"ft-arrow\" markerheight=\"8\" markerwidth=\"8\" orient=\"auto\" refx=\"6\" refy=\"4\"><path d=\"M0 0L8 4L0 8Z\" fill=\"#9c7043\"><\/path><\/marker><\/defs>\n<g fill=\"none\" marker-end=\"url(#ft-arrow)\" stroke=\"#9c7043\" stroke-width=\"3\"><path d=\"M223 198H319\"><\/path><path d=\"M571 198H689\"><\/path><path d=\"M445 80V132\"><\/path><path d=\"M631 198V307H689\"><\/path><\/g>\n<rect fill=\"#edf3f6\" height=\"90\" rx=\"4\" stroke=\"#9eb5c0\" width=\"191\" x=\"32\" y=\"153\"><\/rect>\n<rect fill=\"#e8f0e5\" height=\"130\" rx=\"4\" stroke=\"#8ba486\" width=\"251\" x=\"320\" y=\"133\"><\/rect>\n<rect fill=\"#f5efe3\" height=\"58\" rx=\"4\" stroke=\"#b9a47e\" width=\"251\" x=\"320\" y=\"22\"><\/rect>\n<rect fill=\"#f5efe3\" height=\"90\" rx=\"4\" stroke=\"#b9a47e\" width=\"230\" x=\"690\" y=\"153\"><\/rect>\n<rect fill=\"#edf3f6\" height=\"57\" rx=\"4\" stroke=\"#9eb5c0\" width=\"230\" x=\"690\" y=\"279\"><\/rect>\n<circle cx=\"631\" cy=\"198\" fill=\"#9c7043\" r=\"5\"><\/circle>\n<g fill=\"#344c50\" font-family=\"Arial,Helvetica,sans-serif\" font-size=\"20\" text-anchor=\"middle\">\n<text x=\"127\" y=\"189\">Defined input<\/text><text x=\"127\" y=\"216\">or command<\/text>\n<text x=\"445\" y=\"59\">DC source<\/text>\n<text font-weight=\"700\" x=\"445\" y=\"185\">Control-board<\/text><text font-weight=\"700\" x=\"445\" y=\"213\">assembly<\/text><text font-size=\"16\" x=\"445\" y=\"243\">Required firmware \/ state<\/text>\n<text x=\"805\" y=\"189\">Prescribed load<\/text><text x=\"805\" y=\"216\">at the output<\/text><text font-size=\"18\" x=\"805\" y=\"314\">Observe output response<\/text>\n<\/g><\/svg>\n<svg aria-labelledby=\"ft-path-mobile-title ft-path-mobile-desc\" class=\"ft-path-narrow\" role=\"img\" viewbox=\"0 0 340 570\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<title id=\"ft-path-mobile-title\">Functional test connections for a controlled output<\/title>\n<desc id=\"ft-path-mobile-desc\">The control board receives a defined input or command and DC operating power. Its output connects to a prescribed load, and a measurement observes the physical output response. Conceptual roles, not a complete circuit drawing.<\/desc>\n<defs><marker id=\"ft-arrow-mobile\" markerheight=\"8\" markerwidth=\"8\" orient=\"auto\" refx=\"6\" refy=\"4\"><path d=\"M0 0L8 4L0 8Z\" fill=\"#9c7043\"><\/path><\/marker><\/defs>\n<g fill=\"none\" marker-end=\"url(#ft-arrow-mobile)\" stroke=\"#9c7043\" stroke-width=\"3\"><path d=\"M307 51H326V277H308\"><\/path><path d=\"M170 179V222\"><\/path><path d=\"M170 335V380\"><\/path><path d=\"M170 460V500\"><\/path><\/g>\n<rect fill=\"#edf3f6\" height=\"63\" rx=\"4\" stroke=\"#9eb5c0\" width=\"274\" x=\"33\" y=\"20\"><\/rect>\n<rect fill=\"#f5efe3\" height=\"59\" rx=\"4\" stroke=\"#b9a47e\" width=\"274\" x=\"33\" y=\"120\"><\/rect>\n<rect fill=\"#e8f0e5\" height=\"113\" rx=\"4\" stroke=\"#8ba486\" width=\"274\" x=\"33\" y=\"222\"><\/rect>\n<rect fill=\"#f5efe3\" height=\"80\" rx=\"4\" stroke=\"#b9a47e\" width=\"274\" x=\"33\" y=\"380\"><\/rect>\n<rect fill=\"#edf3f6\" height=\"54\" rx=\"4\" stroke=\"#9eb5c0\" width=\"274\" x=\"33\" y=\"500\"><\/rect>\n<g fill=\"#344c50\" font-family=\"Arial,Helvetica,sans-serif\" font-size=\"19\" text-anchor=\"middle\">\n<text x=\"170\" y=\"47\">Defined input<\/text><text x=\"170\" y=\"71\">or command<\/text><text x=\"170\" y=\"156\">DC operating power<\/text>\n<text font-weight=\"700\" x=\"170\" y=\"257\">Control-board assembly<\/text><text font-size=\"17\" x=\"170\" y=\"286\">Required firmware<\/text><text font-size=\"17\" x=\"170\" y=\"312\">and operating state<\/text>\n<text x=\"170\" y=\"412\">Prescribed load<\/text><text x=\"170\" y=\"440\">at the output<\/text><text font-size=\"18\" x=\"170\" y=\"533\">Observe output response<\/text>\n<\/g><\/svg>\n<figcaption>Conceptual test roles, not a complete circuit or a recorded test result. The product procedure defines the operating conditions, load, response and acceptance limits.<\/figcaption>\n<\/figure>\n<div class=\"ft-example-steps\">\n<div>\n<h3>Establish the operating state<\/h3>\n<p>Connect the board to its specified supply and relevant interface signals. Attach the prescribed load to the control output so the test reflects the intended operating condition.<\/p>\n<\/div>\n<div>\n<h3>Exercise the control<\/h3>\n<p>Apply the defined input or command for the required state and duration. An expected reply is an interface observation. This example also requires the output\u2019s physical response to be checked.<\/p>\n<\/div>\n<div>\n<h3>Check the physical response<\/h3>\n<p>Measure the output at the specified terminals under that load, using the measurement method named in the test plan. Compare the observed level and, where required, its timing with the product-specific acceptance criteria. Record the applied conditions and measured response for the test record.<\/p>\n<\/div>\n<\/div>\n<\/div><\/section>\n<section class=\"ft-section\"><div class=\"container\">\n<h2 id=\"ft-production\">Production Testing, Failure Analysis and Records<\/h2>\n<p>FLJ incorporates the defined functional sequence into the PCB assembly test route. The released build configuration and test program identify the intended checks, so results belong to the assembly actually being manufactured.<\/p>\n<h3>Investigating a Failed Response<\/h3>\n<p>A failed step directs investigation to the function being exercised. FLJ checks the relevant test connections, supplied condition and firmware or program configuration before attributing the response to the assembly. Once the setup is confirmed, the observed symptom guides examination of the affected input, interface, supply or output path.<\/p>\n<h3>Corrective Work and Retesting<\/h3>\n<p>For a confirmed assembly fault, FLJ carries out applicable corrective work and repeats the affected functional checks. Any additional checks follow the connections or components disturbed by that work.<\/p>\n<p>The specified <a href=\"https:\/\/flj-pcb.com\/cs\/quality\/acceptance-traceability\/#section-5\">acceptance records<\/a> can identify the unit or lot, test step, relevant revision, result and retest finding required for the order. This connects supplied <a href=\"https:\/\/flj-pcb.com\/cs\/pcb-assembly\/#verification\">PCB assembly and verification<\/a> with the product checks recorded for delivery.<\/p>\n<div class=\"ft-enquiry\"><p>Share the functions you need to check and any available test procedure, firmware or fixture information to discuss testing for your PCBA build.<\/p><a class=\"btn\" href=\"https:\/\/flj-pcb.com\/cs\/contact\/#quote\">Discuss Functional Testing <span aria-hidden=\"true\">\u2192<\/span><\/a><\/div>\n<\/div><\/section>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Home\/PCB &amp; PCBA Testing\/Functional Testing PCBA manufacturing and testing Functional Testing for PCB Assemblies Product-specific checks on the assembled board [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":5872,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-5811","page","type-page","status-publish","hentry"],"spectra_custom_meta":{"_uagb_previous_block_counts":["a:90:{s:21:\"uagb\/advanced-heading\";i:0;s:15:\"uagb\/blockquote\";i:0;s:12:\"uagb\/buttons\";i:0;s:18:\"uagb\/buttons-child\";i:0;s:19:\"uagb\/call-to-action\";i:0;s:15:\"uagb\/cf7-styler\";i:0;s:11:\"uagb\/column\";i:0;s:12:\"uagb\/columns\";i:0;s:14:\"uagb\/container\";i:0;s:21:\"uagb\/content-timeline\";i:0;s:27:\"uagb\/content-timeline-child\";i:0;s:14:\"uagb\/countdown\";i:0;s:12:\"uagb\/counter\";i:0;s:8:\"uagb\/faq\";i:0;s:14:\"uagb\/faq-child\";i:0;s:10:\"uagb\/forms\";i:0;s:17:\"uagb\/forms-accept\";i:0;s:19:\"uagb\/forms-checkbox\";i:0;s:15:\"uagb\/forms-date\";i:0;s:16:\"uagb\/forms-email\";i:0;s:17:\"uagb\/forms-hidden\";i:0;s:15:\"uagb\/forms-name\";i:0;s:16:\"uagb\/forms-phone\";i:0;s:16:\"uagb\/forms-radio\";i:0;s:17:\"uagb\/forms-select\";i:0;s:19:\"uagb\/forms-textarea\";i:0;s:17:\"uagb\/forms-toggle\";i:0;s:14:\"uagb\/forms-url\";i:0;s:14:\"uagb\/gf-styler\";i:0;s:15:\"uagb\/google-map\";i:0;s:11:\"uagb\/how-to\";i:0;s:16:\"uagb\/how-to-step\";i:0;s:9:\"uagb\/icon\";i:0;s:14:\"uagb\/icon-list\";i:0;s:20:\"uagb\/icon-list-child\";i:0;s:10:\"uagb\/image\";i:0;s:18:\"uagb\/image-gallery\";i:0;s:13:\"uagb\/info-box\";i:0;s:18:\"uagb\/inline-notice\";i:0;s:11:\"uagb\/lottie\";i:0;s:21:\"uagb\/marketing-button\";i:0;s:10:\"uagb\/modal\";i:0;s:18:\"uagb\/popup-builder\";i:0;s:16:\"uagb\/post-button\";i:0;s:18:\"uagb\/post-carousel\";i:0;s:17:\"uagb\/post-excerpt\";i:0;s:14:\"uagb\/post-grid\";i:0;s:15:\"uagb\/post-image\";i:0;s:17:\"uagb\/post-masonry\";i:0;s:14:\"uagb\/post-meta\";i:0;s:18:\"uagb\/post-taxonomy\";i:0;s:18:\"uagb\/post-timeline\";i:0;s:15:\"uagb\/post-title\";i:0;s:20:\"uagb\/restaurant-menu\";i:0;s:26:\"uagb\/restaurant-menu-child\";i:0;s:11:\"uagb\/review\";i:0;s:12:\"uagb\/section\";i:0;s:14:\"uagb\/separator\";i:0;s:11:\"uagb\/slider\";i:0;s:17:\"uagb\/slider-child\";i:0;s:17:\"uagb\/social-share\";i:0;s:23:\"uagb\/social-share-child\";i:0;s:16:\"uagb\/star-rating\";i:0;s:23:\"uagb\/sure-cart-checkout\";i:0;s:22:\"uagb\/sure-cart-product\";i:0;s:15:\"uagb\/sure-forms\";i:0;s:22:\"uagb\/table-of-contents\";i:0;s:9:\"uagb\/tabs\";i:0;s:15:\"uagb\/tabs-child\";i:0;s:18:\"uagb\/taxonomy-list\";i:0;s:9:\"uagb\/team\";i:0;s:16:\"uagb\/testimonial\";i:0;s:14:\"uagb\/wp-search\";i:0;s:19:\"uagb\/instagram-feed\";i:0;s:10:\"uagb\/login\";i:0;s:17:\"uagb\/loop-builder\";i:0;s:18:\"uagb\/loop-category\";i:0;s:20:\"uagb\/loop-pagination\";i:0;s:15:\"uagb\/loop-reset\";i:0;s:16:\"uagb\/loop-search\";i:0;s:14:\"uagb\/loop-sort\";i:0;s:17:\"uagb\/loop-wrapper\";i:0;s:13:\"uagb\/register\";i:0;s:19:\"uagb\/register-email\";i:0;s:24:\"uagb\/register-first-name\";i:0;s:23:\"uagb\/register-last-name\";i:0;s:22:\"uagb\/register-password\";i:0;s:30:\"uagb\/register-reenter-password\";i:0;s:19:\"uagb\/register-terms\";i:0;s:22:\"uagb\/register-username\";i:0;}"],"rank_math_internal_links_processed":["1"],"_flj_v2_original":["{\"post\":{\"ID\":5811,\"post_author\":\"1\",\"post_date\":\"2026-11-03 08:21:32\",\"post_date_gmt\":\"0000-00-00 00:00:00\",\"post_content\":\"\",\"post_title\":\"Functional Testing\",\"post_excerpt\":\"\",\"post_status\":\"draft\",\"comment_status\":\"closed\",\"ping_status\":\"closed\",\"post_password\":\"\",\"post_name\":\"flj-review-f0692d9b0c71cf\",\"to_ping\":\"\",\"pinged\":\"\",\"post_modified\":\"2026-11-03 08:21:32\",\"post_modified_gmt\":\"0000-00-00 00:00:00\",\"post_content_filtered\":\"\",\"post_parent\":0,\"guid\":\"https:\\\/\\\/flj-pcb.com\\\/?page_id=5811\",\"menu_order\":0,\"post_type\":\"page\",\"post_mime_type\":\"\",\"comment_count\":\"0\",\"filter\":\"raw\",\"ancestors\":[],\"page_template\":\"\",\"post_category\":[],\"tags_input\":[]},\"meta_values\":{\"rank_math_internal_links_processed\":[\"1\"]},\"digest_version\":2,\"saved_at\":\"2026-11-03T08:21:32+00:00\",\"digest\":\"844f7a7884e8e4b123bf47a01d81b0c75af2137dbd1adc358afeb3a402b3607b\"}"],"_wp_page_template":["default"],"flj_v2_enabled":["1"],"flj_v2_review":["0"],"flj_v2_source_route":["testing\/functional-testing\/index.html"],"flj_v2_source_hash":["6d2279ea849be5578601f64926682750ad15eaeff1fa3d06375289909b7bd8c0"],"rank_math_title":["PCB Functional Testing Services | FLJ"],"rank_math_description":["FLJ provides PCBA functional testing with product-specific power, I\/O and communication checks, test fixtures, defined sequences and relevant retesting."],"rank_math_robots":["a:2:{i:0;s:5:\"index\";i:1;s:6:\"follow\";}"],"rank_math_canonical_url":["https:\/\/flj-pcb.com\/testing\/functional-testing\/"],"_elementor_page_assets":["a:0:{}"],"rank_math_og_content_image":["a:2:{s:5:\"check\";s:32:\"ec074eefbddc428df2004ef5a505d7ab\";s:6:\"images\";a:1:{i:0;i:5464;}}"],"_flj_v2_visual_before_20261103":["{\"post\":{\"ID\":5811,\"post_author\":\"1\",\"post_date\":\"2026-11-03 08:30:52\",\"post_date_gmt\":\"2026-11-03 08:30:52\",\"post_content\":\"<!-- wp:html -->\\n<div class=\\\"fct-page flj-page\\\" id=\\\"flj-content\\\"><section class=\\\"ft-hero\\\"><div class=\\\"container\\\">\\n<div class=\\\"ft-breadcrumb\\\"><a href=\\\"https:\\\/\\\/flj-pcb.com\\\/\\\">Home<\\\/a><span>\\\/<\\\/span><a href=\\\"https:\\\/\\\/flj-pcb.com\\\/pcb-testing\\\/\\\">PCB &amp; PCBA Testing<\\\/a><span>\\\/<\\\/span><span>Functional Testing<\\\/span><\\\/div>\\n<div class=\\\"ft-hero-grid flj-single-column\\\"><div class=\\\"ft-hero-copy\\\"><span class=\\\"ft-eyebrow\\\">PCBA manufacturing and testing<\\\/span><h1>Functional Testing for PCB Assemblies<\\\/h1><p class=\\\"ft-lead\\\">Product-specific checks on the assembled board under power.<\\\/p><p>FLJ provides functional testing as part of PCB assembly, exercising the required power-up, input\\\/output and communication behaviour. We combine test connections, instruments and a defined sequence to check product responses and investigate failed steps.<\\\/p><div class=\\\"ft-actions\\\"><a class=\\\"btn\\\" href=\\\"https:\\\/\\\/flj-pcb.com\\\/contact\\\/#quote\\\">Request a Functional Test Quote <span aria-hidden=\\\"true\\\">\\u2192<\\\/span><\\\/a><a href=\\\"#ft-equipment\\\">Explore the test instruments<\\\/a><\\\/div><\\\/div><\\\/div><\\\/div><\\\/section>\\n<div class=\\\"ft-index-wrap\\\"><nav aria-label=\\\"On this page\\\" class=\\\"container ft-index\\\"><a href=\\\"#ft-checks\\\">Functional checks<\\\/a><a href=\\\"#ft-equipment\\\">Test instruments<\\\/a><a href=\\\"#ft-fixture\\\">Fixtures &amp; programs<\\\/a><a href=\\\"#ft-example\\\">Test example<\\\/a><a href=\\\"#ft-production\\\">Production &amp; results<\\\/a><\\\/nav><\\\/div>\\n<section class=\\\"ft-section\\\"><div class=\\\"container\\\">\\n<h2 id=\\\"ft-checks\\\">Functional Checks for Powered PCB Assemblies<\\\/h2>\\n<p>FLJ tests the operating functions required for the assembled board: startup and current, input\\\/output behaviour, and the applicable interface or firmware response. Each check couples a defined operating condition with an observation and a product requirement.<\\\/p>\\n<h3>Startup and Power Response<\\\/h3>\\n<p>The supply condition and the stage of startup define what a current reading means. The test can observe whether the required startup state is reached and measure current or a selected rail at the point identified by the procedure.<\\\/p>\\n<h3>Input, Output and Interface Responses<\\\/h3>\\n<p>A sensor-like signal or a control command creates another test question: does the board produce the required indication, terminal response or returned data? Inputs, connected loads and firmware configuration form part of that operating condition.<\\\/p>\\n<p class=\\\"ft-scroll-hint\\\">Scroll to read all four columns.<\\\/p><div aria-label=\\\"Functional test conditions and responses\\\" class=\\\"ft-table-scroll\\\" role=\\\"region\\\" tabindex=\\\"0\\\"><table class=\\\"ft-table\\\">\\n<caption>Examples of powered functional checks<\\\/caption>\\n<thead>\\n<tr><th scope=\\\"col\\\">Test<\\\/th><th scope=\\\"col\\\">Applied condition or action<\\\/th><th scope=\\\"col\\\">Observed response<\\\/th><th scope=\\\"col\\\">Acceptance requirement<\\\/th><\\\/tr>\\n<\\\/thead>\\n<tbody>\\n<tr><th scope=\\\"row\\\">Startup and current<\\\/th><td>Apply the specified supply to the assembly in its defined startup state.<\\\/td><td>Record startup behavior and supply current.<\\\/td><td>Required startup state and allowed current for that stage.<\\\/td><\\\/tr>\\n<tr><th scope=\\\"row\\\">Analog or digital input<\\\/th><td>Apply a defined input level or digital state at the relevant interface.<\\\/td><td>Observe the corresponding measured, indicated, or reported response.<\\\/td><td>Required state, indicated value or input-to-output relationship and tolerance.<\\\/td><\\\/tr>\\n<tr><th scope=\\\"row\\\">Controlled output<\\\/th><td>Issue the specified command with the output connected to its defined load.<\\\/td><td>Measure or observe the physical output at the designated point.<\\\/td><td>Required output state or level and, where applicable, its response window under the connected load.<\\\/td><\\\/tr>\\n<tr><th scope=\\\"row\\\">Communications<\\\/th><td>Send a defined request over the specified interface.<\\\/td><td>Capture the returned message or status.<\\\/td><td>Expected message fields or data, with the response time required for that request.<\\\/td><\\\/tr>\\n<\\\/tbody>\\n<\\\/table><\\\/div>\\n<p>The required response may be a state, value, message or timing window. A returned status and an output-terminal measurement describe different observations; the procedure selects what is needed to verify the product function.<\\\/p>\\n<\\\/div><\\\/section>\\n<section class=\\\"ft-section ft-equipment\\\"><div class=\\\"container\\\">\\n<h2 id=\\\"ft-equipment\\\">Test Equipment for Functional Verification<\\\/h2>\\n<p>FLJ provides powered PCBA functional checks using instruments selected for the question each test must answer: establish operating conditions, apply defined inputs, and measure the response.<\\\/p>\\n<p class=\\\"ft-photo-note\\\">Instrument reference photographs illustrate the roles below; test settings follow the product procedure.<\\\/p><div class=\\\"ft-gallery\\\"><article class=\\\"ft-instrument\\\">\\n\\n<div class=\\\"ft-instrument-copy\\\">\\n<h3>Digital multimeter and bench measurements<\\\/h3>\\n<p>A digital multimeter measures a selected voltage or current at the test connections. A supply-rail reading or steady output value becomes useful when it is tied to the board\\u2019s operating state and the point being measured. The program compares that reading with the required electrical limit.<\\\/p>\\n<\\\/div>\\n<\\\/article>\\n<article class=\\\"ft-instrument\\\">\\n<figure class=\\\"\\\"><img width=\\\"1200\\\" height=\\\"1600\\\" src=\\\"https:\\\/\\\/flj-pcb.com\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/functional-testing-bench-supply.webp\\\" class=\\\"attachment-full size-full\\\" alt=\\\"Front of an adjustable bench DC power supply with current and voltage displays and manual controls\\\" decoding=\\\"async\\\" loading=\\\"lazy\\\" sizes=\\\"auto, (max-width: 800px) calc(100vw - 40px), 600px\\\" srcset=\\\"https:\\\/\\\/flj-pcb.com\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/functional-testing-bench-supply.webp 1200w, https:\\\/\\\/flj-pcb.com\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/functional-testing-bench-supply-225x300.webp 225w, https:\\\/\\\/flj-pcb.com\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/functional-testing-bench-supply-768x1024.webp 768w, https:\\\/\\\/flj-pcb.com\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/functional-testing-bench-supply-1152x1536.webp 1152w, https:\\\/\\\/flj-pcb.com\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/functional-testing-bench-supply-9x12.webp 9w\\\" \\\/><figcaption>Adjustable bench DC supply \\u00b7 Instrument reference Derrick Parker (Flickr derrick306); Commons uploader Datapass \\\/ \\\/.<\\\/figcaption><\\\/figure>\\n<div class=\\\"ft-instrument-copy\\\">\\n<h3>Adjustable DC supply<\\\/h3>\\n<p>When a test specifies more than one supply condition, an adjustable DC source can establish each required input level. The test question is whether the assembly responds within its requirement at each condition. The procedure must identify the setting and the point where the response is measured.<\\\/p>\\n<\\\/div>\\n<\\\/article>\\n<article class=\\\"ft-instrument\\\">\\n\\n<div class=\\\"ft-instrument-copy\\\">\\n<h3>Digital oscilloscope<\\\/h3>\\n<p>An oscilloscope captures voltage as it changes over time at a selected point. It can answer a timing question, such as whether an output changes after a defined event or a supply response settles as required. The probe connection and acquisition must suit the signal being checked.<\\\/p>\\n<\\\/div>\\n<\\\/article>\\n<article class=\\\"ft-instrument\\\">\\n\\n<div class=\\\"ft-instrument-copy\\\">\\n<h3>Function generator<\\\/h3>\\n<p>A function generator applies a defined waveform or signal as a test input; the DC supply separately powers the assembly. This lets a test ask whether the board's output or indication responds as required to that input. The stimulus and observed response belong to the same test condition.<\\\/p>\\n<\\\/div>\\n<\\\/article><\\\/div>\\n<p class=\\\"ft-load-note\\\">Some output checks also require a prescribed load. A DC electronic load draws current from the assembly and absorbs its output power, while a DC supply provides power to it. The test procedure defines the required load condition and the response to measure; a load setting alone is not an acceptance result.<\\\/p>\\n<\\\/div><\\\/section>\\n<section class=\\\"ft-section\\\"><div class=\\\"container\\\">\\n<h2 id=\\\"ft-fixture\\\">Product-Specific Fixtures and Test Programs<\\\/h2>\\n<p>FLJ configures the board\\u2019s test connections for the functions being exercised. An existing fixture and procedure can provide a starting point; a new or changed build may need revised interfaces or a new test arrangement. The connections and executable sequence must correspond to the product configuration.<\\\/p>\\n<div class=\\\"ft-fixture-top\\\">\\n<div class=\\\"ft-fixture-photo\\\"><\\\/div>\\n<div class=\\\"ft-fixture-copy\\\">\\n<h3>Connecting Power, Signals and Loads<\\\/h3>\\n<p>The fixture brings relevant connectors or accessible nodes to the test setup. A supply path establishes board power, an input path carries the stimulus, and the output path connects the prescribed load and measurement. These connections can share one fixture while serving different roles.<\\\/p>\\n<p>When the working connections are still being designed, <a href=\\\"https:\\\/\\\/flj-pcb.com\\\/design-for-test-review\\\/#interfaces\\\">design-for-test review<\\\/a> can address access to the required power, control and programming interfaces.<\\\/p>\\n<\\\/div>\\n<\\\/div>\\n<div class=\\\"ft-program\\\">\\n<h3>Firmware, Sequence and Acceptance Limits<\\\/h3>\\n<p>FLJ sets up the operating sequence for the released assembly and required firmware configuration. It identifies each action, where to observe its response and the acceptance limit. An operator may make selected connections or follow prompts; an automated sequence can coordinate configured instruments and collect responses. The execution arrangement follows the checks and production needs.<\\\/p>\\n<p>Where firmware loading is part of the build, <a href=\\\"https:\\\/\\\/flj-pcb.com\\\/ic-programming\\\/#methods\\\">IC programming<\\\/a> can prepare the required image before the powered sequence. The loaded configuration and test-program revision need to stay aligned with the assembly being tested.<\\\/p>\\n<\\\/div>\\n<\\\/div><\\\/section>\\n<section class=\\\"ft-section ft-example\\\"><div class=\\\"container\\\">\\n<h2 id=\\\"ft-example\\\">Functional Test Example: Checking a Control Output<\\\/h2>\\n<p class=\\\"ft-example-intro\\\">Consider an illustrative powered control board that must switch an output when it receives a defined command. The check needs a known operating state, the specified load at the output, and a measurement of the resulting electrical response.<\\\/p>\\n<p class=\\\"ft-example-note\\\">Illustrative example only; the required supply, timing, load, measurement method, and acceptance limits come from the product\\u2019s test specification.<\\\/p>\\n<figure class=\\\"ft-path-figure\\\">\\n<svg aria-labelledby=\\\"ft-path-title ft-path-desc\\\" class=\\\"ft-path-wide\\\" role=\\\"img\\\" viewbox=\\\"0 0 960 365\\\" xmlns=\\\"http:\\\/\\\/www.w3.org\\\/2000\\\/svg\\\">\\n<title id=\\\"ft-path-title\\\">Functional test connections for a controlled output<\\\/title>\\n<desc id=\\\"ft-path-desc\\\">A DC source powers the control-board assembly. A defined input or command exercises its control path. The output connects to the prescribed load, with a measurement connection at the output to observe its physical response.<\\\/desc>\\n<defs><marker id=\\\"ft-arrow\\\" markerheight=\\\"8\\\" markerwidth=\\\"8\\\" orient=\\\"auto\\\" refx=\\\"6\\\" refy=\\\"4\\\"><path d=\\\"M0 0L8 4L0 8Z\\\" fill=\\\"#9c7043\\\"><\\\/path><\\\/marker><\\\/defs>\\n<g fill=\\\"none\\\" marker-end=\\\"url(#ft-arrow)\\\" stroke=\\\"#9c7043\\\" stroke-width=\\\"3\\\"><path d=\\\"M223 198H319\\\"><\\\/path><path d=\\\"M571 198H689\\\"><\\\/path><path d=\\\"M445 80V132\\\"><\\\/path><path d=\\\"M631 198V307H689\\\"><\\\/path><\\\/g>\\n<rect fill=\\\"#edf3f6\\\" height=\\\"90\\\" rx=\\\"4\\\" stroke=\\\"#9eb5c0\\\" width=\\\"191\\\" x=\\\"32\\\" y=\\\"153\\\"><\\\/rect>\\n<rect fill=\\\"#e8f0e5\\\" height=\\\"130\\\" rx=\\\"4\\\" stroke=\\\"#8ba486\\\" width=\\\"251\\\" x=\\\"320\\\" y=\\\"133\\\"><\\\/rect>\\n<rect fill=\\\"#f5efe3\\\" height=\\\"58\\\" rx=\\\"4\\\" stroke=\\\"#b9a47e\\\" width=\\\"251\\\" x=\\\"320\\\" y=\\\"22\\\"><\\\/rect>\\n<rect fill=\\\"#f5efe3\\\" height=\\\"90\\\" rx=\\\"4\\\" stroke=\\\"#b9a47e\\\" width=\\\"230\\\" x=\\\"690\\\" y=\\\"153\\\"><\\\/rect>\\n<rect fill=\\\"#edf3f6\\\" height=\\\"57\\\" rx=\\\"4\\\" stroke=\\\"#9eb5c0\\\" width=\\\"230\\\" x=\\\"690\\\" y=\\\"279\\\"><\\\/rect>\\n<circle cx=\\\"631\\\" cy=\\\"198\\\" fill=\\\"#9c7043\\\" r=\\\"5\\\"><\\\/circle>\\n<g fill=\\\"#344c50\\\" font-family=\\\"Arial,Helvetica,sans-serif\\\" font-size=\\\"20\\\" text-anchor=\\\"middle\\\">\\n<text x=\\\"127\\\" y=\\\"189\\\">Defined input<\\\/text><text x=\\\"127\\\" y=\\\"216\\\">or command<\\\/text>\\n<text x=\\\"445\\\" y=\\\"59\\\">DC source<\\\/text>\\n<text font-weight=\\\"700\\\" x=\\\"445\\\" y=\\\"185\\\">Control-board<\\\/text><text font-weight=\\\"700\\\" x=\\\"445\\\" y=\\\"213\\\">assembly<\\\/text><text font-size=\\\"16\\\" x=\\\"445\\\" y=\\\"243\\\">Required firmware \\\/ state<\\\/text>\\n<text x=\\\"805\\\" y=\\\"189\\\">Prescribed load<\\\/text><text x=\\\"805\\\" y=\\\"216\\\">at the output<\\\/text><text font-size=\\\"18\\\" x=\\\"805\\\" y=\\\"314\\\">Observe output response<\\\/text>\\n<\\\/g><\\\/svg>\\n<svg aria-labelledby=\\\"ft-path-mobile-title ft-path-mobile-desc\\\" class=\\\"ft-path-narrow\\\" role=\\\"img\\\" viewbox=\\\"0 0 340 570\\\" xmlns=\\\"http:\\\/\\\/www.w3.org\\\/2000\\\/svg\\\">\\n<title id=\\\"ft-path-mobile-title\\\">Functional test connections for a controlled output<\\\/title>\\n<desc id=\\\"ft-path-mobile-desc\\\">The control board receives a defined input or command and DC operating power. Its output connects to a prescribed load, and a measurement observes the physical output response. Conceptual roles, not a complete circuit drawing.<\\\/desc>\\n<defs><marker id=\\\"ft-arrow-mobile\\\" markerheight=\\\"8\\\" markerwidth=\\\"8\\\" orient=\\\"auto\\\" refx=\\\"6\\\" refy=\\\"4\\\"><path d=\\\"M0 0L8 4L0 8Z\\\" fill=\\\"#9c7043\\\"><\\\/path><\\\/marker><\\\/defs>\\n<g fill=\\\"none\\\" marker-end=\\\"url(#ft-arrow-mobile)\\\" stroke=\\\"#9c7043\\\" stroke-width=\\\"3\\\"><path d=\\\"M307 51H326V277H308\\\"><\\\/path><path d=\\\"M170 179V222\\\"><\\\/path><path d=\\\"M170 335V380\\\"><\\\/path><path d=\\\"M170 460V500\\\"><\\\/path><\\\/g>\\n<rect fill=\\\"#edf3f6\\\" height=\\\"63\\\" rx=\\\"4\\\" stroke=\\\"#9eb5c0\\\" width=\\\"274\\\" x=\\\"33\\\" y=\\\"20\\\"><\\\/rect>\\n<rect fill=\\\"#f5efe3\\\" height=\\\"59\\\" rx=\\\"4\\\" stroke=\\\"#b9a47e\\\" width=\\\"274\\\" x=\\\"33\\\" y=\\\"120\\\"><\\\/rect>\\n<rect fill=\\\"#e8f0e5\\\" height=\\\"113\\\" rx=\\\"4\\\" stroke=\\\"#8ba486\\\" width=\\\"274\\\" x=\\\"33\\\" y=\\\"222\\\"><\\\/rect>\\n<rect fill=\\\"#f5efe3\\\" height=\\\"80\\\" rx=\\\"4\\\" stroke=\\\"#b9a47e\\\" width=\\\"274\\\" x=\\\"33\\\" y=\\\"380\\\"><\\\/rect>\\n<rect fill=\\\"#edf3f6\\\" height=\\\"54\\\" rx=\\\"4\\\" stroke=\\\"#9eb5c0\\\" width=\\\"274\\\" x=\\\"33\\\" y=\\\"500\\\"><\\\/rect>\\n<g fill=\\\"#344c50\\\" font-family=\\\"Arial,Helvetica,sans-serif\\\" font-size=\\\"19\\\" text-anchor=\\\"middle\\\">\\n<text x=\\\"170\\\" y=\\\"47\\\">Defined input<\\\/text><text x=\\\"170\\\" y=\\\"71\\\">or command<\\\/text><text x=\\\"170\\\" y=\\\"156\\\">DC operating power<\\\/text>\\n<text font-weight=\\\"700\\\" x=\\\"170\\\" y=\\\"257\\\">Control-board assembly<\\\/text><text font-size=\\\"17\\\" x=\\\"170\\\" y=\\\"286\\\">Required firmware<\\\/text><text font-size=\\\"17\\\" x=\\\"170\\\" y=\\\"312\\\">and operating state<\\\/text>\\n<text x=\\\"170\\\" y=\\\"412\\\">Prescribed load<\\\/text><text x=\\\"170\\\" y=\\\"440\\\">at the output<\\\/text><text font-size=\\\"18\\\" x=\\\"170\\\" y=\\\"533\\\">Observe output response<\\\/text>\\n<\\\/g><\\\/svg>\\n<figcaption>Conceptual test roles, not a complete circuit or a recorded test result. The product procedure defines the operating conditions, load, response and acceptance limits.<\\\/figcaption>\\n<\\\/figure>\\n<div class=\\\"ft-example-steps\\\">\\n<div>\\n<h3>Establish the operating state<\\\/h3>\\n<p>Connect the board to its specified supply and relevant interface signals. Attach the prescribed load to the control output so the test reflects the intended operating condition.<\\\/p>\\n<\\\/div>\\n<div>\\n<h3>Exercise the control<\\\/h3>\\n<p>Apply the defined input or command for the required state and duration. An expected reply is an interface observation. This example also requires the output\\u2019s physical response to be checked.<\\\/p>\\n<\\\/div>\\n<div>\\n<h3>Check the physical response<\\\/h3>\\n<p>Measure the output at the specified terminals under that load, using the measurement method named in the test plan. Compare the observed level and, where required, its timing with the product-specific acceptance criteria. Record the applied conditions and measured response for the test record.<\\\/p>\\n<\\\/div>\\n<\\\/div>\\n<\\\/div><\\\/section>\\n<section class=\\\"ft-section\\\"><div class=\\\"container\\\">\\n<h2 id=\\\"ft-production\\\">Production Testing, Failure Analysis and Records<\\\/h2>\\n<p>FLJ incorporates the defined functional sequence into the PCB assembly test route. The released build configuration and test program identify the intended checks, so results belong to the assembly actually being manufactured.<\\\/p>\\n<h3>Investigating a Failed Response<\\\/h3>\\n<p>A failed step directs investigation to the function being exercised. FLJ checks the relevant test connections, supplied condition and firmware or program configuration before attributing the response to the assembly. Once the setup is confirmed, the observed symptom guides examination of the affected input, interface, supply or output path.<\\\/p>\\n<h3>Corrective Work and Retesting<\\\/h3>\\n<p>For a confirmed assembly fault, FLJ carries out applicable corrective work and repeats the affected functional checks. Any additional checks follow the connections or components disturbed by that work.<\\\/p>\\n<p>The specified <a href=\\\"https:\\\/\\\/flj-pcb.com\\\/quality\\\/acceptance-traceability\\\/#section-5\\\">acceptance records<\\\/a> can identify the unit or lot, test step, relevant revision, result and retest finding required for the order. This connects supplied <a href=\\\"https:\\\/\\\/flj-pcb.com\\\/pcb-assembly\\\/#verification\\\">PCB assembly and verification<\\\/a> with the product checks recorded for delivery.<\\\/p>\\n<div class=\\\"ft-enquiry\\\"><p>Share the functions you need to check and any available test procedure, firmware or fixture information to discuss testing for your PCBA build.<\\\/p><a class=\\\"btn\\\" href=\\\"https:\\\/\\\/flj-pcb.com\\\/contact\\\/#quote\\\">Discuss Functional Testing <span aria-hidden=\\\"true\\\">\\u2192<\\\/span><\\\/a><\\\/div>\\n<\\\/div><\\\/section>\\n<\\\/div>\\n<!-- \\\/wp:html -->\",\"post_title\":\"Functional Testing\",\"post_excerpt\":\"\",\"post_status\":\"publish\",\"comment_status\":\"closed\",\"ping_status\":\"closed\",\"post_password\":\"\",\"post_name\":\"functional-testing\",\"to_ping\":\"\",\"pinged\":\"\",\"post_modified\":\"2026-11-03 08:30:52\",\"post_modified_gmt\":\"2026-11-03 08:30:52\",\"post_content_filtered\":\"\",\"post_parent\":5872,\"guid\":\"https:\\\/\\\/flj-pcb.com\\\/?page_id=5811\",\"menu_order\":0,\"post_type\":\"page\",\"post_mime_type\":\"\",\"comment_count\":\"0\",\"filter\":\"raw\",\"ancestors\":[5872],\"page_template\":\"default\",\"post_category\":[],\"tags_input\":[]},\"meta_values\":{\"_elementor_page_assets\":[[]],\"_wp_page_template\":[\"default\"],\"flj_v2_enabled\":[\"1\"],\"flj_v2_review\":[\"0\"],\"flj_v2_source_hash\":[\"6d2279ea849be5578601f64926682750ad15eaeff1fa3d06375289909b7bd8c0\"],\"flj_v2_source_route\":[\"testing\\\/functional-testing\\\/index.html\"],\"rank_math_canonical_url\":[\"https:\\\/\\\/flj-pcb.com\\\/testing\\\/functional-testing\\\/\"],\"rank_math_description\":[\"FLJ provides PCBA functional testing with product-specific power, I\\\/O and communication checks, test fixtures, defined sequences and relevant retesting.\"],\"rank_math_internal_links_processed\":[\"1\"],\"rank_math_og_content_image\":[{\"check\":\"be0ef2c73706a23cc157248585703fe8\",\"images\":[5464]}],\"rank_math_robots\":[[\"index\",\"follow\"]],\"rank_math_title\":[\"PCB Functional Testing Services | FLJ\"]},\"digest_version\":2,\"saved_at\":\"2026-11-03T09:52:34+00:00\",\"digest\":\"641b1d927c787a21d81ac85fbeac644e4d6b9d450a65ef8d5b8429970aad6bdb\"}"],"_uag_css_file_name":["uag-css-5811.css"],"_uag_js_file_name":["uag-js-5811.js"],"_uag_page_assets":["a:9:{s:3:\"css\";s:31370:\".uag-blocks-common-selector{z-index:var(--z-index-desktop) !important}@media(max-width: 976px){.uag-blocks-common-selector{z-index:var(--z-index-tablet) !important}}@media(max-width: 767px){.uag-blocks-common-selector{z-index:var(--z-index-mobile) !important}}.uagb-social-share__outer-wrap,.uagb-social-share__wrap{display:flex;align-items:center;justify-content:center}.uagb-social-share__layout-vertical.uagb-social-share__outer-wrap,.uagb-social-share__layout-vertical .uagb-social-share__wrap{flex-direction:column}.uagb-social-share__layout-vertical .wp-block-uagb-social-share-child.uagb-ss-repeater.uagb-ss__wrapper:first-child{margin-top:0 !important}.uagb-social-share__layout-vertical .wp-block-uagb-social-share-child.uagb-ss-repeater.uagb-ss__wrapper:last-child{margin-bottom:0 !important}.uagb-social-share__outer-wrap a.uagb-button__link:focus{box-shadow:none}.uagb-social-share__outer-wrap .uagb-ss__wrapper{padding:0;margin-left:5px;margin-right:5px;transition:all .2s;display:inline-flex;text-align:center}.uagb-social-share__outer-wrap .uagb-ss__source-wrap{display:inline-block}.uagb-social-share__outer-wrap .uagb-ss__link{color:#3a3a3a;display:inline-table;line-height:0;cursor:pointer}.uagb-social-share__outer-wrap .uagb-ss__source-icon{font-size:40px;width:40px;height:40px}.uagb-social-share__outer-wrap .uagb-ss__source-image{width:40px}@media(max-width: 976px){.uagb-social-share__layout-horizontal .uagb-ss__wrapper{margin-left:0;margin-right:0}}.uagb-social-share__layout-horizontal .wp-block-uagb-social-share-child.uagb-ss-repeater.uagb-ss__wrapper:first-child{margin-left:0 !important}.uagb-social-share__layout-horizontal .wp-block-uagb-social-share-child.uagb-ss-repeater.uagb-ss__wrapper:last-child{margin-right:0 !important}.wp-block-uagb-social-share .uagb-social-share__wrapper{text-decoration:none}.uagb-social-share__wrapper{box-shadow:none}.uagb-social-share__outer-wrap:not(.uagb-social-share__no-label) .uagb-social-share__source-wrap{margin-right:15px}.uagb-social-share__outer-wrap.uagb-social-share__icon-at-top .uagb-social-share__source-wrap{-ms-flex-item-align:flex-start;align-self:flex-start;margin-top:5px}.uagb-block-015f0124 .uagb-ss-repeater span.uagb-ss__link{color: #3a3a3a;}.uagb-block-015f0124 .uagb-ss-repeater a.uagb-ss__link{color: #3a3a3a;}.uagb-block-015f0124 .uagb-ss-repeater span.uagb-ss__link svg{fill: #3a3a3a;}.uagb-block-015f0124 .uagb-ss-repeater a.uagb-ss__link svg{fill: #3a3a3a;}.uagb-block-015f0124.uagb-social-share__layout-vertical .uagb-ss__wrapper{margin-left: 0;margin-right: 0;margin-top: 5px;margin-bottom: 5px;}.uagb-block-015f0124.uagb-social-share__layout-vertical .uagb-ss__link{padding: 10px;}.uagb-block-015f0124.uagb-social-share__layout-horizontal .uagb-ss__link{padding: 10px;}.uagb-block-015f0124.uagb-social-share__layout-horizontal .uagb-ss__wrapper{margin-left: 5px;margin-right: 5px;}.uagb-block-015f0124 .wp-block-uagb-social-share-child {border-radius: 0px;}.uagb-block-015f0124 .uagb-ss__source-wrap{width: 30px;}.uagb-block-015f0124 .uagb-ss__source-wrap svg{width: 30px;height: 30px;}.uagb-block-015f0124 .uagb-ss__source-image{width: 30px;}.uagb-block-015f0124 .uagb-ss__source-icon{width: 30px;height: 30px;font-size: 30px;}.uagb-block-015f0124.uagb-social-share__outer-wrap{justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: center;-ms-flex-align: center;align-items: center;}.uagb-block-44317091.uagb-ss-repeater span.uagb-ss__link{color: #3b5998;}.uagb-block-44317091.uagb-ss-repeater a.uagb-ss__link{color: #3b5998;}.uagb-block-44317091.uagb-ss-repeater span.uagb-ss__link svg{fill: #3b5998;}.uagb-block-44317091.uagb-ss-repeater a.uagb-ss__link svg{fill: #3b5998;}.uagb-block-df693e43.uagb-ss-repeater span.uagb-ss__link{color: #55acee;}.uagb-block-df693e43.uagb-ss-repeater a.uagb-ss__link{color: #55acee;}.uagb-block-df693e43.uagb-ss-repeater span.uagb-ss__link svg{fill: #55acee;}.uagb-block-df693e43.uagb-ss-repeater a.uagb-ss__link svg{fill: #55acee;}.uagb-block-e0123642.uagb-ss-repeater span.uagb-ss__link{color: #bd081c;}.uagb-block-e0123642.uagb-ss-repeater a.uagb-ss__link{color: #bd081c;}.uagb-block-e0123642.uagb-ss-repeater span.uagb-ss__link svg{fill: #bd081c;}.uagb-block-e0123642.uagb-ss-repeater a.uagb-ss__link svg{fill: #bd081c;}.uagb-block-23521e42.uagb-ss-repeater span.uagb-ss__link{color: #0077b5;}.uagb-block-23521e42.uagb-ss-repeater a.uagb-ss__link{color: #0077b5;}.uagb-block-23521e42.uagb-ss-repeater span.uagb-ss__link svg{fill: #0077b5;}.uagb-block-23521e42.uagb-ss-repeater a.uagb-ss__link svg{fill: #0077b5;}@media only screen and (max-width: 976px) {.uagb-block-015f0124.uagb-social-share__layout-vertical .uagb-ss__wrapper{margin-left: 0;margin-right: 0;margin-top: 5px;margin-bottom: 5px;}.uagb-block-015f0124.uagb-social-share__layout-horizontal .uagb-ss__wrapper{margin-left: 5px;margin-right: 5px;}.uagb-block-015f0124.uagb-social-share__outer-wrap{justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: center;-ms-flex-align: center;align-items: center;}}@media only screen and (max-width: 767px) {.uagb-block-015f0124.uagb-social-share__layout-vertical .uagb-ss__wrapper{margin-left: 0;margin-right: 0;margin-top: 5px;margin-bottom: 5px;}.uagb-block-015f0124.uagb-social-share__layout-horizontal .uagb-ss__wrapper{margin-left: 5px;margin-right: 5px;}.uagb-block-015f0124.uagb-social-share__outer-wrap{justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: center;-ms-flex-align: center;align-items: center;}}.uagb-cta__outer-wrap .uagb-cta__content,.uagb-cta__outer-wrap a.uagb-cta__block-link span,.uagb-cta__outer-wrap .uagb-cta__content-right .uagb-cta__button-wrapper,.uagb-cta__outer-wrap .uagb-cta-typeof-button,.uagb-cta__outer-wrap .uagb-cta__content-right .uagb-cta__block-link,.uagb-cta__outer-wrap .uagb-cta-with-svg{display:inline-block}.uagb-cta__outer-wrap{display:flex;justify-content:space-between}.wp-block-uagb-call-to-action .uagb-cta__buttons{display:inline-flex}.wp-block-uagb-call-to-action .wp-block-button__link,.wp-block-uagb-call-to-action .ast-outline-button{fill:currentColor;justify-content:center}.uagb-cta__button-link-wrapper,.uagb-cta-second__button{display:inline-flex;align-items:center;word-break:keep-all;width:100%}.uagb-cta__title{padding:0;margin:0;display:block}.uagb-cta__content-right .uagb-cta__button-wrapper{float:right}.uagb-cta__link-wrapper.uagb-cta__block-link-style:empty{display:none}a.uagb-cta__block-link,.entry .entry-content a.uagb-cta__block-link,a.uagb-cta__block-link-wrap,.entry .entry-content a.uagb-cta__block-link-wrap{text-decoration:none}a.uagb-cta__block-link:hover,.entry .entry-content a.uagb-cta__block-link:hover,a.uagb-cta__block-link-wrap:hover,.entry .entry-content a.uagb-cta__block-link-wrap:hover .entry .entry-content a.uagb-cta__block-link:hover{color:inherit}.uagb-cta__content-right{text-align:right;justify-content:flex-end}.uagb-cta__left-right-wrap{width:100%;word-break:break-word}.uagb-cta__icon-position-below-title .uagb-cta__left-right-wrap{display:block;min-width:100%;width:100%}.uagb-cta__icon-position-left .uagb-cta__left-right-wrap,.uagb-cta__icon-position-right .uagb-cta__left-right-wrap{display:flex}.uagb-cta__icon-position-right .uagb-cta__left-right-wrap{justify-content:flex-end}.uagb-cta__block-link-icon-after{margin-left:5px;margin-right:0}.uagb-cta__block-link-icon-before{margin-left:0;margin-right:5px}.uagb-cta__block-link-icon,.uagb-cta__block svg{transition:all 200ms linear}.uagb-cta__block{position:relative}.uagb-cta-typeof-button{line-height:1;text-align:center}.uagb-cta__content-right .uagb-cta__button-link-wrapper,.uagb-cta__content-right .uagb-cta-second__button .uagb-cta__content-right .uagb-cta__block-link,.uagb-cta__content-right.uagb-cta__button-valign-middle .uagb-cta__left-right-wrap{display:flex;align-items:center}.uagb-cta__content-right .uagb-cta__button-link-wrapper,.uagb-cta__content-right .uagb-cta-second__button .uagb-cta__content-right .uagb-cta__block-link{justify-content:center}.uagb-cta__link-wrapper a{box-shadow:none;text-decoration:none}.uagb-cta__block,.uagb-cta__content,.uagb-cta__left-right-wrap{z-index:1}.uagb-cta__block-link{cursor:pointer}.uagb-cta__content-right .uagb-cta__block-link{float:right;padding:10px 14px}a.uagb-cta__block-link-wrap{color:inherit}.uagb-cta__content p:empty{display:none}.uagb-cta__button-type-none .uagb-cta__content{width:100%}.uagb-cta-with-svg{height:14px;width:14px;line-height:14px;vertical-align:middle}.uagb-cta__block svg{display:block;height:inherit;width:inherit}.uagb-cta__button-link-wrapper svg{width:20px;height:20px}.uagb-cta__align-button-after{margin-left:5px}.uagb-cta__align-button-before{margin-right:5px}.uagb-cta__block-link i{font-style:normal}a.uagb-cta__link-to-all{position:absolute;top:0;left:0;width:100%;height:100%;z-index:11}.wp-block-uagb-call-to-action{position:relative}.wp-block-uagb-call-to-action a.uagb-cta__link-to-all{position:absolute;top:0;left:0;width:100%;height:100%;z-index:11}@media only screen and (max-width: 976px){.uagb-cta__content-stacked-tablet,.uagb-cta__content-stacked-tablet .uagb-cta__left-right-wrap{flex-direction:column;text-align:center}.uagb-cta__content-stacked-tablet.uagb-cta__content-right .uagb-cta__button-wrapper{float:none;margin:0 auto}.uagb-cta__content-stacked-tablet .uagb-cta__left-right-wrap .uagb-cta__content{margin-left:0;margin-right:0}.uagb-cta__content-stacked-tablet.uagb-cta__content-right .uagb-cta__left-right-wrap .uagb-cta__content,.uagb-cta__content-stacked-tablet.uagb-cta__content-right .uagb-cta__left-right-wrap .uagb-cta__link-wrapper{width:100% !important}}@media screen and (max-width: 767px){.uagb-cta__content-stacked-mobile,.uagb-cta__content-stacked-mobile .uagb-cta__left-right-wrap{flex-direction:column;text-align:center}.uagb-cta__content-stacked-mobile.uagb-cta__content-right .uagb-cta__button-wrapper{float:none;margin:0 auto}.uagb-cta__content-stacked-mobile .uagb-cta__left-right-wrap .uagb-cta__content{margin-left:0;margin-right:0}.uagb-cta__content-stacked-mobile.uagb-cta__content-right .uagb-cta__left-right-wrap .uagb-cta__content,.uagb-cta__content-stacked-mobile.uagb-cta__content-right .uagb-cta__left-right-wrap .uagb-cta__link-wrapper{width:100% !important}}.uagb-cta__desc p:last-child{margin-bottom:0}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action .uagb-cta__title{margin-bottom: 10px;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action .uagb-cta__desc{margin-bottom: 10px;}.uagb-block-6c2dcb80 .uagb-cta__align-button-after{margin-left: 10px;}.uagb-block-6c2dcb80 .uagb-cta__align-button-before{margin-right: 10px;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action a.uagb-cta__button-link-wrapper > svg{margin-left: 10px;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action a.uagb-cta-second__button > svg{margin-left: 10px;font-size: 14px;width: 14px;height: 14px;line-height: 14px;}.uagb-block-6c2dcb80 .uagb-cta__content-wrap{text-align: left;}.uagb-block-6c2dcb80 .uagb-cta__wrap{width: 70%;text-align: left;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action{text-align: left;}.uagb-block-6c2dcb80 .uagb-cta__left-right-wrap .uagb-cta__content{margin-left: 0px;}.uagb-block-6c2dcb80 .uagb-cta__buttons{column-gap: 15px;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action {display: flex;justify-content: space-between;}.uagb-block-6c2dcb80 .uagb-cta__content-right .uagb-cta__left-right-wrap .uagb-cta__content{width: 70%;}.uagb-block-6c2dcb80 .uagb-cta__content-right .uagb-cta__left-right-wrap .uagb-cta__link-wrapper{width: 30%;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action a.uagb-cta__button-link-wrapper {align-self: center;height: fit-content;margin-left: auto;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action  {flex-direction: row;align-items: center;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action.wp-block-button a.uagb-cta-second__button{align-self: center;height: fit-content;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action.wp-block-button a.uagb-cta-second__button:hover{background-color: !important;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action.wp-block-button a.uagb-cta-second__button:focus{background-color: !important;}.uagb-block-6c2dcb80 .uagb-cta__button-wrapper a.uagb-cta-typeof-button{color: #333;border-top-width: 1px;border-left-width: 1px;border-right-width: 1px;border-bottom-width: 1px;border-top-left-radius: 0px;border-top-right-radius: 0px;border-bottom-left-radius: 0px;border-bottom-right-radius: 0px;border-color: #333;border-style: solid;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action.wp-block-button .uagb-cta__buttons a.uagb-cta__button-link-wrapper.wp-block-button__link{border-top-width: 1px;border-left-width: 1px;border-right-width: 1px;border-bottom-width: 1px;border-top-left-radius: 0px;border-top-right-radius: 0px;border-bottom-left-radius: 0px;border-bottom-right-radius: 0px;border-color: #333;border-style: solid;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action a.uagb-cta-second__button{text-transform: normal;text-decoration: none;font-size: 14px;}@media only screen and (max-width: 976px) {.uagb-block-6c2dcb80.wp-block-uagb-call-to-action.uagb-cta__content-stacked-tablet {display: inherit;}.uagb-block-6c2dcb80.uagb-cta__content-stacked-tablet .uagb-cta__wrap{width: 100%;}.uagb-block-6c2dcb80 .uagb-cta__content-right .uagb-cta__left-right-wrap .uagb-cta__link-wrapper{width: 30%;}.uagb-block-6c2dcb80 .uagb-cta__wrap{text-align: center;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action {flex-direction: column;align-items: center;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action a.uagb-cta__button-link-wrapper{border-style: solid;border-color: #333;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action.wp-block-button .uagb-cta__buttons a.uagb-cta__button-link-wrapper.wp-block-button__link{border-style: solid;border-color: #333;}}@media only screen and (max-width: 767px) {.uagb-block-6c2dcb80.wp-block-uagb-call-to-action.uagb-cta__content-stacked-mobile {display: inherit;}.uagb-block-6c2dcb80.uagb-cta__content-stacked-mobile .uagb-cta__wrap{width: 100%;}.uagb-block-6c2dcb80 .uagb-cta__buttons{justify-content: center;}.uagb-block-6c2dcb80 .uagb-cta__content-right .uagb-cta__left-right-wrap .uagb-cta__link-wrapper{width: 30%;}.uagb-block-6c2dcb80 .uagb-cta__wrap{text-align: center;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action {flex-direction: column;align-items: center;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action a.uagb-cta__button-link-wrapper{border-style: solid;border-color: #333;}.uagb-block-6c2dcb80.wp-block-uagb-call-to-action.wp-block-button .uagb-cta__buttons a.uagb-cta__button-link-wrapper.wp-block-button__link{border-style: solid;border-color: #333;}}.uagb-icon-list__wrap{display:flex;align-items:flex-start;justify-content:flex-start}.wp-block-uagb-icon-list-child{padding:0;transition:all .2s;display:inline-flex;color:#3a3a3a;align-items:center;text-decoration:none;box-shadow:none}.wp-block-uagb-icon-list-child span.uagb-icon-list__source-wrap{display:block;align-items:center}.uagb-icon-list__source-wrap svg{display:block}.uagb-icon-list__source-image{width:40px}.uagb-icon-list__outer-wrap .uagb-icon-list__content-wrap{color:#3a3a3a;display:flex;align-items:center}.wp-block-uagb-icon-list-child{position:relative}.wp-block-uagb-icon-list-child>a{position:absolute;top:0;left:0;width:100%;height:100%}img.uagb-icon-list__source-image{max-width:unset}.wp-block-uagb-icon-list-child .uagb-icon-list__label{word-break:break-word}.wp-block-uagb-icon-list.uagb-block-f606f41a .uagb-icon-list__source-image{width: 16px;}.wp-block-uagb-icon-list.uagb-block-f606f41a .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{width: 16px;height: 16px;font-size: 16px;}.wp-block-uagb-icon-list.uagb-block-f606f41a .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{padding: 0px;border-radius: 0px;border-width: 0px;align-self: center;}.wp-block-uagb-icon-list.uagb-block-f606f41a .wp-block-uagb-icon-list-child .uagb-icon-list__label{text-decoration: !important;line-height: em;}.wp-block-uagb-icon-list.uagb-block-f606f41a .uagb-icon-list__wrap{display: flex;flex-direction: column;justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: flex-start;-ms-flex-align: flex-start;align-items: flex-start;}.wp-block-uagb-icon-list.uagb-block-f606f41a .uagb-icon-list__label{text-align: left;}.wp-block-uagb-icon-list.uagb-block-f606f41a .wp-block-uagb-icon-list-child{text-decoration: !important;line-height: em;}.wp-block-uagb-icon-list.uagb-block-f606f41a.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child{margin-left: 0;margin-right: 0;margin-bottom: 10px;}.wp-block-uagb-icon-list.uagb-block-f606f41a .uagb-icon-list__source-wrap{margin-right: 15px;}.uagb-block-ddf54d80.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-ddf54d80.wp-block-uagb-icon-list-child:hover .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-b45e4180.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-b45e4180.wp-block-uagb-icon-list-child:hover .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-6962245c.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-6962245c.wp-block-uagb-icon-list-child:hover .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}@media only screen and (max-width: 976px) {.wp-block-uagb-icon-list.uagb-block-f606f41a .uagb-icon-list__source-image{width: 16px;}.wp-block-uagb-icon-list.uagb-block-f606f41a .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{width: 16px;height: 16px;font-size: 16px;}.wp-block-uagb-icon-list.uagb-block-f606f41a .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap {padding: 0px;border-width: 0px;align-self: center;}.wp-block-uagb-icon-list.uagb-block-f606f41a .uagb-icon-list__wrap{display: flex;flex-direction: column;justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: flex-start;-ms-flex-align: flex-start;align-items: flex-start;}.wp-block-uagb-icon-list.uagb-block-f606f41a.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child{margin-left: 0;margin-right: 0;margin-bottom: 10px;}}@media only screen and (max-width: 767px) {.wp-block-uagb-icon-list.uagb-block-f606f41a .uagb-icon-list__source-image{width: 16px;}.wp-block-uagb-icon-list.uagb-block-f606f41a .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{width: 16px;height: 16px;font-size: 16px;}.wp-block-uagb-icon-list.uagb-block-f606f41a .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{padding: 0px;border-width: 0px;align-self: center;}.wp-block-uagb-icon-list.uagb-block-f606f41a .uagb-icon-list__wrap{display: flex;flex-direction: column;justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: flex-start;-ms-flex-align: flex-start;align-items: flex-start;}.wp-block-uagb-icon-list.uagb-block-f606f41a.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child{margin-left: 0;margin-right: 0;margin-bottom: 10px;}}.wp-block-uagb-container{display:flex;position:relative;box-sizing:border-box;transition-property:box-shadow;transition-duration:.2s;transition-timing-function:ease}.wp-block-uagb-container .spectra-container-link-overlay{bottom:0;left:0;position:absolute;right:0;top:0;z-index:10}.wp-block-uagb-container.uagb-is-root-container{margin-left:auto;margin-right:auto}.wp-block-uagb-container.alignfull.uagb-is-root-container .uagb-container-inner-blocks-wrap{display:flex;position:relative;box-sizing:border-box;margin-left:auto !important;margin-right:auto !important}.wp-block-uagb-container .wp-block-uagb-blockquote,.wp-block-uagb-container .wp-block-spectra-pro-login,.wp-block-uagb-container .wp-block-spectra-pro-register{margin:unset}.wp-block-uagb-container .uagb-container__video-wrap{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s}.wp-block-uagb-container .uagb-container__video-wrap video{max-width:100%;width:100%;height:100%;margin:0;line-height:1;border:none;display:inline-block;vertical-align:baseline;-o-object-fit:cover;object-fit:cover;background-size:cover}.wp-block-uagb-container.uagb-layout-grid{display:grid;width:100%}.wp-block-uagb-container.uagb-layout-grid>.uagb-container-inner-blocks-wrap{display:inherit;width:inherit}.wp-block-uagb-container.uagb-layout-grid>.uagb-container-inner-blocks-wrap>.wp-block-uagb-container{max-width:unset !important;width:unset !important}.wp-block-uagb-container.uagb-layout-grid>.wp-block-uagb-container{max-width:unset !important;width:unset !important}.wp-block-uagb-container.uagb-layout-grid.uagb-is-root-container{margin-left:auto;margin-right:auto}.wp-block-uagb-container.uagb-layout-grid.uagb-is-root-container>.wp-block-uagb-container{max-width:unset !important;width:unset !important}.wp-block-uagb-container.uagb-layout-grid.alignwide.uagb-is-root-container{margin-left:auto;margin-right:auto}.wp-block-uagb-container.uagb-layout-grid.alignfull.uagb-is-root-container .uagb-container-inner-blocks-wrap{display:inherit;position:relative;box-sizing:border-box;margin-left:auto !important;margin-right:auto !important}body .wp-block-uagb-container>.uagb-container-inner-blocks-wrap>*:not(.wp-block-uagb-container):not(.wp-block-uagb-column):not(.wp-block-uagb-container):not(.wp-block-uagb-section):not(.uagb-container__shape):not(.uagb-container__video-wrap):not(.wp-block-spectra-pro-register):not(.wp-block-spectra-pro-login):not(.uagb-slider-container):not(.spectra-image-gallery__control-lightbox):not(.wp-block-uagb-info-box),body .wp-block-uagb-container>.uagb-container-inner-blocks-wrap,body .wp-block-uagb-container>*:not(.wp-block-uagb-container):not(.wp-block-uagb-column):not(.wp-block-uagb-container):not(.wp-block-uagb-section):not(.uagb-container__shape):not(.uagb-container__video-wrap):not(.wp-block-spectra-pro-register):not(.wp-block-spectra-pro-login):not(.uagb-slider-container):not(.spectra-container-link-overlay):not(.spectra-image-gallery__control-lightbox):not(.wp-block-uagb-lottie):not(.uagb-faq__outer-wrap){min-width:unset !important;width:100%;position:relative}body .ast-container .wp-block-uagb-container>.uagb-container-inner-blocks-wrap>.wp-block-uagb-container>ul,body .ast-container .wp-block-uagb-container>.uagb-container-inner-blocks-wrap>.wp-block-uagb-container ol,body .ast-container .wp-block-uagb-container>.uagb-container-inner-blocks-wrap>ul,body .ast-container .wp-block-uagb-container>.uagb-container-inner-blocks-wrap ol{max-width:-webkit-fill-available;margin-block-start:0;margin-block-end:0;margin-left:20px}.ast-plain-container .editor-styles-wrapper .block-editor-block-list__layout.is-root-container .uagb-is-root-container.wp-block-uagb-container.alignwide{margin-left:auto;margin-right:auto}.uagb-container__shape{overflow:hidden;position:absolute;left:0;width:100%;line-height:0;direction:ltr}.uagb-container__shape-top{top:-3px}.uagb-container__shape-bottom{bottom:-3px}.uagb-container__shape.uagb-container__invert.uagb-container__shape-bottom,.uagb-container__shape.uagb-container__invert.uagb-container__shape-top{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.uagb-container__shape.uagb-container__shape-flip svg{transform:translateX(-50%) rotateY(180deg)}.uagb-container__shape svg{display:block;width:-webkit-calc(100% + 1.3px);width:calc(100% + 1.3px);position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.uagb-container__shape .uagb-container__shape-fill{-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}.uagb-container__shape.uagb-container__shape-above-content{z-index:9;pointer-events:none}.nv-single-page-wrap .nv-content-wrap.entry-content .wp-block-uagb-container.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}@media only screen and (max-width: 767px){.wp-block-uagb-container .wp-block-uagb-advanced-heading{width:-webkit-fill-available}}.wp-block-uagb-image--align-none{justify-content:center}.wp-block-uagb-container.uagb-block-845e6da6 .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-845e6da6 .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-845e6da6 .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-845e6da6 .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-845e6da6 .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-845e6da6{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-845e6da6 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1200px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 20px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-845e6da6{box-shadow: 0px 0px   #00000070 ;padding-top: 10px;padding-bottom: 10px;padding-left: 10px;padding-right: 10px;margin-top:  !important;margin-bottom:  !important;overflow: visible;order: initial;border-color: inherit;row-gap: 20px;column-gap: 20px;}@media only screen and (max-width: 976px) {.wp-block-uagb-container.uagb-is-root-container .uagb-block-845e6da6{width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-845e6da6 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1024px);max-width: var(--inner-content-custom-width);width: 100%;}.wp-block-uagb-container.uagb-block-845e6da6{padding-top: 10px;padding-bottom: 10px;padding-left: 10px;padding-right: 10px;margin-top:  !important;margin-bottom:  !important;order: initial;}}@media only screen and (max-width: 767px) {.wp-block-uagb-container.uagb-is-root-container .uagb-block-845e6da6{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-845e6da6 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 767px);max-width: var(--inner-content-custom-width);width: 100%;flex-wrap: wrap;}.wp-block-uagb-container.uagb-block-845e6da6{padding-top: 10px;padding-bottom: 10px;padding-left: 10px;padding-right: 10px;margin-top:  !important;margin-bottom:  !important;order: initial;}}.wp-block-uagb-icon svg{width:30px}.uagb-icon-wrapper .uagb-svg-wrapper{transition:box-shadow .2s ease} .uagb-block-2b67c985.uagb-icon-wrapper{text-align: center;} .uagb-block-2b67c985.uagb-icon-wrapper .uagb-svg-wrapper a{display: contents;} .uagb-block-2b67c985.uagb-icon-wrapper svg{width: 40px;height: 40px;transform: rotate(0deg);box-sizing: content-box;fill: #333;filter: drop-shadow( 0px 0px 0px #00000070 );} .uagb-block-2b67c985.uagb-icon-wrapper .uagb-svg-wrapper{display: inline-flex;padding-top: 5px;padding-right: 5px;padding-bottom: 5px;padding-left: 5px;border-style: default;box-shadow: 0px 0px 0 #00000070 ;} .uagb-block-2b67c985.uagb-icon-wrapper .uagb-svg-wrapper:hover{box-shadow: 0px 0px 0 #00000070 ;} .uagb-block-2b67c985.uagb-icon-wrapper .uagb-svg-wrapper:focus-visible{box-shadow: 0px 0px 0 #00000070 ;}@media only screen and (max-width: 976px) { .uagb-block-2b67c985.uagb-icon-wrapper .uagb-svg-wrapper{display: inline-flex;}}@media only screen and (max-width: 767px) { .uagb-block-2b67c985.uagb-icon-wrapper .uagb-svg-wrapper{display: inline-flex;}} .uagb-block-3c223d05.uagb-icon-wrapper{text-align: center;} .uagb-block-3c223d05.uagb-icon-wrapper .uagb-svg-wrapper a{display: contents;} .uagb-block-3c223d05.uagb-icon-wrapper svg{width: 40px;height: 40px;transform: rotate(0deg);box-sizing: content-box;fill: #333;filter: drop-shadow( 0px 0px 0px #00000070 );} .uagb-block-3c223d05.uagb-icon-wrapper .uagb-svg-wrapper{display: inline-flex;padding-top: 5px;padding-right: 5px;padding-bottom: 5px;padding-left: 5px;border-style: default;box-shadow: 0px 0px 0 #00000070 ;} .uagb-block-3c223d05.uagb-icon-wrapper .uagb-svg-wrapper:hover{box-shadow: 0px 0px 0 #00000070 ;} .uagb-block-3c223d05.uagb-icon-wrapper .uagb-svg-wrapper:focus-visible{box-shadow: 0px 0px 0 #00000070 ;}@media only screen and (max-width: 976px) { .uagb-block-3c223d05.uagb-icon-wrapper .uagb-svg-wrapper{display: inline-flex;}}@media only screen and (max-width: 767px) { .uagb-block-3c223d05.uagb-icon-wrapper .uagb-svg-wrapper{display: inline-flex;}}.wp-block-uagb-container.uagb-block-e5b2e3b1 .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-e5b2e3b1 .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-e5b2e3b1 .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-e5b2e3b1 .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-e5b2e3b1 .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-e5b2e3b1{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-e5b2e3b1 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1200px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 20px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-e5b2e3b1{box-shadow: 0px 0px   #00000070 ;padding-top: 10px;padding-bottom: 10px;padding-left: 10px;padding-right: 10px;margin-top:  !important;margin-bottom:  !important;overflow: visible;order: initial;border-color: inherit;row-gap: 20px;column-gap: 20px;}@media only screen and (max-width: 976px) {.wp-block-uagb-container.uagb-is-root-container .uagb-block-e5b2e3b1{width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-e5b2e3b1 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1024px);max-width: var(--inner-content-custom-width);width: 100%;}.wp-block-uagb-container.uagb-block-e5b2e3b1{padding-top: 10px;padding-bottom: 10px;padding-left: 10px;padding-right: 10px;margin-top:  !important;margin-bottom:  !important;order: initial;}}@media only screen and (max-width: 767px) {.wp-block-uagb-container.uagb-is-root-container .uagb-block-e5b2e3b1{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-e5b2e3b1 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 767px);max-width: var(--inner-content-custom-width);width: 100%;flex-wrap: wrap;}.wp-block-uagb-container.uagb-block-e5b2e3b1{padding-top: 10px;padding-bottom: 10px;padding-left: 10px;padding-right: 10px;margin-top:  !important;margin-bottom:  !important;order: initial;}}\";s:2:\"js\";s:1947:\"document.addEventListener(\"DOMContentLoaded\", function(){ var ssLinksParent = document.querySelector( '.uagb-block-015f0124' );\nssLinksParent?.addEventListener( 'keyup', function ( e ) {\nvar link = e.target.closest( '.uagb-ss__link' );\nif ( link && e.keyCode === 13 ) {\n\thandleSocialLinkClick( link );\n}\n});\n\nssLinksParent?.addEventListener( 'click', function ( e ) {\nvar link = e.target.closest( '.uagb-ss__link' );\nif ( link ) {\n\thandleSocialLinkClick( link );\n}\n});\n\nfunction handleSocialLinkClick( link ) {\nvar social_url = link.dataset.href;\nvar target = \"\";\nif ( social_url == \"mailto:?body=\" ) {\n\ttarget = \"_self\";\n}\nvar request_url = \"\";\nif ( social_url.indexOf(\"\/pin\/create\/link\/?url=\") !== -1 ) {\n\trequest_url = social_url + encodeURIComponent( window.location.href ) + \"&media=\" + '';\n} else {\n\trequest_url = social_url + encodeURIComponent( window.location.href );\n}\nwindow.open( request_url, target );\n}\n\t\t\t\twindow.addEventListener( 'DOMContentLoaded', () => {\n\t\t\t\t\tconst blockScope = document.querySelector( '.uagb-block-2b67c985' );\n\t\t\t\t\tif ( ! blockScope ) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst anchorElement = blockScope.querySelector('a');\n\t\t\t\t\tif (!anchorElement) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t} \n\n\t\t\t\t\t \n\t\t\t\t\tblockScope.addEventListener('keydown', (event) => {\n\t\t\t\t\t\tif ( 13 === event.keyCode || 32 === event.keyCode ) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t \n\t\t\t\t\t\t\tanchorElement.click();\t\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t} );\n\t\t\t\t\t\t\twindow.addEventListener( 'DOMContentLoaded', () => {\n\t\t\t\t\tconst blockScope = document.querySelector( '.uagb-block-3c223d05' );\n\t\t\t\t\tif ( ! blockScope ) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst anchorElement = blockScope.querySelector('a');\n\t\t\t\t\tif (!anchorElement) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t} \n\n\t\t\t\t\t \n\t\t\t\t\tblockScope.addEventListener('keydown', (event) => {\n\t\t\t\t\t\tif ( 13 === event.keyCode || 32 === event.keyCode ) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t \n\t\t\t\t\t\t\tanchorElement.click();\t\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t} );\n\t\t\t });\";s:18:\"current_block_list\";a:20:{i:0;s:9:\"core\/html\";i:1;s:11:\"core\/search\";i:2;s:10:\"core\/group\";i:3;s:12:\"core\/heading\";i:4;s:17:\"core\/latest-posts\";i:5;s:20:\"core\/latest-comments\";i:6;s:13:\"core\/archives\";i:7;s:15:\"core\/categories\";i:8;s:10:\"core\/image\";i:9;s:14:\"core\/paragraph\";i:10;s:10:\"core\/embed\";i:11;s:17:\"uagb\/social-share\";i:12;s:23:\"uagb\/social-share-child\";i:13;s:19:\"uagb\/call-to-action\";i:14;s:14:\"uagb\/icon-list\";i:15;s:20:\"uagb\/icon-list-child\";i:16;s:14:\"uagb\/container\";i:17;s:9:\"uagb\/icon\";i:18;s:17:\"core\/social-links\";i:19;s:16:\"core\/social-link\";}s:8:\"uag_flag\";b:1;s:11:\"uag_version\";s:10:\"1793715384\";s:6:\"gfonts\";a:0:{}s:10:\"gfonts_url\";s:0:\"\";s:12:\"gfonts_files\";a:0:{}s:14:\"uag_faq_layout\";b:0;}"]},"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"trp-custom-language-flag":false},"uagb_author_info":{"display_name":"Philifast","author_link":"https:\/\/flj-pcb.com\/cs\/author\/2475017442jygmail-com\/"},"uagb_comment_info":0,"uagb_excerpt":"Home\/PCB &amp; PCBA Testing\/Functional Testing PCBA manufacturing and testing Functional Testing for PCB Assemblies Product-specific checks on the assembled board [&hellip;]","_links":{"self":[{"href":"https:\/\/flj-pcb.com\/cs\/wp-json\/wp\/v2\/pages\/5811","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/flj-pcb.com\/cs\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/flj-pcb.com\/cs\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/flj-pcb.com\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/flj-pcb.com\/cs\/wp-json\/wp\/v2\/comments?post=5811"}],"version-history":[{"count":2,"href":"https:\/\/flj-pcb.com\/cs\/wp-json\/wp\/v2\/pages\/5811\/revisions"}],"predecessor-version":[{"id":5900,"href":"https:\/\/flj-pcb.com\/cs\/wp-json\/wp\/v2\/pages\/5811\/revisions\/5900"}],"up":[{"embeddable":true,"href":"https:\/\/flj-pcb.com\/cs\/wp-json\/wp\/v2\/pages\/5872"}],"wp:attachment":[{"href":"https:\/\/flj-pcb.com\/cs\/wp-json\/wp\/v2\/media?parent=5811"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}