Skip to content

09. Software

Thomas Lovén edited this page Jun 8, 2018 · 8 revisions

Programmera din LIAM

Software configuration

You may need to adjust some options in the source code to fit your hardware configuration.

Most values that needs adjustment are found in Liam/Definition.h.

Some settings you may want to look at:

Setting Values Description
CUTTER_MOTOR_TYPE BRUSHLESS/BRUSHED/NIDEC Which type of cutter motor you have, and how it is connected
BATTERY_TYPE LEAD_ACID/NIMH_LIION What battery technology you are using.
DEBUG_ENABLED (comment line to disable) Comment out to disable debug mode. The debug mode can mess with other forms of serial communication, such as esplink or bluetooth.
TURNDELAY integer This value can be used to adjust how far the mower turns
BWF_DETECTION_ALWAYS true/false Setting this value to false will make the mower only look for the BoundaryWireFence signal when outside of the loop. This may be useful for large lawns or if you have a weak BWF signal. However, if set to false, the mower will not stop if the BWF is damaged.
GO_BACKWARD_UNTIL_INSIDE (uncomment line to enable) If enabled, the mower will go backwards a tiny bit before turning when hitting the boundary wire fence.
MAX_GO_BACKWARD_TIME integer This needs to be enabled if GO_BACKWARD_UNTIL_INSIDE is enabled.

Battery voltages

If you are using a custom battery or a different voltage than 12 V, you may need to adjust at which voltage the battery is considered depleted or full. Those settings can be found in Liam/Battery.h and are specified in mV. Which setting to adjust depends on your value in BATTERY_TYPE.


LocalDefinition.h

If you like to keep up with new source releases and find that you need to remake all your personalized settings every time you pull a new version from github, this section is for you.

All values in Liam/Definition.h can be overridden by a file named Liam/LocalDefinition.h. This file does not exist by default, but is not tracked by git. As such, if you create it, it will not be overwritten when you update the source.

Example Liam/LocalDefinition.h:

#define CUTTER_MOTOR_TYPE NIDEC
#define BATTERY_TYPE LIION
// Disable DebugMode - note undef, not define
#undef DEBUG_ENABLED
#define GO_BACKWARD_UNTIL_INSIDE
#define MAX_GO_BACKWARD_TIME 5
#define SLOWSPEED 40
Clone this wiki locally