PLEASE NOTE: If you had an account with the previous forum, it has been ported to the new Genetry website!
You will need to reset the password to access the new forum. Click Log In → Forgot Password → enter your username or forum email address → click Email Reset Link.

What is the micro c...
 
Notifications
Clear all

What is the micro controller in a MakeSkyBlue MPPT?

138 Posts
9 Users
0 Likes
2,466 Views
(@meaculpa)
Estimable Member
Joined: 3 years ago
Posts: 139
Topic starter  

note this-- it was a sunny day when I first ran this hacked makeskyblue.. and it looked to me that it was already running at more amps than

the old unit did..I dont think their mppt routine is all that great..


   
ReplyQuote
(@sid-genetry-solar)
Member Admin
Joined: 4 years ago
Posts: 2890
 
Posted by: @meaculpa
the two inductors are simply parallel circuits.. u can drive them individually so u could just drive one maybe to get better efficiency at low charging..

MPPTs often have 2-3 parallel circuits that are purposely run out of phase of each other.  While you can run each "inductor circuit" with the same drive signals, you'll end up with significantly more ripple on the output (and as a result, more ripple current stress on the on-board output filter caps--which if you aren't careful, could result in cap failure). 

Think of a 2-3 cylinder engine...if all cylinders fire at the same time, it's going to run REALLY rough.  If they fire at perfect offsets from each other, you will get a considerably smoother-running (and stronger) engine.  Same with an MPPT.

 

Posted by: @meaculpa
the configuration of the inductors is not what u are thinking.. it is simple a step-down voltage configuration..thats why they recommend 1 1/2 to 2 times the PV voltage to the battery v..

Took a look at the MSB I have....well, you're right that it's not a synchronous buck converter.  It's a plain-jane non-synchronous buck converter...just diodes on the output side--well, that's one efficiency killer right there!

Makes it considerably easier to drive, though.

 

Posted by: @meaculpa
also, the xiao in the arduino IDE has the basic freq fixed at 1khz (I suspect).. so I can even hear the inductors buzzing somewhat.. and yet I am seeing a slight current gain ALREADY.. so next I need to get down to metal and set some register to boost the freq up to 32khz or in that range..maybe find the sweet-spot the inductors like..

I would hope that MSB would have figured that out already, and you could just measure the freq on another unit?  Obviously, if the freq is too low, the inductor will start to saturate out at the end of each pulse...resulting in basically shorting the input to the output.  (You'll see a lot of ripple on the output if that happens--again, assuming you have a 'scope!)


   
ReplyQuote
(@meaculpa)
Estimable Member
Joined: 3 years ago
Posts: 139
Topic starter  

 out of phase -- u are correct-- it shouldnt be difficult to 'flip' the output of one of the pwms..

yeah I could check their freq..might do that today..it might be different for different models..different inductors..


   
ReplyQuote
(@meaculpa)
Estimable Member
Joined: 3 years ago
Posts: 139
Topic starter  

I added a routine to 'store' the settings in flash.. It became painfully obvious they never did that..flip off solar and batt, flip back on..GONE..now u get to sloooowly reset all the settings..screw that..


   
ReplyQuote
(@sid-genetry-solar)
Member Admin
Joined: 4 years ago
Posts: 2890
 
Posted by: @meaculpa
out of phase -- u are correct-- it shouldnt be difficult to 'flip' the output of one of the pwms..

Out of phase and inverted are completely different....if you invert the signal, it'll invert the duty cycle as well.


   
ReplyQuote
(@meaculpa)
Estimable Member
Joined: 3 years ago
Posts: 139
Topic starter  

ur right.. didnt think of that.. maybe alternate outputs by using a bool signal==phase

if(phase){analogWrite(PWM1,pwm);

                  analogWrite(PWM2,0);}

    else    {analogWrite(PWM2,pwm);

                 analogWrite(PWM1,0);}

if(PWMcounter>=255)phase=!phase;     


   
ReplyQuote
(@sid-genetry-solar)
Member Admin
Joined: 4 years ago
Posts: 2890
 
Posted by: @meaculpa
ur right.. didnt think of that.. maybe alternate outputs by using a bool signal==phase

Unless you can access a baremetal PWM module on the Xiao, you're better off running both converters in phase.  The point of out-of-phase operation isn't to alternate loading on the converters, but rather to double (or triple) the effective number of buck pulses/sec into the output cap.

Have to say that after discovering the MSB isn't a synchronous converter, I wouldn't be surprised if they run both buck converters in phase.......it seems their technical knowledge is quite limited.  Besides, there's lots of ways to be cheap 😉.

 

IF you want to really dig into a baremetal challenge of phase-shifted PWM output, I found the following article...not necessarily for the XIAO, but using the SAMD21 architecture.  It's definitely possible, but you also really need to understand the various CPU modules and how they function: https://blog.thea.codes/phase-shifted-pwm-on-samd/

I know, I should really be working on the 12kw production specification manual 😉.


   
ReplyQuote
(@thebutcher)
Reputable Member
Joined: 4 years ago
Posts: 355
 
Posted by: @meaculpa
ur right.. didnt think of that.. maybe alternate outputs by using a bool signal==phase

Seriously consider avoiding using those library functions.  They are quite slow.  Direct register access will see your code run much faster.


   
ReplyQuote
(@meaculpa)
Estimable Member
Joined: 3 years ago
Posts: 139
Topic starter  

image.thumb.jpeg.68b0327d9bc85a45c00c3d42ba654403.jpeg

IMG_20220613_140553.jpg

IMG_20220613_140557.jpg

IMG_20220613_140608.jpg


   
ReplyQuote
(@meaculpa)
Estimable Member
Joined: 3 years ago
Posts: 139
Topic starter  

each MSB has more-or-less the same amount of PV coming in..to be honest, the middle MSB [the un-modified one] earlier in each day does push out maybe 8amps..

but then it falls off to just a few amps as can be seen in the pics.. settings dont show any problem..go fiigure.. why does it decide to dropoff..?? heat..no.. fan isnt even running.. MPPT in MSB_speak appears to translate to Minimum Power Point Tracking.. MPPT.. chop chop..

NOTE: I havent even got back my new boards yet that switch the FETs at their sweetSpot freq.. all I am doing is gating an analogWrite() to the FETs..the 'window' of where the burst freq will be allowed..

couple weeks I will have new pics..


   
ReplyQuote
(@thebutcher)
Reputable Member
Joined: 4 years ago
Posts: 355
 

Did you roll your own tracker or use a library or the like?  If you used a pre-made one would you mind linking to it?  Just curious.  I haven't seen many good trackers in my wanderings so I'd like to add it to my list if it does turn out to be good.


   
ReplyQuote
(@meaculpa)
Estimable Member
Joined: 3 years ago
Posts: 139
Topic starter  

I am rolling my own.. just startingout.. but what I have seems to be on the right 'track' pun intended..

I want to open up MSB to everyone..retired here..just want off-gridders to do better..I will make PCBs availabe on oshpark.com when

I get the nasties all worked out.. pound ur own mppt..thats what its all about..share with the world --ur choice..


   
ReplyQuote
(@meaculpa)
Estimable Member
Joined: 3 years ago
Posts: 139
Topic starter  

Anybody got a burned out MSB or just one they dont want anymore.. I would like to buy a few and modify them with my upgrade.. thanks--

 


   
ReplyQuote
(@meaculpa)
Estimable Member
Joined: 3 years ago
Posts: 139
Topic starter  

image.thumb.jpeg.e8f47101ebb9bd26e7ebfc9f05a1af98.jpeg

IMG_20220703_105523.jpg

IMG_20220703_105512.jpg


   
ReplyQuote
(@meaculpa)
Estimable Member
Joined: 3 years ago
Posts: 139
Topic starter  

turns out MakeSkyBlue CC are simple asynch buck converters..two of 'em, in parallel..so efficiency is not so great..best efficiency happens at low watts where pwm is skinny..when power gets much higher, it becomes more the resistance of the torroid winding than the inductance to determine pwm..nothing I can do about it..as far as I know..originally msb used 40khz switching freq.. I found that 20khz actually works better--less heating..so I used 20khz..

I will make pc boards available at OSHpark.com when Iget my new boards in and make sure they 'fit'right..

here is my code....

 


   
ReplyQuote
Page 3 / 10