Hot answers tagged

3

FastLED needs to keep the colors of all the pixel in RAM, so that is using a lot of RAM. To get around this, you could use a strategy that generates the pixel data on the fly as you send it out to the strings. Here is an example of a project that does that... https://wp.josh.com/2021/04/21/build-a-live-scrolling-tickertape/ Also, SoftSerial keeps a buffer (...


3

Interrupts are overkill for this kind of ultra-slow problems, and they can introduce some extra complexity. Here the best solution seems (to me at least) to lie in the approach of the Blink Without Delay Arduino tutorial. Obviously, it must be adapted. In that tutorial, the system switches between only two states (LED off or on). Here the cycling of the LEDs ...


3

As an addition to Majenko's answer I can report having used many of the "Rev.3" counterfeits, every single one came with chip default fuses thereby reset enabled. You can set the RSTDISBL fuse with your Arduino, plus update the micronucleus bootloader in the process (freeing 0.4k). Keep in mind setting this fuse will disable ISP programming, so you ...


3

There is no such Digispark board as the Rev 3. There was going to be, but there was a mistake, so they went straight from Rev 2 to Rev 4. However unscrupulous Chinese counterfeiters are making "Rev 3" boards. So... your mileage may vary since the components used on there could be of any dubious quality. But to your problem: P5 is also the RESET pin....


3

As mentioned by @chrisl, here you would need a pull-down resistor to make sure that pin was not high when the button was not pushed. It is more typical to connect the button between the IO pin and ground since then you can use the built-in pull-up resistors to make sure the pin is high when the button is not pushed. (This chip only has built-in pull-ups, ...


3

From your AVRDude output: avrdude: safemode: Fuses OK (E:FF, H:DF, L:62) It does not appear that you have programmed the AVR configuration fuses. One for thing, E:FF, is extended fuse value 0xFF, which is missing the SELFPRGEN (self-programming) fuse that would allow Micronucleus to load your code onto the AVR, that is allow the AVR to execute instructions ...


3

If you put three resistors of the same value in series, then you would get equal voltage division between them. But chips are not like resistors. Their current usage is not constant and typically vary by orders of magnitude even within each clock cycle. See why this would be a problem? If you have good 3V batteries that supply 3V up to the maximum current ...


2

If you want Wire.h library to work on attiny85 use: https://github.com/SpenceKonde/ATTinyCore I did and it compiles.


2

Well, I've made some headway. I hope to update this with something more helpful though. I don't have a digispark or even the correct Zener diodes to replicate the necessary parts of it. However, I did install t85_default.hex on an ATTiny85 with some alterations to the hex file to place break instructions in a few strategic places. And then I ran avarice/...


1

Since i don't use sysex messages, i got my RAM usage down to 84% by setting the SysExMaxSize in midi_settings.h to 0.


1

I had the wrong ATTiny1614 selected. Needed to select the non-optiboot option.


1

The AVR chips lack hardware support for bus arbitration when operating as a slave device in I2C, which would be required for it to work as SMBus with ARP. You would have to write your own bit-banged driver to act as a slave whilst monitoring the SDA pin whenever it transmits to look for bus collisions. A better solution would be to allocate each device a ...


1

That is a lot of pins, so this really boils down to your application and what you want to optimize for. You could do a bit-banged software I2C slave on these pins. "Bit-bang" means you just write a program to flip the bits on the pins rather than handing the bytes off to the hardware which would do the same thing (although sometimes faster or ...


1

Servo8Bit and ATTiny13(A) I had a look at the Servo8Bit and had pretty much the same thoughts on this as Edgar Bonet in his comment: Servo8Bit relies on an 8-bit timer, and the ATtiny13A does have an 8-bit timer. It should not be too hard to port this library to that micro. Study the source code, then study the datasheet of the tiny13A (mostly the chapter ...


1

I had the same issue even with capacitor between Vcc and GND and resistor between RESET and Vcc. Finally, I use 5V Instead of 3.3V to power up my ATTINY and the problem was solved!


Only top voted, non community-wiki answers of a minimum length are eligible