Mobile and Power

If you are like me and drive a modern car then the simple task of powering your radio(s) in the car become somewhat of a problem.  Gone are the days where it was trivial to run a cable thru the firewall and connect directly to the battery, so time to think differently.

First off I didn’t want to drill or cut holes to run cables, second, I wanted a little bit of protection.  So, a little bit of thinking and it was option 2 – add a second battery specifically for the radio.  This of course leads to other issues – of management (charging and not over discharging.  I could have gone out and spent several hundred $ on a Battery Isolatoin solution – or I could come up with something myself.

The Problem

Now, the requirements for mobile power are reasonably simple – I run an APRS tracker in the car – so a 2m txcvr, that draws about 0.5A on Rx and around 7A on Tx for 3 seconds every 2 minutes.  The other requirement is the HF/VHF/UHF mobile txcvr (IC-7100).  The ‘7100 draws around 1A on Rx and up to 22A on Tx (but more like 10A on VHF/UHF).

First off – the good old 12V plug (cigarette socket) is not so great – in the car, with all sorts of unknown management, we discovered that the voltage varied between about 10.5V and 14.2V when the car was on and running and often drops down to sub 10 when drawing more than about 6 or 7A or so.  This made the car provided DC useless!

The Solution

Time to look at how to use this unreliable power to keep a 2nd battery charged, whilst also not allowing the 2nd battery to over-discharge.

So, a simple plan was put in place to put together a suitable charger and battery manager.

The solution in the end was quite simple (and came out a lot cheaper than a commercial solution.

Schematic of battery management solution
Schematic of battery management solution

I knocked up a fairly simple, straight forward circuit and sourced all the components/building blocks that I needed.

The Components

  1. Arduno Micro controller – I used a Nano (but a Pro Mini would also be suitable)
  2. 40A 12V Automobile SPDT relay – I got one in a holder with leads
  3. DC Step Up/Step down converter with CC/CV output
  4. Mosfet on a breakout board.
  5. 4x Diodes
  6. 2x 15k and 2 6k8 resistors
  7. A piece of vero board
  8. Hookup wire and various connectors.

I sourced most of these items from Ebay, my junk box or a local retailer for literally a few $ each.

I chose to put an Arduino Micro to the (simple) task of managing my battery – more on this shortly.

I found a suitable  DC/DC converter that met my needed criteria:  It had to have an input voltage range of at least 8-16V and output of 10-15V at 5A.  I found one on Ebay was 1.5-20V input and 5-32V output at 5A.  It had both a CV and CC adjustments – so It meant that I could set the output to 14V and limit the current to 5A.

The relay was similarly sourced from Ebay,  On testing it, I found that the relay I obtained required about 140ma to operate it.  So that would require a suitable transistor/FET so that the Arduino micro could drive it.  Again, off to Ebay was the easiest solution was a simple break out board with a MOSFET.  I found one for about $1 that had an IRF520 device.  A quick look at the spec sheet and it is a massive over-kill for this task, but given the $ and the convenience of already being on a breakout board, ready to hook up I grabbed a couple.

Now the only part I really needed to think about, and then it was not even a lot – was monitoring the input voltage, battery voltage and powering the Arduino.

Monitoring battery voltage is trivial – just a simple voltage divider for input to one of the ADC Inputs.

Powering the Arduino – well this is where I get a bit creative – and fell back to using a handful diodes to provide  multiple DC sources to power the micro.  This will make sense why I did it the way I did when we get to the code for the micro.  Given that I only needed to isolate and supply less than 10ma  I went with some 1N4148’s that I had.

Circuit Operation

It really is quite simple when you look at it.

Input power to the DC/DC converter and it will charge the battery.  This input comes from the car – yep that horrid 12V socket.

We also take the input and feed it thru a diode, to isolate it for a voltage divider for monitoring the input voltage on A0 of the Micro, then thru another diode to the Vcc pin on the Arduino.   The Nano has an on-board 5V regulator and is quite OK with up to about 15V input.

When the Arduino has power, it can start running the code.

The first thing that the code does is to drive pin 13 high – which goes to the MOSFET, and in turn enables the relay.

Once the relay is on, we take some of the output, and again with our diode, we isolate a voltage divider to feed A1 of the Micro, then thru another diode to the Vcc pin.

Now this might seem a bit counter-intuitive – but it is not!   We have supplied 2 possible power sources to the micro – which is monitoring and managing our 2nd battery, and more on that when we look at the code.

The Code

I decided that whenever there is an input voltage (ie the car is running) that I would turn on my 2nd battery, and it would remain on for 7 minutes after stopping the car as long as the battery voltage was over 12.05V

/*
* Battery Charge Controller
*
* Bob P 20160101
*
* V 1.0
*
* Monitor Charge/Input voltage
*
* Monitor Battery output voltage
*
* Turn off output voltage if:
* 1. Charge voltage off for more than xxx minutes
* 2. Charge voltage off and bettery voltage less than xx.xxV
*/

// Init all variables
int CHGvolt = A0; // A0 charge voltage sensor
int Battvolt = A1; // A1 battery votage sensor
float CHGread = 0; // Variable to store chg voltage
float Battread = 0; // Variable to store Battery votage
float volts; // Variable to store voltage Divider value
long ShutTmr = 7; // Minutes until shut down when loss of Charge voltage
float LowVoltCut = 12.05; // Battery Low voltage cut-off
long UntilShut = 0 ; // Count down timer until we shut down

bool StartShut = false ; // Start the shutdown timer
void setup() {
// set up voltage divider values for ease of maths
volts = (float)6800 / (6800 + 15000); // gnd, 6.8k, measure, 15K, +vcc

pinMode(13, OUTPUT); // output relay
digitalWrite(13, HIGH); // turn on output relay

UntilShut = ( ShutTmr * 60 * 1000 );

// Serial for debug only // comment out when in use
Serial.begin(9600);
}

void loop() {
// put your main code here, to run repeatedly:

// See if shut down timer has expired
if ( millis() > UntilShut ) {
digitalWrite(13, LOW); // Time out has expred, shut down
}

delay(5000); // let everything settle before we do anything

// read the CHG Voltage, convert to Actual Voltage
CHGread = analogRead(CHGvolt);
CHGread = (CHGread / 1024) * 5 ; // 10 bit DAC with 5V reference
CHGread = (CHGread / volts) + 0.8 ; // Actual input voltage, including 0.8v diode drop
// read the Batt Voltage, convert to Actual Voltage
Battread = analogRead(Battvolt);
Battread = (Battread / 1024) * 5 ; // 10 bit DAC with 5V reference
Battread = (Battread / volts) + 0.2; // Actual Battery voltage, including shottkey in relay
// OK, lets look and see if we have a charge voltage
if (CHGread < 8.00 ) {
// we have lost input/charge voltage
// If we have not already commenced a shutdown, time to do so
if (!StartShut) {
//Serial.print( “starting shutdown.. “);
StartShut = !StartShut;
UntilShut = ( ( ShutTmr * 60 * 1000 ) + millis() );
}
// Now we look at the otput voltage and kill it if the voltage is too low
if ( Battread < LowVoltCut ) {
digitalWrite(13, LOW); // Kill the output
}

} else {
// So, our Charge voltage is good, we reset shut down time and cancel the sut down
if (StartShut != 0 ) {
StartShut = !StartShut ;
//Serial.print(” Shutdown Cancelled ” );
}
// reset our shut down timer
UntilShut = ( ( ShutTmr * 60 * 1000 ) + millis() );
//re-enable the output – if it was shut off due to low voltage before timer expired
if ( digitalRead(13) == LOW) {
digitalWrite(13, HIGH);
}
}

/*
* Debug print block
//Serial for debug only // comment out when in use
Serial.print(millis());
Serial.print(” Timer “);
Serial.print(UntilShut);
Serial.print(” milliseconds until power down “);
Serial.print(“Charge Input Voltage: “);
Serial.print(CHGread); // print the charge input voltage
Serial.print(” Battery Voltage: “);
Serial.println(Battread); // print and end line the battery voltage
*/

}

 

You can download the BattChgr sketch which is correctly indented.

Now we are not really doing anything fancy here – it is all very basic stuff for anyone who has looked at programming an Arduino

We set up the variables we are going to use,

The 2 important ones are ShutTmr and LowVoltCut.  This is where we configure our battery management.

I chose a 7 minute shut down timer and a lo w voltage cut-out of 12.05 Volts – which I will explain as we go thru the code.

Then in the setup() function we turn on the relay – pin13 high and do a simple calculation that we will use later on.

Into the Loop()

We check to see if the timer to shut

We then take a nap for 5 seconds before we look at our input voltage (A0) and Battery Voltage (A1).

Once we check the voltages, we then move into the logic and check we have an input voltage,

If the input voltage is less than 8 Volts we assume we are no longer charging and take some actions:

  • We check if we have already commenced a shut down, and if not set the shut down flag to on and set the shut down timer to the configured time:
  • We check the output voltage and if we are below our low voltage cut-off we turn it off

What is interesting to note here, is that if we have no input voltage, from the car, then we turn off the output relay, and the Arduino will shut down until we turn on the car again.

If the Input voltage is good, we check if the Shut down flag was previously set, and if it was, we reset it, cancelling a shut down. and also reset the shut down counters again.

The final bit of code you will see is commented out –  I tend to use  serial print to display the value of variables when debugging the code, comment it out once everything is working!

Could I have done this differently – sure, could I further improve and simplify this code – absolutely!  Does it work exactly as I want it to – Sure does, so for now, I have archived it away along with the diagram should I need to go back and make another one for the next car or  maintain this should I need to.

The final steps were to put it all into a box, hook it up and put it in the car.

Mobile Battery Management Controller

In the image you can see (almost) everything that is in the circuit diagram.  In the foreground, you see the DC/DC converter. On the vero board, you see the FET driver breakout board (left)  the Arduino Micro (mid) it is sitting vertically, and finally you see the isolation diodes and voltage dividers on the right (under all the hook-up wires)

Mobile Battery Management Controller

The only thing that is not in the photo is the output  relay, which is outside the box.

So, there you have it! A simple, useful project to manage a battery.

It would be trivial to take the concepts presented here to manage the charge of a battery (eg, input from Solar) and auto-shut down the output or even expand on it to turn on a 240V battery charger to top-up your battery.

Please feel free to use this idea, diagram and code as the basis of your own battery manager.  If you do, please do let me know that you found this useful.

 

New Toys

I recently picked up a 70cm XVTR from http://www.transverters-store.com/432_28mhz.htm – For extra confidence, you can also purchase via their Ebay Store – http://stores.ebay.com.au/tubes-shop

Prices are the same both direct and via Ebay, Ebay for confidence if you are unsure about making a purchase directly from the Ukraine.

It arrived in about 3 weeks, not too bad at this time of the year – I bought the “kit” which includes the completed XVTR, the Attenuator/Interface/Sequencer Board, the case and a selection of connectors to get you all set up ready to use.

You will need a few additional items to put it all together!

There is no layout, nor a complete cabling diagram, you will need to use the individual wiring diagrams of the Attenuator and the XVTR boards to hook everything up.  It is quite straight-forward.

The XVTR is a complete no solder board – you just need to wire up the IF input, PTT, 70cm Output and Power to the 2 4-pin headers.

The Attenuator Board, you need to solder the wires as required to interface.

In order to assemble, you are going to require some additional hardware:

5x 12mm M3 Bolts
1x M3 Nut and star/lock washer (for MOSFET)
4x M3 threaded Nylon Stand–off’s 6.5mm*

500mm 18Ga insulated hook-up wire
400mm RG-174/RG-316 coaxial cable
100mm 3mm heat-shrink.
2.2k Resistor (optional)

You should also have the following tools.

Soldering Iron (duh!) – my 15/40W was perfect for the job.
(illuminated magnifying lamp – optional but makes things easy)
Screwdriver #1 philips
Drills – 3.3mm (M3 clearance)
Drills – 5mm, 6mm, 8mm,
Round file/Dremel.
First off, I selected a physical placement of the XVTR and the Attenuator boards such that:

  1. The 432 output cable could be as short as possible
  2. The output MOSFET was positioned such that it had maximum amount of the case near it – as per the instruction sheet

I chose to use a different switch than the supplied one, I chose a push-on push-off switch rather than the toggle, because it was a smaller hole to drill in the case for mounting.

There was nothing in the way to indicate any sort of layout of the required connections, so, it really was simply making a sensible choice while keeping all leads as short as possible.  I just picked a layout that would allow a little bit of cable to enable assembly without any cable stresses during assembly.

Mark out and drill the mounting holes in the case for the 2 boards.

First off, you will need to cut 1 of the M3 nylon mounts such that it will support the XVTR board with the MOSFET mounted directly to the case.

Once done, mount the XVTR board – noting that the mounting holes are correct size to thread the M3 bolts thru – no nuts required – and significantly, the mounting hole near the output end, no nut would fit as the air-wound coil is too close!

I used a cut-off piece of the threaded M3 mounting post as the Nut for the other end of the board.

Next step was to prepare the Coaxial cables (3x) and Power (in and out) and PTT (in and out) and solder to the Attenuator board.

Next, mount the board to the case and put aside.

The ends of the case are plastic and therefore easy to drill and install the connectors and the power LED.

I used a sticky label on the inside to mark out the position of all the connections and then proceeded to drill/file (as needed) to fit the connectors to the Input end:

I positioned the connectors to align across the top of the end panel so that there would be no interference with the mounted board and still allow a sensible layout of the leads.

The layout I chose was L-R: Power (6mm hole), Power Switch (12mm hole), Power LED (5mm hole), PTT (6mm hole) and the 28Mhz IF in/out BNC (8mm/shaped hole)

I mounted all the connectors, and a little quirk indicated that the only GND input to the Attenuator board is via the Input Coax, so on the switches, I tied the GND connectors from the power, RCA(PTT) and BNC (IF in/out) together across the back of the connectors on the panel.

Once done, then I secured the end panel to the bottom of the case and hooked up all the connections.

I wired up the LED I put on the panel (with the 2.2K R) to the switch output with a bit of the heat-shrink over the lead and resistor, and the other end to the common earth bus. At this point, I applied power to verify everything.

I did note that the attenuator board does in fact have a power LED and an PTT LED on it – which is good for checking while it is all apart, but you will not see once the cover goes on!

From here, I now wired up the 2x 4-pin header connections from the Attenuator to the XVTR board. As I was dealing with power and PTT close to either an RF input or output, I opted to put a bit of heat-shrink over the soldered connection to the header pin to ensure I didn’t short out anything.

Next step was to to then mark out the 2 BNC connectors on the other end – the HF-passthru and the 70cm ports and mount them to the end.

Finally, everything wired up, and hooked it all up with the KX3 configured as the IF, attached an antenna.

With a drive requirement of 1-10mW and the 30dB attenuator, I set the KX3 IF Max output to 7W (7mW after the 30dB atten). The Attenuator has 30dB in front of the variable – and I wanted to set the pot for no extra attenuation of the input.

Knowing I was in safe territory and would not exceed the 10mW Max IF input to the XVTR, I then set about setting up the atten drive. I set the KX3 to output 2W (or 2mW) and then using a nearby Handheld without an antenna on it, adjusted the pot for Maximum RX signal.

At this point, it was ready for a couple of final photos and close up the case – nothing more to do in there.

Wiring of the end panel connectors
Wiring of the end panel connectors
All hooked up and testing with the KX3
All hooked up and testing with the KX3 before closing up the case.

Once closed up a couple of simple on-air tests were conducted with a nearby station (Thanks Ray – going mobile about 3km away!) where we conducted a series of tests.

First off, a quick test on FM, and It delivered a similar result to the handheld running at 2-3W output.

Next, it was a quick test on SSB. It took a little bit of effort here, as at first it was around 1.3Khz high in frequency. After a few minutes of talking, the bottom of the XVTR was a bit warm, but not excessively so, I needed to adjust things a little and found that it was around 480hz high in frequency. So, it seems that there is some temperature related drift.

It did not seem to drift any more after the initial 3-5 minutes of use and warm-up, but time will tell.

I will of course note the offset and map it out and apply the required offset within the KX3 XVTR configuration so the display reads correctly.

For the cost, this is a great little afternoon project of mostly a mechanical build that will give you 70cm capabilities in an ultra-small, lightweight package.

Now, I just need to get out there and experiment with it somewhat to determine the real-world sensitivity and actually measure and plot the output power with various input power settings.

Finally a short video accessing the local repeater.

 

A quick Activation

As today saw the temperature plummet from the heatwave of the last 4 days, I decided to duck up the hill to Mt Gawler – VK5/SE-013 and see what the bands were doing – well, that and go out and hope to get a VK5  to ZL1 S2S as there was some ZL1 activity going on.

This was a bit of a different activation today as I went with a little bit of new kit for the first time.

New Toys

Can you guess?  no ?

Ok, the SideKar and keyboard for direct entry logging is not new, had it for a while now and am really starting to get used to it rather than the paper log.

You might have noticed the external amplified JBL speaker, but no, that’s not it either!

Ok, it is the QRO! (well not quite) but the HR-50 amplifier to give the KX3 a bit of a bump from 10w up to the 50+ watt mark  (well, more like 60w on most bands).

I have had the kit for a few month’s and managed to put it together about a week ago and today was the first time I have had a chance to give it a run in the field.  By All reports – the bit of extra output helped – pretty good reports all day.

Band conditions were very strange – very short hops on bands where it was not really expected!

I started out on 15m and worked VK3, VK1 and VK7 stations.  On the suggestion of Tony, VK3CAT, I then gave 10m a try and was rewarded with VK3 and VK1 contacts for my log.  As I was using the 30m dipole for 10m, I then gave a call out on 30m and worked VK2, VK3 and VK5.  20m was the best band of the day and I worked VK2,3,4,5’s and ZL3CC for my only DX of the day.  I always end up on 40m for at least a bit of every activation and I worked into VK2, VK3 and VK5 before I packed up for the day.

I was able to round out the day with the final station logged of VI3ANZAC on the last day that this call will be activated.

I did see the spots for ZL1 activation on 20m and could hear a few of the chasers, but alas, no VK5 to ZL1 S2S today, but hope it won’t take too long to get one!

As always, thanks to all the chasers as you make it all worthwhile.

 

Building the WARS Powerpole Kit

Like  many of us, I am forever on the look out to managing power connections and of late have been moving more towards standardizing on Powerpoles for my (up to) 45A Connections.

Recently, I purchased one of the WARS (Waverly Amateur Radio Society) Powerpole Kits and finally found a bit of time to assemble it.  I won’t go into any details on the kit – all the info is available from the WARS site.

The assembly is pretty straight forward, just take your time and follow the instructions and it will all come together.

Have a decent high-power soldering iron available. My 15/40W soldering iron was on the lowest end of what you would want! It took quite a lot to heat up the connections on the + and – rail sides, there is a LOT of copper on the board.  I would have liked a 60+ W iron to do this, and will borrow one for the next kit I assemble.

It took me a few hours to assemble it – partially because of the low-powered soldering iron and aside from that, just took my time, careful with the alignment of the power poles and the fuses. What I didn’t do, but should have done is to trim off the leg lengths of the #13 wire on the power poles BEFORE soldering them to the board – it was difficult to trim them off after soldered to the board as you will need a strong pair of snips to trim them.

It all went together just fine and now I have done it, I need to purchase another couple of these :).  This was bought for a specific purpose and also to see if it would make a suitable alternative to a commercial one – wins on all counts.

Assembled and ready for boxing
Assembled and ready for boxing

After assembling there is room for a few Improvements:

If you install the Input power poles on the board at the 90Deg (like mine) the instructions say to make the cut-out 18mm wide and 15mm deep into the case. the 18mm is a nice neat fit, but the 15mm leave a big gap, I would say that 13mm is more than enough.  It is easy to trim a little more out, but much harder to add it back in!

You cannot see it, but when in the box there is about a 3mm gap above the input powerpoles.
You cannot see it, but when in the box there is about a 3mm gap above the input powerpoles.

Additionally, the print-out for the cut-out in the top of the box is also wrong! It is way too long – the end closest to the INPUT should be about 3mm less than the template. The end with the LED is correct.

Assembled in the box showing the cut-out around the powerpoles and fuses
Assembled in the box showing the cut-out around the powerpoles and fuses

Be careful with the alignment of the template when cutting it out – as mine was about 1mm off to 1 side and I had to ease the opening out a bit wider so it would all go together.  You can see that on the side of the power poles that there is an extra gap – as the cut-out was slightly off, and the side near the fuses needed to be eased slightly for everything to fit.

The kit includes insulated spade connectors which are used to hold the fuses.  I tried following the instructions supplied, but found it faster and easier to cut away the insulation with a knife.

A nice touch is the blown fuse indicator – where a small red LED will light up when a fuse blows making it obvious of where the problem lies.

Testing the "Blown Fuse" you can just see a slight red from the LED on the fuse holder, but very easy when viewed from the top
Testing the “Blown Fuse” you can just see a slight red from the LED in the image.

You can see the bi-coloured power LED.  With the correct polarity, it is green, reversed it is red – you don’t want to see it red, but at this stage, you do want to test it to verify.

At around 1/3 of the cost of an equivalent commercial product, adding a couple of these to your portable and field day kits will not break the bank – and provides an easy, convenient way to fuse protect your equipment, with enough outlets to power almost all of your equipment.  For that matter, adding a few to your shack as well is a good option for DC distribution

Those minor issues aside, pretty happy with the end product.  All in all, I rate it as 4.5/5.

VKFF Weekend Nov 2015

For the VKFF Activation weekend, we found the time to get out to one of the new SA parks that had recently been added to the VKFF list.  On the Saturday afternoon, we were able to get out to the Ramco Point CP – VKFF-0930

This is a little gem of a park that at first it is unclear on it’s boundaries,  but with a little bit of searching, we were able to find it.  The frustrating bit is this park is not listed on Google Maps but it is listed on the Protected Planet Maps.

Now, this has not always been Ramco Point CP – as is evidence from the old signs on the borders to the park.

Ramco Forest Reserve
Ramco Forest Reserve

The park extends from between the Ramco Lagoon, up the cliff face to a small area adjacent to the Cadell Valley Road, where we entered the park.

We found a suitable spot not far from the top of the cliffs on an un-used track and set up.  It was not the highest point in the park, but down the slope a bit which did offer a bit of extra protection should the wind have come up.

Ramco Pt CP
Ramco Pt CP

We picked a spot where there was a tree to tie up the squid pole and offer a bit of shade for the afternoon.

The Shack for the day
The Shack for the day
Setting up
Setting up
Map courtesy of protected planet
Map courtesy of protected planet

The red dot on the map was our operating position on the cliff top.

We arrived mid-afternoon as the hope was to work EU if 20M was open. We were a bit early so started out on 15M.

Once we were set up we called  first on 15M and worked Rick VK4RF for the very first contact from Ramco Point CP as a VKFF park.

We made a handful of contacts before heading to 40M where we made quite a few more before trying 20M.  Well, 20M did not really open up and we only had a single, very difficult DX contact on 20 with DK4RM, so we headed back to 40M and kept working the stations in an attempt to get the 44 and make it a valid WWFF activation.

A highlight was to work Peter, VK3YE who was flying a kite on Chelsea beach to support a wire antenna on 40M,

As the day went on 40M also improved and eventually, we had logged 44 contacts!  We did work a few more as there were a couple of duplicates in the logs – with contacts on different bands and also a couple of others who had moved to different parks.

The Results

We ended the day with 53 stations logged, 4 on 15M, 6 on 20M and 43 on 40M and in the mix we worked 11 VKFF Park to Park contacts.  With just 2 repeats (different bands), 1 duplicate, and another contact that was with VK3ZPF from 2 different parks, we well and truly passed the 44 with a total of 48 unique contacts for the day.

Of course, Ramco Point CP also qualifies for the SANPCA as well, and this was a new one for me as an activator.

This was also a good day, as before we went out to the park I logged a further 7 VKFF parks as a chaser – and that is well over 1/2 of the activators who were out on Saturday who I logged.

Just before packing up, I walked to the cliff-top to take in the spectacular views offered here.

Murray River - Downstream
Murray River – Downstream

The view downstream – right in the foreground down the cliff you can see the backwater where the Ramco Lagoon flows into the Murray River.

If you look at the map, from our operating position, this is the view towards to top of the map

Murray River - Upstream
Murray River – Upstream

Looking upstream, again with the Ramco Lagoon in the foreground and a bit more to the right, then the Murray River  all the way back to Waikerie. This is the view from the red dot towards the bottom right on the map.

We were blessed with a very pleasant operating spot, a few steps away from spectacular view up and down the Murray River and a really nice day with temperatures in the mid 20’s  – It simply doesn’t get much better than this!