small logo

melfneerg.com

 - 'cos life is like that


[Blog]  [Pictures]  [Links]  [About
About the Author
Tudor Davies

author Tudor is a techie turned manager who fights like mad to keep his tech skills honed and relevant. Everything from web hosting, networking, *nix and the like. Constantly developing and co-ordinating with others to make the web a better (and easier to use) place.

Arduino

Thursday, 14th Jul 2011  Posted @ 08:53

So what have I done in the past few weeks.

I have breadboarded the sensors for motion detection, temperature and sound and have worked out smoothing algorithms to make sure they provide sensible results.

I also managed to get some advanced LED control through the use of a 74HC595 shift register.

So hardware and software - all individually tested and working - next up is putting it all together and making sure it works.

Oddly, the one thing I havent been able to get working to my satisfaction is the use of switches - I think I need to work out debounce code!

[ no comments : Add ]

Tweet


More Arduino

Wednesday, 22nd Jun 2011  Posted @ 08:25

So my Arduino finally turned up from China yesterday, so I wasted no time in getting started.

First up was to connect my
Sensor Shield V4.
This has header pins which plug into the Arduino and give each pin a +5V and GND (usable with 3pin header cables)

The layout of each connector on the board is +5V, GND and SENSOR but the layout of the cable connector was GND, +5V, SENSOR. This meant lifting the flap on the cable connector and swapping the 2 of the spades connectors over on all the sensor shields I have.

I then connected up an LM35 sensor to A0 and a sound sensor to A1

I then wrote a sketch to retrieve the values (the temperature sensor needs to be averaged as it can sometimes report a figure well out of range) and send comments to the serial port.

[ no comments : Add ]

Tweet


Designs

Monday, 13th Jun 2011  Posted @ 08:08

So I have been playing around with the Front Panel Designer and have come up with a few layouts and a few problems.

With my original build, I wanted to combine the DM2 and the X-Session Pro into 1 case. However, the PCB layout of the X-Session Pro means that this really isnt possible unless I mount the PCB on the bottom of the case and wire everything to the panel. This might be the way I have to go but unfortunately makes the unit massive!

These are moving away from the DM2 rebuild (I suspect I shall build several boxes in order to get things right). As my main focus when DJing live is to use MixMeister, I have put something together that is usable specifically to me but would be applicable to other applications as well.

200mm x 200mm Box layout

2U Rack layout

Both of those are identical. They have 4 sets of controls - 1 for each strip in Mixmeister. A volume fader and pots for low, mid and high. It also has 4 buttons (which will be mapped to overlays) and also incorporates a touchpad.

Project Box

That last one is sized to fit in an ABS project box that is 240mm x 190mm x 60mm. At the moment, this is my favoured layout. It retains the 4 strip controls and touchpad but increases the buttons to 9. Essentially I can acheive this with my PS/2 -> USB modified touchpad and the faders, pots and buttons can be controlled using an Arduino, a MUX breakout and a USB to MIDI adapter. The shopping list for this will be:

Arduino Duemilanove
Arduino MUX Breakout and how to use it
4x 10K Linear Potentiometers (60mm)
4x Fader Knobs
12x 10K Potentiometers
12x Potentiometer Knobs
9x Arcade Buttons (24mm)
2x Arcade Buttons (16mm)
USB to MIDI adapter (or similar) and how to use it

PS/2 Trackpad from laptop
PS/2 to USB adapter

The Arduino comes with 14 digital and 6 analog ports. The MUX uses 4 digital pins and 1 analog pin.
The MIDI board uses 1 digital pin.
9 buttons will use 9 digital pins.
Thats all the digital pins used up!

It is also possible to use a dedicated USB/Midi PCB that is capable of driving the whole shebang (bar the touchpad) without me requiring to do any coding, which might be an option :)

[ no comments : Add ]

Tweet


Midifighter 2

Sunday, 12th Jun 2011  Posted @ 14:01

So I have got everything mapped and tested and the DM2 is working exactly the way I want.

That means it was time to order some bits - first up buttons, so I headed over to Gremlin Solutions and ordered myself the following:

8x Seimitsu PS-14-DN (white)
8x Seimitsu PS-14-DN, (blue)
10x Seimitsu PS-14-DN, (black)

Thats 26 buttons - 2 for the trackpad and 24 for the DM2 relocation. Next up is to get 7 larger buttons to run other functions from the DM2

I also (after seeing it used on some forums) downloaded a great piece of software called Front Panel Designer which can be obtained from here which has changed the layout considerably! Its now a 19" 6U unit - view it here.

That means I also need to design and build a multi-tier stand to hold my midi controller (v1), a Behringer BCR2000 or X-Session Pro and a laptop. V2 of the controller will incorporate the pots and faders into 1 same sized unit...

[ no comments : Add ]

Tweet


DM2

Thursday, 9th Jun 2011  Posted @ 06:32

So the Mixman DM2 arrived and has been tested.

So far, it is still in its original mountings and the Mixman software and drivers have been installed and proved functional.

I then installed DM2MIDI along with MIDI Yoke along with my normal DJ application Mixmeister Fusion and started MIDI mapping.

And it all works. I need to do some tweaks to get the wheels functioning the way I want and I need to analyze some of the Numark mappings to get that sorted.

More updates as they occur

[ no comments : Add ]

Tweet


DJ Controller

Friday, 3rd Jun 2011  Posted @ 15:46

Having a had a good scour round the intranerd at various bits - I have scrapped the Arduino based DJ controller.

Instead I am building an uber DJ console from the following items:
Mixman DM2 (nabbed for £20 on ebay)
X-Session Pro (bought months ago)
Touchpad (rescued from dead laptop)

Rescued Touchpad (converted to USB)
Touchpad & 2 mouse buttons

Mixman DM2 (USB)
2x Scroll wheels
1x Joystick
29x buttons (16 with LEDs)
1x fader (sliding pot)

X-Session Pro (USB)
12x knobs (pots)
5x fader (sliding pots)
10x buttons

Now the question is whether I build a controller with every option possible or build something specifically for me and Mixmeister...

I will post pictures of all the kit and document the build right here

[ no comments : Add ]

Tweet


Arduino

Wednesday, 1st Jun 2011  Posted @ 21:00

My inner geek is always bubbling to the forefront of my life. My latest thing: Arduino

Currently in the post are:
Arduino Duemilanove
Power Supply
An Arduino sensor shield
Sound sensor
Temperature sensor
Breadboard
Jumper cables
5 button shield

I also have an ATX PSU converted into a bench PSU, a handful of 5.4" LCD screens and some bits and bobs.

There are 2 things I want to make:
1/ DJ controller - midi-outputting - 16x potentiometers controlled using 4051 ICs to control 4 channels of volume/high/mid/bass, 1x slide potentiometer for master volume, 5 buttons assigned to various functions and a recovered laptop touchpad converted to PS/2 (and then into USB)

2/ a baby monitor/alert/mobile - with the addition of a PIR sensor, it will a) monitor the room temperature and alert if too low or too high, b) monitor sound and movement in the room to determine if baby is awake and if so, play an animation on the attached 5.4" screen, play music and flash some soothing LED lights while alerting me to the fact that baby is awake

When it all turns up - out comes the geek :)

[ no comments : Add ]

Tweet


NTP

Friday, 6th May 2011  Posted @ 13:59

Finally got around to sorting out NTP in my hosted environment.

First up - the firewall. Ran setup from the command line and ensured that Europe/London was selected as the timezone. Then went into the GUI, selected "Obtain time from a Network Time Server" and "Provide time to local network". Added 2 time server (one of which was recently installed by the ISP - ie. the company I work for), hit "Save" and then "Update Now". Firewall now has the correct time.

Next up, was sorting out NTP on the 4 CentOS boxes (dev, sql, mail and web) and the NAS box (FreeNAS).

CentOS boxes - firstly, make sure your timezone is set correctly:

mv /etc/localtime /etc/localtime-old
ln -s /usr/share/zoneinfo/Europe/London /etc/localtime
Next up, install, configure and run ntp:
yum install ntp
chkconfig ntpd on
ntpdate
Then edited /etc/ntp.conf and set the server entry to point to my firewall (as above). Finally:
service ntpd start
FreeNAS - login to the GUI. Select System - General. Put a tick box in "Enable NTP" and put the IP address in the "NTP Time Server" field. Hit "Save" and its done!

[ no comments : Add ]

Tweet


More databases and apps...

Friday, 8th Apr 2011  Posted @ 08:48

So I finished reworking my DJ website using an iPhone UI toolkit and that works pretty well.

I then revamped the main music site adding more and more functionality. It is now possible to search for an artist or song, get 100 random songs or look at the UK Top 40 chart for the past 4.5 years.

From there, it is possible to search for other songs by that artist or songs with that name and then, once the song has been identified - it can be downloaded from my own library (if logged on as myself) *or* (drumroll)...

...get a list of mixable tracks.

It will calculate:

the current key
the next key down
the next key up
the current BPM
a BPM variation of 2.5% above and below the current BPM

and then return a list of 200 tracks (once again, if I am logged on as myself, I can download them). There are currently over 55000 tracks in the database but once I am provided with friends and other MixMeister library export files I am can increase that figure dramatically.

More tweaking is obviously required but right now, its usable and useful. Onward and upward :)

[ no comments : Add ]

Tweet


Finally...

Tuesday, 15th Mar 2011  Posted @ 09:35

For many, many moons I have been planning to create a links database for several of my sites and finally I started it.

Took me about 5 mins to populate the db and write the code to use in the sidebars, etc. Next step is to amalgamate them into one db (for easier mgmt), add an admin wrapper, add a column to identify a genre so each blog can use them from a single table and then change the code on each site to use it.

Why I didnt do this before, god only knows!

[ no comments : Add ]

Tweet




layout and initial css based on the Qtractor page