Actuator modules

AXA-011 — RS-485 node PMOD module

Catalog #11 in the AruviX actuator line, level L3. MAX3485 3.3 V half-duplex RS-485 transceiver — the pragmatic multi-drop bus for robots that just need to work.

Level L3 ERC clean DRC clean Fab package 14 components
3D render of the AXA-011 PCB
Rendered from the PCB layout. No physical board has been manufactured.

Circuit review & bench-test guide →

Components#

Every placed component, with the reason it is on the board. Extracted directly from the schematic, so this cannot drift from the design.

RefValueWhat it does on this boardPart numberFootprint
C1 100nF 16V X7R VCC decoupling GRM188R71C104KA01D
Murata
C_0603_1608Metric
J1 PMOD PLUG 2x6 PMOD peripheral plug (Digilent spec 1.2) not selected
generic
PinHeader_2x06_P2.54mm_Horizontal
J2 RS-485 BUS (A/B/GND) RS-485 bus: 1 A (non-inverting), 2 B (inverting), 3 GND reference not selected
Phoenix Contact
TerminalBlock_Phoenix_MKDS-1,5-3-5.08_1x03_P5.08mm_Horizontal
JP1 RE=DE Bridged default: DE drives ~RE (transmit mutes the receiver) SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mm
JP2 RE=PMOD4 Open default: bridge (and cut JP1) to control ~RE from PMOD pin 4 SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm
JP3 TERM 120R Open default: bridge at the two physical bus ends only SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm
JP4 BIAS A Open default: bridge (with JP5) at exactly one node for failsafe bias SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm
JP5 BIAS B Open default: bridge (with JP4) at exactly one node for failsafe bias SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm
R1 100R Series protection on the transceiver-driven RXD line RC0603FR-07100RL
Yageo
Datasheet ↗
R_0603_1608Metric
R2 10k DE pull-down: node idles as receiver until the host drives DE high RC0603FR-0710KL
Yageo
Datasheet ↗
R_0603_1608Metric
R3 120R 1% Bus termination (behind JP3) RC0603FR-07120RL
Yageo
Datasheet ↗
R_0603_1608Metric
R4 390R 1% Failsafe bias: A to 3V3 (behind JP4). 390R holds A-B at 236 mV with both bus ends terminated (60R); 560R gave only 168 mV, under the 200 mV spec RC0603FR-07390RL
Yageo
Datasheet ↗
R_0603_1608Metric
R5 390R 1% Failsafe bias: B to GND (behind JP5). Matched to R4 so the bias divider is symmetric about the bus common mode RC0603FR-07390RL
Yageo
Datasheet ↗
R_0603_1608Metric
U1 MAX3485 3.3 V half-duplex RS-485/RS-422 transceiver, 10 Mbps MAX3485ESA+
Analog Devices
Datasheet ↗
SOIC-8_3.9x4.9mm_P1.27mm

Signals#

Net labels used in the schematic, which are also the names the HDL top level should use.

3V3 A A_BIAS B B_BIAS DE GND RE_HOST RE_N RS_RO RXD TERM_A TXD

Production status#

Schematic ERC0 violations
PCB layoutcomplete
DRC0 violations
Fab packageexported (24 gerbers + drill + CPL + BOM)
Fabricatedno — design stage only

Source: boards/actuator-modules/axa-011-rs485


Catalog #11 in the AruviX actuator line (../README.md), level L3. MAX3485 3.3 V half-duplex RS-485 transceiver — the pragmatic multi-drop bus for robots that just need to work.

Status: schematic generated, ERC clean (0/0), netlist reviewed. PCB layout not started. Not released.

What it teaches#

UART framing in fabric plus the half-duplex skill: driver-enable turnaround. The fabric asserts DE for exactly the frame it transmits, releases the bus before the reply, and the whole class shares one cable pair. Scope the turnaround dead time; count bit times.

Design#

PMOD pin123456789101112
NetDETXDRXD~RE overrideGND3V3NCNCNCNCGND3V3

Note: generate_design.py locally patches the shared emitter's derived- symbol flattening (empty child Footprint must inherit the parent's, matching KiCad's Flatten() rule) so the embedded MAX3485 matches the library copy.

Regenerate#

python3 generate_design.py

Remaining for release#