gicking / LIN_master_portable_Arduino

Portable LIN Master Node Emulation for Arduino
MIT License
9 stars 2 forks source link

Use on stm32 #3

Closed axeless closed 9 months ago

axeless commented 11 months ago

Greetings my friend. Please tell me, can this be used in stm32? Perhaps you have some experience with stm32?

gicking commented 11 months ago

Hi Ilyas,the honest answer is that I have no idea. And I have no first hand experience with STM32. Do you mean STM32 using the Arduino framework and/or IDE? If yes, the effort to port the library should be small. After all, the library was written to be easily portable - hence the name...GeorgPS: why do you switch to STM32, if I may ask?Am 08.10.2023 16:02 schrieb Ilyas Badyganov @.***>: Greetings my friend. Please tell me, can this be used in stm32? Perhaps you have some experience with stm32?

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: @.***>

axeless commented 11 months ago

My CAN filter is written in STM32. I thought of combining all this in one microcontroller.

gicking commented 11 months ago

Hi again,how do you programm the CAN filter on STM32? Do you use Arduino IDE?Georg Am 08.10.2023 20:00 schrieb Ilyas Badyganov @.***>: My CAN filter is written in STM32. I thought of combining all this in one microcontroller.

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>

axeless commented 11 months ago

No. I used STM32CubeIDE.

gicking commented 11 months ago

And which software framework so you use, Arduino, SPL, HAL,...?Am 09.10.2023 06:06 schrieb Ilyas Badyganov @.***>: No. I used STM32CubeIDE.

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>

axeless commented 11 months ago

HAL. I tried to use this article. But I didn't succeed. https://microtechnics.ru/stm32-i-protokol-lin-nastrojka-i-obmen-dannymi-stm32cubemx/ There are no such problems with the canbus. Everything is clear there.

gicking commented 11 months ago

Of course it is possible to do LIN master with STM32. However my Arduino lib relies in Arduino functions, and I have no clue about HAL, sorry!How about you post that question to a STM32 forum?Sorry, I'm no help here 🙁Am 09.10.2023 07:18 schrieb Ilyas Badyganov @.***>: HAL. I tried to use this article. But I didn't succeed. https://microtechnics.ru/stm32-i-protokol-lin-nastrojka-i-obmen-dannymi-stm32cubemx/ There are no such problems with the canbus. Everything is clear there.

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>

axeless commented 11 months ago

1 more question. I apologize for bothering you with questions. Can your library be used for kbus or ibus? are you using SERIAL_8N1 or SERIAL_8E1?

gicking commented 11 months ago

No problem, after all you promised me Kumys...  😉I don't know kbus or ibus, sorry! But LIN uses SERIAL_8N1Am 09.10.2023 07:47 schrieb Ilyas Badyganov @.***>: 1 more question. I apologize for bothering you with questions. Can your library be used for kbus or ibus? are you using SERIAL_8N1 or SERIAL_8E1?

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>

gicking commented 11 months ago

Hi again,according to https://curious.ninja/blog/arduino-bmw-i-bus-interface-technical-details/ I found the following:1) ibus and kbus only differ in the connected devices. Otherwise they are identical2) physical layer (=transceiver) is same as LIN (=iso9141)3) UART setting is different from LIN, e.g. 8E1 vs. 8N1, but that is easy4) kbus protocol looks pretty simple at 1st glance5) HOWEVER protocol is totally different from LIN. Even the topology is different (LIN = master/slave; Kbus = multi-master)In summary: doable, but no re-use of LIN softwareAm 09.10.2023 10:30 schrieb @.:No problem, after all you promised me Kumys...  😉I don't know kbus or ibus, sorry! But LIN uses SERIAL_8N1Am 09.10.2023 07:47 schrieb Ilyas Badyganov @.>: 1 more question. I apologize for bothering you with questions. Can your library be used for kbus or ibus? are you using SERIAL_8N1 or SERIAL_8E1?

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.> Am 09.10.2023 10:30 schrieb @.:No problem, after all you promised me Kumys...  😉I don't know kbus or ibus, sorry! But LIN uses SERIAL_8N1Am 09.10.2023 07:47 schrieb Ilyas Badyganov @.***>: 1 more question. I apologize for bothering you with questions. Can your library be used for kbus or ibus? are you using SERIAL_8N1 or SERIAL_8E1?

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.> Am 09.10.2023 10:30 schrieb @.:No problem, after all you promised me Kumys...  😉I don't know kbus or ibus, sorry! But LIN uses SERIAL_8N1Am 09.10.2023 07:47 schrieb Ilyas Badyganov @.***>: 1 more question. I apologize for bothering you with questions. Can your library be used for kbus or ibus? are you using SERIAL_8N1 or SERIAL_8E1?

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>

axeless commented 11 months ago

Thanks for the info. I'll read it. I hope it works out using tja1020

axeless commented 11 months ago

Greetings my friend. I was able to start reading iBus. But the problem turned out to be sending messages. As I understand it, you make some kind of interruption when sending?

I even try to send the usual Serial2.write, but the message does not go through. My TX is silent. Although I can send and read messages via a PC using USB TTL cp2102.

Could you help with this?

axeless commented 11 months ago

I even found a solution on GitHub. But the problem is that I don’t have MCP2004 or 2025.

I used this code, https://github.com/kryczech/iBusRadioArduino/blob/master/iBusRadioArduino/iBusRadioArduino.ino

It reads but doesn't send.

gicking commented 11 months ago

1) "Serial2.write" and the example you found imply that you are using the Arduino framework, not HAL. Is this for STM32 or ESP32? I'm confused...

2) which transceiver are you using? Are you sure it is in normal mode? Sometimes you need to first switch them to normal (aka "active") mode, before you can communicate

3) do you have a logic analyzer or how do you check that Tx doesn't work? Whatever it is, can you check independently that your "monitor" is working?

axeless commented 11 months ago

Got it. I found it in my home in mcp2004a. Everything works on it. Perhaps tja1020 does not support it. I also use ESP32