Home

Awesome

<img src="https://github.com/slimelec/ollie-hw/blob/master/images/mpi_logo.png" width=300>

www.meatpi.com

Ollie

  1. Hardware
  2. Pinout
  3. Firmware
  4. UART
  5. CAN

Hardware:

Pinout:

Pinout

Firmware

Firmware is based on cantact-fw and candleLight_fw combined into a single binary file. The firmware can be selected using the dip switch (FW SEL), setting the switch ON the device will boot with candlelight_fw, if switched OFF it will boot with cantact-fw.

Flashing new firmware

<img src="https://github.com/slimelec/ollie-hw/blob/master/images/jumper.png" width=400>|<img src="https://github.com/slimelec/ollie-hw/blob/master/images/Prog.png" width=400>

  1. Download:
  2. Install stm32cubeprog
  3. Set the jumper to enter bootloader mode.
  4. Connect USB and flash firmware

UART

Based on XR21V1414 4-ch USB to UART chip. Drivers are available Here

Windows

Once you connect ollie to a Windows machine, you should be able to see 4 COM port channels in the device manager.

dm

Linux

On Linux you should see four devices created, typically /dev/ttyXRUSB[0-3]. If you see /dev/ttyACM[0-3], there is a chance the UART might not behave correctly in this case you need to install drivers by following these steps:

Optional Raspberry PI kernel headers setup:

Check for correct kernel headers:

ls /lib/modules/$(uname -r)/build

If not, install the kernel

sudo apt install raspberrypi-kernel-headers

You may also need to bump to the latest kernel version

sudo apt upgrade
sudo reboot

Main installation:

sudo apt install dkms
git clone https://github.com/brendanhoran/xr_usb_serial_common xr_usb_serial_common-1a 
cd xr_usb_serial_common-1a
make

sudo -s
cp udev_rules/ollie.rules /etc/udev/rules.d/
cp udev_rules/ollie-plug.sh /usr/local/bin/
cp -a ../xr_usb_serial_common-1a /usr/src/
dkms add -m xr_usb_serial_common -v 1a
dkms build -m xr_usb_serial_common -v 1a
dkms install -m xr_usb_serial_common -v 1a
update-initramfs -u
exit

sudo reboot

Note: RS485 is connected to Ch C and RS232 is connected to Ch D. RS485 Bias(220R) and Termination resister(120R) can be enables using the dip switch. Refer to pinout

<img src="https://github.com/slimelec/ollie-hw/blob/master/images/ollie_2x7_pinout.png" width=200>

CAN

<img src="https://github.com/slimelec/ollie-hw/blob/master/images/ollie-front-sel-sw.png">

Ollie runs dual CAN firmware, it can be used with candleLight or slcan firmware.

Setting the dip to postion 1 (as shown in the picture) will enable candleLight. Postion 2 enables slcan. Switch must be set before the Micro USB is plugged in.

Ollie can also run (Peak CAN) PCAN firmware, follow the instruction to update the firmware.

Note: CAN Bus termination resistor(120R) can be enabled by setting the dip switch. Refer to pinout

1- candleLight

<img src="https://github.com/slimelec/ollie-hw/blob/master/images/MIcrobus.PNG">

candleLight firmware is compatible with MicroBus app (by codenocold), which is available for Windows and Ubuntu.

On windows you can also use with Cangaroo app. Download link available Here. For linux you can compile it yourself, source available Here

candleLight Python

Python drivers are available Here

candleLight on Linux

candleLight is natively supported under linux using gs_usb driver. Just plug it in and using this command:

ip link set can0 up type can bitrate 500000

2- slcan

On windows you can use CANtact app. Download link available Here

slcan Python

python-can library documentation is available Here

3- PCAN

When flashed with PCAN-USB firmware ollie can be used with PCAN-View or other softwares such as BUSMASTER.


© 2021 meatPi Electronics | www.meatpi.com | PO Box 5005 Clayton, VIC 3168, Australia