AVR

59 readers
1 users here now

This is an UNOFFICIAL AVR community.

This is a community for people who use AVR microcontrollers. This can include Arduinos, Arduino clones, Arduino like boards, and stand alone AVR chips and self-designed boards.

NOTE: If your circuit is doing something weird when you touch a wire or move your hand across it see this pinned post.

This is a community for everyone who is interested in AVRs and Arduinos from beginners to experts, kids to adults, hobbyists to engineers.

You may also be interested in:

Arduino

RULES:

  1. All Lemmy.ca rules apply here.

  2. Everyone (see rule 98) is welcome.

  3. If you’ve seen a question 100 times answer it the 101st time or ignore it. Even better, write a complete, detailed answer and suggest that the mod(s) pin it to the community.

[Did you actually think there were 98 rules?]

  1. If you present something as fact and are asked to provide proof or a source provide proof or a source. Proof must be from a reliable source. If you fail to provide proof or a source your post or comment may be removed.

  2. Don’t be a dick. Yes, this is a catch-all rule.

  3. The mod(s) have the final say.

founded 1 year ago
MODERATORS
1
 
 

Linked is the AVR EB product page. This looks like the "new ATTiny" because of the 1kB to 3kB SRAM and 8kB to 32kB Flash available.

14-pin (SOIC/SSOP), 20-pin (SOIC/SSOP/VQFN), 28-pin (SSOP/VQFN/PDIP), and 32-pin (VQFN/TQFP) is similar to the AVR DA / DB / DD crew.

DA/DB/DD all have some feature that feels "extra", while EA and EB feel more spartan.

The big point of EB is the new timers. DA/DB/DD used TimerA, TimerB, and TimerD. EA had TimerA and TimerB available.

EB has TimerB... but TimerE, and TimerF are new timers never seen before. Hopefully the documentation comes out to see what E and F can bring (or any other features EB brings to the table).

2
 
 
3
 
 

I was going through RSS feeds, thinking what I should be following to more easily repost around here...

And Microchip's RSS feed: https://www.microchip.com/RSS/recent-8bitPIC.xml for 8-bit uCs contains a very interesting line.

6/1/2023 9:32:19 AM

I do wonder what this could be? I've never heard of "DU" before. There's DA, DB, DD, and EA so far. DU would be new.

4
 
 

I bought a few of these years ago. They are a small board that plugs into the back of a standard 1602 LCD board. They come with an ATMEGA88 which I changed out for an ATMEGA328P. They have a 74HC595 and a MAX232 to drive the LCD and RS-232 respectively. The LCD interface is SPI and it pulls all of the ports out to standard ETTEAM 10-pin box headers.

I find this form factor amusing and have tinkered with it but have never used this for a project.

5
 
 

I've still got a bunch of DIP-28 ATMEGA328P chips. I've had these in my bin since the days before the SMD version of the 328P was widely available. I've got around 50 of the SMD version now that I'm using. These DIP-28s are just sitting here until my son or one of his friends want them for a school project.

6
 
 

cross-posted from: https://lemmy.world/post/1038471

One of the more interesting 8-bit AVR boards that have come out with the new, modern "DB" (or DA/DD/EA) numbering is this AVR-IoT Cellphone.

While its a straightforward hookup of a cellphone modem to the UART of a typical 8-bit AVR microcontroller, its a fun little concept board. I don't really know what I'd do with a cell phone-based microcontroller... maybe some kind of Solar Panel + Lead-Acid project that I call with modem to transfer data somehow? I don't even know where I'm going with this.

32.768 kHz crystal for accurate time keeping. Cell modem with 150MB SIM card from Truphone, so Data transfers has been figured out, with Nano SIM / eSIM card support to buy whatever cell phone plans you got.

I will say that I was somewhat annoyed by the "Zigzag" pins the first time I saw them from Microchip. But I've been sold on it: by zigzaging the pins, the header-pins become easier to solder (!!), because the additional friction holds the pins still during soldering.

It takes more force and effort to jam those pins in, but its worth the effort and an overall easier job when you get used to it.


The ~$70 USD board is on the expensive end, but... cell phone modem !!!! Temperature Sensor, Color Sensor, and Serial EEPROM, etc. etc. Lots of nifty little features for sure.

7
 
 

So for... reasons... Microchip has seemingly killed off the "ATTiny" and "ATMega" names. But modern AVR chips continue to be made in the form of AVR DA, DB, DD, and EA. I don't know why Microchip thought it was a good idea for a namechange after decades, but its not a big deal, we engineers can figure out the new naming scheme, right?

The main advantage is that 24MHz is supported at all voltage levels now, allowing for more battery efficient loads. Furthermore, there have been significant changes to the Timers, UART (now a USART), and other such I/O.

That being said, AVR DA supports up to 128kB Flash + 16kB of SRAM, making these chips far larger and more competitive.

AVR DA's killer feature is the PTC / Peripheral Touch Controller. Capacitive buttons require a fair amount of smarts to measure capacitance (ie: inject current and measure the speed at which voltage changes), and PTC automates that process. This is an old, obscure feature of ATMega328 however, but it seems like Microchip wanted a specific AVR to offer this feature. The other three lines do not have PTC.

AVR DB's killer feature is 3x Rail-to-rail OpAmps. OpAmps are the old 1920s style of analog computers, where your values are stored as voltages. Addition, subtraction, multiplication, division, exponents, derivatives and integrals can be done on these difficult to use Operational-Amplifiers. But more imporantly, a fair number of "analog circuits" use them to amplify voltages to usable levels, or improve current/voltages and provide better measurements.

AVR DD is a bit cheaper, but offers multi-voltage I/O. PortD runs off of a second powerline, meaning you can have a 3.3V PortC, but 5V PortD. Its basically an integrated level-shifter.

AVR EA is thew newest of the bunch and seems to be the cheapest / fewest set of features. I'm guessing AVR EA (or maybe even "E" line entirely) is the new ATTiny, while the D-line is more akin to the ATMegas.

8
 
 

Most of the projects I design start out on solderless breadboards. The one in the bottom of this picture is a ROM switcher and reset circuit for a Commodore 64 that I'm working on. This circuit will fit inside the footprint of a 27256 ROM chip in a 2364 to 27256 ROM adapter.

Other projects are larger like this early prototype of my maple syrup machine room controller, the SapMaster...

image

or this...something...that I was doing with an ESP32 and a Raspberry Pi Zero W.

image

Over the years I've collected a number of solderless breadboards. Some I bought myself and others came with kits that I bought. A number of them came from Hacker Boxes when I had a subscription before the pandemic. I had the delivered to a UPS store in Ogdensburg, NY and drove over and picked them up once a month. Hacker Boxes are cool. Definitely check them out.

Some of the solderless breadboards in my BREADBOARD drawer were cheap, Chinese knock-off breadboards. They had...issues...

image

not to mention the fact that the contacts were SUPER cheap. They often didn't line up well with the holes and prevented pins from being plugged in. Dupont wires and header strips were a BIG challenge and when plugging in a header strip the contacts often stretched and didn't spring back properly.

I finally decided that it was time to replace all my cheap breadboards with better ones.

The cheap ones can be bought on AliExpress for CAD$2. The better ones cost in the neighborhood of CAD$10. I spent some time doing research and talking to friends in the electronics business and settled on Global Specialties (pictured above.) Just about any of the brands available from Digikey or Mouser will be the same quality.

The contacts are nickel plated phosphor bronze and are rated for 1.5A at 36V.

I've switched my prototypes over to the new breadboards and am very happy with how the feel.

9
 
 

Great to find an AVR community here! Let's get some good content going. I used to work on some homebrew AVR-based projects (not Arduino, raw atmel ASM/winavr-gcc). I am reviving one project slowly...

Currently enjoying learning KiCAD, to move away from EagleCAD.

Anyone else working on MIDI-related projects?

10
2
submitted 1 year ago* (last edited 1 year ago) by MapleEngineer@lemmy.ca to c/avr@lemmy.ca
 
 

This is the machine that runs my maple syrup machine room. The PLC (the large grey box on the left in the second section from the top) runs a MEGA2560 Pro Mini with an ESP32 as a WiFi modem. There are more than 4,000 lines of BascomAVR running on the MEGA2560 and around 800 lines of Sketch on the ESP32.

The top section is power distribution. The middle section is supposed to be PLC only but my 24V power supply and distribution leaked into the right hand end opposite the PLC. The bottom three sections from left to right are analog input, digital input, and digital output.

This thing runs a vacuum pump (a MasterCool 90066A), a transfer pump (a small Iwaki), an RO pump, and two solenoid valves (to be replaced with motorized ball valves this summer.) It takes inputs from a bunch of float switches, two vacuum transducers, a pressure transducer, three high precision digital thermometers, and two last time of flight sensors. This thing runs the entire process from the trees through collection and storage through the RO into secondary storage and out a tap to be boiled in the evaporator.

The PLC uses a pair of custom boards that I designed to fit in the BUD case they're installed in. I'll post pictures of the inside shortly.

11
 
 

If your circuit is behaving weirdly, switching on when you touch a wire or move your hand over the circuit you almost certainly have a floating input. You can solve this problem with a pull-up resistor. Many AVRs have built-in pull-up resistors that you can turn on using code.

In Sketch:

pinMode(2, INPUT_PULLUP);

In BascomAVR:

Config Portb.1 = Input Set Portb.1

There's a great article at SparkFun about Pull-up Resistors.