Posted on Leave a comment

BluVision Bluetooth Low Energy Beacon

Violent Disassembly
Violent Disassembly

These photos were sent over to me by a friend, an interesting piece of tech that’s used in the retail industry. This is a BluVision BLE Beacon, which as far as I can tell is used to provide some automated customer assistance. From their website it seems they can also be used for high-price asset protection & tracking. These units don’t appear to be serviceable, being completely sealed & only having a primary cell. I’m not sure what they cost but it seems to be an expensive way to contact clients with adverts etc.

Component Side
Component Side

There’s not much populated on this PCB, the main component here is the CC2640 SimpleLink ultra-low-power wireless microcontroller for Bluetooth Low Energy. It’s a fairly powerful CPU, with an ARM Cortex M3 core, 129KB of flash & up to 48MHz clock speed. There’s a couple of crystals, one of which is most likely a 32,768kHz low-power sleep watch crystal, while the other will be the full clock frequency used while it’s operating. Unfortunately I can’t make the markings out from the photos. There doesn’t appear to be any significant power supply components, so this must be running direct from the battery underneath.

2.2Ah 3.6v Lithium Cell
2.2Ah 3.6v Lithium Cell

The other side of the PCB has a single primary lithium cell, rated at 3.6v, 2.2Ah. The factory spec sheet specifies a 2.2 year life at 0dBm TX Power, Running 24/7, 100ms advertisement rate.

Posted on Leave a comment

Blog Housekeeping & More Of The Same

Since I’ve been working on the backend servers a lot over the past few days, I’ve decided it was time to get some broken things on the blog fixed.

Firstly, the radiation monitor graphs. Originally I was using a Raspberry Pi to grab the data from the local monitor, and that was connecting via FTP to the server over in the datacentre to push it’s graph images. Since the server is now on the same local network as the monitor, there’s no need to faff about with FTP servers, so I’ve rejigged things with some perl scripts from cristianst85 over on GitHub, running on the web server itself.
I deviated from the suggested place to put the scripts on the server & opted to store everything within the Experimental Engineering hosting space, so it gets backed up at the same time as everything else on a nightly basis.

This is also accessible from the menu at top left, the script pulls data from the monitor & updates the images every 60 seconds via a cron job.

I’ve removed a couple of dead pages from the blog system, along with some backend tidying of the filesystem. Over the years things have gotten quite messy behind the scenes. This blog is actually getting quite large on disk, I’ve hit the 15GB mark, not including the database!

Caching is enabled for all posts on the blog now, this should help speed things up for repeat visitors, but as most of my content is (large) image based, this might be of limited help. I’m currently tuning the MySQL server for the load conditions, but this takes time, as every time I change some configuration settings I have to watch how things go for a few days, before tweaking some more.

Server Control Panels – More Of The Same

Sorry Sentora. I tried, and failed to convert over to using it as my new server control panel. Unfortunately it just doesn’t give me the same level of control over my systems, so I’ll be sticking with Virtualmin for the foreseeable future. Sentora stores everything in, (to me at least), very odd places under /var/ and gave me some odd results with “www.” versions of websites – some www. hosts would work fine, others wouldn’t at all & just redirect to the Sentora login interface instead. This wasn’t consistient between hosting accounts either, and since I didn’t have much time to get the migration underway, this problem was the main nail in the coffin.

Just storing everything under the sun in /var/ makes life a bit more awkward with the base CentOS install, as it allocates very little space to / by default, (no separate /var partition in default CentOS), giving most of the disk space to /home. Virtualmin on the other hand, stores website public files & Maildirs under /home, saving /var for MySQL databases & misc stuff.

The backup system provided is also utterly useless, there’s no restore function at all, and just piles everything in the account into a single archive. By comparison, Virtualmin has a very comprehensive backup system built in, that supports total automation of the process, along with full automatic restore functionality for when it’s needed.

Sentora did have some good points though:
It handled E-Mail logins & mail filters much more gracefully than Virtualmin does, and comes with Roundcube already built into the interface ready to use. With Virtualmin the options are to use the Usermin side of the system for E-Mail, which I find utterly awful to use, or install a webmail client under one of the hosted domains (my personal choice).
Mail filtering is taken care of with Sieve under Sentora, while Procmail does the job under Virtualmin.

Sentora does have a nicer, simpler, more friendly interface, but it hides most of the low-level system stuff away, while under Virtualmin *everything* on the system is accessible, and it provides control interfaces for all the common server daemons.

Posted on Leave a comment

16-Port SATA PCIe Card – Cooling Recap

It’s been 4 months since I did a rejig of my storage server, installing a new 16-port SATA HBA to support the disk drives. I mentioned the factory fan the card came with in my previous post, and I didn’t have many hopes of it surviving long.

Heatsink
Heatsink

The heatsink card has barely had enough time to accumulate any grime from the air & the fan has already failed!

There’s no temperature sensing or fan speed sensing on this card, so a failure here could go unnoticed, and under load without a fan the heatsink becomes hot enough to cause burns. (There are a total of 5 large ICs underneath it). This would probably cause the HBA to overheat & fail rather quickly, especially when under a high I/O load, with no warning. In my case, the bearings in the fan failed, so the familiar noise of a knackered sleeve bearing fan alerted me to problems.

Replacement Fan
Replacement Fan

A replacement 80mm Delta fan has been attached to the heatsink in place of the dead fan, and this is plugged into a motherboard fan header, allowing sensing of the fan speed. The much greater airflow over the heatsink has dramatically reduced running temperatures. The original fan probably had it’s bearings cooked by the heat from the card as it’s airflow capability was minimal.

Fan Rear
Fan Rear

Here’s the old fan removed from the heatsink. The back label, usally the place where I’d expect to find some specifications has nothing but a red circle. This really is the cheapest crap that the manufacturer could have fitted, and considering this HBA isn’t exactly cheap, I’d expect better.

Bearings
Bearings

Peeling off the back label reveals the back of the bearing housing, with the plastic retaining clip. There’s some sign of heat damage here, the oil has turned into gum, all the lighter fractions having evaporated off.

Rotor
Rotor

The shaft doesn’t show any significant damage, but since the phosphor bronze bearing is softer, there is some dirt in here which is probably a mix of degraded oil & bearing material.

Stator & Bearing
Stator & Bearing

There’s more gunge around the other end of the bearing & it’s been worn enough that side play can be felt with the shaft. In ~3000 hours running this fan is totally useless.

Posted on Leave a comment

nb Tanya Louise Heating Upgrades – Matrix Install

 

Heating Circuit
Heating Circuit

Here the pipework feeding the matrix of the blower unit has been tapped into the heating circuit, the first radiator on the loop is just out of shot to the right, this is all tucked away under the bed in one of the cabins. The pipestat is attached to the flow from the boiler, this will switch on the blower once hot water starts flowing through the system. Isolation valves have been fitted to make the inevitable maintenance of the matrix unit easier, as the system is pressurised to 14PSI, dropping the pressure out of the system without making quite a mess is difficult.

Heater Matrix & Ducting
Heater Matrix & Ducting

The heater itself is mounted on the other side of a wooden partition in the small space left under a shelf. This made installing the unit like trying to plumb in a radiator through a letterbox ;). 4 60mm ducts snake off to the vents mounted in the wall.

Water Connections
Water Connections

The hot water hoses appear through a hole in the timber to connect to the matrix unit, with some 15mm pipe in between as reducers from the 3/4″ hose to the 1/2″ attached to the matrix itself. The blower is wired in low speed mode only, as running it any faster makes far too much noise from the vents.

As a heating solution, this unit works well onboard. Within a 10 minutes of the diesel heater firing up, the blower automatically comes on thanks to the thermostat, and blows plenty of hot air into the saloon to keep the cold at bay.

Posted on Leave a comment

Project Volantis – Storage Server Rebuild

For some time now I’ve been running a large disk array to store all the essential data for my network. The current setup has 10x 4TB disks in a RAID6 array under Linux MD.

Up until now the disks have been running in external Orico 9558U3 USB3 drive bays, through a PCIe x1 USB3 controller. However in this configuration there have been a few issues:

  • Congestion over the USB3 link. RAID rebuild speeds were severely limited to ~20MB/s in the event of a failure. General data transfer was equally as slow.
  • Drive dock general reliability. The drive bays are running a USB3 – SATA controller with a port expander, a single drive failure would cause the controller to reset all disks on it’s bus. Instead of losing a single disk in the array, 5 would disappear at the same time.
  • Cooling. The factory fitted fans in these bays are total crap – and very difficult to get at to change. A fan failure quickly allows the disks to heat up to temperatures that would cause failure.
  • Upgrade options difficult. These bays are pretty expensive for what they are, and adding more disks to the USB3 bus would likely strangle the bandwidth even further.
  • Disk failure difficult to locate. The USB3 interface doesn’t pass on the disk serial number to the host OS, so working out which disk has actually failed is difficult.

To remedy these issues, a proper SATA controller solution was required. Proper hardware RAID controllers are incredibly expensive, so they’re out of the question, and since I’m already using Linux MD RAID, I didn’t need a hardware controller anyway.

16-Port HBA
16-Port HBA

A quick search for suitable HBA cards showed me the IOCrest 16-port SATAIII controller, which is pretty low cost at £140. This card breaks out the SATA ports into standard SFF-8086 connectors, with 4 ports on each. Importantly the cables to convert from these server-grade connectors to standard SATA are supplied, as they’re pretty expensive on their own (£25 each).
This card gives me the option to expand the array to 16 disks eventually, although the active array will probably be kept at 14 disks with 2 hot spares, this will give a total capacity of 48TB.

HBA
SATA HBA

Here’s the card installed in the host machine, with the array running. One thing I didn’t expect was the card to be crusted with activity LEDs. There appears to be one LED for each pair of disks, plus a couple others which I would expect are activity on the backhaul link to PCIe. (I can’t be certain, as there isn’t any proper documentation anywhere for this card. It certainly didn’t come with any ;)).
I’m not too impressed with the fan that’s on the card – it’s a crap sleeve bearing type, so I’ll be keeping a close eye on this for failure & will replace with a high quality ball-bearing fan when it finally croaks. The heatsink is definitely oversized for the job, with nothing installed above the card barely gets warm, which is definitely a good thing for life expectancy.

Update 10/02/17 – The stock fan is now dead as a doornail after only 4 months of continuous operation. Replaced with a high quality ball-bearing 80mm Delta fan to keep things running cool. As there is no speed sense line on the stock fan, the only way to tell it was failing was by the horrendous screeching noise of the failing bearings.

SCSI Controller
SCSI Controller

Above is the final HBA installed in the PCIe x1 slot above – a parallel SCSI U320 card that handles the tape backup drives. This card is very close to the cooling fan of the SATA card, and does make it run warmer, but not excessively warm. Unfortunately the card is too long for the other PCIe socket – it fouls on the DIMM slots.

Backup Drives
Backup Drives

The tape drives are LTO2 300/600GB for large file backup & DDS4 20/40GB DAT for smaller stuff. These were had cheap on eBay, with a load of tapes. Newer LTO drives aren’t an option due to cost.

The main disk array is currently built as 9 disks in service with a single hot spare, in case of disk failure, this gives a total size after parity of 28TB:

/dev/md0:
        Version : 1.2
  Creation Time : Wed Mar 11 16:01:01 2015
     Raid Level : raid6
     Array Size : 27348211520 (26081.29 GiB 28004.57 GB)
  Used Dev Size : 3906887360 (3725.90 GiB 4000.65 GB)
   Raid Devices : 9
  Total Devices : 10
    Persistence : Superblock is persistent

  Intent Bitmap : Internal

    Update Time : Mon Nov 14 14:28:59 2016
          State : active 
 Active Devices : 9
Working Devices : 10
 Failed Devices : 0
  Spare Devices : 1

         Layout : left-symmetric
     Chunk Size : 64K

           Name : Main-PC:0
           UUID : 266632b8:2a8a3dd3:33ce0366:0b35fad9
         Events : 773938

    Number   Major   Minor   RaidDevice State
       0       8       48        0      active sync   /dev/sdd
       1       8       32        1      active sync   /dev/sdc
       9       8       96        2      active sync   /dev/sdg
      10       8      112        3      active sync   /dev/sdh
      11       8       16        4      active sync   /dev/sdb
       5       8      176        5      active sync   /dev/sdl
       6       8      144        6      active sync   /dev/sdj
       7       8      160        7      active sync   /dev/sdk
       8       8      128        8      active sync   /dev/sdi

      12       8        0        -      spare   /dev/sda

The disks used are Seagate ST4000DM000 Desktop HDDs, which at this point have ~15K hours on them, and show no signs of impending failure.

USB3 Speeds
USB3 Speeds

Here’s a screenshot with the disk array fully loaded running over USB3. The aggregate speed on the md0 device is only 21795KB/s. Extremely slow indeed.

This card is structured similarly to the external USB3 bays – a PCI Express bridge glues 4 Marvell 9215 4-port SATA controllers into a single x8 card. Bus contention may become an issue with all 16 ports used, but as far with 9 active devices, the performance increase is impressive. Adding another disk to the active array would certainly give everything a workout, as rebuilding with an extra disk will hammer both read from the existing disks & will write to the new.

HBA Speeds
HBA Speeds

With all disks on the new controller, I’m sustaining read speeds of 180MB/s. (Pulling data off over the network). Write speeds are always going to be pretty pathetic with RAID6, as parity calculations have to be done. With Linux MD, this is done by the host CPU, which is currently a Core2Duo E7500 at 2.96GHz, with this setup, I get 40-60MB/s writes to the array with large files.

Disk Array
Disk Array

Since I don’t have a suitable case with built in drive bays, (again, they’re expensive), I’ve had to improvise with some steel strip to hold the disks in a stack. 3 DC-DC converters provides the regulated 12v & 5v for the disks from the main unregulated 12v system supply. Both the host system & the disks run from my central battery-backed 12v system, which acts like a large UPS for this.

The SATA power splitters were custom made, the connectors are Molex 67926-0001 IDC SATA power connectors, with 18AWG cable to provide the power to 4 disks in a string.

IDT Insertion Tool
IDT Insertion Tool

These require the use of a special tool if you value your sanity, which is a bit on the expensive side at £25+VAT, but doing it without is very difficult. You get a very well made tool for the price though, the handle is anodised aluminium & the tool head itself is a 300 series stainless steel.

Posted on 12 Comments

Zhiyu ZBP30A1 Electronic Dummy Load

60W DC Electronic Load
60W DC Electronic Load

Here’s a useful tool for testing both power supplies & batteries, a dummy load. This unit is rated up to 60W, at voltages from 1v to 25v, current from 200mA to 9.99A.
This device requires a 12v DC power source separate from the load itself, to power the logic circuitry.

Microcontroller Section
Microcontroller Section

Like many of these modules, the brains of the operation is an STM8 microcontroller. There’s a header to the left with some communication pins, the T pin transmits the voltage when the unit is operating, along with the status via RS232 115200 8N1. This serial signal is only present in DC load mode, the pin is pulled low in battery test mode. The 4 pins underneath the clock crystal are the programming pins for the STM8.

Serial Comms
Serial Comms
Cooling Fan
Cooling Fan

The main heatsink is fan cooled, the speed is PWM controlled via the microcontroller depending on the temperature.

Main MOSFET
Main MOSFET

The main load MOSFET is an IRFP150N from Infineon. This device is rated at 100v 42A, with a max power dissipation of 160W. On the right is a dual diode for reverse polarity protection, this is in series with the MOSFET. On the left is the thermistor for controlling fan speed.

Load Terminals
Load Terminals

The load is usually connected via a rising clamp terminal block. I’ve replaced it with a XT60 connector in this case as all my battery holders are fitted with these. This also removes the contact resistance of more connections for an adaptor cable. The small JST XH2 connector on the left is for remote voltage sensing. This is used for 4-wire measurements.

Function 1 - DC Load
Function 1 – DC Load

Powering the device up while holding the RUN button gets you into the menu to select the operating modes. Function 1 is simple DC load.

Function 2 - Battery Capacity Mode
Function 2 – Battery Capacity Mode

The rotary encoder is used to select the option. Function 2 is battery capacity test mode.

Beeper Mode
Beeper Mode

After the mode is selected, an option appears to either turn the beeper on or off.

Amps Set
Amps Set

When in standby mode, the threshold voltage & the load current can be set. Here the Amps LED is lit, so the load current can be set. The pair of LEDs between the displays shows which digit will be changed. Pressing the encoder button cycles through the options.

Volts Set
Volts Set

With the Volts LED lit, the threshold voltage can be changed.

When in DC load mode (Fun1), the device will place a fixed load onto the power source until it’s manually stopped. The voltage setting in this mode is a low-voltage alarm. The current can be changed while the load is running.

When in battery discharge test mode (Fun2), the voltage set is the cutoff voltage – discharge will stop when this is reached. Like the DC load mode, the current can be changed when the load is running. After the battery has completed discharging, the capacity in Ah & Wh will be displayed on the top 7-segment. These results can be selected between with the encoder.

Below are tables with all the options for the unit, along with the error codes I’ve been able to decipher from the Chinese info available in various places online. (If anyone knows better, do let me know!).

OptionFunction
Fun1Basic DC Load
Fun 2Battery Capacity Test
BeOnBeeper On
BeOfBeeper Off
Error CodeMeaning
Err1Input Overvoltage
Err2Low Battery Voltage / No Battery Present / Reverse Polarity
Err3Battery ESR Too High / Cannot sustain selected discharge current
Err4General Failure
Err6Power Supply Voltage Too Low / Too High. Minimum 12v 0.5A.
otPOvertemperature Protection
ErtTemperature Sensor Failure / Temperature Too Low
ouPPower Supply Overvoltage Protection
oPPLoad Power Protection
Posted on Leave a comment

Cheap eBay Molex-SATA Power Adaptors

Molex to Dual SATA Power
Molex to Dual SATA Power

To do some upgrades to my NAS, I needed some SATA power adaptors, to split the PSU out to the planned 16 disk drives. eBay has these for very little money, however there’s a good reason for them being cheap.

Wire Marking
Wire Marking

The marking on the wire tells me it’s 18AWG, which should be good for 9.5A at an absolute maximum. However these adaptors are extremely light.

Wire Comparison
Wire Comparison

Here’s the cheapo eBay wire compared to proper 18AWG wire. The cores in the eBay adaptor are tiny, I’d guess about 24AWG, only good for about 3A. As disk drives pull about 2A from the +12v rail on startup to spin the platters up to speed, this thin wire is going to cause quite the volt drop & possibly prevent the disk from operating correctly.

Posted on Leave a comment

Inductive Hour Counter / Tachometer – Petrol Engines

As one of my current projects involves a small petrol engine – a Honda GX35 clone, I figured an hour counter would be very handy to keep an eye on service intervals. (More to come on the engine itself later on). I found a device that would suit my needs on good old eBay.

Inductive Engine Monitor
Inductive Engine Monitor

These engine monitors are pretty cheap, at about £4. The sensing is done by a single heat-resistant silicone wire, that wraps around the HT lead to the spark plug. The unit can be set for different firing intervals via the buttons. In the case of most single-cylinder 4-stroke engines, the spark plug fires on every revolution – wasted-spark ignition. This simplifies the ignition system greatly, by not requiring the timing signal be driven from 1/2 crankshaft speed. The second “wasted” spark fires into the exhaust stroke, so has no effect.

Internals
Internals

The back cover is lightly glued into place with a drop of cyanoacrylate in opposite corners, but easily pops off. The power is supplied by a soldered-in 3v Lithium cell. The main microcontroller has no number laser etched on to it at all – it appears it skipped the marking machine.

Input Filtering
Input Filtering

The input from the sensing wire comes in through a coupling capacitor & is amplified by a transistor. It’s then fed into a 74HC00D Quad 2-Input NAND gate, before being fed into the microcontroller.

Pickup
Pickup

The pickup wire is simply wound around the spark plug lead. I’ve held it in position here with some heatshrink tubing. Heat in this area shouldn’t be an issue as it’s directly in the airflow from the flywheel fan.

Posted on 12 Comments

Panasonic NV-M5 VHS Camcorder Teardown

Overview

Panasonic NV-M5 Camera
Panasonic NV-M5 Camera

Time foe some more retro tech! This is a 1980’s vintage CCD-based VHS camcorder from Panasonic, the NV-M5. There are a lot of parts to one of these (unlike modern cameras), so I’ll split this post into several sections to make things easier to read (and easier to keep track of what I’m talking about :)).

Left Side
Left Side

The left side of the camera holds the autofocus, white balance, shutter speed & date controls.

Left Side Controls
Left Side Controls
Lens Adjustments
Lens Adjustments

The lens is fully adjustable, with either manual or motorized automatic control.

Rear Panel
Rear Panel

The back panel has the battery slot, a very strange looking DC input connector, remote control connector & the earphone jack.

Top Controls
Top Controls

The top panel of the camera holds the main power controls, manual tape tracking & the tape transport control panel.

Viewfinder
Viewfinder

The viewfinder is mounted on a swivel mount. There’s a CRT based composite monitor in here. Hack ahoy!

Camera Section

Process Board Assembly
Process Board Assembly

Here’s the camera section of the camcorder, and is totally packed with electronics! There’s at least half a dozen separate boards in here, all fitted together around the optics tube assembly.

AWB PCB
AWB PCB

On the top of the assembly is the Automatic White Balance PCB. Many adjustments here to get everything set right. Not much on the other side of this board other than a bunch of Op-Amps. The iris stepper motor is fitted in a milled opening in the PCB, this connects to one of the other PCBs in the camera module.

AWB Sensor
AWB Sensor

Here’s the AWB sensor, mounted next to the lens. I’m not all to certain how this works, but the service manual has the pinout, and there are outputs for all the colour channels, RGB. So it’s probably a trio of photodiodes with filters.

Focus & Zoom Motors
Focus & Zoom Motors

Focus & Zoom are controlled with a pair of DC gear motors. The manual operation is feasible through the use of slip clutches in the final drive pinion onto the lens barrel.

Process Board
Process Board

The main camera section process board is above. This board does all the signal processing for the CCD, has the bias voltage supplies and houses the control sections for the motorized parts of the optics assembly. There are quite a few dipped Tantalum capacitors on pigtails, instead of being directly board mounted. This was probably done due to space requirements on the PCB itself.2016-08-20_13-40-11_000357

Under the steel shield on this board is some of the main signal processing for the CCD.

Optics Assembly
Optics Assembly

The back of the optics tube is a heavy casting, to supress vibration. This will be more clear later on.

Position Sensor Flex
Position Sensor Flex

The position of the lens elements is determined by reflective strips on the barrel & sensors on this flex PCB.

Sub Process Board
Sub Process Board

There’s another small board tucked into the side of the tube, this hooks into the process PCB.

Process Delay Line
Process Delay Line

According to the schematic, there’s nothing much on this board, just a delay line & a few transistors.

Piezo Focus Disc
Piezo Focus Disc

Here’s the reason for the heavy alloy casing at the CCD mounting end of the optics: the fine focus adjustment is done with a piezoelectric disc, the entire CCD assembly is mounted to this board. Applying voltage to the electrodes moves the assembly slightly to alter the position of the CCD. The blue glass in the centre of the unit is the IR filter.

IR Relective Sensors
IR Relective Sensors

The barrel position sensors are these IR-reflective type.

Iris Assembly
Iris Assembly

The iris is mounted just before the CCD, this is controlled with a galvanometer-type device with position sensors incorporated.

Iris Opening
Iris Opening

Pushing on the operating lever with the end of my screwdriver opens the leaves of the iris against the return spring.

Tape Transport & Main Control

Main Control Board
Main Control Board

Tucked into the side of the main body of the unit is the main system control board. This PCB houses all the vital functions of the camera: Power Supply, Servo Control, Colour Control,Video Amplifiers, etc.

Tape Drum
Tape Drum

Here’s the main tape transport mechanism, this is made of steel & aluminium stampings for structural support. The drum used in this transport is noticeably smaller than a standard VHS drum, the tape is wrapped around more of the drum surface to compensate.

Tape Transport
Tape Transport

The VHS tape sits in this carriage & the spools drive the supply & take up reels in the cartridge.

Main Control PCB
Main Control PCB

Here’s the component side of the main control PCB. This one is very densely packed with parts, I wouldn’t like to try & troubleshoot something like this!

Main PCB Left
Main PCB Left

The left side has the video head amp at the top, a Panasonic AN3311K 4-head video amp. Below that is video processing, the blue components are the analogue delay lines. There are a couple of hybrid flat-flex PCBs tucked in between with a couple of ICs & many passives. These hybrids handle the luma & chroma signals.
Top left is the capstan motor driver a Rohm BA6430S. The transport motors are all 3-phase brushless, with exception of the loading motor, which is a brushed DC type.

Delay Line
Delay Line

Here’s what is inside the delay lines for the analogue video circuits. The plastic casing holds a felt liner, inside which is the delay line itself.

Internal Glass
Internal Glass

The delay is created by sending an acoustic signal through the quartz crystal inside the device by a piezoelectric transducer, bouncing it off the walls of the crystal before returning it to a similar transducer.

Main PCB Centre
Main PCB Centre

Here’s the centre of the board, the strange crystal at bottom centre is the clock crystal for the head drum servo. Why it has 3 pins I’m not sure, only the two pins to the crystal inside are shown connected on the schematic. Maybe grounding the case?
The main servo controls for the head drum & the capstan motor are top centre, these get a control signal from the tape to lock the speed of the relative components.

Main PCB Right
Main PCB Right

Here’s the right hand side. The main power supply circuitry is at top right, with a large can containing 4 switching inductors & a ferrite pot core transformer. All these converters are controlled by a single BA6149 6-channel DC-DC converter controller IC via a ULN2003 transistor array.
The ceramic hybrid board next to the PSU has 7 switch transistors for driving various indicator LEDs.
The large tabbed IC bottom centre is the loading motor drive, an IC from Mitsubishi, the M54543. This has bidirectional DC control of the motor & built in braking functions. The large quad flat pack IC on the right is the MN1237A on-screen character generator, with the two clock crystals for the main microcontroller.

Erase Head
Erase Head

The full erase head has it’s power supply & oscillator on board, applying 9v to this board results in an AC signal to the head, which erases the old recording from the tape before the new recording is laid down by the flying heads on the drum.

Audio Control PCB
Audio Control PCB

The Audio & Control head is connected to this PCB, which handles both reading back audio from the tape & recording new audio tracks. The audio bias oscillator is on this board, & the onboard microphone feeds it’s signal here. The control head is fed directly through to the servo section of the main board.

Drum Motor
Drum Motor

The motor that drives the head drum is another DC brushless 3-phase type.

Hall Sensors
Hall Sensors

These 3 Hall sensors are used by the motor drive to determine the rotor position & time commutation accordingly.

Stator
Stator

The stator on this motor is of interesting construction, with no laminated core, the coils are moulded into the plastic holder. The tach sensor is on the side of the stator core. This senses a small magnet on the outside of the rotor to determine rotational speed. For PAL recordings, the drum rotates at 1500 RPM.

Motor Removed
Motor Removed

Not much under the stator other than the bearing housing & the feedthrough to the rotary transformer.

Head Disc
Head Disc

The heads are mounted onto the top disc of the drum, 4 heads in this recorder. The signals are transmitted to the rotating section through the ferrite rotary transformer on the bottom section.

Head Chip
Head Chip

The tiny winding of the ferrite video head can just about be seen on the end of the brass mounting.

Capstan Motor Components
Capstan Motor Components

The capstan motor is similar to the drum motor, only this one is flat. The rotor has a ferrite magnet, in this case it wasn’t glued in place, just held by it’s magnetic field.

Capstan Motor Stator
Capstan Motor Stator

The PCB on this motor has a steel backing to complete the magnetic circuit, the coils for the 3 motor phases are simply glued in place. The Hall sensors on this motor are placed in the middle of the windings though.
Again there is a tach sensor on the edge of the board that communicates the speed back to the controller. This allows the servo to remain locked at constant speed.

Viewfinder

Viewfinder Assembly
Viewfinder Assembly

As usual with these cameras, this section is the CRT based viewfinder. These units take the composite signal from the camera to display the scene. This one has many more pins than the usual viewfinder. I’ll hack a manual input into this, but I’ll leave that for another post.

Viewfinder Circuits
Viewfinder Circuits

Being an older camera than the ones I’ve had before, this one is on a pair of PCBs, which are both single-sided.

Main Viewfinder Board
Main Viewfinder Board

The main board has all the power components for driving the CRT & some of the adjustments. The main HV flyback transformer is on the right. This part creates both the final anode voltage for the tube & the focus/grid voltages.

Viewfinder Control PCB Top
Viewfinder Control PCB Top

The viewfinder control IC is on a separate daughter board in this camera, with two more controls.

Control IC
Control IC

The control IC is a Matsushita AN2510S, this has all the logic required to separate the sync pulses from the composite signal & generate an image on the CRT.

Viewfinder CRT Frame
Viewfinder CRT Frame

The recording indicator LEDs are mounted in the frame of the CRT & appear above the image in the viewfinder.

Viewfinder CRT With Yoke
Viewfinder CRT With Yoke

Here the CRT has been separated from the rest of the circuitry with just the deflection yoke still attached.

M01JPG5WB CRT
M01JPG5WB CRT

The electron gun in this viewfinder CRT is massive in comparison to the others that I have seen, and the neck of the tube is also much wider. These old tubes were very well manufactured.

Viewfinder Optics
Viewfinder Optics

A simple mirror & magnifying lens completes the viewfinder unit.

Posted on Leave a comment

Towpath Motorbike Idiots

This is something I’ve never seen before. Yesterday, on the Lower Peak Forest Canal, a bunch of kids on off-road bikes came thundering down the towpath – one even pulled a wheelie.

There’s considerable motion blur in the photos, as they were doing some speed, at least 30MPH at that stage.

I did get significant verbal abuse of them for having a camera on them, but thee didn’t bother stopping. This happened at the Romiley side of Woodley Tunnel, just past the portal.

Posted on 70 Comments

Dyson DC35 “Digital” Teardown

DC35
DC35

Here’s another Dyson teardown, in my efforts to understand how marketing have got hold of relatively simple technology & managed to charge extortionate amounts of money for it.
This is the DC35, the model after the introduction of the brushless digital motor.

Back Cap Removed
Back Cap Removed

On this version the mouldings have been changed, and the back cover comes off, after removing the battery retaining screw. It’s attached with some fairly vicious clips, so some force is required. Once the cap is removed, all the electronics are visible. On the left is the motor itself, with it’s control & drive PCB. There’s another PCB on the trigger, with even more electronics. The battery connector is on the right.

Trigger PCB
Trigger PCB

Here’s the trigger PCB, which appears to deal with DC-DC conversion for powering the brush attachments. The QFN IC with yellow paint on it is an Atmel ATTiny461 8-bit microcontroller. This is probably controlling the DC-DC & might also be doing some battery authentication.

"Digital Motor"
“Digital Motor”

Here’s the motor & it’s board. The windings on the stator are extremely heavy, which makes sense considering it’s rated at 200W. The main control IC is a PIC16F690 from Microchip. Instead of using an off the shelf controller, this no doubt contains software for generating the waveforms that drive the brushless motor. It also appears to communicate with the other PCBs for battery authentication.

Stator
Stator

Desoldering the board allows it to be removed from the motor itself. The pair of windings are connected in anti-phase, to create alternating North-South poles depending on polarity. Since the existing controller is unusable due to software authentication with the other parts, I might have a go at building my own driver circuit for this with an Arduino or similar.

Blower Assembly
Blower Assembly

The blower assembly is simple plastic mouldings, pressed together then solvent welded at the seam.

Impeller
Impeller

The impeller is just a centrifugal compressor wheel, identical to what’s used in engine turbochargers.

Motor Control Board
Motor Control Board

The inside face of the control PCB holds the 4 very large MOSFETs, IRFH7932PbF from International Rectifier. These are rated at 30v 20A a piece, and are probably wired in a H-Bridge. There’s a bipolar Hall switch to sense rotor position & rotation speed, and an enormous pair of capacitors on the main power bus.

Motor Control Board Reverse
Motor Control Board Reverse

Not much on the other side of the PCB other than the microcontroller and associated gate drive stuff for the FETs.

Battery Pack Opened
Battery Pack Opened

The battery pack is similar to the DC16 in it’s construction, a heavily clipped together plastic casing holding 6 lithium cells. In this one though there’s a full battery management system. The IC on the top of the board above is a quad Op-Amp, probably for measuring cell voltages.

Battery BMS Bottom
Battery BMS Bottom

The other side of the BMS board is packed with components. I wasn’t able to identify the QFN IC here, as it’s got a custom part number, but it’s most definitely communicating with the main motor MCU via I²C over the two small terminals on the battery connector.

Posted on 1 Comment

IC Decap: ITE IT8712F Super I/O Controller

IT8712F Package
IT8712F Package

These chips are used on PC motherboards, to control many of the legacy peripherals & things such as temperature monitoring & fan speed control.

Here’s the block diagram from the datasheet to show all the features, this IC handles many things on a modern motherboard!

Block Diagram
Block Diagram
IT8712F Die
IT8712F Die
Posted on Leave a comment

DIY SMPS Fan Controller

Now the controllers have arrived, I can rejig the supplies to have proper thermal control on their cooling.

Changes Overview
Changes Overview

Here’s the top off the PSU. The board has been added to the back panel, getting it’s 12v supply from the cable that originally fed the fan directly. Luckily there was just enough length on the temperature probe to fit it to the output rectifier heatsink without modification.

To connect to the standard 4-pin headers on the controller, I’ve spliced on a PC fan extension cable, as these fans spent their previous lives in servers, with odd custom connectors.

Fan Controller
Fan Controller

Here’s the controller itself, the temperature probe is inserted between the main transformer & the rectifier heatsink.
I’ve set the controller to start accelerating the fan at 50°C, with full speed at 70°C.

Full Load Test
Full Load Test

Under a full load test for 1 hour, the fan didn’t even speed up past about 40% of full power. The very high airflow from these fans is doing an excellent job of keeping the supply cool. Previously the entire case was very hot to the touch, now everything is cool & just a hint of warm air exits the vents. As the fan never runs at full speed, the noise isn’t too deafening, and immediately spools back down to minimum power when the load is removed.

Posted on Leave a comment

DIY SMPS Fan Speed Control – The Controllers

Finally, after a couple of weeks wait time, the fan controllers for the power supplies have arrived. They’re small boards, which is good for the small space left inside the case of the supply.

Controller Boards
Controller Boards

Here they are. I’m not certain what the pair of potentiometers are for – there’s no mention of them in the documentation. Possibly for calibration.
Beepers are supplied so an alarm can be heard if the fan fails – very useful for this application.

Controller Closeup
Controller Closeup

Here’s a closeup of the PCB. Options are set with the DIP switch bank on the left, details for that below. The main IC is a STM8S103F3 flash microcontroller.

Temperature Probe
Temperature Probe

The only issue at the moment is that the temperature probe leads are much too short. I’ll have to make a small modification to get enough length here.

 

 

Here’s all the details on the boards, more for future reference when they undoubtedly vanish from eBay 😉

Specifications

Working voltage:DC12V

Circuit load capacity: maximum current per output 5A, the bus currents up 9A

Output Range: The first channel 20% -100%, or 40% -100% (TFL = ON)
The second channel and the third channel 10% -100%

(Note: Above range only for PWM range, the actual control effect will vary depending on the fan.)

Temperature probe parameters: 50K B = 3950

Thermostat temperature zone error: error depending on the temperature probe, generally 3-5%

Stall alarm minimum speed: 700-800 rpm

 

Function setting switch Description:

TFL (No. 1): The lowest temperature channel PWM setting, when ON state FAN1 PWM minimum is 40%, when OFF the minimum PWM of FAN1 is 20%.

TP1 TP2 (No. 2,3): Temperature channel control temperature zones are interpreted as follows (need to used with the temperature probe):

 

TP1  TP2 Accelerating temperature Full speed temperature
OFF OFF 35℃ 45℃
ON OFF 40℃ 55℃
OFF ON 50℃ 70℃
ON ON 60℃ 90℃

 

When the temperature lower than the accelerated temperature, then output at the minimum rotation speed; when it exceed over the full temperature, then always output at full speed.

BF1 BF2 (No. 4,5): corresponds FAN1 FAN2 stall alarm function switch, when the corresponding open channel fan break down, the controller will alarm with soundand light (works with buzzle), alarm will automatically eliminated when the fan is rotated recovery . If BF1 and BF2 both are open (ON), the FAN1, FAN2 have any one or both stops, the controller will alarm!

Posted on Leave a comment

eBay Special 2.5″ HDD USB Case

Since I have a fair few 750GB disks sat doing nothing, I figured I’d get some USB3 caddies for them. Back when USB -> IDE caddies appeared, they were hideously expensive. Not so much these days!

USB HDD
USB HDD

For £6 on eBay, you get a basic plastic box with the required bridge circuitry.

USB - SATA Bridge
USB – SATA Bridge

Here’s the PCB – a very basic affair, with only 2 ICs. The large QFN IC on the left is the USB-SATA bridge. It’s a JMicron JMS567. Unfortunately JMicron are rather secretive about their bridge chips & I can’t find much information about it, nor a datasheet.

PCB Reverse
PCB Reverse

Here’s the other side of the bridge PCB – not much on here, the activity indicator LED is a bit of a bodge job, but it’s functional. The IC on the right is a Pm25LD512 512Kbit SPI EEPROM. This is used to store things like the USB device & vendor IDs, device name, type, etc. Here’s what dmesg spits out when the disk is connected on my standard Linux system:

[snippet id=”1769″]

Here’s some speed benchmarks:


USB2 Benchmark
USB2 Benchmark

First attached to a USB2 port, above

USB3 Benchmark
USB3 Benchmark

And finally attached to a USB3 port, above

Tests were done with a 320GB 5400RPM Samsung HM321HI drive, direct into the root hub, for the shortest possible signal length.

 

Posted on Leave a comment

Power Supply Cooling Update

While I’m waiting for the fan controllers to arrive for the new cooling fans, I figured I’d get them fitted into the cases of the supplies & just have them run at minimum speed for now.

Fan Fitted
Fan Fitted

After removing the original small fan, I cut a larger square hole in the panel to fit the 60mm version. These fans only fit with some minor adjustment to the top & bottom mouldings, but the look isn’t too bad once the covers are back on. The wiring is routed through a small hole next to the fan itself.

I’ve also upgraded on the fans again – these are PFC0612DE, with a higher airflow of ~70CFM at 12,000RPM.

To get the fans to run at minimum speed, the PWM control wire is connected directly to GND.

More to come when the controllers arrive!

Posted on Leave a comment

DIY SMPS Cooling

The power supplies I have recently built from surplus Cisco switch boards have started displaying a rather irritating problem – continual load of over 9A causes the supplies to shut down on overheat.

This was partially expected, as the original switches that these supplies came from are cooled by a monster of a centrifugal blower that could give a Dyson a run for it’s money. The problem with these fans is that they’re very loud, draw a lot of power (3-4A) and aren’t small enough to fit into the case I’ve used for the project.

The solution of course, is a bigger fan – I’ve got some Delta AFB0612EHE server fans, these are very powerful axial units, shifting 60CFM at 11,000RPM, with a power draw of 1.12A.
They’re 60mm diameter, so only just fit into the back of the case – although they stick out of the back by 40mm.

Monster Fan
Monster Fan

Here’s the fan, not the beefiest I have, but the beefiest that will fit into the available space.
These will easily take fingers off if they get too close at full speed, so guards will definitely be required.

To reduce the noise (they sound like jet engines at full pelt), I have ordered some PWM controllers that have a temperature sensor onboard, so I can have the fan run at a speed proportional to the PSU temperature. I will probably attach the sensor to the output rectifier heatsink, since that’s got the highest thermal load for it’s size.

More to come when parts arrive!

73s for now 🙂

Posted on Leave a comment

13.8v SMPS PSU Final Additions

Following on from my recent power supply build, I’ve added on a couple of improvements:

Front Panel
Front Panel

I’ve added on my standard SpeakOn type 30A connector, a bank of push terminals for quick connecting test leads, and a 15A FSD ammeter.

Panel Rear
Panel Rear

Due to the limited space inside the supply, I’ve had to improvise some insulation on the mains-side heatsink to prevent a nasty accident. The heatsinks are tied to the supply’s HVDC bus negative, so they are energized at -145v DC relative to mains earth. This fact has given me a nasty surprise! The insulation is several layers of Kapton tape, with a couple of layers of Duct Tape. This along with trirated wire to the SpeakOn & the panel meter should ensure safety.

The Ammeter itself was sourced from eBay, for £2. It seems pretty accurate so far!

Ammeter
Ammeter

The shunt is built into the rear of these meters, in an ultrasonically welded part of the case, so I can’t examine it. Hopefully it is indeed rated to 15A!

The only things left to make this supply complete are a mains power switch, and a fan speed control, as the fan I have used is a little noisy at full speed. It will be good to get the speed based from the internal temperature, so the fan only runs at full speed when the supply is under load.

 

 

Posted on Leave a comment

nb Tanya Louise Hydraulic Generator

Hydraulic Generator Unit
Hydraulic Generator Unit

To accompany the previous two posts about hydraulic generators & their components, here is the actual generator unit itself.

Rated at 8.5kVa 230v AC, this will providea mains supply while the narrowboat is away from her home mooring.

This unit will be attached to the side of the hull in the engine room on rubber vibration isolation mounts, behind the main hydraulic oil tank & is driven from the small gear pump attached to the back of the main propulsion hydraulic pump unit.
Operating pressure is 175 bar, 21L/m flow rate to achieve the 3,000RPM rotor speed for 50Hz mains frequency.

Generator Specifications
Generator Specifications
Posted on Leave a comment

nb Tanya Louise Hydraulic Generator Update

Finally, after months of messing about with the original seller of the generator unit, (Mike Webb from hydraulicgenerators.co.uk, more to come about the nightmare I had dealing with this man), we have had to purchase a new hydraulic control valve for the genset, as the original unit supplied was missing parts.

Thanks to Martin Bullock from BSP Hydraulics for supplying this at short notice!

Flow Control Module
Flow Control Module
Solenoid Spool Valve
Solenoid Spool Valve
Control Valve Block
Control Valve Block

This unit contains a pressure relief valve, to set system operating pressure, a throttle/flow control valve to set generator motor speed & a solenoid controlled spool valve to control general oil flow to the generator. This last section effectively operates as an ON/OFF control.
System pressure will be ~175 Bar at 21 litres/minute.

More to come soon with the final assembly, hosing up  & system commissioning.

Posted on Leave a comment

Raspberry Pi GPIO Breakout

Board Built
Board Built

After seeing these on eBay for £8.99 I thought it might be a good deal – interfacing with the RasPi’s GPIO & it has built in power supplies.

As a kit, it was very easy to assemble, the PCB quality is high, and is a fairly good design. It worked first time, the regulators hold the rails at the right voltages.
However there are some issues with this board that bug me.

The documentation for the kit is *AWFUL*. No mention of the regulators on the parts list & which goes where – I had to carefully examine the schematics to find out those details.
The 4x 1N1007 diodes required weren’t even included in the kit! Luckily I had some 1N4148 high speed diodes lying around & even though they’re rated for 200mA continuous rather than the specified part’s 1A rating, the lack of heatsinking on the regulators wouldn’t allow use anywhere near 1A, so this isn’t much of a problem.

Component numbering on the silkscreen isn’t consistent – it jumps from R3 straight to R6! These issues could be slightly confusing for the novice builder, and considering the demographic of the RasPi, could be seen as big issues.

On the far left of the board are the 5v & 3.3v regulators, well placed on the edge of the board in case a heatsink may be required in the future. However the LM317 adjustable regulator is stuck right in the middle of the PCB – no chance of being able to fit a heatsink, & the device itself seems incredibly cheap – the heatsink tab on the back of the TO-220 is the thinnest I have ever seen. Not the usual 2-3mm thick copper of the 5v & 3.3v parts – but barely more than a mm thick, so it’s not going to be able to cope with much power dissipation without overheating quickly.

As the adjustable rail can go between ~2.5v – 10v, at the low end of the range the power dissipation is going to shoot through the roof.

The GPIO connector – this could have been done the other way, at the moment the ribbon cable has to be twisted to get both the Pi & the GPIO board the same way up. Just a slight fail there. See the image below

Plugged In
Plugged In

The power rails are not isolated out of the box – there is no connection between the 5v & 3.3v rails & the Pi’s GPIO, but the GND connections are linked together on the board.

Getting the ribbon cable through the  hole in the ModMyPi case was a bit of a faff – the connector is too big! I had to squeeze the connector through at a 45° angle. The case is also remarkably tight around the connector once it’s fitted to the board – clearly the designers of the case didn’t test the an IDC connector in the case before making them!
Everything does fit though, after a little modification.

All Cased Up
All Cased Up

Here is the unit all built up with the case. The top cover just about fits with the IDC connector on the GPIO header.

More to come once I get some time to do some interfacing!

 

Posted on 1 Comment

MSR605 3-Track Magnetic Stripe Writer

MSR605
MSR605

This unit was bought from eBay to experiment with Magnetic Stripe cards, for little money. This unit is capable of reading & writing all 3 tracks, & both Hi-Co & Lo-Co card types.
Interfaced to a PC through USB, this has a built in PL2303 USB-Serial IC & requires 3A at 9v DC to operate.
The 3 Indicator LEDs on the top of the unit can be toggled by the included software for Power/OK/Fault condition signalling.

Unit Bottom
Unit Bottom

Bottom of the unit with the model labels.

Model Label
Model Label

Closeup of the model label & serial number.

PCB Bottom
PCB Bottom

Here the bottom cover has been removed, showing the main PCB. The pair of large ICs bottom center interface with the magnetic heads. The IC above them has had the markings sanded off.

USB-Serial Interface
USB-Serial Interface

Closeup of the Prolific PL-2303 USB-Serial converter IC.

PCB Top
PCB Top

Here the connections to the R/W heads are visible, current limiting resistors at the left for the write head, a pair of signal relays, a pair of optoisolators & a LM7805 linear voltage regulator.

LEDs
LEDs

Here is the trio of indicator LEDs on a small sub-board.

Frame Bottom
Frame Bottom

The PCB has been removed from the main frame here, the only component visible is the rotary encoder.

Rotary Encoder
Rotary Encoder

The rotary encoder has a rubber wheel fitted, which reads the speed of the card as it is being swiped for writing. This allows the control logic to write the data to the stripe at the correct rate for the speed of the card. This allows the unit to write cards from 5-50 inches per second speed.
The Write head is directly behind the rubber pressure roller.

Read/Write Heads
Read/Write Heads

Here you can see the R/W head assembly. The write head is on the right, read on the left. When a card is written to, it immediately gets read by the second head for verification.

The drivers for this unit are also available here: Magcard Writer Drivers

Posted on Leave a comment

Brother P-Touch 80 Label Maker

Touchpad
Touchpad

Here is a label maker, bought on offer at Maplin Electronics. Full Qwerty keyboard with 1 line dot matrix LCD display visible here. Power is 4 AAA cells or a 6v DC Adaptor.

Rear
Rear

Rear cover removed. Battery compartment is on the left hand side, space for the tape cartridge on the right. Ribbon cable leading to the thermal print head is on the far right, with rubber tape drive roller.

PCB
PCB

PCB under the top cover with the main CPU, a MN101C77CBM from Panasonic. This CPU features 48K Mask ROM & 3K of RAM. Max clock frequency is 20MHz. 32kHz clock crystal visible underneath a Rohm BA6220 Electronic speed controller IC.
This is used to drive the printer motor at a constant accurate speed, to feed the tape past the thermal head. Miniature potentiometer adjusts speed.
Ribbon cable at the bottom of the board connects to the print head, various wiring at the left connects to the battery & DC Jack.

Printer Drive
Printer Drive

Printer drive mechanism. Small DC motor drives the pinch roller though a gear train. DC Jack & reverse polarity protection diode is on the right.
This unit uses a centre negative DC jack, which is unusual.

Cartridge
Cartridge

Thermal tape cartridge, black text on white background.

Posted on Leave a comment

Uniden Stalker Radar Detector

Top
Top

An early speed radar detector from the early 90’s. Pictures showing the front of the unit with the option buttons.

Bottom
Bottom

Bottom of the unit showing label. Unlike the newer plastic detectors, the whole casing of this unit is cast aluminium.
Model Uniden Stalker RD-6000W.

PCB Top
PCB Top

PCB removed from the casing. Volume/power control on the left. Option tactile switches on the edge of the PCB, with the indicator LEDs. Power input jack on the right hand side of the PCB. Large aluminium can is the detector assembly, containing the detector diodes. Waveguide horn is at the top.

Waveguide Horn
Waveguide Horn

Shot down the waveguide, showing the detector diodes at the end.

LEDs
LEDs

Indicators on the front of the unit, X, K & Ka band detection LEDs on the left, Power & detection level (1-4) LEDs in centre. City (C) (Audio (A) & Mute (M) LEDs on the right.

PCB Bottom
PCB Bottom

Bottom of the PCB, showing detection logic. Piezo buzzer top left.

CPU
CPU

Custom Uniden CPU. Marking UC1465.