All posts by Todd's Time

How do I come to terms with Arduino-429 interface?

 

 

Steps to develop a cheap ESP32-based ARINC 429 reader using two optocouplers for bit-banged reception + a simple web page for text output.

1. Understand the signal and safety constraints

  • Differential levels (A – B):
    • Logic 1 (HI): ~+6.5 V to +13 V
    • NULL: ~–2.5 V to +2.5 V
    • Logic 0 (LO): ~–6.5 V to –13 V

2. Hardware design (cheap discrete front-end)

  • Series current-limiting resistors (a few mA).
  •  series protection resistors + TVS diodes or clamping for transient robustness.
  • Two optocouplers6N137 / TLP2361 / similar high-speed optos if you target 100 kbps).
  • On the ESP32 side: pull-ups (external 4.7–10 k?)
  • Power the opto output side from the ESP32 3.3 V rail; keep grounds separate (true isolation).

Sketch the circuit, calculate LED current, verify rise/fall times on a scope with a real or simulated ARINC source, and add decoupling. Keep the analog/high-voltage side physically separated from the digital side.

Alternative low-cost approaches (if pure optos prove too slow or awkward): discrete comparators (e.g., LM393 or better) followed by digital isolators, or the op-amp + logic circuits used in some open ESP32 ARINC boards. Stick to two optos if that is the design goal.

3. ESP32 platform and pinout

  • (dual-core is helpful).
  • GPIOs for the opto outputs (e.g., GPIO 18 / 19).
  • Power from USB or a clean 5 V ? 3.3 V regulator.
  • Optional: status LEDs, a small display, or Ethernet if Wi-Fi is unreliable.

4. Software – bit-banged receiver

Use Arduino-ESP32 or ESP-IDF + FreeRTOS.

High-level approach:

  • Configure the two GPIOs as inputs with pull-ups.
  • Use pin-change / edge interrupts (or a high-priority FreeRTOS task + polling) to capture transitions on either line.
  • Measure pulse widths with micros() or a hardware timer.
  • State machine that recognizes:
    – Start of a word (first HI or LO pulse after a long NULL gap).
    – Each bit: first half active (HI = 1, LO = 0), second half NULL.
    – End of word after 32 bits + inter-word gap.
  • Assemble the 32-bit word (label is bits 1–8, usually octal; data, SDI, SSM, parity).
  • Check odd parity (bit 32).
  • Buffer received words (circular queue or FreeRTOS queue) so the web server can read them without blocking the decoder.
  • Optionally auto-detect speed by measuring bit period, or hard-code 12.5 / 100 kbps.
  • Run the decoder on one core; keep Wi-Fi / web server on the other.

Start simple: capture raw HI/LO events and print timings to Serial. Then add word assembly and label filtering.

5. Web interface for simple text output

  • Use the built-in WebServer or better ESPAsyncWebServer (non-blocking).
  • Create an Access-Point mode or join an existing Wi-Fi network.
  • Serve a minimal HTML page (plain text or a simple table) that:
    – Shows the latest words (label in octal, raw hex, decoded fields if you implement a basic BNR/BCD parser).
    – Optionally auto-refreshes via meta-refresh or a tiny JavaScript fetch every second.
  • Optional: WebSocket for live streaming of new words.

6. Development and test sequence

  1. inject known ±5–10 V
  2. Write a minimal interrupt logger that timestamps every edge.
  3. refine the timing state machine until you reliably get 32-bit words with correct parity.
  4. Add the web server and confirm the page updates.
  5. Stress-test with continuous traffic, noise, and both speeds.
  6. Add basic error counters (parity fails, framing errors, gaps too short).

  • Open-source references worth studying: low-cost ESP32 ARINC boards that use op-amps/logic (search “ARINC 429 TX-RX Board ESP32”), RP2040 PIO-based designs, and classic Holt HI-8588 receiver + AVR interrupt examples (the software structure is transferable).

Once the hardware front-end produces clean HI/LO digital signals, the rest is mostly careful timing and a lightweight web UI. Start with low-speed, get solid word capture on the serial console, then add the web page.

 

================================================

Here is a wonderfull 429 overview

429commentary

airinc_429TheAvionicsHandbook_Cap_2

 

https://batchpcb.com/pcbs/73951 ia a universal converter project.

 

The fellows name is AllThumbs on VAF http://www.vansairforce.com/community/showthread.php?t=95229

 

http://www.vansairforce.com/community/archive/index.php?t-82604.html thread about the SL30 to Dynon HSI

 

 

http://www.instructables.com/id/Interfacing-Electronic-Circuits-to-Arduinos/ is a very nice explanation of a 429 to 232 converter

Here is the data from Niel on the frankenverter

FrankenVerterInitialFiles.tar

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

here is a nice blurb on using a parallel port to test AIRINC 429 equipment

testing429WithPC

 

here is some detail abouthe labels

Arinc429WordList (copy)

Here is the first Distillation of equipment labels

Labels

 

=============================================

2024 revival project

https://github.com/ncormia/FrankenVerter

https://github.com/ncormia/FrankenVerter/blob/master/a429.h

https://github.com/ncormia/FrankenVerter/blob/master/FrankenVerter.ino

 

Explanation with scope

 

 

 

hand tools in VP-BMB

r to left

Dewalt Lion , batteries in a Quart can for containment

screwdriver tips

velcro, tywrap, tape

saw

crush proof container, magnet, fingers, mirror

3/8 deep 12 points, ratchet handle

1/4 drive set

small ratchet screwdriver, large screw driver, poor quality

punch, allen, knife, measure tape

4 picks, small screwdriver, slot, phillips

file

small diagonal, visegrips,

KNIPEX needle nose, diagonal, slip joint pliers.

small combo, large gear wrench, large adjustable.

 

+++++++++++++

3 jack adapters
2 spanners
static wick flags
TR pins long only
Paint cutters
Wish List:
#3 screw driver tips
Swastika tips
good volt meter
electric pencil mark each tool “051”
one short tr pin.
break away wire.
1 1/4 joy wrench
single hole punch
stapler, (butch has the best one
tags w/ string
$680.00
+++++++++++++++++++++
other items that were already aboard bmb:
tape
tr pins… long only, need to add one short one.
paint cutters
tyraps
hatachet
o2 tool
straps
safety wire
BMB_other tools

Longtail Road Trip Recipe book

Longtail Aviation Road Trip Memory Minders:

Identify Squawks/wishlist, airline tickets, hotel, car, pasport, parts, consumables, CMM/AMM references, 4Ghotspot, FED EX tracking number for all incoming parts.

First day overhead:

Determine Printer/yellowpaper/scanner access, internet, Campaccess, CITRIX access,  4Ghotspot

Toolbag, spares, consumables

During road trip.

Receive every item properly, and send 8130 to Jess right away for EBIS update/ purchase order close-out.

ask for a Fed Ex Shipper from Jess

Closeout Items:

Sign off tlp, p/n, s/n amm ref.

Sign off camp cards

Sign off Work Order page(yellow)

verfify 8130 for every item,

Core Tag and or Removal tag filled out for every item

Enter ebis time every day.

brief update to MX@longtailaviation.bm EVERY DAY

Last Day

Final checklists for closeout:

Every TLP Item is closed or deferred correctly

Wishlist for other items

W.O. Yellow sheet closed out for every item

Camp Card for every serialized part, and required inspection.

Ebis closeout:

Every item has TIME applied, Parts under the Parts Tab, “Work Done… “, Corrective Action filled in , ATA code matches AMM ref.

Email completed work package to MX@longtailaviation.bm,  fax@campsystems.com,

Fed Ex envelop all originals to Jessica ( Jessica will print a Fed Ex Shipper)

– OR – gather every page in order, statple, and tuck in the front cover of the Tech Log.

Techlog returned to airplane

review a EBISTECHNICIAN LOG preview and be sure you have enough time entered.

Print a LOG ENTRY from the pertinannt EBIS Items

EBIS_WO_entryscreen  – early

 

EBIS_WO_entryscreen – pdf

 

EBIS_WO_Examples pdf

 

EBIS_WO_Examples ppt

 

review your  original invoice, prepare additional billing, and expense report.

preflight the aircraft

 

 

Secure the aircraft