ARC Pro

Upgrade to ARC Pro

Stay at the forefront of robot programming innovation with ARC Pro, ensuring your robot is always equipped with the latest advancements.

United Kingdom
#1  

Yes but if you want them controlled individually you will need to change the address on one of them.

#2  

ThingM.com has a downloadable manual if you wanted to read how to do it before getting them.

United Kingdom
#3  

And to add, it's clearly set out so you can see the commands needed, there are also a few examples in the forum if you struggle to understand the I2CWrite() command (I posted one the other day to make the BlinkM red).

BlinkM Datasheet - You want page 17. Ignore the messy, nasty, arduino code.

Examples; (I'm taking a break from mind numbingly boring work)


# BlinkM Examples
# Use I2CWrite
# Default address 0x09

# Change the address to 0x0a
I2CWrite(0,0x09,A,0x0a)
# Address now 0x0a

# Change the address back to 0x09
I2CWrite(0,0x0a,A,0x09)
# Address now 0x09

# White light
I2CWrite(0,0x09,n,0xff,0xff,0xff)

# Red light
I2CWrite(0,0x09,n,0xff,0x00,0x00)

# Green light
I2CWrite(0,0x09,n,0x00,0xff,0x00)

# Blue light
I2CWrite(0,0x09,n,0x00,0x00,0xff)

# Fade to yellow light
I2CWrite(0,0x09,c,0xff,0xff,0x00)

# Fade to black (off)
I2CWrite(0,0x09,c,0x00,0x00,0x00)

#End

Just some examples, now they are untested but I had positive feedback with the red light code the other day so assume all others will work. Hopefully it is enough for you to see how to carry out the functions described in the datasheet since this is no arduino you're using so their code is near useless.

#4  

Tuesday, 16 April 2013

GREAT Presentation Rich !

Thank You for the introduction to BlinkM & It's Datahheet.

#6  

Do I add the BlinkM Control? Do I add a secong EZB? If I script it as in the post above what language do I choose?

#7  

Nevermind I think I just use the Ezscript

JUst not sure how to tell address each device (one differently then the other)

United Kingdom
#8  

There is an ARC control under I2C. It has a place for the address however I don't know if it has a place to re-address it.

Use


I2CWrite(0,0x09,A,0x0a)

to change the address of the first one (without the second being connected). That will change it's address from 0x09 to 0x0a. You can change the 0x0a to anything you want provided it doesn't clash with a different I2C device.

Probably easiest to open the script console (under script) in ARC and manually type the above command in once. Then you can close the console and add the second BlinkM.

Once that command has been run it should be re-addressed. Then use the I2C control, change the address in the box at the top of the control and move the sliders to change colour.

Or write scripts to trigger specific colours for different actions etc.

#9  

After you set the unique addresses, you can still address both of them using the address 0x00. That would be useful when using them as eyes.

From the datasheet: 3.1.1 I2C Addresses The default BlinkM address is 0x09. It can be changed at any time with the "Set Address"("A") command described below. BlinkM responds to both its defined I2C address and the "general call" broadcast address (0x00).

Building on Rich's code it would be:


# White light
I2CWrite(0,0x00,n,0xff,0xff,0xff)

Oh yeah when I was tinkering around with them using the built in pulsing of brightness and color they do fall out of sync. If I remember correctly there was a way to one to be the master timer. It's late here and I need sleep. Rich, can you find and post the correct code for it?

United Kingdom
#10  

That's great to know. I'm looking at possibly getting a BlinkM to just play around with if not fit in Melvin's brain.

One more hint, the I2C codes are case sensitive, i.e. I2CWrite(0,0x09,A,0x0a) would be different to I2CWrite(0,0x09,a,0x0a). Pre-empting a few questions and problems:)

United Kingdom
#11  

Bringing an old one back to life a little but I just got my BlinkM delivered today (massive thanks to ThingM)

BlinkM Example Script - The good news is my first assumptions were correct and all previous scripts and posts I made are 100% accurate:)

Expect to see this in Melvin's head soon... until then, I have a video which I will pop up later.

#12  

They are pretty cool and they have sequences built in so EZ-B doesn't have to waste processing on doing it.

United Kingdom
#13  

Yeah that's next on the todo list once I finish sorting out all my PCs with the new ARC and messing around with the library... Not that I will use sequences on Melvin but still would be good to know how to do them:)