Controlling ATtiny85 logic with HIGH/LOW at Arduino Uno

Hi all,

To control my lights of my Star Trek Enterprise 1701-A I use an Atmega328P with basic HIGH and LOW commands. For the Reflector Disk of the spaceship I use a programmable WS2818B with the FastLed library. This logic I have put on a ATtiny85, uploaded it and it works fine.

The problem: to 'delegate' the logic to the ATtiny85 I programmed a simple HIGH/LOW on my Atmega328p, so when I want the run the logic on the ATtiny85 I send HIGH to the Atmega to give current. When I do this the LED (controlled by the ATtiny85) will run his sequence but in a very 'messy' way.

Does anybody know how to solve this?

Kind regards,

Jan Speyer
The Netherlands

when I want the run the logic on the ATtiny85 I send HIGH to the Atmega to give current.

Does that mean that you are powering the tiny85 and the LED with an Uno output pin?

Thanks groundFungus for your message.

Yes, in order to control the running of the ATtiny85 logic I connect the powersource of the ATtiny85 to an Arduino pin. In my case port 3(~PWM). My theory is: when I 'delegate' the logic for the Enterprise Deflector Disk (a blue and red scenario) to a ATtiny85 I can keep running the main-scenario of all the other lights on the ATMEga328P. I control this with HIGH and LOW.

I know, in this way I interrupt the logic of the ATtiny85 randomly, which isn't pretty.

Basically what I want: tell the ATtiny85 to do the lightshow until I(the Atmega328p) give you a LOW/HIGH to stop/start the lightshow.

I would like the same for my (built-in) 74HC595 Shiftregister which runs the landinglights in the Shuttle Bay of the Enterprise. I haven't tested that yet.

I hope you can help.

Kind regards,

Jan Speyer
The Netherlands

If I understand correctly, you have the Uno pin 3 connected to the tiny85 physical pin 8 (Vcc). If that is right it is probably your problem. An output on the Uno is rated at 40mA absolute maximum, 20mA recommended. As you draw current from the pin, the output voltage begins to drop. At 20mA it is already 0.5 Volts less than the supply voltage. If the voltage drops enough it will affect the operation of the LED (as you have seen). If the LED pulls more than 40mA the tiny85 could be damaged (a WS2812 will draw try to up to 60mA with all 3 LEDs full on).

I suggest that you power the tiny85 and the LED with a 5V source, capable of supplying the required current, and connect the Uno pin 3 to an input on the tiny85. In the Uno code send a signal like you have been doing. In your tiny85 code, poll the input to watch for the Uno to send a signal and then run your LED sequence.

Impressive groundFungus,

I have read your reply and the logic behind it. So simple and elegant, this should work. I'm actually a softwareman and this is my first model with electronics/lighting so i'm learning......

Resume:
Connect the ATtiny85 to a external 5V source and ground.
Define a Dataport on the ATmega328p and the ATtiny85 for communication.
Let the ATtiny85 wait for an inputsignal to go(or stop).

I think I got it, I'll let you know, thanks!

A copy of my spaceship in the attachment

Kind regards
Jan Speyer

Glad that I could help.

That is a very beautiful model. Nicely done. Though i prefer the (original) Enterprise of my youth.

Thanks!

This is actually the first version(1969) of Star Trek's Enterprise, the NCC-1701-A.

If you're interested, on my website janspeyer.nl you can see several photos of the building.

Regards Jan