+1 (713) 688-4600 | Sales Toll-Free: (855) SELL BPM | 24/7 Service: +1 (832) 617-5702 info@bpmmicro.com
Select Page
Which Programming Method is Right for You?

Which Programming Method is Right for You?

Semiconductor devices are used in a wide range of electronic applications, from smartphones to industrial machinery. Programming these devices is a crucial step in their manufacturing process, allowing them to perform specific functions. There are several methods to program semiconductor devices, each with its own advantages and disadvantages.

In-System Programming (ISP)

Bed-of-Nails fixture connects the PCB to the final test

In-system programming (ISP) is a method that enables semiconductor devices to be programmed after installation on a circuit board, without requiring removal. This programming method allows for easy updates, and flexibility in the programming process, and avoids device disruption. However, ISP requires dedicated programming hardware or software to interface with the device, which may be slower than other methods. Moreover, when the programming process exceeds a few seconds, it can create bottlenecks, slowing down the production line and making it harder to scale. Learn more here.

In-Circuit Programming (ICP)

In-circuit programming (ICP) is a method that enables semiconductor devices to be programmed while they are in use, without requiring removal. This programming method allows for updates without disrupting device operation, flexibility in the programming process, and avoids device removal. However, ICP requires dedicated programming hardware or software to interface with the device, which may be slower than other methods. Learn more here.

Offline Parallel Programming

Offline programming is a method that enables multiple semiconductor devices to be programmed simultaneously. This programming method is faster than ISP and ICP, allows for a high volume of devices to be programmed at once, and can be easily scaled up. Offline programming requires a dedicated socket adapter with a custom algorithm for each device type. For instance, a socket receptacle can accept similar device types from different manufacturers (for example, a BGA(153), but will require a custom algo for each device to ensure it meets the specs for that device).

BPM310 Automated programming systemAutomated Offline Programming

Automated programming is a subset of offline programming that uses automated equipment to program semiconductor devices. This programming method is faster than development kits and allows for a high volume of devices to be programmed simultaneously. Moreover, automated programming allows for individual device programming, and is more easily scaled by adding additional resources and shifts.

Development Kits

Device programming kits are tools used to program individual semiconductor devices. This programming method allows for individual device programming and prototyping. However, development kits can be slower than other methods and require manual device handling, which can be time-consuming and error-prone. If a prototype goes into full production, other methods should be explored, which will require first article proofing for the production programmer.

In conclusion, choosing the right programming method for your programmable devices depends on your specific needs and requirements. Consider the pros and cons of each method before making a decision. Ultimately, selecting the right programming method can save you time and costs while ensuring your devices function properly.

Programming Method

Definition

Advantages

Disadvantages

Approx. Usage

In-System Programming (ISP) Programming a device after it has been installed on a circuit board, without needing to remove it Allows for easy updates in the field, avoids device removal, and provides flexibility in the programming process Requires dedicated programming hardware or software to interface with the device, which may be slower than other methods 40%
In-Circuit Programming (ICP) Programming a device while it is in use, without needing to remove it Allows for updates without disrupting device operation, avoids device removal, and provides flexibility in the programming process Requires dedicated programming hardware or software to interface with the device, which may be slower than other methods. 20%
Offline Parallel  Programming Simultaneously programming multiple devices with the same programming sequence using specialized equipment Efficient for large-scale production, automated to increase throughput, and reduces programming errors Requires specialized equipment that may be relatively expensive, and less flexible for smaller production runs 25%
Development Kits Dedicated hardware and software used to program a single device at a time, typically used for low-volume production or prototyping Provides a high degree of control and flexibility over the programming process, can program a wide range of devices, suitable for low-volume production or prototyping Requires dedicated hardware and software that is typically inexpensive, and time-consuming for large-scale production or programming of multiple devices with different programming sequences 15%

Note: The percentages provided are rough estimates and may vary depending on the specific industry and application.

Programmable Devices for Modern Manufacturing

Programmable Devices for Modern Manufacturing

A programmable device is a piece of hardware that can be programmed to perform a specific set of tasks or functions. These tiny devices are often used in industrial and commercial settings, including manufacturing, healthcare, and automotive, to automate processes and improve efficiency.

There are many different types of programmable devices, including microcontrollers, Programmable logic devices (PLDs), and various Flash devices. Each of these devices has its own unique set of capabilities and is used for different applications.

NXP Kinetis® K02 MCU for Low Power Applications (MK02FN64VLH10)

Microcontrollers (MCU) are small, single-chip computers that are often used in embedded systems, such as sensors, appliances, and automotive systems. They are highly programmable and can be programmed to perform a wide range of tasks, from simple control functions to complex algorithms.

A programmable logic device (PLD) is an electronic component used to build reconfigurable digital circuits. Unlike digital logic constructed using discrete logic gates with fixed functions, a PLD has an undefined function at the time of manufacture. Before the PLD can be used in a circuit it must be programmed to implement the desired function.[1] Compared to fixed logic devices, programmable logic devices simplify the design of complex logic and may offer superior performance. Unlike microprocessors, programming a PLD changes the connections made between the gates in the device.

Another example of a programmable device is a single-board computer (SBC). SBCs are small, single-chip computers that can be programmed to perform a variety of tasks, such as running a web server, controlling a robot, or playing media. Some popular examples of SBCs include the Raspberry Pi and the Arduino.

Programmable devices are also used in the Internet of Things (IoT). IoT devices are connected to the internet and can be programmed to perform a variety of tasks, such as collecting and transmitting data, controlling other devices, and interacting with users. Some examples of IoT devices include smart thermostats, smart locks, and smart appliances.

In summary, programmable devices are used in a wide range of applications, including control systems, automation systems, data acquisition systems, and the Internet of Things. They can be programmed to perform a variety of tasks and are used in industries ranging from manufacturing to home automation.

Examples of Programmable Device Applications

An example of a programmable device is a smart thermostat. These devices can be programmed to automatically adjust the temperature in a home or office based on the preferences of the user. They can also be controlled remotely using a smartphone app, allowing users to adjust the temperature from anywhere.

Programmable Devices for Healthcare

In the healthcare industry, programmable devices include devices such as insulin pumps and pacemakers. Insulin pumps are small, portable devices that deliver a continuous supply of insulin to patients with diabetes. The pumps can be programmed to deliver insulin at specific intervals throughout the day and can be adjusted as needed based on the patient’s blood sugar levels.

Pacemakers are small devices that are implanted in the chest to help regulate a person’s heartbeat. They can be programmed to deliver electrical impulses to the heart when needed, helping to prevent arrhythmias and other heart rhythm disorders.

Robotic surgical systems are another example of programmable devices used in healthcare. These systems allow surgeons to perform complex surgeries using precise robotic instruments, which are controlled by a computer program. The use of robotics in surgery can help to reduce the risk of complications and improve patient outcomes.

Other examples of programmable devices used in healthcare include medical monitoring devices, such as heart rate monitors and blood pressure monitors, and devices that assist with rehabilitation, such as exoskeletons and robotic physical therapy devices. Overall, programmable devices play an important role in healthcare by providing patients with the care and treatment they need to improve their health and quality of life.

Programmable Devices for Automotive

Programmable devices are also used in the automotive industry, such as in self-driving cars. These cars are equipped with sensors and algorithms that allow them to navigate and make decisions on the road. Some examples of programmable devices used in automotive include:

  1. Engine control units (ECUs) – ECUs are microprocessors that control various aspects of an engine, including fuel injection, ignition timing, and engine temperature. ECUs are programmed to optimize engine performance and fuel efficiency.
  2. Automatic transmission controllers – Automatic transmission controllers are microprocessors that control the shifting of gears in an automatic transmission. These controllers are programmed to optimize shift points based on various factors such as engine speed and load.
  3. Electronic stability control (ESC) systems – ESC systems are microprocessors that control the braking and throttle of a vehicle to help maintain stability during sharp turns or sudden changes in direction. These systems are programmed to react to certain stimuli, such as steering angle or yaw rate, to help keep the vehicle on track.
  4. Adaptive cruise control (ACC) systems – ACC systems are microprocessors that control the speed of a vehicle based on the speed of other vehicles in front of it. These systems are programmed to maintain a safe following distance and adjust the speed of the vehicle accordingly.
  5. Telematics systems – Telematics systems are microprocessors that transmit and receive data wirelessly, allowing for remote monitoring and control of a vehicle. These systems are programmed to transmit data such as location, speed, and fuel level to a central server, which can then be accessed by the vehicle owner or a fleet manager.

Overall, programmable devices play a crucial role in the automotive industry, helping to improve vehicle performance and safety. These devices are constantly evolving, with new technologies and capabilities being developed all the time.

BPM Makes Programming Devices Easy

BPM has delivered more fine-pitch automated programming systems than all of our competitors combined. BPM programmers and software are the fastest universal programmers in the world, supporting MCUs, FPGA, eMMC, NAND, NOR, Serial Flash memory devices, and more. What really sets them apart is how easy BPM systems are to set up and run, without requiring a skilled operator. To request a demo, please click here.

Device Programmers from BPM | https://bpmmicro.com/how-to-program-in-house/ Video: Bring Programming In-House

 

Adapters: Understanding Socket Modules, D-Cards, and Socket Cards

Adapters: Understanding Socket Modules, D-Cards, and Socket Cards

Socket

noun
sä-kət 
Definition of socket:  an opening or hollow that forms a holder for something
Source: Merriam-Webster

“Socket” can mean different things depending on the context. Even in just electronics, “sockets” can mean more than one thing.

When BPM uses the term “socket,” it is referring to the electro-mechanical interface between the BPM programmer and the programmable device.

BPM pioneered using socket adapters to increase the usefulness of their programmers. In the “old” days, you had to buy a programmer for each type of device needed (which might mean a new programmer for a different pin count). Socket Adapters are the mechanical “bridge” between the programmer’s programming site and the device to be programmed. A software algorithm is needed as well, which directs where the packets of data go. Most programmers sold in the last 15 years or so use adapters.

There are two main components on an adapter: A circuit board with connector pins that insert into the programmer’s site, and a socket receptacle. The circuit board, due to its structure, is unlikely to fail before millions of insertions. There are no “mechanical” parts, with the exception of the connectors. Not so with the receptacle. The receptacle is “closed” in its resting state. In order to open the receptacle to insert a device, pressure is applied to the top (either by hand, by a lever, or by a pressure plate in an automated system). Some large device sockets utilize a clam-shell top to close. Receptacles, due to their mechanical nature, are subject to failure after a certain number of insertions. For standard socket receptacles, you can expect anywhere from 5,000 to as many as 25,000 insertions. High insertion sockets (HIC) are rated for 250,000 insertions.

BPM does not limit the number of insertions on its sockets (many of our competitors do). We do give the operator a warning that a socket has reached its factory-expected life.

Most BPM sockets come with a receptacle base. Receptacle-base socket modules and socket cards include a receptacle interface between the printed circuit board and the socket. This allows you to replace only the individual consumable socket once it reaches its useful life. This has proven to extend the life of the socket module and socket card, producing higher yields and lowering programming cost per device.

3 Classes of Adapters

BPM designs and produces a variety of socket adapters, and offers three classes of socket adapters:

Socket Modules (Legacy Adapters)

  • 6th Gen programmers: FSM*, FASM*, FXSM*, FXASM*
  • 7th Gen model programmers: FSM*, FASM*, FXSM*, FXASM*, FX2SM*, FX4SM*, FXASM*, FX2ASM*, FX4ASM*

D-Cards (Daughter card replacement assembly)

  • LSM*, LASM*, LXSM*, LXASM*, LX2SM*, LX2ASM*, LX4SM*, LX4ASM*
  • 6th and 7th Gen programmer socket module daughter card replacement assembly
  • In limited cases, D-Cards are compatible with 9th Gen programmers, as specified within the BPWin support list

Socket Cards

  • FVE*, FVE2*, FVE4*, FVEG*
  • Socket Cards are used with Flashstream, 8th Gen, 9th Gen, and 10th Gen programmers, where listed in the support list
  • Socket cards are not used with Legacy 6 and 7th Gen programmers. See Socket Modules (above)
  • FVEG adapters are gang design, meaning there are multiple sockets on a single pc board.

Gang Adapters

  • FVXG adapters are gang adapters that are only compatible with 10th Generation programmers.
  • All sockets share the same pc board on a gang adapter
  • FVXG8 is a gang 8 adapter with 8 sockets per board.
  • FVXG6 is a gang 6 adapter with 6 sockets per board.
  • Similarly, BPM could design FVXG2 (two up), FVXG3 (three up), FVXG4 (four up), or FVXG5 (five up) adapters.
  • IMPORTANT: The pressure plates used for 10th Gen automated programmers are heavier gauge stainless steel than the pressure plates used for all other Generation programmers. The pressure required to open up to 8 sockets is double that required for 4-sockets per site automated programmers.

BPM Device Programmers | Socket Modules/Socket Cards  | Socket Name Decoder  | Extend Socket Life Article  | Buy Sockets

Up-Time, Accuracy, and Waveforms

Up-Time, Accuracy, and Waveforms

Sweat the Details

Two metrics in device programming are super-important (but the third might be even more important). Here are several questions to ask:
  • What can I expect for up-time and utilization for my Device Programmer?
  • How does BPM ensure the highest quality and accuracy of finished programmed devices?
  • How does BPM deliver the cleanest waveforms? Why are clean waveforms important?

Up-Time/Utilization Rates

With routine maintenance and yearly calibration, BPM systems are designed for maximum uptime. Many factories worldwide run their Automated Programming Systems 6 days a week/3 shifts a day. For purposes of allocation, BPM recommends using an 85% utilization rate (but you may find it above 90% in actual use). BPM’s systems are easy to set up, especially compared to other comparable systems, making their utilization rate the best in class.

Accuracy

BPM ensures accuracy and repeatability for device programming In three main ways: Auto-teach, Vision Alignment, and Job Automation. All programming systems are highly repeatable– once they are set up, they will reliably repeat their program (even if it isn’t perfect). The trick is to start with a perfect setup, resulting in repeatable, reliable, and accurate yield.

A: Teach too high may cause misalignment. B: Teach too low may cause micro-fractures that oxidize over time. The device may pass the initial test only to fail in the field

WhisperTeach is BPM’s patented process to “auto-teach” the critical Z-height of input-output locations and sockets. You see, it’s easy, with a downward camera, to center the X/Y coordinates in the input/output and socket locations (and if you are off slightly, BPM’s on-the-fly vision centering auto corrects and auto centers). But there is no camera to precisely place and pick up the Z (up and down). Some locations are more difficult than others because of where in the machine they are. But even in the “easy” locations, a human operator can only see to about 45 microns (slightly smaller than the width of a human hair).  WhisperTeach is a major factor in BPM’s systems ease and speeds up set-up without sacrificing quality– it’s more accurate (within 15 microns) than a human operator, even a highly trained technician.

For on-the-fly vision alignment, BPM systems utilize a CyberOptics LNC-120 camera which precisely spins the device between the input/output location and the socket without requiring the system to slow down. This boosts DPH (Devices per Hour) without sacrificing quality. BPM’s systems can handle the smallest chip-scale packages in the industry (as small as 1mm x 0.5mm).

Finally, Job Automation allows multiple workflows to be stored and retrieved quickly. BPWin, BPM’s Process Software, calls this application JobMaster. It allows you to prepare programming jobs to meet precise specifications, and then save the jobs for future use for repeatable quality.

Waveforms

BPM’s programming site technology has its origins in test equipment. Everything, from the pin drivers to the gold-plated contacts on sites and sockets, is designed to deliver the cleanest waveforms. If you want to know more, read the Signal Integrity article here. For the short version, signal integrity delivers maximum quality and device life expectancy (you don’t want “device amnesia“).

Clean waveforms give you programming results that you can count on and the highest first-pass yields.

Off-line vs In-System Programming

Off-line vs In-System Programming

Off-line vs In-System Programming

BPM Microsystems is exploring different ways to get devices programmed. According to the case study “What is the Best Way to Get Devices Programmed,” there are six main ways to program devices. This case study explores two of those six methods: In-system Programming (ISP) and Off-line programming.

Upfront, it is understood that BPM provides off-line automated and manual programming solutions and accessories. BPM used to provide an ISP solution: the 2800ISP. In many ways, the 2800ISP was a programming marvel that solved many of the problems traditionally associated with ISP because it allowed customers to program large memory devices in high-speed parallel mode, similar to in-socket programming.

 

Microchip Pickit 3 is an example of a chip development kit that can be modified for a production environment

In-system programming (ISP) allows some devices to be programmed after it’s soldered on the PCB board. This allows firmware updates and small data uploads, integrating programming and final test into a single step. There are compelling reasons to program at the final test, such as when x-ray inspection (on certain types of devices) requires programming as the last step. Likewise, because of the attributes of PCM technology, any preprogrammed data to the device would be lost after reflow, therefore requiring in-system programming equipment. Occasionally, multiple devices reference each other and are programmed differently based on feedback between the devices on board; while rare, there isn’t another solution in that particular case.

In-system programming also allows for product “versioning” where the same circuit boards receive different software versions for different products or different functions. This can also be accomplished on off-line programming via API with inventory control. Lastly, there are fewer consumable materials involved with ISP (input such as trays or tapes, sockets, etc.).

How ISP works

FlashRunner 2.0 16-channel ISP programmer

Typically, In-system programming is accomplished by a variety of home-grown solutions, chip development kits adapted for production, and/or ISP-specific universal modules, such as the FlashRunner from SMH. They all share a fixture of some sort that connects the devices on-board to the programming interface. Typically a “bed of nails” fixture is used with pogo pins that come in contact with the board to enable the electro-mechanical interface. Fixtures are designed for long-life cycles, with the pins needing to be replaced periodically.

For specific use cases, ISP is the most effective method: short programming times, requiring flash or firmware updates at the end of the line, with no physical changes to the boards for several years.

Set-ups

In-circuit programming requires a test engineer to design, set up, and qualify the equipment. The initial set-ups can be fairly extensive (and expensive), usually requiring an outside consultant to design the fixture and to configure the controllers. Prior to production, there may be up to a week of in-house configuration to ensure all components are functioning correctly. Due to the complexity of a typical ISP setup, it may take more time to troubleshoot all the potential issues, such as signal integrity caused by longer cable lengths, power issues, and more. If time to market strategy is a potential issue, other options may need to be explored.

If changes to the board are required, a new fixture is required, which is priced according to the complexity and the number of pins required. As a rule of thumb, fixtures such as bed-of-nails start around $2,000 USD and average about $5,000.  This price does not include the engineering expertise to develop and qualify the solution.

Final Test

Bottlenecks

Programming complexity may cause the ISP beat rate to decrease to a point where it becomes a bottleneck. The trend in programming is more data; if the programming/test takes more than the other processes behind it, your line will outpace the final production rate. Product lifecycles also need to be factored in– ISP works best for standardized boards with years of life expectancy, and not so much for quicker-turn products, such as consumer electronics and automotive components.

Potential Roadblocks

What happens if the ISP programmer stops working? Your line goes down until it can be fixed. The same goes for bent/broken pogo pins, although they can usually be fixed fairly quickly. Development tools may lack log file information that comes with universal systems; log files can help to pinpoint what went wrong and what can be done to fix it. 

What happens if you get a red light at the final test? This indicates that one or more of the devices failed. Your choices are to scrap the board, or send it to manual rework (find the bad device(s), desolder, remove, insert a fresh device, solder, and send back to test for programming). If PCBs are panelized, the manufacturer needs a method to isolate and rework bad boards, including programming (which may require a separate fixture). With off-line, all programmed devices have been pre-tested. The only issue may be a bad solder, which can be fixed fairly easily.

ISP fixtures require special storage when not in use. They are delicate instruments that require special handling. Fixtures are not universal– if a tester is replaced, most likely you’ll need a new fixture.

Off-line Programming

A dime and a BGA device compared to a tiny CSP device

Off-line programming is a separate process where blank chips are programmed on high-speed robotic systems and placed into output media, usually tape. Off-line machines are best suited for medium to high volume as well as high mix (many different types of devices); they have more capacity and greater flexibility than ISP. They can change quickly to adapt to new projects and will not become obsolete when a project changes. For instance, BPM Microsystems Automated Programmers have almost no size or type limitation for devices; they can handle CSP devices as small as 0.5 x 1.0 mm, or QFP devices up to 34 x 34mm.

Flexible

Socket Card

The flexibility comes from the socket adapters and the universal programming technology. Socket modules and socket cards are the electro-mechanical interfaces between the programmable semiconductor device and the programmer. The robust design is ideal for manufacturing and design environments where high signal integrity and reliable performance are critical. The sophisticated technology of BPM Microsystems’ active circuitry delivers the cleanest waveform signals to the device by eliminating noise, ground bounce, and overshoot, which allows for the most reliable vector testing available to ensure the highest quality and overall yield. 

Depending on the device, up to 4 sockets can be installed on each programming site. Therefore, it’s possible to program millions of devices per year (depending on the complexity of programming specifications and peripheral operations, such as laser marking). The same socket and algorithm used to create the first article are also used for production.

Scalable

Off-line programming systems are scalable. As needs change, you can add sockets, sites, shifts, or even additional systems. BPM systems make adding additional shifts simple. Set-ups and operations do not require a highly experienced technician. BPM systems are designed to run three shifts with over 85% utilization rate. One off-line APS can support multiple SMT lines.

What makes BPM’s systems better? WhisperTeach™— BPM’s advanced patented Auto-Z teach technology eliminates the need for a highly-skilled operator to set critical Z-height for pick-and-place functions. WhisperTeach™ offers faster setup times and improved yields. WhisperTeach™ eliminates common Z-height errors such as miss picks, miss place, and socket continuity flaws.

BPM’s process software, BPWin, is the best in the industry and provides functionality, quality, and control from design to production. BPM’s engineering teams create new features every week. The user-friendly interface helps you set up, run and save your programming jobs with ease. Factory integration through the BPWin API streamlines production processes. BPWin offers serialization and secure programming for various requirements (and much more). Read more here.

High Mix

In-line programming systems, such as FlashRunner, are not made for high-mix programming. If the number of programmable devices exceeds the number of channels, you will need to upgrade or add additional test machines for the additional devices. BPM Automated systems can switch jobs in three to 10 minutes. That means BPM systems are producing while ISP systems are still being set up, which can take days. Over the course of a year, this can equal hundreds of additional hours of productivity, even in one-shift shops.

ISP solutions are dedicated to one project.  If you run multiple projects on an SMT line you have to have redundant ISP programmers that are on the shelf, at least part-time. Off-line allows you to maximize equipment utilization, supporting multiple SMT lines and multiple products in a single factory.

BPM’s 9th Gen Site technology supports over 40,000 devices, with new development adding to that number every month. BPM’s sites have up to 240 pin drivers with access to all of the pins. Development tools used in ISP are limited to a few devices in a particular semiconductor house’s family of devices. Universal ISP programmers are more “universal” but have much less than BPM’s solution. They do provide new development for unsupported devices but expect several weeks for development and qualification.

Small Footprint

Automated programming systems are surprisingly compact when you consider their capabilities. BPM’s latest system, the 3928, is 162 x 96cm (tape in/out takes up a little more room) and is capable of programming 28 devices simultaneously. It uses standard factory power; the only additional requirement is compressed air. Typically, the system can be installed on the same floor as the SMT line. Machines are installed and operational within five working days.

In Conclusion

In-system programming is a solution to consider for low to medium mix programming with very short programming times. If x-ray scanning of boards is used, depending on the device, ISP may be the only option. ISP lacks the flexibility available from off-line programming systems. With advances in complex programming, especially for automotive applications, ISP may be a good fit now, but will that still be true a year from now? For a growing number of companies and applications, off-line programming may be a future-proof investment that generates positive ROI in weeks, not years (see ROI article).

For more information about BPM’s Automated Programming Systems or to speak to one of our experts about your particular requirements, please call +1 (713) 688-4600 or toll-free in the US or Canada (855) SELL BPM.

Offline Automated Programming vs Inline SMT Programming

Offline Automated Programming vs Inline SMT Programming

In the case study “What is the Best Way to Get Devices Programmed,” BPM Microsystems explored six main ways to get your data on devices. The answer is “Depends.” The short answer is there is no one way that is always better than another. This case study explores two of those six methods: Inline SMT programming and Off-line programming.

A small segment of electronic manufacturing services (EMS) and Original Equipment Manufacturers (OEMs) can use inline programming solutions effectively and economically, compared to off-line programming. A lack of flexibility, high cost, and the specter of obsolescence should raise questions about the long-term viability of Inline programming.

RoadRunner Inline Programmer from Data I/O

 

 

 

Inline SMT Programming

Inline SMT programming is a solution to consider for narrow segments of device programming requiring short programming times, with medium to high volume, for just one device type. Back in the day, that’s what programmed some of the most popular cell phones, when on-board memory sizes were Mbits compared to today’s designs with Gbit memory sizes. Benefits of inline programming include just-in-time programming (which has its own problems lately; see article here), simplified inventory management, and lean manufacturing. If that sounds like your process, and that process won’t change in the next five years, inline programming should be considered (or possibly programming at test, but that’s for a future article).

RoadRunner is an inline SMT programming solution from Data I/O; it has been on the market since the early 2000s. Data I/O advertise the RoadRunner as The world’s only just-in-time inline programming system.” There are other inline programmers as well; for the most part, they are sophisticated, albeit expensive, home-grown solutions.

When programming times are in excess of the beat rate  (beat rate is the total throughput per time on an SMT line) of the SMT line, inline SMT programming becomes less attractive because the programmer is not providing enough parts to keep up with the line speed. In short, programming becomes the line bottleneck. As data density, device complexity, and the number of devices continue to increase, the need to reduce the cost of programming will be amplified like never before. Inline programming becomes less cost-effective and less time-effective as programming time increases because multiple units may be required to keep pace with the line beat rate. 

Inline is Wide

Inline solutions attach at the tape feeder table, and are large, compared to standard tape feeders, taking up to 6 (or more) feeder positions on the placement machine. Depending on the complexity and mix of devices delivered on the tape reel, there may not be spare “real estate” for the inline programmer. It’s important to verify there’s room before committing to an inline solution.

Multiple inline programmers may be required per machine if the programming time is longer than a single system can keep up with, or if multiple programmed devices are needed. That has a double cost: less available tape space, and the expense of additional inline programmers. The problem is obvious. The potential requirement to add another placement machine makes device programming inline a very expensive process. 

Socket Capacity

RoadRunner utilizes sockets to program devices. Sockets are the electro-mechanical interface that uploads the signal from the computer to program a device. A small robotic arm moves the blank device to an awaiting socket and then returns the freshly programmed device to the tape, which feeds directly to the SMT pick and place machine. Sockets are “consumables” and require cleaning, maintenance, and replacement when their lifecycle is complete. Normally, the lifecycle can be managed between shifts, but what happens when a socket fails? Your expensive SMT will have to idle until the socket is replaced. BPM Automated systems have built-in fault tolerance; if a socket fails, the system simply bypasses that socket until it can be replaced. This may only cause a slight reduction in throughput, rather than shutting down the SMT line.

Backups

Inline programmers require redundant back-ups because of the high cost of line-down events on the SMT line. What happens if the backup inline programmers go down as well? Regardless, backup inline programmers are an additional expense, but beware if you get talked into buying only one.

Depending on the number of SMT lines at your facility, each placement machine will require its own set. This can begin to add up quickly, especially if you factor in backups. What’s more, if you have different SMT equipment, you probably can’t share a RoadRunner made for different machine brands: for example, a RoadRunner designed for a Fuji SMT most likely won’t operate on a Juki machine.

Expensive

Inline SMT programming solutions tend to run on the pricey side, especially when backup systems are factored in. If the SMT line is idle, the inline programmer is idle as well. If expensed using a standard five-year depreciation, there’s no guarantee that an inline programmer will not be sitting on a shelf while it’s still being “paid” for (perhaps by no fault of its own, but because of changes in programmables or a loss of a particular project). Today, product life cycles are shorter than ever before. Consider the financial model before investing in inline programming. 

Crystal Ball

Unless you can see into the future, it’s difficult to know what your SMT line will look like in a year, let alone five. What happens if your project changes or design modifications necessitate different programmables? RoadRunner, for example, is offered in a range of sizes; if a larger device is spec’d, you may need a new RoadRunner, while the “old” programmer collects dust on a shelf. More likely, more data is required on the device, which will slow the entire line, unless more inline programmers are purchased. 

Off-line Programming

Off-line programming, like the name implies, is a separate process where blank chips are programmed on high-speed robotic systems and placed into output media, usually tape. Off-line machines are best suited for medium to high volume, high mix (many different types of devices); they have more capacity and greater flexibility. They can change quickly to adapt to new projects and will not become obsolete when a project changes. For instance, BPM Microsystems Automated Programmers have almost no size or type limitation for devices; they can handle CSP devices as small as 0.5 x 1.0 mm, or QFP devices up to 34 x 34mm.

Flexible

The flexibility comes from the sockets. Depending on the device, up to 4 sockets can be installed on each site. Therefore, it’s possible to program thousands of devices per hour (depending on the complexity of programming specifications and peripheral operations, such as laser marking). The same socket used to create the first article is also used for production.

Same Process

It’s worth mentioning that off-line programming utilizes the exact same process used on placement machines: reels of components and devices are loaded by an operator. Reels of programmed devices take up less space on the placement machine (1 or 2 slots) than an inline programmer (6 or more). What’s more, inline programming systems require fresh reels of blank devices periodically, requiring a pause while the operator feeds in a new tape. Devices programmed off-line can be set up with two (or more) locations the SMT machine can use; as the tape reel runs out, it shifts over to a fresh reel while the operator replaces the empty reel with a new one.

Scalable

Off-line programming systems are scalable. As needs change, you can add sockets, sites, shifts, or even additional systems. BPM systems make adding additional shifts simple. Set-ups and operations do not require a highly experienced technician. BPM systems are designed to run three shifts with over 85% utilization rate. One off-line Automated Programming System can support multiple SMT lines. 

High Mix

Inline SMT programming systems, such as RoadRunner, are not made for high-mix programming. Each system is dedicated to a particular device; depending on the device, you may need a whole new RoadRunner. BPM Automated systems can switch jobs in typically 15 minutes or less; they are up and running while comparable systems require two to three times more time to set up. That means BPM systems are producing while other systems are still being set up. Over the course of a year, this can equal hundreds of additional hours of productivity, even in one-shift shops.

Small Footprint

Automated programming systems are surprisingly compact when you consider their capabilities. BPM’s latest system, the 3928, is 162 x 96cm (tape in/out takes up a little more room) and is capable of programming 28 devices simultaneously. It uses standard factory power; the only additional requirement is compressed air. Typically, the system can be installed on the same floor as the SMT line. Machines are installed and operational within five working days.

Conclusion

  Inline SMT Programming Off-line Programming
Number of tape slots on SMT machine Up to 6 for each device 1-2 (depends on device/tape width)
Number of programmers 1 for each device (plus backup) 1
(can supply several SMT lines)
High volume programming Yes Yes
High mix  No Yes
Universal  No Yes
Require advanced operator No No
Scalable Limited/ Expensive* Yes
Need backup systems Yes No (spare site recommend)

*Inline is scalable but the cost is double to go from 1 to 2. Offline has an incremental cost much less than inline

Inline SMT programming is a solution to consider for high volume, low mix programming with very short programming times. It lacks the flexibility available from off-line programming systems. With advances in complex programming, especially for automotive applications, inline may be a good fit now, but will that still be true a year from now? For a growing number of companies and applications, off-line programming may be a future-proof investment that generates positive ROI in weeks, not years (see ROI article).

For more information about BPM’s Automated Programming Systems or to speak to one of our experts about your particular requirements, please call +1 (713) 688-4600 or toll-free in the US or Canada (855) SELL BPM.