/as

automotive software(OSEK & AUTOSAR) and its tool-chain

Primary LanguageC

as

automotive software and its tool-chain

Build Status

why this repository

Because I am not powerful so I decided to develop tiny but smart part of automotive software based on open source, and create a general AUTOSAR & Automotive Software study environment.

As below picture shows, it was an virtual cluster based on AUTOSAR and can be simulated on Windows and Linux.

ascore posix vic on AUTOSAR

Key Point

1. BSW

1.1 Integrated ArcCore AUTOSAR 3.1 BSW

  • Communication: Can(CanFD) CanIf PduR Com SoAd J1939Tp
  • Diagnostic: CanTp Dcm DoIP Dem
  • System: EcuM SchM
  • Memory: Fls Fee Eep Ea NvM MemIf

1.2 AS Mini BSW

Mainly for the purpose to create a small footprint bootloader with all of the code implemented by me.

This RTOS ASKAR is designed according to OSEK/VDX OS223 by taking a reference of a lot of other open source RTOS, generally, the bwlow is the list:

For the purpose that to be able to run most of the common applications which are based on posix, a series of posix APIs have been implemented based on the ASKAR OSEK tiny core.

  • posix threads
  • posix semaphore
  • posix mutex and condition
  • posix message queue
  • posix signals

3. BSW configuration tool

This GUI tool is the one from OpenSAR which is also developed by me, the GUI can be automatically created from xml.

as configure tool

4. AUTOSAR & LINUX communication

5. Lua & Python Integrated

  • support CAN device by lascanlib or pyas: CANcaseXL, PeakCAN, SocketCAN, ZLG USBCAN
  • support miscellaneous device by lasdevlib with the smae API interface "open/read/write/ioctl/close": rs232
  • a powerful python as.one.py tool: Dcm Xcp Bootloader and others.
  • a powerful third party RTE tool integrated: cogu/autosar

as.one.py bootloader

6. aslinux simulation environment on QEMU

  • Now use one makefile to bring up the QEMU AGL environment.
  • very simple and easy, with one single Makefile to build out the kernel and the rootfs, and a shell script to kick off the qemu virtual machine to execute that kernel and mount that rootfs.(for details check my github.io page on category linux)
  • aslinux build step
git clone https://github.com/parai/as.git
cd $(patch-to)/as/release/aslinux
mkdir build
cd build
ln -fs ../script/vexpress-ca9.mk Makefile
ln -fs ../script/run-vexpress.sh run.sh
make all
./run.sh
# if aslua want to be used
cd $(path-to)/as/release/aslua && make 31 && make 33 
cp out/arm.exe $(path-to)/as/release/aslinux/build/out/rootfs/usr/bin/aslua -v
cp /usr/arm-linux-gnueabi/lib/*.so* $(path-to)/as/release/aslinux/build/out/rootfs/lib -v
# then the sdcard need to be rebuilt
cd $(path-to)/as/release/aslinux/build && make sdcard

7. Other 3rd part package

8. Setup Environment and Run

Check the page as-study-platform