The Corsair User Forums  

Go Back   The Corsair User Forums > Corsair Enthusiasts Section > System Builds, Modding, Custom Components, and Picture Gallery

Notices

Reply
 
Thread Tools Search this Thread Display Modes
  #46  
Old 02-20-2017, 09:38 PM
intender intender is offline
Registered User
 
Join Date: Feb 2017
Posts: 6
POST ID # = 892142
intender Reputation: 10
Default

Quote:
Originally Posted by scooterpsu View Post
Ah, thanks for clearing that up! I mistakenly assumed that Corsair would have the foresight to make a single controller that could handle both (even if not at the same time) to cut down on confusion.

Then I remembered that the US webstore was briefly selling Commander Mini's with free single HD120 RGB fans, because looking at features and connectors, there'd be no reason to think it wouldn't work. I can only imagine how many burned out fans that lead to...

It seems like there's like 5 dev teams all trying stuff at the same time without telling the others.

Ya they have the commander mini on sale right now and its coming with the led strip kit and two sp120 red led fans and there is a note at the bottom thats says the previous deal had the hd120rgb but they realized the items wouldnt work together and changed it. So obviously there was a lack of info even within the groups at corsair.
Reply With Quote


  #47  
Old 03-14-2017, 03:22 AM
Charixfox Charixfox is offline
Doer of Things and Stuff
Charixfox's PC Specs
 
Join Date: Oct 2015
Posts: 254
POST ID # = 895060
Charixfox Reputation: 19
Default

I finally gave in and got myself a 570X case and six HD120s so I could actually do more on the project and be able to test it without having to bug somebody who is perfectly happy with Angry Myia Mode.

Hey, red-ray? If I were to make Arduino firmware for SIV (or something else) to talk to, how would you like comms to work? Still HID and such? "Dumb" firmware (That is, "Take this LED array and do it") or "smart" firmware ("Use this mode and do your own calculations so I don't have to tell you every little thing")?
Reply With Quote


  #48  
Old 03-14-2017, 04:11 AM
red-ray red-ray is offline
Banned
red-ray's PC Specs
 
Join Date: May 2014
Location: England (GMT+1)
Posts: 7,152
POST ID # = 895064
red-ray Reputation: 81
Arrow The LNP was released

Quote:
Originally Posted by Charixfox View Post
Hey, red-ray? If I were to make Arduino firmware for SIV (or something else) to talk to, how would you like comms to work?
Once Corsair released the LNP I got one of those, deduced the protocol and added LNP support to SIV.

Looking at http://forum.corsair.com/forums/showthread.php?p=892386 you can see the LNP is a HID device and in an ideal world the Arduino would implement a superset of the LNP protocol. CL4 can only control units of either 10 or 12 LEDs, but in SIV units of 6, 5, 4, 3 and 2 are also possible unfortunately the LNP firmware only supports 6 items (6 x HD120) and I would like to be able to have more items as with 6 fans SIV could easily support 24 x 3 LEDs. With SIV I could easily add support what whatever VID/PID you choose and I suspect if you use the same as the LNP then CL4 would talk to the Arduino .

At the moment I have not published the LNP protocol, but could. It's quite simple and it only took be a couple of days to get most things working, but there are some packet types which I an not totally sure about. It's also possible to update the LNP firmware, but CL 4.5.0.55 can't do this so I can't deduce the protocol. One aspect of the LNP seems to be that it's a WOM and SIV can't read the current LED configuration . For a controlling SIV this is not an issue, but it means that SIV can't just monitor what the LNP is displaying and with the old LN (Lighting Node) it can.
Reply With Quote


  #49  
Old 03-14-2017, 07:11 PM
Charixfox Charixfox is offline
Doer of Things and Stuff
Charixfox's PC Specs
 
Join Date: Oct 2015
Posts: 254
POST ID # = 895161
Charixfox Reputation: 19
Default

LNP has two channels and each channel can connect either to a string of four LED strips (10 LEDs each) or to a hub that powers 6 HD120 RGB fans.

This makes sense due to the specs on the power connector it uses. A SATA power connector is rated for 4.5A on each of the 3.3, 5, and 12 volt lines. This is mildly disconcerting when you realize that the eight strips of ten LEDs each can draw up to 4.8A when set to full white, so hopefully there is some current-limiting set into the system (generally presented in the form of brightness limitations for the LEDs). Though I suppose it could be pulling power from the USB (up to .5A) as well to supplement things. Anyway... O.o Even with such, PWM means that there are still spikes and dips, which is why the capacitor is present.

By comparison, the six 12-LED fans only get data from the LNP and sata power directly to the hub, which feeds up to 4.32A of fan colors.

I was under the impression that LNP was able to connect to two fan hubs and control lighting on 12 fans total though.

As for VID/PID, while technically i "could" potentially control that report, it would be a lie. Those are assigned globally by USB peeps and you "shouldn't" use one unless you have it assigned to you. It would be an interesting hack to see if I could replicate the LNP stuff on the Arduino though. <.<

In any case, the primary reason for the offer was to have access to a controller that (isn't $60 and) you have full insight into the firmware of. ;)
Reply With Quote


  #50  
Old 03-14-2017, 07:56 PM
red-ray red-ray is offline
Banned
red-ray's PC Specs
 
Join Date: May 2014
Location: England (GMT+1)
Posts: 7,152
POST ID # = 895173
red-ray Reputation: 81
Idea I don't expect the LNP uses USB power for the LEDs at all

I don't expect the LNP uses USB power for the LEDs at all as I have found as follows:
  1. Just USB connecting the LNP is enough to get the USB device to show up and seem to work.
  2. The LNP only claims to take 50mA in the Configuration Interface USB descriptor.
  3. If I power the HD120 hub, but not the LNP the HD120 LEDs don't light.
  4. As soon as I power the LNP all the LEDs light.
  1. I should have made it clear that the limits I was quoting were per port.
  2. I quoted per port as it would be possible for SIV to easily control 8 ports.
  3. Using the LNP VID/PID should only be for a test.
  4. If you could get as far as reporting the firmware IDs then adding the remainder should be easy enough.
  5. Below is the SIV LNP startup trace.
  6. Byte 0 is the RID and the Arduino won't get that.
  7. Byte 1 is the write command code or status return read.
  8. Commands 02 + 06 read the two firmware IDs
  9. Command 03 reads the LNP ID that CL4 set. SIV does not use this.
  10. All the writes are 65/64 bytes in size and the reads are 33/32.
Code:
CID 12    @ 23:38:36.365 seq 02 Open( \\?\hid#vid_1b1c&pid_0c0b#7&88bba26&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030} )
CID 12    @ 23:38:36.365 seq 02 -> 00 02
CID 12      23:38:36.375 seq 02 <- 00 00 00 01 2E
CID 12    @ 23:38:36.375 seq 03 -> 00 06
CID 12      23:38:36.380 seq 03 <- 00 00 00 02 00
CID 12    @ 23:38:36.380 seq 04 -> 00 03
CID 12      23:38:36.395 seq 04 <- 00 00 24 D3 DE
Reply With Quote


  #51  
Old 04-07-2017, 12:29 PM
cretzuadrian cretzuadrian is offline
Registered User
 
Join Date: Apr 2017
Posts: 1
POST ID # = 898436
cretzuadrian Reputation: 10
Default

Preview of my Fans Controlled, more effects on fans and same time work with 2 strips 30cm RGB.

More info, how is made soon.



Here is a video.

Attached Images
File Type: jpg DSCF5823.JPG (1.77 MB, 1188 views)
File Type: jpg DSCF5827.JPG (1.73 MB, 464 views)

Last edited by cretzuadrian; 04-07-2017 at 02:12 PM. Reason: Video
Reply With Quote


  #52  
Old 04-08-2017, 04:24 AM
Charixfox Charixfox is offline
Doer of Things and Stuff
Charixfox's PC Specs
 
Join Date: Oct 2015
Posts: 254
POST ID # = 898531
Charixfox Reputation: 19
Default

Quote:
Originally Posted by cretzuadrian View Post
Preview of my Fans Controlled, more effects on fans and same time work with 2 strips 30cm RGB.

More info, how is made soon.
The info is the important part.

For example, you used a Nano and I used a Micro, which brings up which is better or which can do what. I know the Nano is USB Mini and the Micro is USB Micro, but the Nano is also about 20% less expensive. I do have both. Comparisons of wiring, my code is available to build stuff from, and it looks like you got some things working on your code that is more than what I have on mine so far, but also the random Demo-100. (Which is my prototype test of will it work and the source of my video.)

Code contributions, comparisons, and combinations. Collaboration and consultation and make everything the best it can be. It all works well.

Soooo, details! Code release! Stuff and Things!
Reply With Quote


  #53  
Old 04-09-2017, 03:59 PM
MozaPrime MozaPrime is offline
Registered User
MozaPrime's PC Specs
 
Join Date: Mar 2017
Posts: 17
POST ID # = 898668
MozaPrime Reputation: 18
Default

Last video and code for arduino.

Attached Files
File Type: zip HD120.ZIP (2.2 KB, 374 views)
Reply With Quote


  #54  
Old 04-09-2017, 08:40 PM
Charixfox Charixfox is offline
Doer of Things and Stuff
Charixfox's PC Specs
 
Join Date: Oct 2015
Posts: 254
POST ID # = 898703
Charixfox Reputation: 19
Default

Quote:
Originally Posted by MozaPrime View Post
Last video and code for arduino.
I see you opted for a physical push-button and speed pot solution to the controls. That works.

You may want to consider allowing a brightness of 0 (Leds completely off) as an option in the system as well, just in case of headaches. ;)

In light of the LNP (no pun intended), I decided to make a version locally that would work with both the fans and the strips as separate entities. Rather than trying to string the strips onto the end of the fans or vice versa, I made a separate data pin running to the strips. I'll have to redesign the code to handle both sets of things. Kind of weird, the strips on the front inside sides of the 570x case fit just great, but colored LEDs shining into a black case is semi-meh.
Reply With Quote


  #55  
Old 04-19-2017, 03:55 PM
MozaPrime MozaPrime is offline
Registered User
MozaPrime's PC Specs
 
Join Date: Mar 2017
Posts: 17
POST ID # = 899914
MozaPrime Reputation: 18
Default

cheap and easy solution ;)

Corsair HD120 LED and SP103E RF LED remote.

http://amzn.to/2pgSJ41



Reply With Quote


  #56  
Old 04-19-2017, 06:15 PM
Charixfox Charixfox is offline
Doer of Things and Stuff
Charixfox's PC Specs
 
Join Date: Oct 2015
Posts: 254
POST ID # = 899927
Charixfox Reputation: 19
Default

Hmmm... *Looks and extrapolates*

Pros:
  • Less wiring change required (It's still not Buy, Plug, Play).
  • No code-wrangling required.
  • Tons of variations on similar patterns (Over 300 variations total on about 27 patterns)
  • Costs $10 pretty consistently (whereas the Pro Micro can cost anywhere from $5 in bulk to $8 for one to $20 for one depending on where you get it)
  • RF remote control to push buttons on.

Cons:
  • Still requires rewiring (Not plug and play) and possibly extra parts to get power to it happily inside the case, thus increasing costs.
  • According to reviews, does not save its state or allow saves. Getting to a specific thing requires pushing the button over and over again to cycle through 300+ options.
  • Can never be updated to do different things.
  • Can never be software controlled
  • Cannot easily be made to control Strips separately.
  • Has no concept of per fan control. Just brute force the pattern across everything.
  • Based on reviews, various versions of this may be of questionable quality.
  • Based on official seller answers to questions, the seller has absolutely no clue what they're talking about.

Overall it's definitely an option. Since it should hopefully handle the 5V rail coming back from the strip direction, chances are it would not need an extra part to power it (we hope) making the barrel jack unnecessary. So at that point, rewire the output to the input on the hub and you're set.

I'll stick with my thing and continue to work on my software. By their definition of "modes" my current in-progress code has about 128,100 differentiated fan modes at the moment, can address each fan individually, can address each strip individually, and can save and load its settings on command, plus is software-controlled so has opening for future expansion. ^.^ However it does require more wiring to be done and honestly soldering it is preferred even though it's not absolutely necessary.
Reply With Quote


  #57  
Old 04-21-2017, 07:38 AM
garyd9 garyd9 is offline
Registered User
garyd9's PC Specs
 
Join Date: Apr 2017
Location: Pittsburgh, PA (USA)
Posts: 36
POST ID # = 900100
garyd9 Reputation: 10
Default

Charixfo, I've been watching this thread with interest and I'm wondering if you're yet at the point where you can give instructions to clueless people.

Well, perhaps not "clueless", but at least folks who don't want to solder (or are incapable of soldering anything smaller than their own thumbs), prefer Raspberry Pi to Arduino, and are familiar with Arduino only in the sense that they know something exists by that name.

While many folks wouldn't mind learning as they go, getting over that initial hump can be intimidating (and often expensive.)

Take care
Gary
Reply With Quote


  #58  
Old 04-21-2017, 03:17 PM
Charixfox Charixfox is offline
Doer of Things and Stuff
Charixfox's PC Specs
 
Join Date: Oct 2015
Posts: 254
POST ID # = 900173
Charixfox Reputation: 19
Default

Quote:
Originally Posted by garyd9 View Post
Charixfo, I've been watching this thread with interest and I'm wondering if you're yet at the point where you can give instructions to clueless people.

Well, perhaps not "clueless", but at least folks who don't want to solder (or are incapable of soldering anything smaller than their own thumbs), prefer Raspberry Pi to Arduino, and are familiar with Arduino only in the sense that they know something exists by that name.

While many folks wouldn't mind learning as they go, getting over that initial hump can be intimidating (and often expensive.)
As long a s a preference for Pi doesn't become a need for Pi (You'd have to write your own code), it's relatively easy to make the full end product. You can make it without soldering, but you may need to fiddle with the connections in the future if you do. I was thinking about the heat shrink and I realized that the twist on method may not take well to the heat shrink, but I have no good way of testing at the moment. If you have a normal SD or HD controller that you can sacrifice, the pin-through connectors would make a better, more stable connection.

So let's get an idea for what you have and what you feel you can do.
Parts list:
Mandatory:
- Arduino Pro Micro (See attached Image)
- Micro USB cable - usually Motherboard Header to Micro USB in the case
- Wire

Tools: (You can use other things if you can make them work)
- Angle Cutters (Optional but recommended)
- Wire Stripper
- Diamond-tip (fine tip) needle nose pliers
- Fine phillips head screwdriver if you intend to sacrifice a standard controller

Highly Recommended:
- LED Light hub for the fans (I will not give directions for skipping this unless requested)
- Wire that terminates in female pin connectors. Some options:
---> Individual Jumper Wires
---> Cable from SP or HD Lighting Controller
---> 3-Pin Servo Extension Cable for RC devices
-- Note that without that female connector, you'd probably have to solder it to the board

Optional:
- 1/2 inch Heat Shrink Tubing
- Three pin MALE connector wire if you intend to have LNP Strips as well
- If you intend to have strips also, you -MUST- get another SATA or Molex power connector for the strips. It should be a SATA MALE connector (You can see the metal contacts) and do not use a SATA to PCI-E cable (That only has 12V lines and you need the 5V line)

I got the five pack of Arduinos at:
https://www.amazon.com/dp/B019SXN84E/

There are other options. Important things:
- Must be PRO MICRO, ATMega32U4, 5V. There are 3.3v versions (NO!!!) and Nano versions (Also No)
- I chose this over the OSOYOO version because of some bootloader issues described on the OSOYOO. The cost of Three Kookye is the same as one Sparkfun, just in case of epic failure.

For the cabling, I've used:
https://www.amazon.com/dp/B00MIQRN2C/
These will work for both the fans and the strips, but I worry about the power draw of the strips, so I got a fancy three-pin fan header extension cable (fancy not required, I just got a blue one) and cut off the tab on it for the strips. If you do not have strips, it does not matter.

I've also sacrificed an SP Lighting Controller for the cable. ^.^

Look at picture of Arduino attached.
See:
RAW
GND
3
4 or 5 if you have strips too

Strip end of wires that you will be using to go to the hub. Should be Stripped -> Wire -> FEMALE connector

The following directions are for Fan LEDs only, no strips. Ask if you want Strip directions too.

If you are using the above-linked servo wires:
Black will go toward PORT 6 on the hub.
On the Arduino:
Black -> GND
Red -> 3
White -> RAW

Make sure that stripped wires are very tightly twisted (You don't want any loose wire bits shorting to other connectors)
Stick stripped wire end through hole.
Twist. Tighten-twist with needle nose pliers if possible. Make sure there are no extra bits of wire touching other connectors on the board.
Result:

and


For software, download and install the IDE from Arduino.cc
Download the sketch from https://github.com/Charixfox/HD120-Controller
On the IDE:
Sketch Menu -> Include Library -> Manage Libraries...
Search for FastLED and install it
Load the Sketch downloaded from above

Tools Menu -> Board -> Arduino Leonardo
Tools Menu -> Port -> Look at what ports are currently listed and remember NOT to use them.
Plug the board in to the MicroUSB cable - NO LEDS attached unless the Hub has power connected!

Tools -> Port -> Select the NEW port that is not one listed that you remembered not to use
Click the "->" Upload button or Sketch -> Upload
Wait patiently for things to happen. If you do not see orange at the bottom part of the window, good.

--- After the first Upload, the Port will probably change. You will need to go to Tools -> Port and look for the new port. It will -probably- say "Arduino Leonardo" after the COM# now.

Notes:
The current controller sketch is the INITIAL RELEASE. I am working on some SUBSTANTIALLY better code right now. ^.^

I have taken some videos of the physical build process and may eventually make them into a How To video. Don't hold your breath on this though.

If you are not sure, or want more details, or have any questions, ask! I don't bite.

Teaser of new code Coming Soon™.
Attached Images
File Type: jpg IMG_20170326_231943.jpg (3.81 MB, 381 views)
File Type: png Movies & TV 4_21_2017 12_01_12 PM.png (1.55 MB, 4139 views)
File Type: png Movies & TV 4_21_2017 12_05_06 PM.png (1.26 MB, 4824 views)
Reply With Quote


  #59  
Old 04-21-2017, 03:51 PM
garyd9 garyd9 is offline
Registered User
garyd9's PC Specs
 
Join Date: Apr 2017
Location: Pittsburgh, PA (USA)
Posts: 36
POST ID # = 900175
garyd9 Reputation: 10
Default

Sounds interesting... I'll have to place an amazon order sometime this weekend. I just ordered a 3-pack of HD120 RGB fans (with the hub/controller) that I'm going to put into my 460X RGB case (to replace the SP120 fans.) Can I use that hub/controller in conjunction with your work?

Oh, and I know how to solder.. and can even do it... but my hands tend to shake, which makes any precision soldering impossible. (For example, if I were to try and solder wires to the pictured board, I'd likely destroy any SMT parts on the board near the solder pad in the process.)

Being that I'm completely unfamiliar with Arduino, can you suggest a "getting started with Arduino" type guide that would give me the rough overview of whatever "sketch" is, etc?

(I'm a professional software developer with extensive h/w experience, so I can skip the extensive guide that starts with "this is a circuit", "a resistor is something that will create resistance (ohms) which will in turn lower amperage and raise voltage" type thing. I just never got around to Arduino, and it sounds like "sketch" might be yet another language. Why can't everyone just use assembly or C?)

Does your project allow for only software control, or are there also provisions for control via momentary switches? Similar to the 3 lighting control switches on the corsair crystal cases...

Thank you
Gary
Reply With Quote


  #60  
Old 04-21-2017, 05:48 PM
Charixfox Charixfox is offline
Doer of Things and Stuff
Charixfox's PC Specs
 
Join Date: Oct 2015
Posts: 254
POST ID # = 900182
Charixfox Reputation: 19
Default

Quote:
Originally Posted by garyd9 View Post
Sounds interesting... I'll have to place an amazon order sometime this weekend. I just ordered a 3-pack of HD120 RGB fans (with the hub/controller) that I'm going to put into my 460X RGB case (to replace the SP120 fans.) Can I use that hub/controller in conjunction with your work?
Absolutely. Be aware that the hub does not get hurt, but the controller gets destroyed. I generally use the SP controller that comes with the case (I have a 570x) instead of the HD one unless you plan to re-use the SP fans. If you just get the servo cables mentioned in the thing, you don't need to sacrifice the controller. If you get 1/2" shrink tubing, you also don't need to sacrifice the controller (That is what I currently have installed. Shrink tube version. ^.^

Quote:
Originally Posted by garyd9 View Post
Oh, and I know how to solder.. and can even do it... but my hands tend to shake, which makes any precision soldering impossible. (For example, if I were to try and solder wires to the pictured board, I'd likely destroy any SMT parts on the board near the solder pad in the process.)
"Shaky hands" is a very subjective thing, so I can't speak for anything in particular. If you decide to solder, I'd recommend that you put it front to back, then solder on the back side of the board. Nothing to destroy. I can't attach the example fvideo here though. Too big and I'm not keen on posting segments to YouTube.

Quote:
Originally Posted by garyd9 View Post
Being that I'm completely unfamiliar with Arduino, can you suggest a "getting started with Arduino" type guide that would give me the rough overview of whatever "sketch" is, etc?

(I'm a professional software developer with extensive h/w experience, so I can skip the extensive guide that starts with "this is a circuit", "a resistor is something that will create resistance (ohms) which will in turn lower amperage and raise voltage" type thing. I just never got around to Arduino, and it sounds like "sketch" might be yet another language. Why can't everyone just use assembly or C?)
I could suggest, which would involve "Go to http://arduino.cc/", but you're already ahead of the curve. A "sketch" is Arduino's fancy "Let's not scare non-programmers with Main and Loops and calling it 'Source Code'" word for "C++ Code for a specific platform and an IDE that knows how to compile for the particular chips and mangle the code a bit". So for the most part:

It's C, C++, and ASM.

The main() function is hidden and handled in the background by the IDE. Instead you write a setup() function that runs initial one-time setup code and then a loop() function that loops indefinitely in main(). The IDE and such basically makes void main() { setup(); while (1) ( loop(); } } ... There's other stuff, but yeah. :)

Certain programming rules don't apply because of the way the processor works. For example:
Code:
uint8_t i = 255;
i++; // i becomes zero and does not overflow the value into the next byte.
uint8_t x = i / 0; // x == 0. There is no Divide by zero error.
int8_t y = i / 0; // x == -1. There is no divide by zero error.
You have about 28.5K worth of compiled code space to work with.
If the code exits, crashes, etc, it just starts over again. (I've crashed it. ^.^; )
ASM is for the 8-bit AVR instruction set. Good Luck. <.<

Quote:
Originally Posted by garyd9 View Post
Does your project allow for only software control, or are there also provisions for control via momentary switches? Similar to the 3 lighting control switches on the corsair crystal cases...
The hardware and code as described are software only. Due to the number of settings in the various functions, it would be an interesting challenge to make a non-insane three-button control system that didn't require three tons of button pushes. <.< However if you decided to use buttons, you'd need to add wires to any other number pins on the board, and then pull them to ground to trigger. The arduino.cc site contains directions on how to read switches.

For software control, you can use the IDE, but I've also successfully gotten it to work with command line commands. XD
Reply With Quote


Reply

Tags
hd120 rgb

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 05:55 AM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2019, vBulletin Solutions, Inc.