Homebrew Remotehead for DMA Uniden

Status
Not open for further replies.

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
Thanks i just ordered 2 of them, As soon as i get them i will PM (rick107) and if you don't mind i would like to exchange ideas on this project. your welcome to PM or email me anytime.


Mike
 

richk107

Member
Joined
Apr 23, 2009
Messages
90
Location
New Jersey
Xeno - we'll be in contact. I have some things going on at home so I'm not going to have as much time as I would like.

Below is the wiring diagram I will be working with. I only have use for the four buttons, but there is room for two more. If digital 13 is used, the LED that is on the board will be lost. I like having it there as a sanity check.

If I have any mistakes, please let me know.

Rich
 

Attachments

  • Uniden_Arduino.jpg
    Uniden_Arduino.jpg
    55 KB · Views: 1,994

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
I think your going to have to put 5 10k ohm resistors on each button
and one for the lcd i think on pin 15

i will start working with this is fritzing (drawing app) and post it here so we can all work on it.

I also dropped using the pot. I like the lcd nice and bright.
I used pin 13 to drive the lcd backlight on and off.

My lcd setup is this
1 (VSS) GND Arduino pin*
2 (VDD) + 5v Arduino pin
3 (contrast) Resistor to GND Arduino pin*
4 RS Arduino pin 12
5 R/W Arduino pin 11
6 Enable Arduino pin 10
7 No connection
8 No connection
9 No connection
10 No connection
11 Data 4 Arduino pin 5
12 Data 5 Arduino pin 4
13 Data 6 Arduino pin 3
14 Data 7 Arduino pin 2
15 Backlight Arduino pin 13
16 Backlight GND GND Arduino pin*

My LCD Code is:
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2);
int backLight = 13; // pin 13 will control the backlight
void setup()
{
pinMode(backLight, OUTPUT);
digitalWrite(backLight, HIGH);
lcd.begin(16,2);
lcd.clear();
}
void loop()
{
}


I will take pictures of my setup tomorrow and post them here.Thank you for the concept credit.If ou need any parts let me know cause i ordered like 100 push buttons and tons of header pins. I have more resistors than i know what to do with.If you need anything pm me and i will mail them out to you. Your welcome to use anything i have on my work bench.


When this is all done and working will the admins/rr police add this to the wiki or give us a wiki for this project? I would like to make this into a kit for people to build or buy them already built and donate the profits to radio ref. I'm not into this for the money just want someone to have something they can build and plug it and say wow this works good. Who knows maybe one day.
 
Last edited:

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
button.png


I would put the lcd, pot and ttl to one ground(before 5v) and the 4 buttons to the other ground (after pin 13)
 
Last edited:

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
Yes this will work with the front connection it will not work with the usb1 cause of the ftdi chip set is embedded in the plug you will have to use the cable that is supplied with the radio (9pin serial to uniden plug)
 

richk107

Member
Joined
Apr 23, 2009
Messages
90
Location
New Jersey
Trixter - I'm using a 396XT so I have no choice but the use the cable that was supplied with the radio. It was an act of desperation that I used the null adapter as I was unsuccessful for over a day in getting it to work. Once I put the null adapter between the Uniden cable and my TTL-to-Serial adapter everything started working.

Has anyone played with using buttons? The arduino has a pretty bad bounce when pressing buttons. I've tried different different libraries and code with little success. I can get a LED to not flicker but when I send output to Serial it repeats the command mulitple times. I was successful with some example code which I found that utilized interupts but it played havoc on the LCD output.

Rich
 

richk107

Member
Joined
Apr 23, 2009
Messages
90
Location
New Jersey
Xeno - thanks for the use of your bench. You never know.

I was thinking about your suggestion of putting the backlight onto pin 13. If this is done, how could we control the back light?
 

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
I would wire a mini toggle. Pin13 to toggle than toggle to lcd pin15. In the code have the lcd always on. The toggle switch would need to be a single pole single throw

{
pinMode(backLight, OUTPUT);
digitalWrite(backLight, HIGH);
lcd.begin(16,2);
lcd.clear();
}
 
Last edited:

K4APR

Member
Joined
Apr 18, 2003
Messages
1,028
Location
Chesapeake, VA.
I see that the RS232 to TTL adapters that are shown in some of the links are cheaper in price, but we have been selling a very similar device of our own for several years now:

http://www.rpc-electronics.com/development.php

Our module is $15, but I can offer this: We designed the module in-house, we built the module in-house, you get direct builder to buyer sales and support is direct and personal.

We also offer a slightly higher-end module that is two channel, our RS232 to TTL Bridge:

http://www.rpc-electronics.com/comm.php
 
Last edited:

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
Trixter: when this project is finished, tested and 100% working you can use the front connection or the back gps connection of the radio. You will have to set the baud rate of the radio to the baud rate of the homemade head. Soon as we get all the bugs worked out this should be done within the next month or two.
 

richk107

Member
Joined
Apr 23, 2009
Messages
90
Location
New Jersey
I'm having problems with debouncing the buttons and using the LCDs. After spending way to much time searching for some good code examples I found a cheap and simple hardware solution. Using something called a Schmitt Trigger I can clean up the signal so one button click doesn't turn into 10. The one I will be using is part# CD40106.
 

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
Hope this helps. Not my code but a cut n paste from online.

Why do we need the resistor R1? R1 guarantees that the Arduino&#8217;s digital input pin 7 is
connected to a constant voltage of +5V whenever the push button is not pressed. If the
push button is pressed, the signal on pin 7 drops to ground (GND), at the same time the
Arduino&#8217;s +5V power is connected to GND, we avoid a shorted circuit by limiting the
current that can flow from +5V to GND with a resistor (1 - 10 K&#937;). Also, if there was no
connection from pin 7 to +5V at all, the input pin would be &#8220;floating&#8221; whenever the
pushbutton is not pressed. This means that it is connected neither to GND nor to +5V,
picking up electrostatic noise leading to a false triggering of the input.

2. Open the Arduino software and write the following code:
/* Basic Digital Read
* ------------------
*
* turns on and off a light emitting diode(LED) connected to digital
* pin 13 (onboard LED, when pressing a pushbutton attached to pin 7.
* It illustrates the concept of Active-Low, which consists in
* connecting buttons using a 1K to 10K pull-up resistor.
*
* Created 1 December 2005
* copyleft 2005 DojoDave <http://www.0j0.org>
* Arduino - HomePage
*
*/
int ledPin = 13; // choose the pin for the LED
int inPin = 7; // choose the input pin (for a pushbutton)
Winkler, Arduino workshop, sensors, p.5
int val = 0; // variable for reading the pin status
void setup() {
pinMode(ledPin, OUTPUT); // declare LED as output
pinMode(inPin, INPUT); // declare pushbutton as input
}
void loop(){
val = digitalRead(inPin); // read input value
if (val == HIGH) { // check if the input is HIGH
// i.e. button released
digitalWrite(ledPin, LOW); // turn LED OFF
} else {
digitalWrite(ledPin, HIGH); // turn LED ON
}
}
 

jaskel

Member
Premium Subscriber
Joined
Dec 30, 2008
Messages
154
Location
SYDNEY AUSTRALIA
hey nice work! if you need to test it on Aussie Unidens let me know.

I am in Au and have a 396T and also a 996XT :) Would love to get a display like this going!
 

richk107

Member
Joined
Apr 23, 2009
Messages
90
Location
New Jersey
The pinout for the LCD might change. I'm not sure if I found a limitation of the Arduino or there is something wrong with mine. I'll know better tonight. The TTL to Serial adapter is needed to readwrite from/to the scanner. Without this the LCD is useless. I'll try to clean up my code a bit and upload it later today.
 
K

kb0nly

Guest
So will this work with the BC785D and BC796D then? All i see mention of is the newer models.
 

richk107

Member
Joined
Apr 23, 2009
Messages
90
Location
New Jersey
Ok, so it looks like the connections for the buttons will be moving to the analog pins. The nice thing is that they can also be used as digital pins with pull-up resistors. I'll need to learn Fritzing to generate a new wiring diagram. The last one was created in Photoshop but if this project continues to grow I'll need to use something friendlier

I did find a new bug. The arduino will reboot sometimes when I press the scan or hold buttons. But, volume up and down do work.

YouTube - &#x202a;IMG_0096.MOV&#x202c;&rlm;
You can see the reboot right at the end. You can see the first page of a splash screen I display.

I think if this project continues to mature, I might move to a I2C board so that I can control a number of buttons and an LCD using just 4 wires. The screen and buttons stay the same but there will be one additional board and less wires. This is the board I will more then likely use:

Serial display controller for 16x2 LCD Module | eBay

kb0nly - I'm not sure; I'm not familiar with either. I'll have to look at the manuals and see what kind of connection they use and what commands are utilized. If they can be programmed from a computer, there is a good chance that it might work.




Rich
 
Status
Not open for further replies.
Top