This will be my last modded controller, at least on the 360, who knows what the future holds with other consoles. This will not be the most impressive mod by any stretch of the imagination, I have just had an idea for a while that I wanted to bring to life, and this is as good a opportunity as ever.
Project is part of the 'SpurGurGle's unofficial controller mod off' see:
https://www.acidmods.com/forum/index.php/topic,43218.msg323093.html#msg323093Place holder, the actual controller wont be seeing the soldering iron for a while yet, my first goal is to get a POC of my PIC code working on a breadboard (new to programming PIC's, have a bunch of experience with C and the program I am wanting to write isn't that complicated). Ideally I want to get a PCB fabbed, we'll see how much time I have.
Anyway pictures/videos to come when I have something to show.
Variegation - A modded Controller by GhoSt
Plans: Green=complete
Red=not done or change in plan
- Custom built in RGB controller that uses controller sync and dpad to modify the duty cycles of the Led channels individually (effectively giving you an entire spectrum of colours [when diffused] to digitally select and change on a whim after installed). Not a new idea, but I want to build something specific to my needs.
- Minimapper connected to two external tact switches.
- Clear Trims, triggers and analogs for lighting (thinking about stenciling the mic bezel.)
- Lighting will go in the dome, and various other locations.
- obligatory led swap (to white)
- Flex RF (if I get a Variegation PCB fabbed I will leave room on for an extra 12f683)
Work log: (This is a record for me more than anything, a lot of babble.)21 decSo it begins, still waiting on a bunch of stuff to arrive, but I have been having some fun with RGB leds in the mean time (Glad I designed for ICSP). No controllers to be seen.
22 decGot my code working on a single channel, adjustable soft PWM (8bit resolution) with EEPROM dutyCycle logging. Next step is to sync in the remaining two channels (and log them with 4 more bytes of EEPROM), add the 'power/toggle channel' input, debug my 'off by one error' on the mark-space ratio.
By now you should have worked out where the name of this project comes from, I was going to name it 'spectrum' but would be a little confusing with hazers RF rocking that name.
I also have plans to install a miniM4pper (in the post from RDC as we speak), and hazers flex RF. (if I am going to do one last controller it needs to be packed full with mods).
23 decoff by one error, fixed.
EEPROM reduced to 1byte per channel cutting back R/W delays (realised I was not using a full integer, only from 0x00 to 0xff).
Added channel editing toggle input on MCLR pin.
Had christmas shopping to do so haven't added the remaining two channels (I realized I am going to have to rewrite the function because the delay method it used is too simplistic to synchronize multiple Duty Cycles, which is fine because I know how to fix it).
//btw this is taking so long because I am literally putting in 15 minutes of work per day.
Update: rewrote a bunch of the input code to account for the toggling state and the 2 extra duty cycle parameters, all the ground work laid for adding the remaining RG channels. Just need to rewrite the PWM period part of the function and update my EEPROM functions to account for the extra variables. Should find a few minutes tomorrow to finish up the bulk of the code, then its just polishing up the software/hardware before designing a PCB.
DEC 24/25Got caught up with a bunch of christmas stuff, haven't really done that much besides rebuilding the breadboard to make things a little tidier (and building a better divider for the Red led). Might update if I get a second to myself.
Update: Finished it to a POC stage, good enough for me to prove to myself that its do-able with my skills, there are still some small bugs to remove and I want to improve the definition when tuning the PWM on the lower end of the scale. But I am pretty happy with it for my first PIC program.
Anyway onto a bit of a video showing it off, sorry I recorded with my phone so its difficult to see the actual colors. Anyway hopefully you get the idea.
Ok so no video embeding for me (No Html powers), so you just have to click the link
Vid:
https://vimeo.com/82666799Okay dokey, so I need a more user friendly interface for modifying the PWM mark space, but for now I am satisfied. Here is the schematic of how everything will be hooked up to this RGB controller, I am still deciding on what I am going to do for current gain, the un-conventional voltage dropping on the red channel with reference to Vcc is kinda limiting me to common anode RGB's. Its looking more and more like I will just have to design this for Common Anode with pnp transistors, and use npn (with a few modifications) if I ever want to use this with common cathode leds. The code will be the same since I built it to be easily invert-able should I want to change directions.
I am going on a road trip, and not getting back until the 30th (Also due to prior 'commitments' write off the 31st and 1st) so this will be my last major update for a while. But in the new year I plan to shred the controller and get some of these mods in there. (Btw if anyone wants this code once I am finished I am happy to give it away free, the more people who get some use out of it the less wasted my time was writing it).
30 dec:Just got home, and found this late christmas present from RDC on the doorstep
. So tired right now so going to get some good sleep before the new years antics tomorrow, anyway after all this is done I will be right back on track to finishing this project.
1st JanI honestly thought I would be able to get something done today, but I didn't wake up till 7:30pm so the day is pretty much wasted. Tomorrow I will try finish the PCB, and finish tuning the code. I will also do the LED swap on the controller so this can begin to look like a controller mod thread.
I had a new idea for the RGB controller, as well as using inputs for continuous colour selection I will also allow discrete colour selection (ie: cycle through common colours like alot of other RGB controllers do), by pulling both inputs low (checks on code startup)
4th JanOk so I have been so lazy with this project, but I whipped up a few pnp 2907 switches, and have finished the circuit design. Just need to lay this out on a PCB and get it fabbed, goal is to send to fab on monday.
I have just directly ouput the full 3V, so some voltage dropping needs to be done for the red led, unsure what I am going to do there, I don't want to use a divider because of loading issues when you slap on 20ish Leds. Bah worst comes to worst I can just drop voltage over a diode or something, we'll figure something out.
Plan is to knock out the PCB today, crack open the controller on sunday for led swaps and most of the m4pper install. Then order the PCB and the controller trims on monday/sunday night.
Update:Well I finished the PCB, I am new to PCB design as well, so this will be my first real PCB to get fabbed (I have done several through hole mills before however). Going to double check that design tomorrow to make sure I haven't messed anything up too badly, which is likely since this is my first time using eagle (altium is my CAD software of choice.)
I really should learn how to use this software better before getting PCB's made, but w/e Its only a one off thing. This board should fit behind the controller mobo (board is 31.45x16.51 mm).
5th Jan:Happy with PCB, made some adjustments to the silkscreen and ordered 3 copies from oshpark.
Update: ordered the transistors and the trims for the controller, now its just a battle with the US post service. As you can see I have opted not to put a flex chip on the PCB, I figure with the remaining two PCB's I would prefer the reduced footprint when using them in other mods. So I will just use a DIP chip for Flex and the optocouple.
8th JanSounds like the PCB is going to take a while to arrive, it only gets back from the fab on 15th and then has to make its way over to New Zealand :S, going to be touch and go if that arrives on time. I have done the LED swap, went to red because I forgot to buy any 0603 white (and had a bunch left over), red still looks damn cool. Still deciding on where to install the mini mapper.
Update:
Okay so the code is pretty much done, implemented the secondary simple mod with 9 colours in the cycle (Red, Green, Blue, Yellow, Orange, Purple, Pink, Aqua, Lime). I also tuned the manual editing such that you go between 0-255 in steps of 5, so 51 potential steps (seems like a bit of a waste of the 8bit pwm resolution but still gives you hundreds of thousands of different possible colours.).Anyway will flash the code across tomorrow and give it a test, if all goes well I will chuck up a video.
12th Jan:Okay so some blatent lag, anyway flashed over the code this morning and whipped up a video showing what is pretty much the final code.
PLEASE NOTE: The flashing of the leds in the video is a sync issue between the PWM frequency and the cameras frame rate, THIS IS NOT VISIBLE IRL, our eyes do not work on a a framerate and the PWM frequency is not visible to the bare eye.
Also as I mention the red channel is slightly dimmer than the other channels at the moment, this is due to the not ideal values on my current voltage divider, and will be fixed.
Variegation - Custom Led RGB controller pic 12f683, Bread-boarding.-GhoSt