Would you like to react to this message? Create an account in a few clicks or log in to continue.

You are not connected. Please login or register

support for 328PB and "analog" serial interfaces

2 posters

Go down  Message [Page 1 of 1]

TimFisch

TimFisch

Is it possible to implement support for the Atmega 328PB?
The differences to the available 328 are additional SPI / I2C / UART / timers, and their register positions besides some pin changes ( Details ).

Additionally: Is there an outlook for having the serial interfaces (SPI/ I2C / UART) on the analog level? I mean to be able to connect IC1::RX with IC2::TX and IC2::RX with IC1::TX and both lines to the scope to enable the connection as well as to see the signal over time. Similar approach for the other interfaces, when using the internal hardware registers for transfer would be much appreciated.

https://wiki.mexle.hs-heilbronn.de/

arcachofo

arcachofo

Is it possible to implement support for the Atmega 328PB?
I will try to add it for next month update.

Is there an outlook for having the serial interfaces (SPI/ I2C / UART) on the analog level?
That is planned for 0.5, but there are many issues showing up at every step, i had to rewrite some parts several times, including AVR SPI and I2C.
So it is advancing much slower than I planned.

My plan was having USART already working, the new module is already done, but it still need to be connected to simavr.
I2C slave mode is not yet implemented.
SPI should work, but it's only tested in master mode.

To get this done faster i would need collaborators willing to do some tests.

arcachofo

arcachofo

Something that would help is some test circuits and firmware for SPI and I2C communication betwen 2 AVRs.

SPI and I2C are not far from being fully working if I get some help.

TimFisch

TimFisch

Just as a reply:

I tried to squeeze the implementation into my schedule but unlickily got suprised by multiple (unrelated) disturbances, like COVID cases and creative tasks from administration :-/
I also tried to attach it to some student work, which also did not lead to a working solution.. Sorry.

On the other way I'm still interested in a possible solution, which makes me a bit unfullfilled :-(

https://wiki.mexle.hs-heilbronn.de/

arcachofo

arcachofo


On the other way I'm still interested in a possible solution, which makes me a bit unfullfilled :-(
I can understand.

But as you probably can understand, there are unexpected problems that can delay the development progress.


The situation about this issue is currently like this:

- Inter-MCU communications depends on multi-MCU implementation which is half done in 0.5 version.

- 0.5 version development is presenting several problems difficult to solve, so the base to implement everything else is not ready.

- Because the delays in 0.5, I created an intermediate 0.4.15 version and retrofited the working parts of 0.5, this took time from developing 0.5.
But now 0.4.15 is almost ready with some important features, including Arduino Shields (that was waiting for long time) and a proper Oscilloscope-Plotter.
0.4.15 development is "finished" and now on will only receive fixes.
It will be public in April 3 as "unstable".
This means that now I can focus again full time in 0.5 development.

- MCU simulation in simulide has extra complexity because MCUs are simulated by other programs: simavr for AVR, which is written in C, with a totally different style and often difficult to understand (for me at least). And it does not implement a few things needed by simulide.

As you probably already know, working out a solution for this is not trivial. It is complex and takes a LOT of time.

The idea is a new MCU simulator totally integrated in simulide that will work for all MCUs.
All the time used in implementing things based in simavr or gpsim (a lot) is time taken from this new  MCU simulator and wasted is something that will be used just for a few months.

- There are literally dozens of issues like this to solve, some of them critical. Each one needing dozens to hundreds of hours of work.
Since the last summer I have been working extra time in simulide trying to solve everything.
At the end of the year I was already exhausted. In January I worked 15+ hours a day, 7 days a week (just in simulide).. to find that I had to re-write a great part the work.
Now I am beyond exhausted, I'm burn out. The only reason I keep working in this is because people like you that trusted this project and now is somehow depending on it.

- The best way for someone to implement something like this is collaborating. I, at least know how simulide works and have a rought idea of how simavr works.


Conclusion:
I'm so overwhelmed that it's difficult for me to think the best path, but writting this post helped me to get a picture:
- The future is the new MCU simulator.
- I will not implement new things in simavr or gpsim.
- If someone wants to implement it, we can collaborate.
- There is no clear timeline, I'm working tirelessly in this almost for free and I will just do my best. When something is already implemented, then you can be sure you can use it.

I hope this helps.

TimFisch

TimFisch

Maybe my last sentence was a bit misleading: I'm a bit unfullfilled due to the fact that I'm currently not able to support you. (The sentence should not put pressure on you, but express my regrets)

I know myself, that "own projects with oneself as director" are often very demanding. With social distancing and digital communication around the clock the time for sleeping is going down to minimum.. :-/
So: keep healty - not only with focus to viruses.

Thanks for the detailed answer.
It's great to see the outlook into the future of the project.
I also try to find students which can support simulide.

https://wiki.mexle.hs-heilbronn.de/

arcachofo

arcachofo

Maybe my last sentence was a bit misleading: I'm a bit unfullfilled due to the fact that I'm currently not able to support you. (The sentence should not put pressure on you, but express my regrets)
Thank you for the clarification.

Anyway I feel pressure from myself.
Specially for those who try to use simulide in the academic enviroment.
Teachers depend on the tools they use to design their courses.
And knowing what they can or can't do with those tools is essential to take decisions.
I can understand that some times the decision to use simulide can lead to "non-optimal" situations, and that worries me.

About the original issue of this topic:
Depending on your timeline maybe we can still workout a solution.
Right now I can't do it alone, but if you are interested, tell me, maybe by PM or here, as you prefer.

Sponsored content



Back to top  Message [Page 1 of 1]

Permissions in this forum:
You cannot reply to topics in this forum