element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • 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
micro:bit tutorial videos
  • Learn
  • Learning Center
  • STEM Academy
  • microbit
  • micro:bit tutorial videos
  • More
  • Cancel
micro:bit tutorial videos
Blog Syncing NeoPixel Animations Over Radio * 07 *
  • Blog
  • Forum
  • Documents
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join micro:bit tutorial videos to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: TechnoChic
  • Date Created: 3 May 2024 8:00 PM Date Created
  • Views 2318 views
  • Likes 7 likes
  • Comments 6 comments
  • Make Code Tutorial
  • micro:bit
  • Make Code
  • micro:bit project ideas
  • neopixel controller
  • led projects
  • code blocks
  • micro:bit and neopixels
Related
Recommended

Syncing NeoPixel Animations Over Radio * 07 *

TechnoChic
TechnoChic
3 May 2024
Syncing NeoPixel Animations Over Radio * 07 *

Welcome back! Natasha here. :)  

This is the seventh of 10 blog posts featuring each video in my series on animating LEDs with micro:bit and Make Code. If you've just stumbled upon this post, start from the beginning here.

Let's set up the radio to sync NeoPixel animations with micro:bit!

Watch it now:

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

micro:bit radio communication

In this video, I show you how to set-up and use the micro:bit's built-in radio to send the animation mode to other micro:bits.

This skill is perfect for syncing bike wheels, multi-part projects, or multiple people!

Radio In Microsoft Make Code

Building on the last video, it takes just a few blocks to add radio functionality and send the animation mode to other micro:bits in the same radio group. 

Using micro:bit as a remote for LED Animations

In no time, you'll be changing animations from across the room and syncing your projects together!

How did it go?

Did you sync multiple micro:bits? What other data would you want to send over radio?

Comment below or join the Discord channel to share your questions and ideas. 

See you there! Slight smile

  • Sign in to reply
  • TechnoChic
    TechnoChic over 1 year ago in reply to DAB

    Thanks! Slight smile

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • TechnoChic
    TechnoChic over 1 year ago in reply to beacon_dave

    I would only use the radio group feature to separate radios that will never communicate from one another - placing them on different channels and keeping all radios that will send/receive ANY data on the same channel.

    Name/value pairs are the way to go if you want to isolate some micro:bits and not others. Any micro:bit can ignore a command if there isn't any code written to react to it. And, you could write communication only between your micro:bits that the whole group doesn't know about, but still react to the incoming group commands if you'd like. For example, I'm thinking of making my bike music reactive so I would send the audio data to only my micro:bits but listen for the color mode from the radio group. Slight smile Notes

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • DAB
    DAB over 1 year ago

    Nice update.

    Good explanation of how the radio can work between the micro:bits.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • beacon_dave
    beacon_dave over 1 year ago in reply to TechnoChic

    Sounds like the 16 button matrix could also be useful for allowing your riders to set the radio group at ride time rather than programming time.

    For an additional layer of robustness, one could perhaps consider adding a secondary group code as a prefix to the protocol commands. However it looks like you are limited to 8 characters in the key-value pair, but if you send a string, then it looks like that increases to 19 characters.

    One downside to the radio groups is that it doesn't appear to allow for a 'broadcast to any group'. Would perhaps have been nice to have group 0 or 255 reserved for this sort of functionality without having to loop through changing radio group each time. e.g. if you wanted broadcast beacons on a route that forced a colour change as every rider rode past to create a rainbow type effect, then using radio groups the beacon would need to set the radio group, send the message, set the next radio group, repeat the message and so on up to 256 times to make sure every micro:bit could receive it.

    If a rider has multiple micro:bits (front wheel, frame, rear wheel, jacket, helmet...) then this could also be interesting as you may not want all micro:bits to change on a single radio group command however all micro:bits will need to be joined to the same radio group to communicate via a handlebar or wrist controller micro:bit. So this may require local key's, group keys and broadcast keys to cover all bases. Alternatively you roll all three into a single 19 character string and parse it.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • TechnoChic
    TechnoChic over 1 year ago in reply to beacon_dave

    So far all the people who took my workshop remained in the same group- but theoretically as long as each group agrees to use a different channel it should work just fine. 

    I created a 16-mode protocol that dictates the color for each mode - that way everyone in the group can experiment with different animations but the color would all be the same. (Ex: mode 4 = yellow, mode 11= red, white, blue etc. ) I also added a second parameter in case we wanted to change a different variable as a group, but never implemented it. I chose 16 modes because I intend to use a 16 button matrix as a controller but haven’t had time to build it yet. :-p 

    You can check out the system in the second half of this blog post: technochic.net/.../led-bikes-how-to-code-the-lights

    • 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