OEM Components and Services
Bob Kondner here. When I designed the original Battery Boss products and then the SunDuino the goal was low cost hardware. All the complexity is in 6000+ lines of tight, hand written assembly. No "Charger ICs" were used, the SunDuino is a software driven engine. Long ago we started with a PIC16C54 processors with UV erase windows, you couldn't get much code in those. But that tight code was a plus as new large processors allowed C application to be downloaded and run over top existing code. New processors had the large program space and the instruction set required for compiling C application.
Custom Magnetic Components
Many engineer associate "Custom" with meaning expensive but this in not the case for magnetics. Quantity defines cost, "Custom" provides for design optimization. The big issue for SunDunio magnetics was cross regulation on the 5V and 3.3V circuits. Our magnetic designs employ a foil wound tapped secondary, a must for tight tracking. As long as you have the design right and are willing to pony up for 5K+ pieces the magnetics are very reasonable. Lead times are terrible (12 weeks + at times) so order early. Since we did the pony up we can provide small quantities of these components at reasonable prices.
Getting the magnetic design correct and optimized is not easy. There are good books and tool out there but it takes some experience. Winding prototype coils is not easy and it takes various types of wire, tapes and foils. We have a small coil winder and tooling for several EFD sized core and bobbins, this greatly simplifies rolling prototype parts.
With some custom magnetics in stock you can seriously reduce systems cost. If you merge these magnetic components on you own PCB the marginal cost is tiny. The effort and NRE is significant but it easily gets made up in volume.
We don't like to roll custom software as it is expensive and difficult to test and verify. We also don't like providing our source and with 6000+ lines of tight assembly and no one wants to read it either. The entire idea behind the SunDuino was to provide a software foundation on which C applications could be built. Our C library provides the C app with many lower level functions. If a customer needs a new function that is easier to add and verify, this is the way many original Battery Boss function came to be.
SunDuino firmware is located in the bottom block of PIC18F26K20 code. This block is write and read protected. Code within a C app can neither read or write this locked block. If a user wishes to use SunDuino software in their own PCB we can provide pre-programmed processors.
The processor can be provided in two formats, 28 pin SOIC and 28 pin QFN packages. The BB25E uses the SOIC, it is easier to hand remove and replace. The BB10B uses the QFN to save space. The QFN is not as easy to replace. All boards include a 6 pin programming connection port. We can easily re-flash the locked boot block with new code if required.