Wednesday, May 1, 2019

TRAVEL: Solar Around The World

Here I show some cool solar related stuff that we found on our travels


Tokyo - Solar powered road sign

Tokyo - Solar powered road cone

Tokyo - Solar powered traffic light

Tokyo - Solar powered street light

Tokyo - Solar powered info station

Tokyo - Solar powered trinket (kinda moves like a fish)

Nikko - Solar powered road light

Kyoto - Solar powered info station

Kyoto - Solar powered path lamp

Kyoto - Solar powered toilet something

Kyoto - Solar powered taxi station light

Kyoto - Solar powered path light

Mount Koya - Solar powered thermometer

Outside Mount Koya - Solar panels on a hill

Outside Mount Koya - Solar panels on a field

Onomichi - Solar powered road light (seen better days)

Onomichi - Solar powered bike path light

Onomichi - Solar panels on a field

Onomichi - Solar panels on roofs

Onomichi - Solar panels held with scaffolding

Onomichi - Solar powered road light

Onomichi - Solar powered traffic light

Hiroshima - Solar powered street lamp

Hong Kong

Solar powered mosquito zapper

Solar powered road light


 Central - Solar panels on roofs

Arad - Solar powered bus stop display

Arad - Solar panels on roof

Be'er Sheva - Solar powered bus stop display (and a bunch of ants digging up dirt...)

Be'er Sheva - Solar powered utility box

Jerusalem - Solar powered radio speaker

Tel Aviv - Solar powered something on a lifeguard building

 Tel Aviv - Solar powered bike light

Tel Aviv - Solar powered wireless phone charger

Saturday, March 16, 2019

UPDATE: Travel & Portable Lab

The cat is out of the bag, we are going on another big overseas trip ;^)

Since travel will take a large chunk of the journey (4-5days) I decided to take my latest project with me, as I can see myself getting a bit bored during the transit.

Inside the kit I have everything I need to power-up, program, & debug the modified nRF52832 dev board I made a while back. Also for reference here is a full list of what I'm taking:

  • ThinkPad X260 (an awesome portable laptop)
  • SEGGER J-Link clone (programmer)
  • Saleae Logic 16 clone (logic analyzer)
  • nRF52832 dev board (modified to take USB 5V and convert to 3V3 & 1V8)
  • nRF52832 spare breakout board
  • BME280 breakout boards
  • SGP30 breakout board
  • Logic level converter (should not need)
  • USB to Serial converter
  • USB power monitor
  • Various USB cables
  • Various cables & probes

Wednesday, January 30, 2019

UPDATE: Solar Powered Weather Station

To expand my microcontroller and programming knowledge I have decided to try and make a Solar Powered Weather Station. My goal is to record parameters like:
  • Temperature
  • Humidity
  • Air pressure
  • Air quality (something to do with CO or CO2)
I then hope to send (wirelessly) the data to a base station and log/display it on a simple website.
To make things interesting I also aim to power the data gathering station from a large supercapacitor (~100F), and in keeping with my solar tradition the supercapacitor will be charged from a solar-cell. Just like with my last project I want this thing to last for a good 20-40years with minimal intervention, meaning I will also have to dive into the wonderful world of watchdogs as well as structure my code to handle glitches properly.

With all that said here is what I have so far:

MCU + Tx/Rx

After a bit of research I decided to go with the Nordic Semiconductor nRF52832 as doing so will allow me to have an MCU + Tx/Rx capability all on the one chip. Also this chip supports Bluetooth 5 so is ideal for this low power & data rate application:
Lastly I will be using Segger Embedded Studio as the IDE and Segger J-Link as the programmer.


To cover temperature, humidity, & air pressure I will be using the trusty Bosch BME280.

For air quality I will use the Sensirion SGP30. This nifty IC can give out readings like:
  • Total Volatile Organic Compounds (TVOC)
  • Equivalent CO2 (eCO2)
  • Ethanol
  • H2
I should point out that the SGP30 does not measure CO2 levels directly but instead monitors equivalent CO2 (eCO2), it does this by looking at changes in Volatile Organic Compounds (VOC) levels as these can be linked to a possible rise/fall in actual CO2. If you are after something that can measure true levels of CO2 then you will need to use an IR based sensor like the CO2meter K30.

Another thing to note about the SGP30 is that though it draws similar current as the popular AMS CCS811 (48.8mA vs 54mA) the SGP30 has a much quicker conditioning period (aka warm-up time before a reading should be taken, 15sec vs 20min). So in the long run it is more suitable for this low power application.

Saturday, January 12, 2019

UPDATE: Etsy Store Reopening

A quick update. Almost two years ago I opened up my Etsy store where I was selling a wedding ornament, also in those two years I have only made a single sale. Not long ago my wife suggested that I give this e-commerce thing another go and in the process I added 8 more ornaments, most to do with video games. Long story short it's going much better than expected, in the 2months the store has been "reopened" I have made an additional 15 sales and have shipped out 22 units (some bought more than one).

Another thing I found out is that keeping track of how the store is going has become a hobby in itself, as I have a multi-tabbed spreadsheet where I record things like: sales, cost of materials/utilities/assembly/shipping, profit margins and so on...

Anyway here are some pictures of what I now sell:

Sunday, November 25, 2018

PROJECT: Solar LED Heart Ornament


TL;DR: Made a cool ornament for wife, scroll down to bottom for some cool pictures & videos ;^)

Another year another lot of important dates that warrant a gift for the wife. This year I decided to try and use the SPV1040 to charge a supercapacitor during the day, and have the super capacitor drive a "breathing" LED circuit during the night. Why use a supercapacitor? Well the idea is that I want this thing to work for a long time, like in our retirement age long time. So with all that waffle out of the way here is how I went about it:
SMALL UPDATE: This is a cool one for me, turns out there were a few maker/hacker based websites that wrote a small snippet about this project:
Also for those interested:
  • It turns out that on a 42°C day the inside temperature of the unit gets up to ~60°C
  • In 2017 Jared Smith made a similar SPV1040 based solar/supercapacitor circuit, here is his post

Solar-cell, IXYS KXOB22-04X3F

NOTE: IXYS KXOB22-04X3F has been superseded by KXOB25-04X3F, the Gen 2 solar-cell offers a higher power output (22mW vs 20mW) as well a a higher efficiency (25% vs 22%). Sadly sourcing the new part is difficult, hence why I decided to stick with the KXOB22-04X3F. Also here is a good table of other IXYS solar-cells.

Though I have a big variety of solar-cells (some of which I even made myself, see picture below) this time I wanted to use something that came from a legitimate manufacturer. My aim was to find a solar-cell that had a small form factor while at the same time offering a high power output and a long life expectancy (factors that tend to go against each other).
In the end I decided to go with the IXYS KXOB22-04X3F as this little solar-cell packed quite the punch and even came with an extensive datasheet. Plus this is a monocrystalline solar-cell and these are well known for their high efficiency and long life spans.

Solar DCDC, ST SPV1040

NOTE: If you have a closer look at the SPV1040 datasheet you will find that the lowest power solar-cell they used is 250mW, while the solar-cell I chose had a peak power of 20mW. I suspect this caused the DCDC converter not operate at it's full potential (see further graphs), so if you plan to use this IC make sure to choose a beefy solar-cell to go with it.

This section acts as an intermediate step between the solar-cell and the supercapacitor:
If you are not aware it's not the best idea to charge a supercapacitor directly with a solar-cell, to give a few reasons why:

  1. The circuit will be inefficient as most of the time the solar-cell will not be operating at peak power, translating to longer charge times.
  2. There is no voltage or current control, and if your solar-cell is powerful enough it is likely to shorten the life of the supercapacitor.
  3. The supercapacitor will only charge to the open-circuit voltage (Voc) of the solar-cell, in most cases this is not enough. 

Hence you introduce an intermediate power conversion step, which in this (and most other) cases is a solar DCDC converter. The converter I went with (SPV1040) is quite a nifty beast. It's most powerful feature is the ability to track the maximum power point of the solar-cell (mppt) and adjust it's input impedance accordingly. This is useful as if you have a look at a typical solar-cell IV/PV curve you will see that the peak power point occurs at a single current/voltage/impedance, hence when illumination conditions change this converter is able to respond accordingly.

The other key function of the DCDC converter is to boost the output voltage (Vout) to 4.2V, which is then used to charge the supercapacitor through a schottky diode. The purpose of the diode is to stop the supercapacitor from discharging through the Vout setting resistor network (R4 & R6). Also the peak charging current of the supercapacitor is set by R1 to 50mA, and initial fast charging of the supercapacitor is enabled through DS1.

Lastly I tried to characterize the DCDC converter to figure out just how efficient it really is. One thing I quickly learned is that you can't simply connect this DCDC convert to a power supply (PSU) as it expects to see a solar-cell like input. A trick to get around this is to place a forward biased diode across the input of the PSU, as in this configuration the silicon junction of the diode as similar to a solar-cell. The other thing to note is that the following plots are very crude, as I only had a single multimeter (EEVblog 121GW) that could log the input/output power. Still the results give a good indication of how the circuit operates, and interestingly also show the different charging stages. For example if the supercapacitor voltage is low enough then most of the initial charging is done through DS1 which brings up the supercapacitor voltage to Voc, after this the DCDC converter takes over and does the rest:

Supercapacitor, AVX SCMS22C255PRBA0

NOTE: AVX changed the PN as I was writing this post, the only thing that changed is the tolerance. Old PN (SCMS22C255MRBA0) had a tolerance of ±20%, new PN (SCMS22C255PRBA0) has a tolerance of +100% -0%.

Besides a small form factor my main reason for choosing a supercapacitor over a typical battery is lifetime, as I wanted the ornament to be functional in the next 30years. If we were to compare some popular battery chemistries it would be pretty easy to see why supercapacitors come out on top in this scenario:

Brand Part # Chemistry Cycles Condition
VARTA 56427 201 018 Lithium Polymer 500 1.4A charge & 0.7A discharge
VARTA 56455 201 012 Lithium Ion 500 0.66A charge/discharge
PANASONIC VL-3032/VCN Lithium Vanadium Pentoxide 1000 For 10% DoD
MAXELL ML 2016 T6 Lithium Manganese Dioxide 1500 For 10% DoD @ 2.5mA discharge
VARTA 55604303059 Nickel Metal Hydride 1000
YUASA 3DH4-0LA4 Nickel Cadmium 1000
AVX SCMS22C255PRBA0 Supercapacitor 500000 Cycled between 5V & 2.5V

As you can see a typical battery will advertise ~1500 charge/discharge cycles before capacity drops below a certain threshold (this is typically 80% of initial capacity). Given that the ornament will complete one cycle per day this means it would reach this threshold within ~4years. Whereas with the supercapacitor I have chosen the capacity will drop to 70% of initial value after ~1370years, however this figure is not accurate as it does not account for other factors like voltage/temperature/dielectric aging...

A last note, AVX have released a fairly good whitepaper on this family of supercapacitors. You can read the full text here & here, the gist of it is:
  1. Operating at a lower voltage can drastically increase lifetime. An extreme example AVX presented was driving a supercapacitor at an ambient temperature of 85°C (this is the extreme part) with the voltage being 5V & 4V. At 5V the capacity drops to 70% after 2000hrs, however if the voltage is reduced to 4V then this figure improves to 4000hrs. Coincidentally driving the capacitor at a lower voltage also improves ESR stability:
  2. The conclusion states temperature dependence pretty well: "When derated to typical operating temperatures between 25°C and 45°C these parts are expected to last more than 20 years".

Illumination Trigger & LED Driving Circuit

This section is quite simple:
First off an NPN phototransistor (KPS-3227SP1C) drives an N-channel MOSFET (PMV20XNEA), I use this phototransistor to detect when the ornament is in a dark environment (no sunlight). When light is present the gate of the MOSFET is pulled low to ~0.4V above GND, enough to turn it OFF. When there is no light then the gate of the MOSFET is pulled high to the supercapacitor voltage, this turns the MOSFET ON which enables the oscillator circuit by providing a connection to GND. Earlier revisions of the illumination trigger circuit tried using the solar-cell as an input, however this was unreliable as the voltage of the solar-cell was always controlled by the DCDC converter.

Next the LED (KPTR-3216SURCK) is driven by a simple Ring Oscillator, which slowly fades the LED in/out in a breathing like manner thanks to the super low oscillation frequency of 59mHz (that's right milli). The reason why I went with this oscillator configuration is that it can work down to 1V, this is plenty enough for the LED which stops being bright at ~1.7V. If you are interested in having an oscillator circuit that can operate at a much lower voltage then I recommend having a look at some JFET based oscillators.

NOTE: At first I though that I was using a BJT Phase Shift Oscillator, however orolo & Hero999 from EEVblog pointed out that it's actually a Ring Oscillator. Also orolo explains the circuit operations quite well:
"When Q4 is saturated, Q6 must be off to keep Q4's base high. Since Q4 is saturated, its collector is low, which will turn Q5 off. As Q5 turns off, its collector goes up, which then turns Q6 on. As Q6 turns on and goes into saturation, Q4 is turning off. 

So the thing goes:
Q4(sat), Q5(turn off), Q6(turn on) → Q4(turn off) Q5(turn on) Q6(sat) → Q4(turn on) Q5(sat) Q6(turn off) → Q4(sat) Q5(turn off) Q6(turn on) → etc."

Lastly here are some results from LTspice which show how the circuit behaves with depleting supercapacitor voltage. If you want to see other results or try to run the simulation yourself then have a look inside the project pack:

Extra Pictures

Altium schematic:

Altium PCB:

SOLIDWORKS Visualize renders:
NOTE: Here is a good tutorial on how to render SolidWorks animations in Visualize.