Show off your 2020 AVR project - here is one of mine

Go To Last Post
20 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 2


Since I am apparently obsessed with the Enigma cipher machine, I decided to make the most minimalist and yet functional Enigma M4 simulator I could think of.  TINY84A running at 1 MHz on a CR2032 battery.  I was very careful with power savings so it essentially sleeps taking only around 150uA when on plus the LED power consumption.  When in soft OFF mode (5 minute timeout), it uses less than 0.1 uA!  I'm using some Kingbrighi HELI2 LED's which produce an amazing amount of light for extremely low current as well.  Bright LED's in this example are only using 157 uA each, giving it an estimated number of runtime hours for a single 25 cent CR2032 at ~240 hours.

 

Not seen in the video is a recently added Morse code mode that will show you the Morse code for any letter entered.  I also added a blinkenlight's mode where you can display various sequences of either random lights, lights moving left and right, etc.  And of course it can encrypt or decrypt Enigma M4 (and thus M3) messages.  These pcb's are oshpark purple, but I'm going to try some other colors too.  The HELI2 LED's are also available in orange, red, yellow, and blue, though they use 50%-100% more current than the amazing green ones.  I've got a TVS diode and a fuse for some circuit protection on the back especially since the CR2032 positive side is exposed.

 

What have you guys been working on lately?

 

https://youtu.be/PVQSm2OKFzc

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Wow, what a cool project!

 

Nicely done!

 

JC

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Even 150uA is not that low for modern LEDs.  I tested some cheap blue LEDs that were plenty bright with just a few tens of uA.

http://nerdralph.blogspot.com/20...

The other reason I like blue LEDs is because they all have a relatively high Vf (~2.6V @ 1mA).  Most of my green LEDs are <2V, though I did get a couple with a different chemistry that are closer to 3V.

 

I have no special talents.  I am only passionately curious. - Albert Einstein

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

That would take me forever to do, very cool.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks everyone!  Post some stuff you guys are working on even if it isn't finished!

 

ralphd - it is impressive how far LEDs have come!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

OK then, on this one, the game is where's Wally, but Wally is hiding behind solder bridges.

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

cheeky

Ross McKenzie ValuSoft Melbourne Australia

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

V(R5) == V(R10)

Last Edited: Sun. Oct 18, 2020 - 04:09 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

My not so professional attempt at hand soldering an attiny10 on strip board:

Attiny blinky

In action: https://www.youtube.com/watch?v=...

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

 

I'll contribute this...

 

https://github.com/wrightflyer/S...

 

It's not directly an "AVR project" but I am using an Uno for some of the prototyping and I have a strong feeling that, against all the advice I usually give about not using multiple processors what I will actually do, rather than using multiplexers to expand Teensy 4 pins I will just use a 40 pin AVR to "mop up IO".

 

So far (until I have all the TFT, encoders, joystick and stuff in place) the user interface actually looks like this. It's modelled using "Ctrlr" on Windows which is a great tool for creating CC based interfaces. All the CC numbers under all the controls show which Continuous Controller channels the synth responds to.

 

 

Apart from putting together a synth I'm learning lots of other technologies as I go along like the use of Pure Data (prior to using Ctrlr):

 

 

or the writing of a simulator for ILI9341/Adafruit_GFX so I can work on UI elements without needing to involved the hardware:

 

https://github.com/wrightflyer/S...

 

 

The other day the Teensy based synth running my Teensyduino code played a tune for the very first time:

 

https://www.youtube.com/watch?v=...

 

 

It's still very rough. It's only monophonic so far, polyphony has yet to come and it does not even have last/high/low note priority but you can just about recognise the tune anyway.

 

I spent some of this last weekend trying to add an Arpeggiator as it'll make "trying out stuff" much easier when you can "set and forget" a chord sequence (or even just a single note) to play over and over again while you fiddle with filters, envelopes, LFOs and so on.

 

Even arpeggiators take a lot of research - different ones offer different things so I've tried to pick and implement a common subset.

 

So far my synth looks pretty simple when you look at it in the Teensy Audio design tool:

 

 

but when you start to add polyphony and more functionality it can get pretty mad looking (this is someone else's design):

 

 

Once you've done the "Lego building blocks design" using the modules, a subset of which are shown down the left there, you then have to write all the glue code that configures every aspect of each block and that's where the real "fun" starts!

 

Last Edited: Mon. Oct 19, 2020 - 01:37 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Cliff
That last picture looks.like a program I used a long time ago called patcher.

Jim

I would rather attempt something great and fail, than attempt nothing and succeed - Fortune Cookie

 

"The critical shortage here is not stuff, but time." - Johan Ekdahl

 

"Step N is required before you can do step N+1!" - ka7ehk

 

"If you want a career with a known path - become an undertaker. Dead people don't sue!" - Kartman

"Why is there a "Highway to Hell" and only a "Stairway to Heaven"? A prediction of the expected traffic load?"  - Lee "theusch"

 

Speak sweetly. It makes your words easier to digest when at a later date you have to eat them ;-)  - Source Unknown

Please Read: Code-of-Conduct

Atmel Studio6.2/AS7, DipTrace, Quartus, MPLAB, RSLogix user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

 

Well the PJRC audio design tool is just a "hacked about" (Paul's words) implementation of the clever technology at: https://nodered.org/docs/

 

Part of the "cleverness" is the way it can move around bezier curve lines that are joining the "nodes" on the objects. Paul Stoffregen at PJRC (the Teensy bloke!) just chose this as his interface for the audio design tool but it's interesting to see in that and also in "Pure Data" this concept of "programming" by placing objects on a canvas then drawing lines to show the path of dataflow.

 

On this page in my Wiki: https://github.com/wrightflyer/S... I show the basics of using Pure Data:

 

https://github.com/wrightflyer/S...

 

 

That's a kind of "hello world" program that prints a random number between 0 and 9 each time the "bang" at the top is clicked. It's a really weird way to "program" stuff but I could see a future where more programming is done like this. I think there's a bricks/objects type of thing like this for programming AVRs in fact...

 

... ah yes, Google says something like:

 

https://tinusaur.org/2017/05/24/...

 

Last Edited: Mon. Oct 19, 2020 - 08:03 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

clawson wrote:
I could see a future where more programming is done like this.

 

The funny thing is people have thought that visual programming was the future for a long time. I was using Visual Basic and HP-VEE back in 2001. At the time the VEE visual blocks were shown to a customer that wanted a test setup for validating embedded equipment after the sale. The VEE blocks called programs that ran TCL scripts running in a VM on the test machine.

 

https://www.keysight.com/en/pd-1476554-pn-W4000D/vee-pro-932

 

The TCL scripts were what was used for testing during product integration. I am leaving out many ugly details about keeping everything up to date.

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

ahhh.... the good old days of HP-VEE.

I still know a small project I did to automate Wifi testing back in the very early 2000s.

First it took a couple of weeks to test a little part of a design as you constantly were adjusting Signal generators, spectrum analyzers and power meters.

Our factory testing team at that time did everything in C++ with their own interface.

We as engineering choose to use HP-VEE as we used only HP equipment, so integrating would just be a non issue.

When we finished our test program we tested things in under 2 days, that was a massive time saver.

Also by that time our factory testing department had gotten notice of how quick we did things and changed things to do other measurements as well. So they decide to switch too. But they decided to use Lab-view instead as it seemed to suit them better. After a while it became clear that a lot of things we did were in common, so we had to abandon HP-VEE and start using labview too. That also meant the end of making programs ourselves as we used the test departments code, we now had to ask for features if we needed them as they were very afraid we would ruin their factory program. Still miss having fun with HP-VEE.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

Here is one little recent project, an update of the classic Leslie 122/147 amplifier *and* there is an AVR tucked in there 8) It controls bldc motors in order to get rid of the fussy, heavy old induction motors!

Attachment(s): 

Tom Pappano
Tulsa, Oklahoma

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

tpappano wrote:
Here is one little recent project, an update of the classic Leslie 122/147 amplifier *and* there is an AVR tucked in there 8) It controls bldc motors in order to get rid of the fussy, heavy old induction motors!

 

Very nice :) Is that a C3 I see in the background ? I have an A100 + Leslie 145.

 

I presume the acceleration is configurable to match the age of the motors and drive belts you're trying to emulate. What about the audible 'click' when the speed changes ? ;)

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

My current project is a humble clock radio.   I'm using the Arduino UNO with an ATmega328P as a base.  It has a 320x240 pixel 16M-color parallel-interface TFT screen as a display.   The FM radio is a cheap RDA5807m and the real-time clock is a DS3231 with coin-cell battery. 

 

  It includes an outside temperature sensor (Texas Instruments 18S20 with 20 feet of 30AWG wire-wrap going to a outdoors window) along with a BMP180 barometer/altitude sensor.  Indoors temperature gets read by the temperature sensor on the RTC DS3231.   Being an electronics technican, I've added a INA219 Power Meter that reads the voltage and current at a circuit point.  The current in milliAmps is read across a 0.1 ohm shunt resistor by the 12-bit ADC in the INA219.

 

  The Arduino UNO runs on +5V and the TFT screen module accepts +5V input and has on-board level-shifter 74HC245 chips to make the 3.3v used by the TFT controller.  This means that the mega328P operates the I2C (TWI) bus on +5V.  However all the I2C devices run on 3.3V, which means they expect to have 3.3v as the Vcc of the I2C bus. I'm using a TCA9548A I2C multiplexer to do this level shifting.

 

  The time gets displayed on four digits that occupy most of the TFT screen.   These digits are created by using graphics elements such as filled circles, triangles, and rectangles.  For example, to make a big '7',  first draw a filled equilateral triangle in the foreground color, then a smaller eq triangle in black (the background color).  Finally make a filled rectangle across the top.  This makes two fat lines: one on the top and a diagonal across the middle to create the '7' character.  An '8' is made by four filled circles.  Two circles filled with foreground color on top and bottom and two black colored circles in their centers.

 

  Control is done using an old television IR remote that uses the common NEC protocol.  I've got 10 FM channels preprogrammed for my city and musical taste.  The other buttons control volume, mute, time/date setting, and a function that you'll never find on a store-bought clock radio:  a button that selects the local classical music station for exactly one minute and then switches back to the original station.   This is for those times when your favorite station just won't stop playing really stupid commercials.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Very nice :) Is that a C3 I see in the background ? I have an A100 + Leslie 145.

I presume the acceleration is configurable to match the age of the motors and drive belts you're trying to emulate. What about the audible 'click' when the speed changes ? ;)

Thanks! That is actually a 1939 model “D”, (undergoing restoration) basically the same case as a C3, but has the chorus generator in addition to the main generator. To the left is a ‘56 RT3 and 147, and in my living room is an A100/145 combo and also a 1938 BC 8) The AVR has full control over the ramp up/down of both rotors, and mechanical noise is pretty much eliminated for recording studio use. The other 16 Hammonds are out of camera view 8)

Tom Pappano
Tulsa, Oklahoma

Last Edited: Fri. Oct 23, 2020 - 05:13 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Do you have a special tool to "punch" the wires onto those connectors?   I seem to remember fussing with a small screwdriver or similar (or whatever was handy), with mixed results.  

When in the dark remember-the future looks brighter than ever.   I look forward to being able to predict the future!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

tpappano wrote:
Very nice :) Is that a C3 I see in the background ? I have an A100 + Leslie 145. I presume the acceleration is configurable to match the age of the motors and drive belts you're trying to emulate. What about the audible 'click' when the speed changes ? ;) Thanks! That is actually a 1939 model “D”, (undergoing restoration) basically the same case as a C3, but has the chorus generator in addition to the main generator. To the left is a ‘56 RT3 and 147, and in my living room is an A100/145 combo and also a 1938 BC 8) The AVR has full control over the ramp up/down of both rotors, and mechanical noise is pretty much eliminated for recording studio use. The other 16 Hammonds are out of camera view 8)

 

We rarely see B3s in the UK, mainly because they don't fit thru our narrow doorways ! I have played a couple of rental examples though. I know they're all the same 'guts' but there's something special about a B3. I'd like to learn more about my A100's history as it has a label inside saying it was specially treated for tropical climates. Hammonds were assembled in the UK from kits of parts, and mine isn't a conversion from 120V/60Hz, so I do wonder where it started life.