Stalled Iris 16 - RGB Vandal Button

Discussion in 'Custom Cases & Projects' started by iFreilicht, Oct 8, 2016.

  1. iFreilicht

    iFreilicht FlexATX Authority
    Thread Starter

    Jup. All you'd need is to drill a 16mm hole where you want the switch to go. There would be two cables included to connect it to the PWR_BTN, HDD_LED and internal USB2 headers of the mainboard. As opposed to most vandal switches you can currently get, there'd be no need to solder.

    You could also use two of them, one as a power and one as a reset switch, if you were so inclined.
     
  2. K888D

    K888D SFF Guru
    Bronze Supporter Lazer3D

    Do you have an idea of a ball park price your looking at for these yet?
     
  3. ricochet

    ricochet SFF AFFLICTED

    I like the double switch idea! These will be Linux friendly I hope?
     
  4. iFreilicht

    iFreilicht FlexATX Authority
    Thread Starter

    Uhh, good question, I should get on that. Not yet.

    Good point!

    I am contemplating going open source with the whole thing, but I'm not sure about that yet. Firmware will be open source for sure as that has huge advantages both for me and the consumer, same goes for software, but hardware is a more delicate topic.

    The two options for firmware right now are either just using a stock Microchip bootloader or making an Arduino-compatible one. In either case, you could reprogram the switch to your hearts content, no matter what platform you're on. If I decide to go with a normal Microchip bootloader (which is the easier solution), you'll have to download MPLAB X to program it.

    What I'll do for client software, I don't know yet. Of course I'd like to just "do it right" the first time with a GUI and a command line tool and an open protocol that goes on to be the standard for every single RGB product in existence, but I think that is too much work for now.
    What I will do is a command line tool that allows to send simple commands to the switch so you can at the very least swap between different patterns/animations. This will then allow you to play an animation when you receive an email or stuff, but most of that will have to be done by the user. Ideally I'd just make the command line tool in python so it just runs on every system.
     
  5. EdZ

    EdZ Virtual Realist
    Gold Supporter

    One option could be to drop the 'on-line programming' ability for the 12mm switch: use just a 4-pin connector rather than 8-pin or two 4-pins, and swap between a USB 'programming cable' and a 4-pin motherboard connector cable. The downside is insertion life of such a small connector, and user education on how to switch between the 'modes' without damage.
     
  6. iFreilicht

    iFreilicht FlexATX Authority
    Thread Starter

    Hm that's an interesting idea. I think a good option for the connector would be a regular micro-USB, as that is specified for loads of connection cycles.

    Dropping the continuous USB connection would also prevent features like starting an animation when a notification pops up, and the user would have to open the case every-time they wanted to change anything about the switch.

    Maybe having the switch connect to a dongle would be an option, but that would of course make the 12mm switch much more expensive than the 16mm counterpart. And what could also be done is just make the switch a good bit longer to fit both connections on the side, but I'm not sure whether that would actually be a better option than just having both connections on the end.
     
  7. EdZ

    EdZ Virtual Realist
    Gold Supporter

    Would a Type-C connector be small enough? Abusing it as a non-compliant connector would provide plenty of pins to act as both a USB 2.0 link (helpfully reversible) and 4 pins fo the LEDs (enough pins to also be reversible).
     
    Phuncz and iFreilicht like this.
  8. iFreilicht

    iFreilicht FlexATX Authority
    Thread Starter

    While that is a really good idea, Type-C is actually too large. The smallest Type-C connector I could find was 9.2mm x 9.1mm. This rectangle already doesn't fit through a 12mm hole, let alone into the actual switch that would have a housing smaller than that. Damn, that was a really exciting thought for a moment.
     
    Phuncz likes this.
  9. EdZ

    EdZ Virtual Realist
    Gold Supporter

    How about Micro-HDMI? 19 contacts to play with, and I've found SMT sockets as small as 6.5mm x 7.5mm, which should fit through a 12mm diameter hole (limit ~10mm diameter).
     
    iFreilicht likes this.
  10. iFreilicht

    iFreilicht FlexATX Authority
    Thread Starter

    Holy cow, that's about as large as a regular micro USB. So yeah, that would absolutely work, granted the pitch isn't too low for my PCB assembler/manufacturer.

    The maximum current for each pin is 50mA, which is exactly the maximum sink/source current of the I/O ports of my mC. I guess I'd have to use multiple pins for ground and power, but apart from that, this seems like a pretty good solution.

    Now the question is whether I can find a manufacturer for custom cable harnesses that is willing to do such a delicate job. Now I'm even contemplating using a micro HDMI connector for the 16mm switch, but I'm not so sure about that. On one hand, it will give the user more freedom where to put the button because there's only one side where cables come out, and they could even use LP ribbon cables in very cramped situations, but on the other hand this makes the whole thing less easy to customise.

    Maybe I could just put a bog-standard micro HDMI cable between the button and a dongle that has the necessary outputs (i.e. USB pin header, LED pin header, Button pin header). That way, you could get stock cables to position the dongle wherever it fits, and you can also get stock cables for all the connections between the mainboard and the dongle. Looking at the cables you can get, the dongle would need full-size HDMI, but that wouldn't be a huge problem. And those who want it really clean could get one of those cables, splice it open and solder/crimp the necessary connectors onto it. That way everyone is happy. Those who want to mod, and those who don't.

    Thanks for the awesome suggestion!
     
  11. Phuncz

    Phuncz Lord of the Boards
    Moderator SFF Purist Gold Supporter

    I would guess micro HDMI to micro HDMI isn't an easy to find cable, since most (>99%) display devices have regular HDMI. So you'd want to use the regular HDMI on the other end (dongle), if you weren't already thinking about that.

    amazon.de: € 5,29 https://www.amazon.de/AmazonBasics-...-Micro-HDMI-HDMI-HDMI-Standard/dp/B014I8TVLI/
    amazon.co.uk: £ 3,99 https://www.amazon.co.uk/AmazonBasics-High-Speed-Micro-HDMI-HDMI-Cable/dp/B014I8TVLI
    amazon.com: $ 5,49 https://www.amazon.com/dp/B014I8TVLI/?tag=theminutiae-20
     
  12. iFreilicht

    iFreilicht FlexATX Authority
    Thread Starter

    I was:

    Those cables are quite cheap already. I'm pretty confident that one of these plus a dongle is already cheaper than a custom harness, let alone buying these wholesale from a reputable brand in China.
    I'd want them to be a bit shorter, though. 20cm or less would be good.
     
  13. Phuncz

    Phuncz Lord of the Boards
    Moderator SFF Purist Gold Supporter

    Oops, I read over that part. I linked the AmazonBasics brand of cables because I personally have a good experience with them, we use about a dozen various types at work, all flawlessly.

    For internal use, 90cm might be a bit much yes. Although I would be very cautious with getting batches of cables from lesser known qualities, because since you're going to repurpose the pins for other signals. It might be very dangerous if there's a short. I don't know if this is also a destructive problem for regular HDMI use though.
     
  14. EdZ

    EdZ Virtual Realist
    Gold Supporter

    You could use a male micro-HDMI to female HDMI cable adapter, those are generally available in very short lengths. Combine that with a panel-mount male HDMI plug for the breakout board.
     
    Phuncz likes this.
  15. iFreilicht

    iFreilicht FlexATX Authority
    Thread Starter

    While that is a great idea, I'm having issues finding an HDMI plug that could be soldered onto a board. It seems like they just don't exist.
     
  16. ricochet

    ricochet SFF AFFLICTED

    Could you not leave the casing on then just use an electronics-grade hot glue to affix to the board instead?
     
  17. Phuncz

    Phuncz Lord of the Boards
    Moderator SFF Purist Gold Supporter

    If wires and connectors are the problem, eliminate them. Bluetooth or NFC.
     
    hardcore_gamer likes this.
  18. iFreilicht

    iFreilicht FlexATX Authority
    Thread Starter

    Huh? I think you need to elaborate, I don't understand what you're getting at.

    Funny you should say that, I already thought about doing this, but the button needs power and a physical connection to the mainboards PWR_BTN and HDD_LED headers. So Bluetooth could only replace the two data wires of USB, and the circuitry required for it would be much bigger than a micro USB or micro HDMI connector.
     
  19. Phuncz

    Phuncz Lord of the Boards
    Moderator SFF Purist Gold Supporter

    It was mainly me dreaming of having a connection to my phone. Remotely turning it off and on, seeing it's power status from the other room, LAN party theft alarm, etc. If it's not obvious, I tend to digress...
     
  20. EdZ

    EdZ Virtual Realist
    Gold Supporter

    They do seem rare as hen's teeth, but they're coming from somewhere for use in the Fire TV stick, OG Chromecast, Intel Compute stick, etc. Alibaba has a handful of Micro HDMI - Micro HDMI cables listed, so that might be an option to cut down on component count by using a micro-HDMI socket on either end.