Musings about big IT in a small world

Category Archives: Uncategorized

This is question many ask and there is non-obvious, yet simple and elegant answer – you can have multiple static blocks with the same identifier – create separate static block with identifier “footer_links” for each store view and you are done.

Jayson Tautic of TAUTIC ELECTRONICS LLC has teased his followers on twitter with some #SecretProject for a while and today was the big revelation – that is TSC34717 color/light sensor breakout.
Chip itself is a nice little gem by ams, first, it looks cool, second, it is capable of measuring R, G, B and overall luminosity with 16 bit precision each and has high dynamic range.
But there is a catch – it has weird power requirements, 3V supply and 1.8V I2C bus and it is very small. I made a decision to make the breakout 3.3V-5V compatible, so that it can be used with most popular development boards out there. Yes, I made that decision, because that was me who designed the breakout and pushed Jayson into producing and distributing it. Reason for not doing that myself is that I live in Latvia and small production runs of things like this is way more expensive than doing the same on the other side of Atlantic.
So there you are – 16bit color/light sensor with high dynamic range, compatible with 3.3V-5V hosts and communicating over I2C.
After getting first working prototypes done, joint decision was made to go on tindie with fundriser. That would let us find out if there is interest in this sensor and hopefully fund first production run. Meanwhile, I am working on Arduino library, so that break-out is usable from the day one with ever so popular prototyping platform.

The cool thing about this project is that I live in Latvia, Jayson lives in the USA and we have never met in person. Our only contacts are on internet, on twitter and tymkrs IRC.

We were chilling in countryside property over weekend and EuroCup 2012 was on. Good. No, in fact bad, because we had TV set, we had STB from local DVB-T provider, but no antenna. Quick check on frequencies our DVB-T is available on, revealed that channel we were after is is either on 474MHz or 530MHz depending on what tower we can get signal from. My assumption was that 474MHz tower is closer (later I was proven wrong), so I went looking for materials to make an antenna, I opted for so called folded dipole as it is extremely simple to build and has somewhat broader bandwidth than regular dipole. Search for materials on-site gave me following – piece of ~2.5mm insulated copper wire, piece of 75Ohm coax cable, piece of scrap cardboard and antenna connector, everything I needed!
Next, went to El Goog, searched for folded dipole calculator and found out that length of antenna in meters can be calculated by formula 145/freq in MHz, so that was ~30cm. Off I went, copper wire got bent to shape, cardboard used as holder for it all, coax connected to antenna by wire wrapping and connector attached to the other end of coax.
While sipping our drinks we watched Greece win Russia 1:0 and we got signal from tower 73km away on 530MHz that this antenna was not designed for, if one can speak about any design at all in this case 🙂

Yet another piece of n00b code from me (first thing I have ever done on PIC) – SPI implementation agnostic MAX31855 library for HI-TECH PICC18 compiler. I don’t know if THAT can be called library though.

These fine folks have made rolling your own ARM toolchain for linux/osx host easy https://github.com/esden/summon-arm-toolchain
NB! that is toolchain for bare metal ARM, does not include kernel or libc support, so most likely you want to use it for Cortex devices etc.

I happen to own Bosch dishwasher and one day it started to act up on me. It started to fill/drain continuously. The problem was infamous “impeller jug” http://www.espares.co.uk/part/dishwashers/bosch/sgs53c02gb%2f15/p/1083/856/0/998660/754220/dishwasher-impeller-jug.html, device that measures amount of water that is let into machine. This device consists of impeller that has magnet attached to it and reed switch that is switched on and off by the magnet attached to the impeller. Reed switches sometimes get stuck and that is exactly what happened to mine. Temporary fix is to pull out board with reed switch from jug casing and give it a few taps, as well you can do a few passes over strong magnet. Semi-permanent fix is to replace reed switch (it will get stuck eventually again, thus semi-permanent) with one like this http://uk.farnell.com/jsp/search/productdetail.jsp?sku=1079468 and avoid spending 20 GBP or equivalent of your local currency on unnecessary plastic.

My mother-in-law happens to own Opel (or Vauxall in some countries where they drive on wrong side) Zafira A with Y22DTR diesel engine. Fuel pump in that engine is Bosch VP44 with PSG-16 management unit. For one reason or another Bosch has decided not to sell any spares for this specific version of pump. At the same time, there is single part that is prone to fail in these pumps and that part is hall sensor that measures pump shaft rotation (if you try to read ECU fault codes it is called “camshaft” sensor, but actually it is housed in pump itself). And of course this sensor failed.
So I searched around just to find that nobody would replace sensor alone, only whole pump assembly, which means ~2000 Euros around here. Neither did I accept the fact that I have to pay 2000 Euros for a repair of part that costs less that 10, nor did I have spare pile of Euros to throw in the car that by now has a value of around 4000 Eur.
First I tried to use some off the shelf hall sensor bought from Farnell, it was a bit too high (or thick depending on how you look at it) and was getting in a way of sensor wheel teeth. Next I found that the same sensor from different model of the same pump – VP44/PSG-5, looks the same and can actually be bought as a spare. The only obvious difference between PSG-5 and PSG-16 sensors is flat cable assembly that is integral part of sensor.
Next step was to source used, but known good sensor from PSG-5 and try to figure how to implant that into PSG-16. Solution was apparent because part of cable going into the sensor is of the same width on both sensors and seemed to have the same trace layout. So both cable assemblies were cut in a place where width matches, leaving a little bit longer cable ends to make them overlap and at the same time provide for necessary total length. Then plastic, that makes up cable body, was scraped off of one side of cable going to management unit revealing clean copper traces. Thin layer of solder was applied to those traces (I used desoldering wick to remove excess solder) and the same was repeated with the opposite side of cable coming from sensor. At this point I should have used some fuel resistant heatshrink tubing (like Tyco/Raychem DR-25) to make it sturdier, but I did not have it at hand. So I just went ahead and pressed both cable ends together and heated them with soldering iron. That provided for good enough electrical connection. Then some superglue was applied to the joint to make it stronger physically and sensor was soldered back to pump management unit.
Next day revealed that both sensors are indeed the same and after removing air from fuel lines engine happily started again.
1950 Euros saved and Bosch vs hackers – 0:1.

Me on Github

BTC donations welcome

This is modern site and it does use cookies. Those cookies are for computer consumption only and humans do not touch them. If you feel like that puts you into jeopardy somehow, please do not browse this site.AcceptRead More