Welcome to Synthiam!

The easiest way to program the most powerful robots. Use technologies by leading industry experts. ARC is a free-to-use robot programming software that makes servo automation, computer vision, autonomous navigation, and artificial intelligence easy.

Get Started
Asked — Edited

Vertical Mounting Of Ez-B4, Hero-1 Reboot

Good Afternoon Community!
I'm making slow but steady progress on rebuilding my Hero-1.
I have a question:

Has anyone run in to issues mounting a EZ-B4 vertically?

See the attached photo.

I've looked at all the EZ robots...all are horizontally mounted.
From what I can see, the power connector and the magnets are
the only "things" holding the processor in the base.
I'll have to come up with a way to secure the processor in the
base so it doesn't vibrate out.


Ok...Let's try this again https://www.ez-robot.com/emicons/emo_smile.gif

User-inserted image



Upgrade to ARC Pro

Synthiam ARC Pro is a cool new tool that will help unleash your creativity with programming robots in just seconds!



My problem is with Sabretooth. When I send a command it keeps going until I send a stop command. So if I loose communication it keeps on going. I am not sure that there is a way to stop it.

With the relay idea, you could just cut power to the Sabertooth, or even the drive wheels.

Which model sabertooth are you using and are you using it in r/c or serial command mode? On most models when in r/c mode there is a dip switch setting to enable a Timeout Failsafe, which will shut down the motors if the Sabertooth stops receiving correct signals from the receiver. If using Packetized Serial mode, you can send a command to enable the timeout failsafe.
Hi Dan,

I will look but I believe serial from EZ. Also having a hard time with speed control. Nothing seems to work. It is InMoov so I want him to creep slowly around.
another quick thought.
Write an EZ-Script that sets an analog pin high then back low at a given rate.
Using a 555 timer setup as a monostable multivibrator use the output to drive the relay. As long as the script continues to refresh the analog ping the relay stays engaged. If you lose communication the refresh does not happen and the relay disengages.

And if you lose power, again the refresh would not happen and you again disengage the relay
After reading thru the rest on the posts, if the EZB does go high impedance when comm is lost, then you can drive the relay form a analog pin with a pull down resister.


Is there a bit from the EZB that will toggle in a "loss of comms" event?
That way external hardware could trigger an alarm and do a graceful shutdown


I did a simple test: LED connected to a digital port. Mobile Application toggles the EZB digital Port. If you switch off the mobile wifi, EZB keeps the port state On or Off.
Thanks ptp, so the EZ solution is out.
I don't have time to test this out today, but has anyone tried:


$status = IsConnected(0)
in their EZ-Script?
If the test fails, you still can not communicate with the EZB to tell it to halt the motors.


EZ solution is out.

Short term yes.

Software can solve a lot of problems. I had develop a similar feature (firmware) for the EZB 4 (v1).

EZR released a new EZB4 1/2 Top, so its possible to extend the software (firmware) to implement that feature, ask a timeout without receiving any instruction from the ARC, and the target Hardware Port and value (On/Off) that way you can control a relay or interface with another device e.g. Sabertooth Emergency Stop Switch.

You can try email your wish list to the Santa Claus (6120 11 St SE #10, Calgary, AB T2H 2L7, Canada) maybe can be implemented in a new firmware release.

Tip: Add some rubber ducks as gift, i heard the Santa collects rubber ducks.
@ptp, That is a fantastic solution. I would not be surprised to see that in the next release.
Basically what we need is a timeout switch, resets the state every time a condition is met e.g. (port value change On-off-on-off... / or no communication from ARC/TX line is idle:high).

you can do it with:

1) electronics:

555 timer - @rz90208 solution

555 timer - Monostable Mode:

I remember to play with the timer long time ago.

Or some capacitors, resistors and mosfet.

2) Micro-controller

use a micro-controller to sniff (monitor the serial TX) from EZB4 Top part to the bottom part, define a timeout when no bytes are transmitted to the EZB bottom and then control a relay or another circuit.

maybe a timer will work. isconnected() is no good because a stop command needs to be sent so because no way to communicate unless you try a reconnect and a stop. But if out of range your done.
Here is a 555 circuit that should work.
R1 = 10 ohm
C1 = 100 micro farad
This will make the duration of the output pulse 1.0999 seconds
So as long as you pulse the input every second the relay will stay engaged.
Don't forget you will need a driver on the output of the 555.
Thank you Forest Mimms, I have and love his books.

User-inserted image


Thank you Forest Mimms, I have and love his books.

Which book ?

Can you adjust the R/C values for +- 2 seconds.
tp = 1.1*R1*C1

Timer, op amp and optoelectronic circuits and projects.
Leaving the cap at 100 uf and using a 100 ohm pot
you will have from .11 at 1 ohm to 11 seconds at 100 ohm
I look forward to seeing what your going to do with this guy!