NurdNode

From NURDspace
NurdNode
Pinout prodnode.png
Participants
Skills Electronics, Programming
Status Planning
Niche Electronics
Purpose Fun
Tool No
Location
Cost
Tool category

NurdNode

Pinout prodnode.png {{#if:No | [[Tool Owner::{{{ProjectParticipants}}} | }} {{#if:No | [[Tool Cost:: | }}

The goal is to build wireless nodes that will control a bunch of LED's for cool lighting effects. The ultimate cool is to build enough, so we can put them in the connector pieces of our geodesic dome.

More current info on the official website: http://nodes.nurdspace.nl dead with no backups :(


Hardware design considerations

1 node will draw around 1A in current. For 31 nodes, this is obvisouly 31A in current at 5V, making the total power consumption 155W at full load. The current proposition is to bundle the power and signal lines into one cable, and run them in an upward spiraling fashion across each node, connecting them serially. The benefit of this setup is that it allows for easy addressing and it's simple. However, running 31A through a single power line requires a big, heavy and expensive cable.

The length of the power lines is determined at 60m. According to this site [1], at 3% acceptable loss, and using 5V at 31A the cable crossection is 16m2. A ballpark price estimate using Eijlander as supplier is roughly 330 euro.

An alternative would be to devide the power distribution into several groups. The upside is that we can get away with thinner cables, but we may require longer cables.

Yet another alternative is to raise the voltage of the grid to 12+V. This means we may use thinner power lines and still use the serial wiring setup. However, each node will have to be equipped with a switching power source to keep power dissipation at its lowest. This circuit will come at an extra cost, and having 31 nodes, this could escalate quickly.

(Why not elevate voltage a lot more, say 48V? Would reduce the current by an order of magnitude without adding more parts. Talloak (talk) 00:44, 4 May 2015 (CEST) )


Pinout of prototype

Pinout of final version

Parts selection

IRL540 for power led stages?

TODO

Hardware

  • Calulate total length of cable required to connect all nodes
  • Calculate price of power lines
  • Design power circuit
  • Design LED circuit (for optional leds)
  • Design power stage for 3W led
  • Select appropriate through-hole parts for breadboarding
  • Order thru-hole parts
  • Build thingamagic on breadboard
  • Select appropriate SMD parts for the final device.
    • Select decoupling caps
    • Select connectors
    • Select N-channel MOSFET
  • Design board
  • Assemble BOM
  • Determine pinout of PSU
  • Create pinout of prototype node
  • Build first prototype
  • Test first prototype
  • Test out smaller FET as replacement for the fat bastards
  • Fix design mistakes
  • Finalise design
  • Update BOM
  • Build device that will zero in the Servo's
  • Build device that tests the channels of the LED separately.
  • Assemble 35 Pro mini's
  • Label 35 pcb's with numbers 1-100 AFTER they have been in the oven ;)
  • Program 35 Pro mini's with firmware.
  • Calibrate 35 PSU's
  • Cut 100 heatsinks
  • Drill 100 heatsinks
  • Solder 35 LEDs to jumper wire in the following order +RGB
  • Test channels of 35 LEDs
  • Stick 35 LEDs to heatsinks
  • Glue 35 heatsink + LED combination to servo arm.
  • Glue 35 lenses to LEDs
  • Pick and place 100 nodes
  • Solder through hole parts to 35 nodes
  • Zero-in servo's of 35 nodes
  • Screw servoarm + heatsink + led to servo.
  • Set address of 31 nodes
  • Test address of 31 nodes by hooking it up to the DMX bus and try to talk to it using its address
  • Stick Pro-mini on 35 nodes
  • Solder calibrated PSU on 35 nodes
  • Create building instructions
  • Test 65 board for shorts and open connections
  • Assemble 65 kits
  • Provide documentation for kits

Cabling

  • Determine guage of power cables
  • Determine which signal wires to use
  • Get wires at ijlander, or order
  • Build cable - power section
  • Build cable - signal section
Total cable length based on 10M dome = 31 - 1 * 2m = 60m
1mm2 stereo cable will be used for the supply of power
Fancy sensor cable is used for transport of signal

Ordering

  • 100 pcs 3W Led
  • 100 pcs PSU
  • 100 Pro mini's
  • 200 Servos
  • 100 Lenses
  • 110 Jumper cables for soldering to LED
  • 3x solder paste
  • Prototype Stencil
  • Prototype PCB's
  • Enough material for prototypes
  • Metal framed stencil for final design
  • Final PCB's
  • More molex connectors
  • Enough materials for final nodes
  • Adhesive for LEDs
  • Extra transmitter chips (after validation)

Software

  • Create some spiffy code to make the blinkenlichten go blink blink.
  • Design standalone mode
  • Change firmware so pin 1 is used to toggle DMX and standalone mode
  • Review firmware
  • Fix issues
  • Mark firmware as final
  • Create a C&C lib that organises the nodes and takes care of the comms between the nodes and the higher level software. I'm thinking REST API for the higher level stuff and UDP multicast for the lower end. Suggestions welcome.
  • Find a tool (better yet DIY) a tool that allows you to define an animation in 3D and project it on the geodome.

Testing

Individual nodes

  • #19's power supply just stopped working.
    • #19 - power is shorted to ground somewhere on the board. Might be on the PSU.
    • Additional investigation required. Failure is generally caused by a high current, which would indicate a short on the board.
    • T2 shorted - fixed
  • #16 looks to have a blown power converter.
    • Possible short between GND and PWR
  • #5's Green channel looks funny from that tesy
    • #5 - Either R4 or R8 is a problem
    • FIXED
  • #7's green is shorted
    • FIXED
    • T4 shorted
  • #8 has a shorted green
    • #8 - T5 is shorted
  • #15 has an addressing problem with the middle pin.
    • #15 is missing R10
    • FIXED
  • #10 has the same addressng problem
    • #10: DIP #4 is connected to 5V
    • There is a short under the 3.9k resistor on dip 4 on #10
    • FIXED
  • #28 has no address at all - all 0's.
    • #28 - R23 short, R20, R10 short.
    • FIXED
  • #27's lowest address pin is not working.
    • #27 R24 is not connected R24 has been connected
    • FIXED
  • #17's green is shorted and red is disconnected.
    • #17 - T1 and T5 shorted
  • #14's address is all 0's.
    • Possible short under R20
    • Possible disconnect

11 / 35 failures

Cable

  • Build cable tester (res + led) * 2 on molex connector to test power line and signal line
  • Unreel entire cable
  • On the controller end, check for shorts between the 4 wires. There should be none. If there are, good luck finding, as this may take a while.
  • Apply 5V across PWR and ground.
  • Place tester on each molex, checking if the PWR led lights up.
  • Disconnect PWR and ground from voltage source.
  • Apply 5V across SIG A and SIG B. Keep in mind the orientation of the tester.
  • Place tester on each molex, checking if the SIG led lights up.
  • Disconnect SIG A and SIG B from voltage source.
  • If a led does not light up; this could be
    • Failing connection
    • Miswiring
    • Check for miswiring first to rule out the easiest to diagnose, then proceed to determine the cause of the failing conncection.

If both LEDs have lit up on all sockets, the cable should be fine.

Production boards

  • Find a production board with soldering flaw
  • Reflow the board full cycle (up to 250 deg)
  • Check if the soldering flaw has been resolved.
  • Visually inspect the board for crispyness
  • Assemble board to take the place of one of the fried ones meant for the dome.

If test sufficient:

  • Reflow all remaining boards full cycle
  • Test all board for shorts between +5 and GND and visually inspect.
  • If reflowed and tested, board may be sold
  • If issues remain, discard board.

If test insufficent:

  • Deliberate

Website

  • setup host under nodes.nurdspace.nl
  • Make page with general information + assembly instructions
  • Include link to repos for firmware
  • Include link to repos for hardware design
  • Include link to repos for STL's

Production unit packing list

Accesory bag

  • 1 10-way DIP switch
  • 8 header pins / PSU
  • 1 3300uF cap
  • 3 3-way male header pins
  • 1 4-way male header pins
  • 2 12 pin female headers
  • 1 MOLEX connector socket
  • 1 MOLEX plug
  • 4 crimp connectors for molex
  • 1 LED
  • 4 M3x15 screws
  • 2 mini servo head screws
  • Sticky LED coolant patch

Main bag

  • SMD'd board
  • 1 pro-mini kit
  • 1 Assembled PSU or 1 PSU kit
  • 1 LED wire
  • Printed body
  • Servo body + 2 servos
  • Ziptie
  • Servo foot
  • Lens
  • Heat sink head
  • Information to get further information
  • Disclaimer stating the experimental nature of the device

Pricing

  • 30 E including tax for a single unit
  • 150 E (inc) for a pack of 5 units + free USB 2 DMX transmitter

unlikely that they'll ever be for sale again

Return policy

  • Board broken? Money back or replacement. Depending on the wish of the customer.

company that supported this stopped existing, there's some spare parts @ nurdspace, you're welcome to come exchange broken stuff

Construction Instructions

You will need:

  • A soldering iron + solder
  • A small crosshead scredriver
  • A small flathead screwdriver
  • A pair of pliers (for crimping)
  • A multimeter
  • An FTDI programmer cable
  • (possibly) a pen to mark cable
  • (possibly) a breadboard to hold components for soldering

Preparation

  • Ensure all parts present

You should have received:

* 1x 10-way DIP switch
* 8x header pins for the regulator
* 1x 3300uF cap
* 3x 3-way male header pins
* 1x 4-way male header pins 
* 2x 12 pin female headers
* 1x MOLEX connector socket
* 1x MOLEX plug
* 4x MOLEX crimp connectors
* 1x LED
* 4x M3 flathead screws
* 2x tiny crosshead screws
* 1x Sticky LED coolant patch
* 1x main board
* 1x pro-mini kit
* 1x Assembled PSU or 1 PSU kit 
* 1x LED wire
* 1x Printed body
* 1x Servo body + 2 servos
* 1x Ziptie
* 1x Servo foot
* 1x Lens
* 1x Heat sink head
  • Tune the PSU to 5V

Firstly, solder the headers onto the PSU. The two header pins are crosswired to allow for higher current draw, so don't worry about any bridging. The entire NurdNode runs on 5V, but can be driven from up to 28V, and to do this we'll need to configure the regulator. Find a method of supplying your provided power to the regulator board - we used a breadboard to do this - and measure the output with your multimeter. You'll need to adjust the variable resistor on the board so that the output voltage is between 4.9 and 5.1V.

  • Flash the Arduino

Go to our firmware page (where?) and download the latest firmware for the node. Use an FTDI cable to flash the arduino with this data.

Soldering

In general, parts should be soldered from lowest to highest so that they can lie flat and straight whilst you solder on the backs.

  • Solder the dip switch in place using the correct orientation

The DIP switch is slightly different than the holes on the board, so this can be a little confusing. Take a look at the photos to be sure, but the ten-connected side should go DOWN (aka furthest from an edge) on the board.

  • Solder the diode
  • Solder the regulator onto the board in the right orientation

As you can see in the picture, there's an arrow printed on the bottom of the regulator. Make sure you assemble the regulator in the right orientation!

  • Solder the male header pins

I like to solder the male headers first because you can embed them in something else like a breadboard to keep them straight.

  • Solder the female header pins

These need to be really straight for the Arduino - connect them across with a male header (like in the arduino pack, before or after you've soldered it to the arduino!) so they line up properly.

  • Solder the Molex connector

There's a little bump on the connector to help you orient it correctly. It's on the silkscreen too, make sure to line them up. The clip point should end up hanging at the edge of the board.

  • Solder the capacitor

Soldering 2

Soldering the LED requires a little forethought. On the node the pins are in an RGBA arrangement (the solder mask didn't come out properly on the boards) with the common anode to the right on the board.

  • Trim the LED wires down to a sensible length

Remember RGBA layout, so you'll need to trim the middle two wires down shorter than the others.

  • Solder wires to LED

Use enough solder to hold the wires down fully - but not too much, as it'll raise the lens. Try to keep the wires away from the LED, as the lens cap will need to go directly on top of this.

Assembling

  • Fit the Arduino onto the board

The arduino should fit snugly into the two female headers.

  • Attach sticky pad to LED

The hexagonal LED has a sticky pad to glue it to the heatsink head. This pad is conductive as well as really sticky, so peel off one side first so you can stick it to the back of the LED. Push it down nicely so that it sticks well.

  • Stick LED to heatsink head

Then attach it to the heatsink head. You'll probably want to position it point-endwards, so the cable wraps around the rest of the arm.

  • Ziptie on LED wires to heatsink

Use a ziptie to hold the wire around the 90 degree bend and clip it off.

  • Attach lens

The lens should fit directly onto the LED snugly. It might need a little glue to hold it on solidly, especially if you have a lot of wire underneath the top.

  • Screw headsink head to servo

Use one of the tiny crosshead screws to position the head on the top servo. This should be screwed on pointing straight up (All the servos have been pre-centred).

  • Screw head foot to servo

Next screw the servo body onto its foot with the other crosshead screw. The four pommels should touch nicely on the supporting disk - these are just for stability, so if they come off, don't worry too much about it.

  • Install board in body with the Molex over the cutout

You'll want to be plugging in to the molex connector, so make sure the board is positioned over the cutout slot in the base. It goes into the four legs with the face downwards.

  • Install servo head on body with the LED wire closest to the 4-pin connector

Directly over the board the servo assembly needs to go. To do this correctly, make sure the side with the cable is right over the four-pin header on the board.

  • Plug in servos + LED

Plug in the LED and servo headers. Make sure the Anode is on the right hand side the header pins (which is on the left when you're assembling this upside down and looking in from the side.) The servo headers are arranged with both signal lines (the yellow ones) on the inside of the two three-length headers for them, so one will be upside down compared to the other. Also - the pan servo (the bottom one) needs to go to the PAN connection, and tilt (on the head) to TILT.

  • Assemble connector

The pins on the male version (when looking from the back, with the clip on top) are:

Data- Data+

GND PWR

You have four crimp connectors available for making up these connections.

  • Have fun!

DMX Transmitter module

For the 8P8C connector on the DMX transmitter, the pinout is:

Pin 1 (white-orange) = Data+

Pin 2 (orange) = Data-

Pin 8 (brown) = GND

Links