I worked with Kreg this week to network the board I had created for my final project to the BlinkM MaxM RGB LED board that will be providing the light source for my final project projector. In addition to directing the main program for the MaxM through the Attiny44, The board I created is ready to program a DC motor, as it is equipped with an H-Bridge and a 5V regulator.
I began by looking at the MaxM datasheet and it was clear that I could use an Arduino board or any board that is equipped with I2C capability. That is perfect since this week I will be able to try the bit bang program for I2C networking, and hopefully get this aspect of my final project done, as well.
Capabilities of the BlinkM MaxM
The light fixture is both really cool and quite powerful. It has a separate power jack input which I have connected in order to not fry my board.
I2C or I2C stands for Inter-Integrated Circuit bus. I learned more about the I2C process from various sites, and found this page on the Instructables websiteto be helpful as I was searching for more information about using the Attiny for I2C bussing purposes. In addition to learning about the usefulness and practicality of I2C, I also learned about bit banging. It is creating a series of pulses through software to transmit messages instead of using hardware. Being a visual learner, I found these images to be helpful:
I was able to connect my board to the MaxM.
I connected the 6 pin header, female component to the correct lines – VCC, ground, i2c clock (SCL) and i2c data (SDA). According to the datasheet, SCL should be connected to Pin 9 (PA4) on the Attiny44. SDA should be connected to PA6, or Pin 7.
I connected the board to the MaxM and plugged in the power jack. I also connected the DC motor to the board. I was able to get the computer to talk to the board through th terminal, it recognized and initialized the board, but was not successful in programming it using the bitbang code provided. I tried it with the Arduino IDE and is was the same thing. I’m going to have to return to the drawing board to figure out what is going wrong with my board. I was able to connect the RGB LED to the Arduino UNO and got it to play a basic looping color combination. I attempted to connect an Hbridge board I had previously made to this combination, but had some trouble mapping out the appropriate place to connect it to the Arduino.