element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
element14 presents
  • Challenges & Projects
  • More
element14 presents
e14 presents blogs Introducing Solas and the journey of creating my own RGB LED Board
  • Blog
  • Forum
  • Documents
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join element14 presents to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: lorrainbow
  • Date Created: 1 Mar 2022 11:47 PM Date Created
  • Views 6924 views
  • Likes 14 likes
  • Comments 22 comments
  • makecode
  • pcb
  • 3D Printing
  • led
  • rgb
  • rp2040
  • blocks
  • laser cutting
Related
Recommended

Introducing Solas and the journey of creating my own RGB LED Board

lorrainbow
lorrainbow
1 Mar 2022

Initial Ideas

Over 3 years ago I really wanted a single RGB LED controlled by a microcontroller. I didn't want to add LEDs to a microcontroller, solder them, chain them, wire them up! I just wanted an RGB LED connected a microcontroller. And, as far as I could tell, none existed. Or at least nothing that simple and easy to code. I thought this would be a great project to replace my huge RGB LED cube that I had made the year before in 2018. 

Learn more about Cubert here! 

Cubert

Cubert

Cubert was a 1 metre cube of 8x8x8 RGB LEDs connected together through copper rods using custom PCBs. It was controlled by 1 micro:bit. It was a fantastic and much loved project. I coded it so people could play their favourite old school games like Snake! Or Pacman. But in 3d! And in lights on a metre cubed cube :D What I loved about Cubert, besides how it looked, was how interactive it was. I don't like to create technical art pieces that you just look at. I want you to poke it! And play with it. And shake it. Cubert was interactive, but it was one player. And with one microcontroller it was difficult to have multiple people interact with it. I did have some games where two people had a micro:bit each and using the radio and the accelerometer they would race to fill the cube with their colour by shaking their micro:bit! But what I really wanted was a project where everyone could code their device and add it to a bigger structure, working together to create something. That's where I came up with the idea for Solas. A small programmable RGB LED that could be chained to other RGB LEDs in something like a tree structure. Each light could be a leaf. 

Fun Fact: Solas means light in Irish

Solas Version 1: 2020

A couple of years I did have a go at creating Solas. I'm no PCB designer so my husband created this design for me. The PCB has a chip and electronics to manage the USB and the rechargeable battery on the back. The idea was you added hats to the PCB with RGB LEDs attached. We ordered 5 PCBs for testing and used 3d printing to imagine the case, the lids, etc. 

imageimage

It was a nice start! But this was 2020 and just as we got the PCBs back we entered lockdown in the UK and I was suddenly home schooling 2 kids! So Solas went on the back burner. 

Solas Version 2: 2022

This year is the year of Solas! We started planning and designing it again. The initial design wasn't ideal for connecting the boards together. And how we connected the hat to the board also wasn't clear. This new version would follow the original idea of one board with the chip and the LED together. I've given up on the battery, for now! And am focusing on the connection between the boards. Working with Microsoft Research as part of my day job with Lancaster University gave me insight into a new modular electronics system called Jacdac. It allows the easy connection of modules to microcontrollers and to other microcontrollers. It can also be easily connected to a web browser for coding. One vital aspect of Solas for me is how easy it is to code. I don't want to have to code it in C or even python. I want young children to drag and drop blocks onto their Solas and have it up and running in minutes. Similar to the BBC micro:bit (that I'm really fond of!). 

It's 1st March 2022 and we've designed Solas V1 and sent it off to the PCB manufacturer. We're using the RP2040 chip with the jacdac modular system. Here are the PCB pictures. Each Solas has 3 Jacdac connectors and a micro USB connector on the 4th side for powering on its own. A Solas can be powered through Jacdac but the first Solas in the chain needs to be powered over USB. The LED is on the top and the RP2040 is on the bottom.  The 2 gaps on the side of the top photo are for buttons: boot and reset. We're having the boards assembled as well as created, which is going to take a while especially given the low stock of components lately. 

imageimage

Solas Petal

We ordered 5 of the Solas version 2 board in February 2022. It looks like it won't arrive until April. After some quick testing we'd plan to order a large quantity of the board to build the tree of light, it depends on costs and funding.. maybe 100 or 200. I'd love to make 500 and give them away at festivals! I want to take Solas and the tree to family events. The first possible event is EMF camp which is the 2nd June, which is very close to April given how long the first 5 PCBs took to arrive... So we started to panic a bit about that! We decided to make a single RGB LED petal that would attach to Solas over Jacdac and be codeable, chainable. It's Solas without the PCB. We made the petal in the same shape as Solas, but smaller and without assembly and ordered 200 of them in February. We're going to have to assemble them ourselves, soldering on the RGB LED, resistors, etc. Fingers crossed we can make light (get it?) work of that. We did solder 512 surface mount RGB LEDs onto PCBs for Cubert! Time to brush up on our soldering skills. 

Hopefully the 5 prototype PCBs we've ordered will work and we can use them alongside some other Jacdac microcontrollers to light up the tree with the 200 petals for EMF camp. While waiting on PCBs to arrive, we're working on the tree itself.

Laurelin: the tree of light

Solas is a leaf/light that attaches to branches on a tree. We decided to call the tree Laurelin (LOTR reference). I don't want the tree to be too tall that I would need a ladder to attach lights to it, so we're thinking 2 metres high. It needs to be collapsible and fit inside a car boot. Here are some of the original design files for the branches:

image

There are multiple layers of these of different sizes. 4 layers in total with the top 2 layers being 3mm thick and in frosted acrylic. The bottom 2 layers are thicker in wood with the trunk being maybe 9 or 12mm thick and 3 long pieces that can be screwed together. This is beyond the size of my laser cutter so we're relying on friends to help us with cutting the branches. 

Here's the latest prototype and one quarter scale:

image

I like it! We need to add holes and figure out how each Solas/petal will connect to the branches. We also need to thread the wires through the branches.. possibly spray painting them so they look like roots! And maybe etch the wooden branches with decorations. 

Coming soon to Element14 presents: a video of Solas version 1 in action, RGB LEDs, Jacdac, how we got version 2 to work with Jacdac and Microsoft Makecode and designing the leaf that wraps around Solas to make it glow:

imageimage

I'll keep you updated on Solas and Laurelin's progress!

Comment below and questions or suggestions you have for Solas or Laurelin. 

Maybe one day you'll see it and me at your local electronics' family festival! 

  • Sign in to reply

Top Comments

  • beacon_dave
    beacon_dave over 3 years ago in reply to lorrainbow +1
    Hi Lorraine, thanks for the clarification. There appears to be an open source padauk chip programmer here which may work out a bit cheaper: https://blog.adafruit.com/2020/09/03/programming-padauk-microcontrollers…
  • robogary
    robogary over 3 years ago

    keep up the creative momentum, looks great

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • beacon_dave
    beacon_dave over 3 years ago in reply to beacon_dave

    Looks like there has been another development on that Instructables design.

    https://www.instructables.com/Ceiling-Branch-Lamp-From-PVC-Pipe-3D-Prints/

    Not quite as clip together as the first one but still modular and the end result looks good. It could make decorating slightly tricky though.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • beacon_dave
    beacon_dave over 3 years ago in reply to lorrainbow

    If you are 'growing the tree' during the session, then attaching the Solais and wiring them may get interesting as time goes on. If the first person picks up the first branch and adds it to the empty trunk base then sticks their Solas onto the end of it and plugs it into the USB power supply, then that is ok. The next person then adds their Solas to the same branch and connects via Jacdac to the first Solas which is also ok. The third person adds their Solas to the same branch and connects it via Jacdac to either the first or the second Solas and that too is ok. That 3-way branch is now 'full up' though. At some point you will need to add another branch to that first branch (i.e. layer 2 branch) in order to grow the tree and add more Solais. So, presumably you will need to remove an existing Solas, add the layer 2 branch in its place, then replace the Solas onto the new layer 2 branch, rewire it to an existing Solas on layer 1 and then add the new Solas to the layer 2 branch and wire that via Jacdac to the Solas that has just been moved to layer 2. A bit of jiggling around and cable management may be required.

    Some Solais are going to start moving around the tree a bit as it goes, which is not a problem in itself unless you are giving them away, in which case the game of 'hunt my Solas' begins. Perhaps need to add a white rectangle to the silkscreen PCB layer so as people can write their name on them to help find them when it is home time ?

    What format to the Jacdac cables come in ? Are these premade to certain lengths or is there tooling available to make up your own custom cables ?

    One plus to growing the tree like that is you can make a rather neat time-lapse of it. One downside is that there isn't anything really on show initially to attract people from a distance. That was why I was thinking about synchronisation of the brains so as to be able to have fancy visual affects and then "hey kids, we are going to build one of _these_..."

    If it's mostly petals, then a simple solution may be to start with a full tree and work backwards from the last branches, replacing a petal with a programmed Solas. That way the petals are still getting control information from an upstream pre-programmed brain allowing for effects reliant on positional information (e.g. chasing/scanning along the branches). If you aren't using any positional effects, then you just need to have one 'brain' sitting somewhere on the branch which knows the addresses of all the petals that require to be controlled. If it gets removed and replaced with an independently driven Solas then it isn't an issue.

    If all you have is the 5 initial Solais, then perhaps drive the 8 chains of petals off 8 micro:bits instead and then leave the 5 Solais free for the workshop sessions. Once someone successfully programs the Solas then copy the code onto the micro:bit to replace a petal. Just need to watch out for any blocking code though.

    I notice that the Solas PCB doesn't include any mounting holes. Was that done on purpose ? Was thinking that you could laser cut a 'leaf' with 3 nylon standoffs that sloted into the end of the branch and then allow a Solas to be easily pushed onto and removed from the leaf. The leaf could be double-sided allowing for a Solas or petal on each side.

    I'm starting to have visions of "The Work Song Nanocluster" from The Big Bang Theory TV show here, trying to get things assembled in time Grin

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • lorrainbow
    lorrainbow over 3 years ago in reply to beacon_dave

    I thought we’d start with the trunk and people would add branches then lights. If it’s a tree full of Solas’ they code their individual light. If it’s a tree of Solas and mostly petals I need to think of how to do that.

    what would be cool is if someone writes the code for light 1, someone writes the code for light 2, someone else writes light 3 and so on. And their code can be easily added to a branch. You just plug it into the Solas/brain at the bottom of the branch. You wouldn’t even have to know what number your light is, it would just light up the next one.. 

    That code would work great for a string of lights too. 

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • beacon_dave
    beacon_dave over 3 years ago in reply to shabaz

    There appears to be a low cost discovery kit which contains the STM32F072RBT6 microcontroller (rather than the STM32F072C8T6) which looks like a close match.

    https://uk.farnell.com/stmicroelectronics/stm32f072b-disco/dev-kit-stm32f072b-discovery/dp/2376483

    Shorter lead time of and of April 2022.

    I'm guessing that that one of those plus a simplified PCB / protoboard design for the rest would allow one to use the same programming firmware/software and make it more accessible for a wider audience.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube