Firmware toolchain for less than €3000?

83 views
Skip to first unread message

Bionerd42

unread,
Jan 2, 2018, 3:56:42 PM1/2/18
to openbiomed...@googlegroups.com
Hi all,
there seems to be a way to migrate the PCB design to a tool that is actually free software. 

The next step is the firmware. 
According to 
SOFTWARE EQUIPMENT NEEDED
IAR Embedded Workbench for ARM (from Version 7.10+)
ADuCM350 software development kit (SDK)
which, according to 
http://www.mouser.com/catalog/catalogusd/645/2360.pdf
costs somewhere between $3000 and $6000. 

Does anyone have any idea how to tinker with the firmware ... reliably ... with a less prohibitive price tag? 
There seems to have been some attempt to use GCC for the ADuCM350: 
https://ez.analog.com/thread/72704
but getting that to work might be more difficult than modifying actual firmware.

42


Sent with ProtonMail Secure Email.

Tim Kordas

unread,
Jan 4, 2018, 4:19:14 PM1/4/18
to Bionerd42, openbiomed...@googlegroups.com
ADuCM350 is a Cortex-M3 ? what gcc support is missing ?

If at all possible, the gcc-arm route is preferable.

are there weird extensions ? Is it just the SDK for the hardware accelerated DFT that is missing ? (ie it is a driver problem?)

I have done bringup of this kind of hw; and might be interested in helping out if I can.

-Tim


--
You received this message because you are subscribed to the Google Groups "OpenBiomedicalImaging" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openbiomedicalimaging+unsub...@googlegroups.com.
To post to this group, send email to openbiomedicalimaging@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openbiomedicalimaging/6d4d5ezsZXwsz2yD4_2lqA6LKHK02sfw0yLm197v1B-p2T6YesHFkYz_u-yE-m_T7bYyT5iorJwhu1l2i1mzidnyKz0p-HHHGHqRLF3Wj6s%3D%40protonmail.com.
For more options, visit https://groups.google.com/d/optout.

Jean Rintoul

unread,
Jan 4, 2018, 4:23:10 PM1/4/18
to Tim Kordas, Bionerd42, openbiomed...@googlegroups.com
Hi Tim, 
Your help would be much appreciated particularly if you've done this a few times before. 
Please view this in the github issues in OpenEIT project to respond to this problem: https://github.com/openeit

I do believe it could be converted to a GCC-ARM toolchain, and would love it if someone with reasonable skills in C took that on. 
GCC-ARM would be preferable, but I hear OpenOCD is another open toolchain option as well if GCC-ARM for some reason had a problem. 

Best,

Jean 

On Thu, Jan 4, 2018 at 1:19 PM, Tim Kordas <tim.k...@gmail.com> wrote:
ADuCM350 is a Cortex-M3 ? what gcc support is missing ?

If at all possible, the gcc-arm route is preferable.

are there weird extensions ? Is it just the SDK for the hardware accelerated DFT that is missing ? (ie it is a driver problem?)

I have done bringup of this kind of hw; and might be interested in helping out if I can.

-Tim
On Tue, Jan 2, 2018 at 12:56 PM, 'Bionerd42' via OpenBiomedicalImaging <openbiomedicalimaging@googlegroups.com> wrote:
Hi all,
there seems to be a way to migrate the PCB design to a tool that is actually free software. 

The next step is the firmware. 
According to 
SOFTWARE EQUIPMENT NEEDED
IAR Embedded Workbench for ARM (from Version 7.10+)
ADuCM350 software development kit (SDK)
which, according to 
http://www.mouser.com/catalog/catalogusd/645/2360.pdf
costs somewhere between $3000 and $6000. 

Does anyone have any idea how to tinker with the firmware ... reliably ... with a less prohibitive price tag? 
There seems to have been some attempt to use GCC for the ADuCM350: 
https://ez.analog.com/thread/72704
but getting that to work might be more difficult than modifying actual firmware.

42


Sent with ProtonMail Secure Email.

--
You received this message because you are subscribed to the Google Groups "OpenBiomedicalImaging" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openbiomedicalimaging+unsubscri...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "OpenBiomedicalImaging" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openbiomedicalimaging+unsub...@googlegroups.com.
To post to this group, send email to openbiomedicalimaging@googlegroups.com.

Tim Kordas

unread,
Jan 4, 2018, 4:53:55 PM1/4/18
to Jean Rintoul, Bionerd42, openbiomed...@googlegroups.com
openocd is a debugger platform, not a compiler toolchain (it is "open" on-chip-debugging). So it is related, but not required.

-Tim

Bionerd42

unread,
Jan 4, 2018, 4:57:08 PM1/4/18
to openbiomed...@googlegroups.com
Now if one got hold of an IAR Embedded Workbench, or, better yet, a GCC-ARM or OpenOCD compiler,

how does the compiled file get into the Flash memory of the ADuCM350?
JTAG or serial interface?
Off-the-shelf programmer or a custom designed interface cable?
Is there support for single-stepping through the code on the ADuCM350 via JTAG?
(There's a connector labeled "TRACE" on the PCB and something on page 14 of ADuCM350 Hardware Reference Manual UG-587)

42

Bionerd42

unread,
Jan 5, 2018, 7:13:26 AM1/5/18
to Tim Kordas, openbiomed...@googlegroups.com
Tim,

I'm a bit hesitant to second-guess the designer, but it seems to me that as far as the interface to the host computer and debugger is concerned, the OpenEIT board is a 
which leads to the question whether the USB-SWD/UART-EMUZ interface boardlet to the left of the eval board can be bypassed or replaced:

In any case, if I'm correct, then for building gcc support for the OpenEIT, all the documentation for ADI's evaluation board applies, the programming and debugging connectors are physically and electrically compatible, and if you cough up $300 for the evaluation kit (with extra boards for flashing and debugging), you're in business.

42

Sent with ProtonMail Secure Email.

-------- Original Message --------
Subject: Re: Firmware toolchain for less than €3000?

ope...@der-user.de

unread,
Jan 8, 2018, 12:35:58 PM1/8/18
to openbiomed...@googlegroups.com
Hi,

as far as I can see the debugging interface (SWD/JTAG) is part of the
CPU-Core (from ARM) and therefore all Cortex-M3 (and a lot of other CPUs
from ARM) should be compatible.

There are a lot of very cheap programmers on the net (~$2 from
aliexpress) that are ST-Link compatible which is the programmer from ST
for their controllers. I'm not sure if they will work with controllers
from AD.

There are also jlink emulators to be found for about $30 that should
work with all Cortex-M3.

Markus

Am 05.01.2018 um 13:13 schrieb 'Bionerd42' via OpenBiomedicalImaging:
> Tim,
>
> I'm a bit hesitant to second-guess the designer, but it seems to me that
> as far as the interface to the host computer and debugger is concerned,
> the OpenEIT board is a 
> http://www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/eval-aducm350.html
> which leads to the question whether the USB-SWD/UART-EMUZ interface
> boardlet to the left of the eval board can be bypassed or replaced:
> https://ez.analog.com/thread/37150
>
> In any case, if I'm correct, then for building gcc support for the
> OpenEIT, all the documentation for ADI's evaluation board applies, the
> programming and debugging connectors are physically and electrically
> compatible, and if you cough up $300 for the evaluation kit (with extra
> boards for flashing and debugging), you're in business.
>
> 42
>
> Sent with ProtonMail <https://protonmail.com> Secure Email.
>
>> -------- Original Message --------
>> Subject: Re: Firmware toolchain for less than €3000?
>> Local Time: January 4, 2018 10:19 PM
>> UTC Time: January 4, 2018 9:19 PM
>> From: tim.k...@gmail.com
>> To: Bionerd42 <bion...@protonmail.com>
>> openbiomed...@googlegroups.com
>> <openbiomed...@googlegroups.com>
>>
>> ADuCM350 is a Cortex-M3 ? what gcc support is missing ?
>>
>> If at all possible, the gcc-arm route is preferable.
>>
>> are there weird extensions ? Is it just the SDK for the hardware
>> accelerated DFT that is missing ? (ie it is a driver problem?)
>>
>> I have done bringup of this kind of hw; and might be interested in
>> helping out if I can.
>>
>> -Tim
>
> --
> You received this message because you are subscribed to the Google
> Groups "OpenBiomedicalImaging" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to openbiomedicalim...@googlegroups.com
> <mailto:openbiomedicalim...@googlegroups.com>.
> To post to this group, send email to
> openbiomed...@googlegroups.com
> <mailto:openbiomed...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/openbiomedicalimaging/Ca7igJcP8njjj7IQ4TT3XY4zawlO-0L__P0Ofweo-1bJnfYEwQAgQiX6hYUpeVXA3Uf_sJBadGXKrY1xmM9eGrRgkVsYwsZ9w8XigiYH2EI%3D%40protonmail.com
> <https://groups.google.com/d/msgid/openbiomedicalimaging/Ca7igJcP8njjj7IQ4TT3XY4zawlO-0L__P0Ofweo-1bJnfYEwQAgQiX6hYUpeVXA3Uf_sJBadGXKrY1xmM9eGrRgkVsYwsZ9w8XigiYH2EI%3D%40protonmail.com?utm_medium=email&utm_source=footer>.

Jean Rintoul

unread,
Jan 8, 2018, 12:45:28 PM1/8/18
to ope...@der-user.de, openbiomed...@googlegroups.com
Yes, it's the standard way that you program any ARM chip(this is for both the main AduCM350 and the Bluetooth Module M0 which has a SWD interface). This is standard off the shelf stuff that works with any ARM chip. I used a Segger J-Link EDU debugger to program it that cost about $60. 

If you aren't planning on doing firmware debugging yourself(say a smaller subset of this discussion group does that), you can compile and flash hex files(that's the compiled firmware code) using the USB cable only. Then you are good to go.

Best,

Jean 



> To post to this group, send email to
--
You received this message because you are subscribed to the Google Groups "OpenBiomedicalImaging" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openbiomedicalimaging+unsub...@googlegroups.com.
To post to this group, send email to openbiomedicalimaging@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openbiomedicalimaging/ec43a9f6-9443-bd66-25b7-fb919b289eea%40markus-kaufmann.org.

ope...@der-user.de

unread,
Jan 8, 2018, 1:25:25 PM1/8/18
to openbiomed...@googlegroups.com
Hi,

I was wondering if it would be possible to do all the measurements at
the same time.

As far as I understand the electrical current has to go back where it
came from (it's a circuit, after all). So if there are several
galvanically isolated(!) power sources (i.e. using transformers) it
could be possible to do all the measurements at the same time without
mutual disturbance.

I'm no EE, so what do you think? Is it possible? Do I miss a major
point? Are the interferences transmitted on the EM-field, especially as
we are using AC for the measurement?

bye
Markus

Jean Rintoul

unread,
Jan 9, 2018, 12:22:22 AM1/9/18
to ope...@der-user.de, openbiomed...@googlegroups.com
It maybe possible, the body being like a big resistor network/voltage divider.  I wonder if there are papers detailing this idea out there? 

The main thing I'd think about would be timing, if you send out a 50khz signal from a single point, you'd need something more like an EEG system on the other side to receive all signals at all other electrode locations at once. So you would still have the number of electrodes to cycle through. If you stimulated from all electrodes at once, it'd be impossible to also receive at the same time.  



--
You received this message because you are subscribed to the Google Groups "OpenBiomedicalImaging" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openbiomedicalimaging+unsub...@googlegroups.com.
To post to this group, send email to openbiomedicalimaging@googlegroups.com.

Eamon Egan

unread,
Jan 9, 2018, 12:04:13 PM1/9/18
to openbiomed...@googlegroups.com
If one set of electrodes is imposing a current flow, this current flow will indeed result in a voltage as sensed on another set of electrodes. Galvanic isolation won't prevent this.

On the other hand, varying the frequency between electrode pairs could work. If you wanted to do essentially one measurement frequency, a narrow spread between frequencies might still allow discrimination. Conversely, if it were useful to achieve multispectral coverage, you could make the spread broader, and cycle each frequency through each pair (you'd do 8 measurement cycles, but end up with 8 frequencies per electrode pair).

However, these approaches would require more complex hardware. The ADuCM350 provides just one DDS / waveform generator.

On Tue, Jan 9, 2018 at 12:22 AM, Jean Rintoul <jean.r...@gmail.com> wrote:
It maybe possible, the body being like a big resistor network/voltage divider.  I wonder if there are papers detailing this idea out there? 

The main thing I'd think about would be timing, if you send out a 50khz signal from a single point, you'd need something more like an EEG system on the other side to receive all signals at all other electrode locations at once. So you would still have the number of electrodes to cycle through. If you stimulated from all electrodes at once, it'd be impossible to also receive at the same time.  


On Mon, Jan 8, 2018 at 10:25 AM, <ope...@der-user.de> wrote:
Hi,

I was wondering if it would be possible to do all the measurements at
the same time.

As far as I understand the electrical current has to go back where it
came from (it's a circuit, after all). So if there are several
galvanically isolated(!) power sources (i.e. using transformers) it
could be possible to do all the measurements at the same time without
mutual disturbance.

I'm no EE, so what do you think? Is it possible? Do I miss a major
point? Are the interferences transmitted on the EM-field, especially as
we are using AC for the measurement?

bye
  Markus

--
You received this message because you are subscribed to the Google Groups "OpenBiomedicalImaging" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openbiomedicalimaging+unsubscri...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "OpenBiomedicalImaging" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openbiomedicalimaging+unsub...@googlegroups.com.
To post to this group, send email to openbiomedicalimaging@googlegroups.com.

Rob Neff

unread,
Jan 12, 2018, 3:28:48 PM1/12/18
to OpenBiomedicalImaging
Hi Folks,

Rob here from Chicago, I just joined.  I'm a firmware engineer, currently using Eclipse, FreeRTOS and a Segger J-link on a STM-based board.

I would think Eclipse (free) would work just fine, instead of IAR.  The project configuration options are a mess, I assume most of the development work on Eclipse has been focused on Java instead of C/C++, but it works.  Once the project is set up, you shouldn't need to change much.  For debugging, you can step thru code, look at the assembly version of it, view memory, do all the normal things. They don't have fancy task-based things, or post-mortem analysis, I once worked on Green Hills INTEGRITY, that was the Cadillac of embedded devices.  But it also took a little higher-end CPU to execute the code (it had kernel vs. User space, etc).

I haven't looked at the github source, I'm still just coming up to speed.

Rob

Rob Neff

unread,
Jan 13, 2018, 3:15:42 PM1/13/18
to OpenBiomedicalImaging
Okay, I see that the SDK from AD uses IAR, so that's where that comes from.  Should still be doable.

Jean Rintoul

unread,
Jan 14, 2018, 8:22:02 PM1/14/18
to Rob Neff, OpenBiomedicalImaging
Great! 

--
You received this message because you are subscribed to the Google Groups "OpenBiomedicalImaging" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openbiomedicalimaging+unsub...@googlegroups.com.
To post to this group, send email to openbiomedicalimaging@googlegroups.com.

Tim Kordas

unread,
Jan 16, 2018, 5:17:52 PM1/16/18
to Rob Neff, OpenBiomedicalImaging
I got one of the EVAL-ADUCM350EBZ boards from Digikey; and it arrived over the weekend.

I got it unwrapped but didn't have a chance to get much further.

Looks like compiling the software is super-easy; I just need to futz around with the linker-scripts and getting images loading over the j-link-ob included with the dev-kit.

I hope to make some progress maybe over the next few days; but realistically not until next weekend.

-Tim

On Sat, Jan 13, 2018 at 12:15 PM, Rob Neff <limping...@gmail.com> wrote:

--
You received this message because you are subscribed to the Google Groups "OpenBiomedicalImaging" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openbiomedicalimaging+unsub...@googlegroups.com.
To post to this group, send email to openbiomedicalimaging@googlegroups.com.

Philip Lim

unread,
Jul 8, 2018, 10:40:07 PM7/8/18
to OpenBiomedicalImaging
Hi,

if help is needed to mirgate the design to a free version.. I have experience in eaglecad and im willing to help :)

--Philip
Reply all
Reply to author
Forward
0 new messages