Millett LR + TP Opus + AMB α24 reboot

What people are working on at the moment
User avatar
jack
Thermionic Monk Status
Posts: 5493
Joined: Wed Dec 29, 2010 8:58 pm
Location: ɐılɐɹʇsnɐ oʇ ƃuıʌoɯ ƃuıɹǝpısuoɔ
Contact:

#16 Re: Millett LR + TP Opus + AMB α24 reboot

Post by jack »

I'm with the other Nick here - simple 8-bit ATmega328 or similar is fine, as is the ATtiny24 stuff (Atmel are now Microchip).

Rather than select a uP now, first try to work out what peripherals you need and what other level of I/O, then add a bit spare! Things like an internal clock (does away with external xtal if you don't need precision clocking), internal EEEPROM (as opposed to program) memory does away with external configuration memory, decent (free) development environment (maybe Eclipse based) with Git integration (if you want an SCCS), cheap development boards (normally manufacturers produce these as loss-leaders), do you really need 10 or 12-bit ADCs or will 8 do (the more bits, the slower the ADC and the more care you need with board layout and power quality)... Choose you uP on the basis of your priorities and needs, not on emotion.

The thing about the Atmel stuff is there is a HUGE support base out there, e.g. at AVR Freaks and the ATmega328P was the base for the original Arduino, so there's a world of free libraries out there.

If you're not too worried about overall performance, the Arduino libraries are really nice & simple - as a professional developer myself, I rather snobbishly looked down on some of the coding in the original libraries, but in recent years the quality has improved dramatically. Note that the Arduino libraries can be used by other uPs other than official Arduino ones - The Espressif Systems ESP-series stuff can also use them (it's an option - Espressif also have their own environment) - MSP430s are the same as the ESPs - Texas have their own "Driverlib" but you use the Arduino libraries if you want.

The more capable uPs also support free small real-time o/s, e.g. FreeRTOS

I now use a fair few ESP32s as they have WiFi built in (plus are dirt cheap) and MSP430s as they are ultra low power, but if you need simple, then go with the ATmega stuff.

Simple is good!
Vivitur ingenio, caetera mortis erunt
User avatar
izzy wizzy
Old Hand
Posts: 1496
Joined: Fri Nov 02, 2007 7:02 pm
Location: Auckland NZ
Contact:

#17 Re: Millett LR + TP Opus + AMB α24 reboot

Post by izzy wizzy »

Thanks Nicks. Plenty to digest.

Sorry for the threadjack. If I need to take this further, I'll start another thread.
User avatar
Thermionic Idler
Old Hand
Posts: 1018
Joined: Sun Apr 22, 2012 8:22 pm
Location: Southsea

#18 Re: Millett LR + TP Opus + AMB α24 reboot

Post by Thermionic Idler »

No worries - it's sort of relevant given that the AMB linestage already has an Arduino ATmega328 processor in it, pre-flashed with the AMB software. This has got me pondering whether it's possible to add the battery monitoring to that - it's about 2k lines of open sourced C code running the whole thing at the moment. I'd need to add the interface terminals for one thing, then try and fathom out where in the code to put the logic.

Edit - actually no, that might risk injecting processor noise into the battery supply. Best to leave things as is.
Deck: Garrard 301 - Audio Origami PU7 - NW Analogue DH3S
Phono: Pete Millett LR, Lundahl SUT, AMB σ22 PSU
Linestage: Bruno Putzeys Balanced Pre + Hans Polak relay mod, LCDuino control
Power amps: 300B PP 'Symmetric Reichert'
Speakers: FF225WK Big Mets
User avatar
Thermionic Idler
Old Hand
Posts: 1018
Joined: Sun Apr 22, 2012 8:22 pm
Location: Southsea

#19 Re: Millett LR + TP Opus + AMB α24 reboot

Post by Thermionic Idler »

Ahh, scope creep. Don't we just love that.

We have three sources in our system - turntable, music server and TV. The latter two route into the linestage via the DAC, so switching sources at the moment is frankly a bit of a faff - via the linestage (which has to be done on the remote) for turntable to DAC, and then via the DAC (which is not on the remote) for server/TV. I want to seamlessly switch between all three via the same user interface.

The TP DAC will incorporate an OTTO switcher, to flip the I2S interface into the Opus between the JLAudio USB receiver, and the generic DIR9001 SP/DIF (TOSlink) receiver. The OTTO works by simply having a switch input at either +5V or GND, and originally I was just going to have a toggle switch on the front panel.

However, the LCDuino board has some unused connections which link to corresponding ATmega328-PU outputs - one of them being for an IR send feature which was never implemented. It occurred to me that the Volumaster software should be hackable such that the analogue input for the DAC stays the same for inputs 2 and 3, but at the same time switching between 2 and 3 results in a trigger voltage being sent to the DAC to instruct it to change sources. That voltage could originate from the spare LCDuino connections.

I posted a question on the AMB forums last night, and I got an answer back this morning saying that my cunning plan was indeed possible.

Given that ATmega328-PU chips are quite inexpensive, I shall probably get a second one to do this on, so that I have a "working" chip to roll back to if everything goes horribly wrong. The original chip was pre-flashed with the software so all I had to do was plug it in, but now it looks like I'm about to learn all about Arduino programming.

The previous thread-jack is now highly relevant!
Deck: Garrard 301 - Audio Origami PU7 - NW Analogue DH3S
Phono: Pete Millett LR, Lundahl SUT, AMB σ22 PSU
Linestage: Bruno Putzeys Balanced Pre + Hans Polak relay mod, LCDuino control
Power amps: 300B PP 'Symmetric Reichert'
Speakers: FF225WK Big Mets
User avatar
Nick
Site Admin
Posts: 15708
Joined: Sun May 06, 2007 10:20 am
Location: West Yorkshire

#20 Re: Millett LR + TP Opus + AMB α24 reboot

Post by Nick »

Also remember that as long as the lock bits allow it you can read the chip as well as write it using the debuggers, so you can make a copy of the original code.

Also, check with the original makers of the thing its running in if the board has a programming header, or if you need to program the chip out of the board. I try and build programming headers into my projects now to make life simpler.
Whenever an honest man discovers that he's mistaken, he will either cease to be mistaken or he will cease to be honest.
User avatar
Thermionic Idler
Old Hand
Posts: 1018
Joined: Sun Apr 22, 2012 8:22 pm
Location: Southsea

#21 Re: Millett LR + TP Opus + AMB α24 reboot

Post by Thermionic Idler »

Nick wrote: Tue Sep 07, 2021 12:01 pm Also, check with the original makers of the thing its running in if the board has a programming header, or if you need to program the chip out of the board. I try and build programming headers into my projects now to make life simpler.
It does, actually - needs something called a TTL-232R-3V3 cable, and you can flash software updates to it in situ. So yes, on second thoughts it'll be a whole lot less faff if I just use that to update the existing chip, especially as I won't have to worry about things like boot loaders - I don't even need to remove it from the board (although I'll still need to take the board out once to solder in another Molex header). Software version control is easy.
Deck: Garrard 301 - Audio Origami PU7 - NW Analogue DH3S
Phono: Pete Millett LR, Lundahl SUT, AMB σ22 PSU
Linestage: Bruno Putzeys Balanced Pre + Hans Polak relay mod, LCDuino control
Power amps: 300B PP 'Symmetric Reichert'
Speakers: FF225WK Big Mets
User avatar
Nick
Site Admin
Posts: 15708
Joined: Sun May 06, 2007 10:20 am
Location: West Yorkshire

#22 Re: Millett LR + TP Opus + AMB α24 reboot

Post by Nick »

Yep, I avoid things like boot loaders, but if that’s what you have then its the way to go, Sounds like a 3.3v RS232 serial interface.

I guess the first step is to get the source and toolchain so that you can replicate the existing code. In theory you should end up with the same data in the firmware if versions all match.
Whenever an honest man discovers that he's mistaken, he will either cease to be mistaken or he will cease to be honest.
User avatar
Thermionic Idler
Old Hand
Posts: 1018
Joined: Sun Apr 22, 2012 8:22 pm
Location: Southsea

#23 Re: Millett LR + TP Opus + AMB α24 reboot

Post by Thermionic Idler »

Nick wrote: Tue Sep 07, 2021 3:34 pm Yep, I avoid things like boot loaders, but if that’s what you have then its the way to go, Sounds like a 3.3v RS232 serial interface.

I guess the first step is to get the source and toolchain so that you can replicate the existing code. In theory you should end up with the same data in the firmware if versions all match.
When I bought the chip in 2017 it had been pre-flashed with v1.00 of the AMB software, and I do have a copy of the source for that just in case. They've since upgraded the code, and versions earlier than v1.03 aren't compatible with the latest Arduino 1.8.x IDE. Hence I'm working on v1.03 as a base and using Github to keep track of my changes.

I've already coded the change to 'freeze' the input port across two of the selections, just need to figure out how to send +5V to that terminal on the board now.

This does mean I'll lose one set of analogue inputs to the preamp (it'll go from 6 to 5) but that actually works out perfectly, because I need to fit two more XLR4 connectors to supply DC from the battery packs in the linestage to the DAC and phono stage. (I'll use the same connector to send the source switch signal to the DAC). So it's just a matter of replacing one set of connectors with another, no chassis drilling needed.
Last edited by Thermionic Idler on Wed Sep 08, 2021 12:54 pm, edited 1 time in total.
Deck: Garrard 301 - Audio Origami PU7 - NW Analogue DH3S
Phono: Pete Millett LR, Lundahl SUT, AMB σ22 PSU
Linestage: Bruno Putzeys Balanced Pre + Hans Polak relay mod, LCDuino control
Power amps: 300B PP 'Symmetric Reichert'
Speakers: FF225WK Big Mets
User avatar
Nick
Site Admin
Posts: 15708
Joined: Sun May 06, 2007 10:20 am
Location: West Yorkshire

#24 Re: Millett LR + TP Opus + AMB α24 reboot

Post by Nick »

I've already coded the change to 'freeze' the input port across two of the selections, just need to figure out how to send +5V to that terminal on the board now.
Is that more than just setting that pin as a output pin and setting it high or low?
Whenever an honest man discovers that he's mistaken, he will either cease to be mistaken or he will cease to be honest.
User avatar
Thermionic Idler
Old Hand
Posts: 1018
Joined: Sun Apr 22, 2012 8:22 pm
Location: Southsea

#25 Re: Millett LR + TP Opus + AMB α24 reboot

Post by Thermionic Idler »

Nick wrote: Wed Sep 08, 2021 12:51 pm
I've already coded the change to 'freeze' the input port across two of the selections, just need to figure out how to send +5V to that terminal on the board now.
Is that more than just setting that pin as a output pin and setting it high or low?
It ought to be as simple as that, it's just a matter of discovering where in the 2k lines of code it should go and whether the code already references it.
Deck: Garrard 301 - Audio Origami PU7 - NW Analogue DH3S
Phono: Pete Millett LR, Lundahl SUT, AMB σ22 PSU
Linestage: Bruno Putzeys Balanced Pre + Hans Polak relay mod, LCDuino control
Power amps: 300B PP 'Symmetric Reichert'
Speakers: FF225WK Big Mets
User avatar
Thermionic Idler
Old Hand
Posts: 1018
Joined: Sun Apr 22, 2012 8:22 pm
Location: Southsea

#26 Re: Millett LR + TP Opus + AMB α24 reboot

Post by Thermionic Idler »

Latest schematic for the AMB power management/routing PCB, including the DAC source trigger handling.
Deck: Garrard 301 - Audio Origami PU7 - NW Analogue DH3S
Phono: Pete Millett LR, Lundahl SUT, AMB σ22 PSU
Linestage: Bruno Putzeys Balanced Pre + Hans Polak relay mod, LCDuino control
Power amps: 300B PP 'Symmetric Reichert'
Speakers: FF225WK Big Mets
User avatar
Thermionic Idler
Old Hand
Posts: 1018
Joined: Sun Apr 22, 2012 8:22 pm
Location: Southsea

#27 Re: Millett LR + TP Opus + AMB α24 reboot

Post by Thermionic Idler »

Bugger. I just got a notification from Mouser that the AD797ANZ opamps I need for the phono stage have now been pushed back to the end of November. I chose Mouser for them on the basis they seemed to have the most reliable date for a re-stock.

That's still okay, as I wanted this all done by the end of the year, and it'll just be a matter of plugging them into the DIP sockets when they do arrive. But I'm now concerned this is going to get pushed back again.

At the time I was trying to find some AD797s, I saw these on ebay. They are priced well, but I've read so much about fake chips being sold on ebay that I've been a bit leery of them, and decided to go via a route where I could be certain of getting the genuine article even though I'd have to pay more and wait longer.

That all said, the seller seems genuine, they have a good feedback history as a buyer with other UK sellers so this doesn't seem like somone in China purporting to be UK-based unless the account has been hacked. Maybe I'm being too cautious and should make an exception in this case?
Deck: Garrard 301 - Audio Origami PU7 - NW Analogue DH3S
Phono: Pete Millett LR, Lundahl SUT, AMB σ22 PSU
Linestage: Bruno Putzeys Balanced Pre + Hans Polak relay mod, LCDuino control
Power amps: 300B PP 'Symmetric Reichert'
Speakers: FF225WK Big Mets
User avatar
Nick
Site Admin
Posts: 15708
Joined: Sun May 06, 2007 10:20 am
Location: West Yorkshire

#28 Re: Millett LR + TP Opus + AMB α24 reboot

Post by Nick »

I would use sockets and just get some similar single op amps to build and test.
Whenever an honest man discovers that he's mistaken, he will either cease to be mistaken or he will cease to be honest.
User avatar
jack
Thermionic Monk Status
Posts: 5493
Joined: Wed Dec 29, 2010 8:58 pm
Location: ɐılɐɹʇsnɐ oʇ ƃuıʌoɯ ƃuıɹǝpısuoɔ
Contact:

#29 Re: Millett LR + TP Opus + AMB α24 reboot

Post by jack »

I may have some genuine 797s in stock. I use them in low noise head amps for metal detectors.
Vivitur ingenio, caetera mortis erunt
User avatar
Thermionic Idler
Old Hand
Posts: 1018
Joined: Sun Apr 22, 2012 8:22 pm
Location: Southsea

#30 Re: Millett LR + TP Opus + AMB α24 reboot

Post by Thermionic Idler »

jack wrote: Sun Sep 19, 2021 10:50 pm I may have some genuine 797s in stock. I use them in low noise head amps for metal detectors.
If they're the DIP-8 ones Jack, you could be a lifesaver! :)
Deck: Garrard 301 - Audio Origami PU7 - NW Analogue DH3S
Phono: Pete Millett LR, Lundahl SUT, AMB σ22 PSU
Linestage: Bruno Putzeys Balanced Pre + Hans Polak relay mod, LCDuino control
Power amps: 300B PP 'Symmetric Reichert'
Speakers: FF225WK Big Mets
Post Reply