← All projects
Open hardware · High-speed robot perception

16-SENSOR
CURVED ARRAY.

Two HyperLine Robotics 16-sensor curved line follower arrays

Smoother tracking through sharp curves

16 ANALOG CHANNELS · 16 STATUS LEDS · FFC

This compact curved array uses sixteen reflective sensors for line-follower robots. Its geometry improves detection consistency through turns and increases line-position resolution compared with a straight sensor layout. Every channel has an onboard status LED for immediate alignment, calibration and debugging feedback.

Sensors16 analog reflective channels
FeedbackOne status LED per channel
PCBTwo-layer board with isolated analog routing
ConnectionCompact, mechanically reliable FFC interface
OutputDirect microcontroller ADC connection
GeometryCurved placement for smoother corner tracking

Multiplexer mapping

A 16-channel analog multiplexer reads every sensor through one microcontroller ADC pin. Four digital select lines choose the active channel. Position thresholds progress from 0 on the left to 15000 on the right.

SensorMUXS0S1S2S3Position
1000000
2100011000
3200102000
4300113000
5401004000
6501015000
7601106000
8701117000
9810008000
10910019000
1110101010000
1211101111000
1312110012000
1413110113000
1514111014000
1615111115000

Fast channel selection

PC0–PC3 select the multiplexer channel. Direct PORTC manipulation changes only its lower four bits and samples faster than four separate digitalWrite calls.

inline void selectMuxChannel(uint8_t ch) {
  PORTC = (PORTC & 0xF0) | (ch & 0x0F);
}

Fast analog reading

The multiplexer output connects to A4. A custom ADC routine uses AVcc as reference and avoids the overhead of analogRead when maximum sampling speed is required. Standard analogRead remains suitable when that speed is unnecessary.

inline uint16_t fastAnalogRead(uint8_t ch) {
  ADMUX = (1 << REFS0) | (ch & 0x0F);
  ADCSRA |= (1 << ADSC);
  while (ADCSRA & (1 << ADSC));
  uint8_t low = ADCL;
  uint8_t high = ADCH;
  return (high << 8) | low;
}

Firmware thresholding ignores weak reflectance values, while short analog routes and the FFC connection reduce noise and wiring bulk.

Open design files ↗