A3042 Telemetry Control Box Manual

© 2022-2026, Kevan Hashemi, Open Source Instruments Inc.

Contents

Description
Versions
Set-Up
Network Communication
Telemetry Reception
Command Transmission
Digital Input-Output
Power Consumption
Design

Description

[20-MAR-26] The A3042 Telemetry Control Box (TCB) is a telemetry receiver and transmitter for devices such as our Subcutaneous Transmitters (SCT), Implantable Inertial Sensors (IIS), or Implantable Stimulator-Transponders (IST). The A3042-A16 provides sixteen antenna inputs, each with its own telemetry receiver. We can connect one A3015C Telemetry Antenna to each of these inputs and it will provided telemetry reception and signal power measurement independent of all other antennas. The A3042-B16 provides in addition sixteen command transmitters, one for each antenna connection, and four programmable digital input-outputs. Command transmission allows us to control devices such as Implantable Stimulator-Transponders (ISTs). The digital input-outputs allow the A3042-B16 to communicate and synchronize with external instruments. For power and communication, the A3042 needs only one Ethernet jumper cable connected to an industry-standard Power-over-Ethernet (PoE) switch. When you order an A3042, you can order a PoE switch from us to go with it, as well as A3015 Telemetry Antennas to plug into the A3042 antenna inputs.


Figure: A3042 Telemetry Control Box (TCB). On the back side are sixteen BNC sockets for antenna connections and a Power over Ethernet (PoE) socket.

Each A3042 Telemetry Control Box antenna input is equipped with its own dedicated telemetry receiver and power meter. The telemetry messages recorded by the A3042 contain not only the eight-bit telemetry channel number, sixteen-bit sample value, and an eight-bit time-stamp, but also eight bits giving the identity of the top antenna, which is the antenna at which the message presented the greatest microwave power, and the top power, which is a logarithmic measure of the microwave power at the top antenna. The top antenna is almost always the antenna closest to the animal, so the to A3042's top antenna measurement allows us to monitor the location of animals in mazes and other complex environments. We use TCB as an acronym for Telemetry Control Box.


Figure: A3042 Telemetry Control Box (TCB), Display Panel. Activity lamps glow in proportion to sample rate. In this picture, the Detector Module Error (DMERR) light is shining, which indicates a problem with one of the internal detector modules. This light should never turn on during normal operation of the TCB. Press SHOW to turn on all the lights temporarily. Press HIDE to turn off the activity lights if they are too bright.

The only versions of the A3042 Telemetry Control Box currently in production are the A3042-A16 Sixteen-Antenna Receive-Only Telemetry Control Box and the A3042-B16 Sixteen-Antenna Transmit and Receive Telemetry Control Box. We plan to release the A3042-B4 Four-Antenna Transmit and Receiver Telemetry Control Box in October 2026. This smaller device will be suitable for mobile telemetry systems and single-enclosure benchtop systems. We use TCB as an acronym for Telemetry Control Box.

Versions

[20-MAR-26] The following versions of the A3042 Telemetry Control Box (TCB) are defined. The A3042-A16 went into production in January 2023. The A3042-B16 went into production in August 2024. We plan to have the A3042-B4 in production by October 2026.

Version Dimensions Comment
A3042-B4 30 cm × 20 cm × 10 cm 4-way receiver, location monitor, and command transmitter, with digital I/O.
A3042-A16 55 cm × 35 cm × 12 cm 16-way receiver and location monitor.
A3042-B16 55 cm × 35 cm × 12 cm 16-way receiver, location monitor, and command transmitter, with digital I/O.
Table: Versions of the A3042 Telemetry Control Box (TCB).

The A3042-B16 Telemetry Control Box provides command transmission through all sixteen antennas for controlling Implantable Stimulator-Transponders (ISTs). The A3042-B16 populates the four holes X1-X4 on the back wall with four more BNC sockets. These can provide programmable, high-speed, digital input-output for experiments in which external stimuli need to be controlled in a manner synchronous with the telemetry signals, or in which synchronizing signals need to be embedded in the telemetry recording. We use TCB as an acronym for Telemetry Control Box.

Set-Up

[20-MAR-26] The A3042 Telemetry Control Box obtains all its power and communication through a single Power-over-Ethernet (PoE) socket. The telemetry system consists of the telemetry control box, a PoE switch, coaxial antennas, coaxial cable feedthroughs, and Faraday enclosures. In the paragraphs below, we provide detailed instruction on setting up a telemetry control box for communication with your computer. After that, we refer you to the Set-Up chapter of the Telemetry User Manul. We use TCB as an acronym for Telemetry Control Box.


Figure: A Telemetry System with Telemetry Control Box (TCB). We have four antennas arranged in a Faraday enclosure. A TCB, an ACC (Animal Cage Camera), and a data acquisition computer are connected to a Power-over-Ethernet (PoE) switch. Telemetry sensors and stimulators are implanted in animals in the Faraday enclosure.

Power Up The PoE Switch: Connect power to your PoE switch. If you are not in the United States, you will need a computer power cable to connect to your local type of wall power socket, but you can be assured that the power adaptor will operate with any AC voltage 100-250 V, 50-60 Hz. Lights should illuminate on the PoE switch.


Figure: A3042-A16 Telemetry Control Box (TCB). Shown vertical with PoE xwitch.

Connect the TCB to the PoE Switch: Use a network cable to connect the TCB to the PoE switch. This cable can shielded or unshielded, and it can be up to ten meters long. Lights should illuminate on the TCB. We use TCB as an acronym for Telemetry Control Box.

Install the LWDAQ Software: Download and install the latest version of the LWDAQ software, either as a Zip archive from our Download Page or by cloning the LWDAQ GitHub Repository. To complete installation, follow the LWDAQ Software Installation instructions. We use TCB as an acronym for Telemetry Control Box.

Connect the Computer to the PoE Switch: Connect your data acquisition computer to the switch. Configure your computer to use its wired Ethernet interface with subnet 10.0.0.0 and IP address 10.0.0.20. The TCB ships with an IP address 10.0.0.x, where x is given by the last two or three digits of the serial number on the back of the A3042 Telemetry Control Box enclosure. The table below gives examples of serial numbers and their addresses. We use TCB as an acronym for Telemetry Control Box.

Serial NumberAddress
Y6106110.0.0.61
Y6116310.0.0.163
P014810.0.0.148
C008910.0.0.89
Y7010510.0.0.105
Table: A3042 Telemetry Control Box Example Serial Numbers and IP Addresses

You should see a link light beside the sockets you have used on the PoE switch for your computer and your A3042 Telemetry Control Box. Launch the LWDAQ software and try to contact the A3042 using the Configurator Tool, as described here. Don't proceed until you can contact the A3042 and read its EEPROM. We use TCB as an acronym for Telemetry Control Box.


Figure: A3042 Telemetry Control Box (TCB) Set-Up for Bench-top Enclosure with Cameras.

Continue with Telemetry Setup: Connect A3015 Telemetry Antennas. Set up software. Test sample transmitters. Consult the Set-Up chapter in the Telemetry User Manual.

Practice Recording to Disk: Use the Neurorecorder Tool to record telemetry data from the A3042 Telemetry Control Box. Use the Receiver Instrument to view live data before it is written to disk. Use the Neuroplayer Tool to view, filter, analyze, and export data during or after recording. In the Neuroplayer, use the Neurotracker to see which antenna is receiving the most power from each of your telemetry sensors.

Practice Sending Commands: Use the Stimulator Tool to send commands to your Implantable Stimulator-Transponders (ISTs).

Network Communication

[20-MAR-26] The A3042 Telemetry Control Box is a LWDAQ system of Form C, as described in the LWDAQ Specification. It consists of a LWDAQ Relay, a LWDAQ Controller, and a LWDAQ Device with three device elements. Device element one is the telemetry receiver, which consists of detector modules and the logic that reads them out and stores their messages in a buffer. Device element two is the telemetry transmitter, which consists of transmitter modules and the logic that organises them. Device element three is the digital interface, which consists of four digital input-output (DIO) signals. These signals appear on four BNC connectors X1-X4 on the back wall of the A3042. The A3042-A16 provides only element one. The A3042-B16 provides all three elements. The A3042 implements the LWDAQ command job. We use command jobs to reset the telemetry receiver, transmit telemetry commands, and configure the digital interface. Because the A3042 does not implement driver sockets or multiplexer sockets, we do not need to write to a device address register to select which socket we need to use for the command job. But we must write to the device element register to tell the controller if the command is destined for the telemetry receiver (1), telemetry transmitter (2), or digital interface (3). We use TCB as an acronym for Telemetry Control Box.

To communicate with the A3042 Telemetry Control Box, our data acquisition software composes messages in the LWDAQ-TCPIP message format that read to and write from its controller address space. This space is defined in the file Main.vhd of the P3042BB firmware. We use TCB as an acronym for Telemetry Control Box.

-- Relay Interface Memory Map Constants with Read and Write as seen by the
-- LWDAQ Relay that is master of the interface. We respect the existing
-- allocation of controller addresses given in the A2071 manual. 
constant cont_id_addr : integer := 0; -- Hardware Identifier (Read)
constant cont_sr_addr : integer := 1; -- Status Register (Read)
constant cont_djr_addr : integer := 3; -- Device Job Register (Read/Write)
constant cont_der_addr : integer := 15; -- Device Element Register (Write)
constant cont_hv_addr : integer := 18; -- Hardware Version (Read)
constant cont_fv_addr : integer := 19; -- Firmware Version (Read)
constant cont_crhi_addr : integer := 32; -- Command Register HI (Write)
constant cont_crlo_addr : integer := 33; -- Command Register LO (Write)
constant cont_di_lo : integer := 38; -- Digital Inputs LO (Read)
constant cont_cfsw_addr : integer := 40; -- Configuration Switch (Read)
constant cont_srst_addr : integer := 41; -- Software Reset of Controller (Write)
constant cont_fifo_av_addr : integer := 61; -- Fifo Blocks Available (Read)
constant cont_fifo_ds_addr : integer := 62; -- Fifo Data Strobe (Read/Write)
constant cont_fifo_rd_addr : integer := 63; -- Fifo Read Portal (Read)

The hardware identifier, hardware version, and firmware version number registers provide values that allow us to determine which type of receiver we are trying to read out and control. These are values made available by all LWDAQ systems. The LWDAQ Configurator Tool reads these values and presents them to us when we contact a LWDAQ Relay, such as the relay provided by the TCB. We read them out with our LWDAQ_byte_read routine, which in turn uses the LWDAQ byte read instruction to access the byte. We use TCB as an acronym for Telemetry Control Box.

Telemetry Reception

[20-MAR-26] The objective of telemetry reception is to obtain a faithful reconstruction of the signal transmitted by every transmitter. An A3042 Telemetry Control Box might have eight of its antennas arranged in an IVC rack. These antennas receive independently, so we might have up to eight copies of a single transmitted message. The A3042 must eliminate duplicates, identify the top antenna, and provide a single entry in its message buffer for each transmitted message. An A3042 message entry consists of six bytes: an eight-bit telemetry channel number, a sixteen-bit data value, an eight-bit timestamp, an eight-bit top antenna power, and an eight-bit top antenna index. Below is a typical raw message content report obtained from the Receiver Instrment with show_messages set to 20. We use TCB as an acronym for Telemetry Control Box.

Messages 0 to 20 (index id value timestamp $hex):
    0   0   512 126 0x0002007E 8308
    1 179 42799   0 0xB3A72F00 A60B
    2 180 35672  28 0xB48B581C A60B
    3  23 39620  41 0x179AC429 AC0B
    4  68 39898  43 0x449BDA2B 980B
    5 179 42739  65 0xB3A6F341 A60B
    6  24 39365  92 0x1899C55C AD0B
    7 177 42046  94 0xB1A43E5E A70B
    8  68 39906 117 0x449BE275 960B
    9 179 42741 132 0xB3A6F584 A70B
   10  23 39480 156 0x179A389C AD0B
   11 178 42408 159 0xB2A5A89F A60B
   12  68 39888 169 0x449BD0A9 980B
   13 179 42762 185 0xB3A70AB9 A60B
   14 177 42013 218 0xB1A41DDA A70B
   15  24 39406 230 0x1899EEE6 AD0B
   16  68 39901 240 0x449BDDF0 980B
   17   0   513 126 0x0002017E 0000
   18 179 42734   3 0xB3A6EE03 A60B
   19 180 35672  28 0xB48B581C A60B
   20  23 39436  33 0x179A0C21 AD0B
Data Receiver Version 126.

The first four bytes of an A3042 Telemetry Control Box message are the content of the telemetry message, as transmitted by the telemetry device. The first byte is the telemetry channel number declared by the message. The next two bytes are the sixteen bit contents of the message, with the high byte first. The fourth byte is byte zero of the telemetry receiver clock. These four bytes are present in all messages retrieved from all our telemetry receives. The A3042 adds a payload of two bytes. The first payload byte is the top antenna power. The second payload byte is the top antenna indes. The index matches the number over the antenna connector on the back of the A3042 enclosure. The messages with channel number zero are not telemetry messages, they are clock messages embedded in the data for the sake of time-keeping. Content of these messages is first a zero to indicate a clock message, then bytes two and one of the telemetry receiver clock. The payload contents vary with firmware version. The first payload byte contains eight status flags and the second paybload byte contains the state of the digital outputs. The eight status flags in the top antenna power byte are, from most signficiant to least significant bit: MRDY, DMERR, not MSBEMPTY, not DPREMPTY, CONFIG, ETH, UPLOAD, and EMPTY. The eight bits of the top antenna index byte are, from most significant to least significant bit: EN4, EN3, EN2, EN1, X4, X3, X2, and X1. In the above example, we see two clock messages. The first has payload 0x8308, the second has payload 0x0000. In the first, we have UPLOAD and EMPTY both set, which means a client was downloading from the TCB and the message buffer was almost empty. We also had MRDY set, which means a message was ready to be read out of one of the detector modules. Meanwhile, the digital output drivers were all disabled and the state of the inputs X1-X4 was logic LO, LO, LO, HI. In the second clock message we have all bits zero, so there is no download taking place, no message waiting in a detector module, and the message buffer is no longer close to empty. The digital inputs are all LO, which means X4 must have transitioned from HI to LO between the two clock messages. We use TCB as an acronym for Telemetry Control Box.

The A3042 Telemetry Control Box detector modules are read out along a daisy-chain bus. Each detector module has both upstream and downstream eight-bit data buses and upstream and downstream data strobes. The modules share an eight-bit detector control bus. One of the control bus signals is Message Ready (MRDY). Each detector module asserts MRDY when it has a message ready for readout. When it sees MRDY, the baseboard logic asserts another control bus line, Detector Module Read Control (DMRC), and uses its own upstream data strobe to read the message from the closest module in the daisy-chain. If MRDY is still asserted after the readout, this will be because another message is available in the daisy-chain. The baseboard logic reads all available messages as fast as it can. If it reads the same message twice, but the second message has greater power, it discards the previous message. When no further copies of a message are available for readout, the baseboard logic stores the message in its message buffer. We use TCB as an acronym for Telemetry Control Box.

There is a limit to how many message the baseboard logic can read out from the daisy chain per second. We call this the A3042's maximum message rate. The maximum message rate in turn limits on the maximum sample throughput of a TCB. The maximum sample throughbut is the maximum number of unique sensor samples the TCB can provide to our data acquisition computer. For A3042 Telemetry Control Boxes with firmware versions four (FV4) and five (FV5), this limit is 150 kMPS (one hundred and fifty thousand message per second). For A3042s with firmware version six (FV6) and seven (FV6), this limit is 320 kMPS. The maximum message rate arises from the time it takes to read one message from the daisy chain, which for FV6 is 3 μs. Now suppose that we place sixteen antennas inside a Faraday canopy and record from transmitters within the canopy. If the canopy is well-sealed, and local microwave interference is minimal, all sixteen antennas will receive each message transmitted by each transmitter in the canopy. We receive each message sixteen times, so the baseboard logic must read each message out of all sixteen of its detector modules, and in the end keep only the most powerful message from the top antenna. The maximum throughput samples the A3042 can receive is 320 kMPS / 16 = 20 kSPS. This 20 kSPS allows us to record from approximately forty 512 SPS transmitters. If we remove eight of the antennas, reception is just as good, but our A3042 can now handle eighty of the same type of transmitter. We could put these eight antennas in a second Faraday canopy. Now the two sets of eight are isolated from one another. The signals from transmitters in the first enclosure will be received eight times, and those in the second enclosure will be received eight times. We could also deploy sixteen antennas in four sets of four: four antennas in each of four separate benchtop Faraday enclosures. Now each message will be received four times, so our A3042 maximum sample throughput becomes 320 kMPX / 4 = 80 kSPS. We can record from 160 transmitters that each produce 512 SPS. We use TCB as an acronym for Telemetry Control Box.

We can increase the maximum sample throughput of a TCBN by reducing the number of antennas in each Faraday enclosure. As we reduce the number of antennas in a particular Faraday enclosure, however, we reduce the probability that any given message will be received. Suppose we place four antennas in each of four bench-top Faraday enclosures, and suppose each antenna receives 70% of all samples transmitted within its enclosure. With each individual antenna failing to receive 30% of samples, the probability of any one sample being missed by all four antennas only 0.34 = 0.8%. Reception from the four antennas combined will be 99.2%, which is great. But if we reduce the number of antennas to two, reception will drop to 1 − (0.3 * 0.3) = 91%, which is not so good. We recommend four antennas in each benchtop enclosure and eight in each canopy enclosure. In a canopy enclosure, which is much larger than a benchtop enclosure, we find that superb reception can be obtained with eight antennas, but not with four. As a rule of thumb: put four antennas in a benchtop enclosure and eight in a canopy enclosure. There is one exception to this rule: when ambient radio-frequency interference is severe, we should deploy sixteen antennas in a canopy. We can tell that interference is severe when we see that reception from all our sensors drops as soon as we crack open the canopy door. The tenth floor laboratory of one of our customers in the middle of London is like this: open the door and reception drops almost to zero. Even with the canopy sealed up, only antennas within 50 cm of a telemetry sensor will obtain reliable reception from a sensor. When we deploy sixteen antennas in, we do not see sixteen copies of each sample, we see no more than four. The TCB's maximum throughput will be at least 80 kSPS. If, in such an environment, the source of local interference should be turned off, we would immediately see sixteen copies of each sample, and at that point we might need to unplug some of the antennas from the telemetry control box. We use TCB as an acronym for Telemetry Control Box.

If the number of messages per second a TCB is receiving exceeds its maximum message rate, we say the TCB is overwhelmed. We have observed one example of a TCB being overwhelmed in the field. The telemetry system was set up in a windowless room in the center of a brick building in Manchester, UK. Our customer had fifteen antennas connected to a TCB and distributed through an IVC rack. They had no Faraday canopy because they had no need of one in their brick room. When they turned on six A3040D3 HMTs, each transmitting a total of 2048 SPS, the total incoming message rate the TCB had to deal with was roughly 6 · 2048 · 15 = 184 kMPS. This TCB was equipped with firmware version four (FV4), with maximum message rate 150 kMPS, so the TCB was overwhelmed. Duplicates were not being eliminated by the TCB itself, nor the Neurorecorder. The NDF fil were two or three times larger than they should have been. Our Neuroplayer was able to read and play back the files, but a third-party NDF-to-H5 translater was unable to do so. Our customer measured reception with four and six antennas. Reception was poor with four and very good with six, so we recommended eight. Dropping the number of antennas from fifteen to eight proved effective: they obtained excellent reception and their TCB was no longer overwhelmed. After this experience, we worked on the firmware to produce FV6 with its 320 kMPS maximum message rate. Nowadays, we stress test every TCB by placing transmitters sufficient to generate 20 kSPS in an enclosure, and then delivering these samles to every single one of the TCB's sixteen antenna inputs. The result is an internal TCB message rate of 320 kMPS. If the TCB can record for several days with no errors, it passes quality control. We use TCB as an acronym for Telemetry Control Box.


Figure: Stress Test of Telemetry Control Box (TCB-B16). We have four antenna cables split into sixteen separate signals for the sixteen TCB inputs. Each antenna is receives 20 kSPS from the same set of ten A3049Q4, two-channel, 1024 SPS transmitters. The total incoming message rate is roughly 320 kMPS, which is the TCB's maximum throughput.

The TCB's message buffer a first-in, first-out (FIFO) buffer that we access from the LWDAQ Software through the Fifo Read Portal (63). To begin recording telemetry data from a TCB, we must first reset the telemetry receiver, which we do with the help of byte write instructions. See Receiver.tcl for a complete presentation of the management of TCB readout. We use LWDAQ_set_device_element to set the Device Element Register to one (1). We use LWDAQ_transmit_command_hex to transmit 0x0081 to the telemetry receiver, and this command causes the reset. Now we read Fifo Blocks Available with LWDAQ_byte_read and multiply by 512 to get the number of bytes available. The maximum value of this counter is 255, so if there are more than 130 kBytes of data available, you will not know it, even though the FIFO is 2 MBytes long. We then use LWDAQ_ram_read to fetch the available data. This routine uses the LWDAQ stream read instruction to read data out of the buffer portal. The LWDAQ Relay, which provides the TCPIP interface, uses Fifo Data Strobe (62) is used to punctuate its communication with the LWDAQ Controller, which provides the FIFO. See C3038A01.c for the code that runs on the RCM6700 that provides the LWDAQ Relay function. For details of the LWDAQ Controller, see the comments in Main.vhd and CPU_ROM.asm. We use TCB as an acronym for Telemetry Control Box.

The TCB telemetry data consists of six-byte message. Each message begins with a four-byte telemetry message record, which we describe in the Telemetry User Manual. After that comes the top power and the top antenna, each one byte. When we download from the TCB, we must download a whole number of messages, so the number of bytes we download should be divisible by six. If the bytes available is 255 · 512 Bytes, we can download 21760 Bytes, and then read the bytes available a second time. Eventually, we will get all the available data. We use TCB as an acronym for Telemetry Control Box.

Command Transmission

[20-MAR-26] The A3042-B Telemetry Control Boxes implement a multi-channel command transmitter for radio-controlled implants by commandeering the reception antennas for command transmission. We present the command transmission protocol in detail in the A3041 Implantable Stimulator-Transponder manual. We reproduce below the timing diagram from the protocol. We use TCB as an acronym for Telemetry Control Box.


Figure: A3042 Telemetry Control Box (TCB) Command Transmission Protocol. The transmitter modules use on-off modulation to transmit commands to implantable stimulators.

A typical command transmission lasts 10-40 ms. During this time, all A3042-B antennas are connected to their own dedicated radio-frequency power source whenever the command transmission requires that a HI be transmitted. The power sources turn on and off so quickly that we can disconnect them and turn them off during each LO level. During these LO periods, the A3042-B Telemetry Control Box can receive telemetry signals. Reception will drop to around 50% during command transmission, and recover immediately afterwards. The traces below show an IST responding to a command transmitted by a single A3042-B16 antenna. Command reception is >90% for ranges ≤30 cm. We use TCB as an acronym for Telemetry Control Box.


Figure: A3042-B Telemetry Control Box (TCB) Command Transmission and Reception. We have three probes on an A3041 Implantable Stimulator-Transponder. Blue: Crystal radio output, VR, showing on-off 917-MHz power from Transmitting Feedthrough, 50 mV/div. Yellow: Logic level RP from crystal radio comparator, 1 V/div. Green: OND generated by logic chip, 1 V/div.

The A3042-B provides one transmitter module and one radio-frequency switch for each of its antenna connections. These antenna connections are no longer strictly "inputs" because they will occasionally act as outputs. Electrical power for the transmitter modules on the A3042-B16 is provided by a lithium-ion battery. The sixteen command transmitters, operating all at once, require so much current that our PoE switch would be overloaded delivering it all. The lithium-ion battery is good at delivering bursts of high current. The A3042-B4 does not need the lithium-ion batter because it needs current only for four command transmitters. Each transmitter module takes as input an !ON signal. When the transmitting feedthrough asserts ON, the radio-frequency switch connects the antenna to the transmitter module and the transmitter module itself turns on its radio-frequency oscillator. Roughly 21 dBm of 917-MHz radio-frequency power will appear on the antenna connector. When ON is not asserted, the antenna is connected through the transmitting feedthrough to a detector module on the TCB baseboard and the transmitter module's oscillator is deprived of electrical power. No oscillation and no radio-frequency power produced. Each transmitter module mounts on a 5×2 socket header at one end and is held at the other end by a standoff and screw. The electrical power and control enter through the header. The radio frequency power exits through a UMCC connector that we connect with a 50-mm cable to another UMCC jack next to the antenna switch. We use TCB as an acronym for Telemetry Control Box.

On the A3042-B4, the transmitting logic is integrated into the single, main logic chip. But on the A3042-B16, the transmitting feedthrough logic is provided by an LCMXO2-4000ZE field-programmable gate array. Connection to the baseboard is via four flying wires terminated in a MOLEX-4 socket. These four wires carry +5V, 0V, TX, and RX. The logic chip receives instructions from the baseboard via TX and sends notifications back to the baseboard via RX. Instructions enable antennas, transmit telemetry command bytes, and configure the four digital input-outputs. The transmitting feedthrough logic chip runs off 1.2 V and 3.0 V, both of which we regulate down from +5V. Power for the transmitter modules, however, is provided by a 380 mAhr high-current, lithium-polymer battery. Rated for 25C discharge, this battery can deliver 9.5 A for one or two seconds. The battery includes its own over-voltage, under-voltage, over-current, and short circuit protection. It mounts on the wall of the A3042-B16 enclosure and connects with a short cable and two-way socket. The battery charger is a 70-mA current source with 4.1-V voltage limit. Because the transmitter modules are active for less than 1% of the time, the 70-mA charger is sufficient to restore the battery after bursts of 16 · 0.3 = 4.8 A. When on the shelf without power, the battery is disconnected from the circuit by a mosfet switch. Lithium-polymer batteries discharge at approximately 5% per month. The battery could drain to 15% capacity in three years without power. After that, the 70-mA current source will restore the battery to 25% capacity in half an hour. We use TCB as an acronym for Telemetry Control Box.

On each transmitter module of an A3042-B Telemetry Control Box, we have a TLV61048 boost regulator producing +5.0 V from VBAT = 3.7 V with 90% efficiency. These run all the time, consuming roughly 100 μA with no load. We have a mosfet switch to connect power to our RF oscillator and amplifier. There are two stages of RF amplification, both use SOT-89 packages. The oscillator can use the GALI-3+ . With feedback through a 50-mm delay line and a 915-MHz SAW filter, we get our oscillation with +10 dBm output after stabilizing attenuator. The next stage can be GVA-92+ providing 25 dBm when saturated. The GVA-92+ requires no output matching network at 900 MHz. The recommended input matching network of 18 nH parallel followed by 5.6 pF series is designed to match a 50-Ω source to a load of 40 + 10j Ω. We omit this network with no loss of performance. We add a 2-dB attenuator and a 1-GHz low-pass filter to the output to produce 23 dBm with minimal harmonics. We launch this power off the board with a UMCC jack. Total current consumption from +5V is 200 mA, or 300 mA from VBAT. By the time the signal gets through the radio frequency switch and the BNC connector on the back wall of the TCB enclosure, we have 21 dBm. We use TCB as an acronym for Telemetry Control Box.

The Stimulator Tool manages transmission of commands to ISTs as well as decoding their acknowledgements and metadata messages. The Stimulator.tcl source code shows how we manage command transmission. The Stimulator_transmit routine is the one that connects to the TCB and sends the LWDAQ commands that cause the transmitter modules to generate the telemetry command. After selecting device element two (2), we use command jobs to transmit a series of sixteen-bit commands through the baseboard logic to the transmitting feedthrough logic. The bottom seven bits (DC1-DC7) of these commands specify an operation. The eighth bit (DC8) is always one. The top eight bits (DC9-DC16) provide an operand for the operation. Here are the transmitting feedthrough operations. We use TCB as an acronym for Telemetry Control Box.

-- Instruction Op-Codes
constant rf_off_op  : integer := 0; -- Turn off the RF transmitter.
constant rf_on_op   : integer := 1; -- Turn on the RF transmitter.
constant rf_xmit_op : integer := 2; -- Transmit a command byte.
constant tm_test_op : integer := 3; -- Transmitter Module test.

The rf_on operation ignores the operand and turns on all the transmitters for 5.00 ms. On a TCB-B16, full power will be drawn for these 5 ms, then all the transmitters turn off and the job is done. The rf_off operation makes sure all the transmitters are off. The rf_xmit operation takes the top eight bits and transmits them through all transmit modules at the same time, using the protocol pictured above. The tm_test operation is for calibration and testing: it turns on one and only one transmit module continuously. The operand gives the number of the antenna socket that will be producing power. The LWDAQ software's Diagnostic Instrument provides a means to control the transmit modules. In the Diagnostic Instrument's info panel, set daq_device_element to 2. Enter your TCB's IP address in daq_ip_addr. Enter "XX83" in the Diagnostic Instrument's command entry box, where "XX" is a two-digit hexadecimal number that selects one of the antenna sockets. The "XX" we must enter to select a particular antenna is given by the table below. Due to an error on our part, the numbering of the transmit modules is opposite to the numbering of the antennas. To turn on the transmit module for antenna fifteen, we enter command "0283". To turn on the transmit module for antenna number two, we enter command "0F83". Once we have entered the command in the command entry box, we press "Transmit". The selected transmit module should turn on and generate +23± dBm (200 mW) of 917±2 MHz. We use TCB as an acronym for Telemetry Control Box.

Antenna
Number
Turn-On
Code
(hex)
Antenna
Number
Turn-On
Code
(hex)
1108380883
20F8370783
30E8360683
40D8350583
50C8340483
60B8330383
70A8320283
8098310183
Table: Hexadecimal Codes to Turn on Individual TCB-B16 Transmit Modules. These are the codes we use in the Diagnostic Instrument to turn on individual transmit modules. We give the code for each antenna socket number, as marked on the TCB enclosure. It would be nice if the hexadecimal code to turn on a module were the same as its antenna number, but due to an error on our part, the internal numbering of the transmit modules is reversed with respect to the antenna numbering on the enclosure.What is the LWDAQ command I must send to a TCB-B16 to turn on a particular transmit module?

Digital Input-Output

[20-MAR-26] The A3042-B16 Telemetery Control Box provides four digital input-output (DIO) signals with BNC sockets on the back wall of the enclosure, marked X1-X4. The A3042-B4 provides two such DIO sockets. We enable these digital signals as outputs and set their digital levels, by transmitting LWDAQ commands to the TCB. We can use the Diagnostic Instrument to send commands when learning to use the digital signals. We can use TCL scripts to configure and read out the digital signals during an experiment. We use the LWDAQ Diagnostic Instrument to configure them and check that they work. We can see the digital signal levels reported in the top antenna index byte in every clock message in our A3042 telemetry recording. We use TCB as an acronym for Telemetry Control Box.

Each A3042-B Telemetry Control Box digital signal is controlled by three connections to the transmitting feedthrough logic. We will describe the A3042-B16 connections. Those of the A3042-B4 are the same, but restricted to X1-X2. The three conections for each digital signal are: Output Enable (XEN1-XEN4), Output Data (XD1-XC4), and Clamped Input (XC1-XC4). When XEN1 is asserted, an SN74LVC1G126 drives X1 with XD1 through 50 Ω. We power the 1G126 with 5 V so that it can provide 2.5-V down a 50-Ω coaxial cable. By enabling the SN74LVC1G126 and setting XD low, we provide 50-Ω termination for the X1 input. The value XC1 is a clamped version of X1 for input. On the transmitting feedthrough, the logic chip is far from the X1-X4 sockets. We connect each of X1-X4 to the transmitting feedthrough with a 150-mm BNC to UMCC cable, but we still have 400 mm from the end of the coaxial cable to the logic chip. We run the logic signal down a 50-Ω microstrip transmission line to the terminating 50-Ω resistor next to the logic chip. We use TCB as an acronym for Telemetry Control Box.

To configure the digital interface, we select device element three (3) and use the command job to transmit an operation code and operand. We list the operations below. As with the commands we send to the telemetry transmitter on the transmitting feedthrough, these op-codes make up the bottom seven bits of the command (DC1-DC7), while the eighth bit (DC8) is always one, and the top eight bits (DC9-DC16) contain an operand.

-- Instruction Op-Codes
constant dio_en_op  : integer := 8; -- Enable or disable digital outputs.
constant dio_set_op : integer := 9; -- Set or clear digital outputs.

The dio_en operation uses the operand to enable the four digital outputs. Bits 0-3 (DC9-DC12) of the operand enable digital output X1-4 respectively. Now the digital input-output becomes an output. The dio_set operation sets the value of the digital outputs. Bits 0-3 set the value of outputs X1-4. When we disable an output, its output value is not driven onto the digital input-output signal. But as soon as we enable the output, this same value will be driven onto the signal once again.

The digital state of X1-X4, as well as whether or not each of the outputs is enabled, will be reported by the transmitting feedthrough to the baseboard logic once every 256 μs. We read the four signal values and the four enable values from the Digital Inputs location (38) in the control address space. To read the byte we use LWDAQ_byte_read, which in turn uses the LWDAQ byte read instruction. The top antenna index byte of every clock message in the telemetry data stream reports the state of the inputs. The bits of this byte are, from most significant to least significant: EN4, EN3, EN2, EN1, X4, X3, X2, X1. The EN1-EN4 tell us if the digital output drivers is enabled. The X1-X4 tell us the logic level on the digital input. The LWDAQ software's Diagnostic Instrument provides immediate access to the A3042-B Telemetry Control Box digital outputs for diagnostic purposes. In the Info Panel, set daq_device_element to 3. Enter your A3042's IP address in daq_ip_addr. Enter "0F88" in the command box and press "Transmit". The digital outputs are now enabled. Enter "0F89" and press "Transmit" to set them all HI. The HI voltage will be +5 V when open-circuit and +2.5 V when terminated with 50 Ω. Enter "0089" to set them all LO again, and they will all be 0 V. Now enter "0F89 0089" in the command box, "1000000" in the Repeat box and press "Transmit". You will see the outputs toggling. In practice, when we want to use the digital outputs to control something in our experiment, we will use routines like LWDAQ_transmit_command. We might set the outputs using a Neuroplayer Event Handler in response to events we detect in our telemetry signals, or we might connect to the A3042 and set the outputs with some process independent of the Neuroplayer. We use TCB as an acronym for Telemetry Control Box.

Power Consumption

[20-MAR-26] The A3042-A16 Telemetry Control Box consumes a maximum of 8 W. The A3042-B16 peak power consumption during command transmission is 22 W. The extra 14 W is consumed by its sixteen quarter-watt radio-frequency power sources. This additional 14 W is drawn from the A3042-B16's on-board LiPo battery, which supplies 4.0 A during power transmission. This 14 W remains internal to the A3042-B16 because it must be drawn from the battery. The only power the battery draws from the A3042-B16 main power supplies is its re-charge current, which is at most 100 mA from 5 V, or 0.5 W. The logic and lamps on the A3042-B16's transmitting feedthrough consume no more than 0.5 W, so the average current consumption of the A3042-B16 cannot exceed 9 W. Command transmission is rare, so the A3042-B16's battery has plenty of time to recharge between transmissions. The A3042-B4 Telemetry Control Box consumes a maximum of 5 W from the PoE switch. Its peack power consumption during command transmission is 8 W. The peak power is delivered directly by the PoE switch. We use TCB as an acronym for Telemetry Control Box.

Design

[09-JUN-25] For design files and development logbook, see the A3042 Telemetry Control Box design and development page at D3042. We use TCB as an acronym for Telemetry Control Box.