This repo is forked of https://github.com/cloudn1ne/Mowgli to folllow his great job. It should work on the classic one and the Luv1000ri
Please change the different option in board.h
see Updates
- Basic overview of the mainboard, Datasheets for ICs
- Motor Drivers for both Drive Motors and Blade Motor can be controlled
- Mainboard (GForce) Firmware dump and restore via an ST Link or other (e.g. JLink Segger) tools
- Panel (GForce) Firmware dump and restore via an ST Link or other (e.g. JLink Segger) tools
- Demo Python code to control the Mower via a Joystick (needs "test_code" STM32 code flashed)
- ROS Serial node via CDC USB Port with full hardware support
- Serial debugging on the unused (red) J18 header
- Software I2C on the unusued (red) J18 header - used for external IMU
- Raspi, IMU, GPS Mounting Options
- onboard Buzzer
- onboard IMU (accelerometer) for tilt protection
- Safety switches (Hall Sensors) for STOP button
- Rain Sensor
Do the correct topics to remove the mowgli proxy in openmower ros and so be plug & play with openmower.
This is the software that needs to be compiled and flashed onto the STM32 on the Geforce Mainboard
Currently the Pololu IMU 10v5 and [WT901] are supported. Don't hesisate to ask if you want use another IMU
Check in board.h for the connected PIN, as I used PB3 for debug purposes, the pinning is different as the original repo.
- /mowgli/MowerControlSrv - enabled/disable blade
- /mowgli/GetCfg - read SPI flash config var
- /mowgli/SetCfg - write SPI flash config var
- /mowgli/Reboot - reboot Mowgli
- /mowgli/ResetEmergency - Reset emergency state
- /mowgli/SetLed - enable LED (1-17), if the MSB is set (128), the bot will chirp too
- /mowgli/ClrLed - disabled LED (1-17), if the MSB is set (128), the bot will chirp too
- /cmd_vel - geometry_msgs::Twist (compatible with teleop twist messages, so you can drive the bot)